请选择 进入手机版 | 继续访问电脑版

QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1141|回复: 0

各类机器学习算法的优缺点和适用场景汇总

[复制链接]
字体大小: 正常 放大
杨利霞        

5250

主题

81

听众

16万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    发表于 2021-4-10 11:24 |显示全部楼层
    |招呼Ta 关注Ta
    ) a. x- E8 l6 ]
    各类机器学习算法的优缺点和适用场景汇总/ R$ O% @: o! E+ V) O0 {; d
    目录5 y" P6 r. |' R) i% v& b; s
    朴素贝叶斯分类器(NB:naive Bayes classifiers)3 J0 Z% D' C9 n1 \1 J+ d- Q
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    , x2 x( w6 X* S+ y% F0 C/ \$ X2 J贝叶斯网(信念网)' C% ]: C( \" T
    决策树(decision tree)' l4 p% a5 l( I- K6 I9 p7 N: Z, T
    支持向量机(SVM)9 T$ T! L5 @  N. l! c  m
    神经网络
    1 D7 @) _! ^& e词向量(word2vec)
    5 L" D% r2 c7 Ak近邻分类(kNN)5 [6 W$ [* G" R2 d
    线性模型; X# A  A6 s; k* s2 e1 u5 J, {
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
    - {2 Y7 L) p- g& w. `关于学习算法的性能实验结果
    ) i. W1 x/ z5 ]% B* a$ M朴素贝叶斯分类器(NB:naive Bayes classifiers)
    5 q! M5 p3 |7 q9 e0 n  q' f顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?8 g: h% e8 N. m8 D- o
    事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。
    9 O% m( @3 X" R: R
    8 n- L4 Y5 m5 T7 V% _; r! ~- @优点:7 D  \- T$ z% n, b
    1、计算量较小
    - `6 k% x6 e6 U/ c* c( Q# ?* a: s, v6 Y2、支持懒惰学习、增量学习$ }1 l$ A1 C( q& `$ m4 [
    3、对缺失数据不太敏感
    ( B% {4 `; g8 V9 f4 w, R4、推断即查表,速度极快。5 O: c$ h1 X3 e+ |
    缺点:
    ! b# e9 ?* `- g* N1、没有考虑属性间依赖& [8 G) U3 b9 H$ S
    2、通过类先验概率产生模型" c, b% Z; w9 [  v' |$ R6 z
    : D, A- {9 [# C  |  e% e5 `
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    7 y9 d, v" }4 [4 |0 R! \相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖
    9 ~3 {* w( j9 M4 }9 @# h7 B优点:
    ( X  @' C! _8 Z" n2 M1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升* k+ O( H. S, Q2 I- p
    2、计算开销不大
    7 G2 L$ s" e. S$ e3、同样支持懒惰学习、增量学习9 J  h4 n$ _, N, W* c
    缺点:
    $ M  l2 y/ c/ p4 g. h* P$ K" G1、通过类先验概率产生模型
    1 K$ s8 T$ @; `$ z2 i# E) [5 `
    / {+ g0 m  X/ l% t贝叶斯网(信念网)
    - K# W3 Z0 V1 }3 g# I" i贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。% q5 t1 C/ I/ T5 S1 v: ]  e5 n% [
    优点:
    " R" k7 l8 s4 }! C0 e1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升1 a; A, P0 b8 O2 h- P5 o  K
    2、近似估算后验概率+ Z! Z' _2 y, u  U, k' _, A7 t
    3、可用于推测属性缺失的样本8 y) |. H1 U' y  k: v0 h  K* w  b
    4、良好的可解释性$ _6 x* _6 J) Q* T
    5、常用于语音识别、机器翻译等
    7 t% @! @  j! n$ s) S& |5 g2 y* E缺点:, T8 X& _7 a; p5 z* |0 R
    1、结构学习NP难,通过评分搜索方法缓解
    2 W! t; ?; R$ s2、推断算法的收敛速度较慢
    " b$ p, ]) |1 z, Q3 F; m1 I8 e
      W7 R5 v, U9 u决策树(decision tree)) c$ ^& h, i9 y" l6 e
    决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。4 i5 r  c! _2 {( M) g5 d% M
    优点:/ f5 I) D1 _; Y# d4 I) ~
    1、计算量较小! Q7 K) l) r$ T/ @
    2、清晰表达属性的重要程度
    & O3 d0 [1 H* b- |3 S3、可增量学习对模型进行部分重构
    ; C; q& J, J- Q& E0 s4、不需要任何领域知识和参数假设
    2 V6 T7 u4 ~* M* X/ h, ]5、适合高维数据  q" M0 S+ w! n+ f. b
    6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板
    2 X/ P, \8 H6 R( g缺点:% g; K/ J* Q$ \# p7 O# O* F- k
    1、没有考虑属性间依赖
    / L$ j2 x$ c( a( m2 `8 i2、容易过拟合,通过剪枝缓解
    & t5 o; K5 i2 J* x( J$ R9 A3、不可用于推测属性缺失的样本
    $ b4 l7 T) h" n
      x$ G+ k9 }% c6 `支持向量机(SVM)
    4 |/ z1 K6 J/ Y+ b6 F6 p基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。
    - x  V- q& k, k' ~9 m6 a优点:
      X: a9 Y3 R' ], {# l' n7 Q+ ?1、可解决小样本的机器学习任务# u" e+ F& Q9 a' k
    2、可解决高维问题
    1 `) X- b6 a$ \% u( L0 J3、可通过核方法解决非线性问题  H8 f- C! r6 H# a
    缺点:, i) J  _" O7 c$ ~2 p/ d7 P3 c
    1、对缺失数据敏感" g$ X& F3 |% ~* B
    2、对于非线性问题,核函数方法选择一直是个未决问题
    5 O' L. ]0 e$ y3 n3 \" T" z+ K0 |( ]# J1 {
    神经网络, j: F: Q% @3 m2 j. m* \( m
    优点:
    3 a  C  ?% Y( S2 r; {/ T9 j1、分类的准确度极高
    * }. k3 y& J  k  m, X3 F0 M2、可解决复杂的非线性问题
    ' u9 w1 b; j& d$ q3、对噪声神经有较强的鲁棒性和容错能力6 l; p: g7 ^" x! R  O% s  ~5 S
    4、并行分布处理能力强,分布存储及学习能力强5 @# K( S+ c7 R: ^' h* T8 J9 s
    5、常用于图像识别; e4 t* H0 c7 m
    6、数据量越大,表现越好
    / |1 d7 ^5 G; d9 ]. c  ~) H缺点:
    " M, {0 _; U  y: s, Q3 v5 B. {1、黑箱模型,难以解释
    7 H: }6 S9 o* N( i- Y- `2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂
    0 t3 S( H3 o+ h' [; f0 n& Z+ L3、误差逆传播的损失
    . d9 a; ^. Q: }) b% Q) A) @4、容易陷入局部最小
    ; C: K1 x8 R3 b
    ' N5 E+ F5 o3 r9 q1 o+ H2 L词向量(word2vec)
    5 n9 [  L) Q( t: W  r6 P# A将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    : @  \, G. L" X- D/ w1 v! D比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。
    . l1 I  o8 `$ `  k; I再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。
    & B5 I& K5 e1 h% z4 Kgensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。
    $ D! V. P3 ^. `* W5 a0 h" J
    0 i' \6 f+ J. U4 {$ n! c. c) C0 Vk近邻分类(kNN)
    ( [$ B* ^, q6 i9 _: I1 \% g基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)
    2 n" w3 B6 u$ k% r8 S$ F优点:
    3 C# D, e4 G7 b, l4 m/ d& O/ D1、思想简单,易于理解,易于实现,无需估计参数,无需训练;2 |9 T( G/ \/ e$ V- F" N
    2、适合对稀有事件进行分类;
    1 \' B. O2 p. K% a0 z# k3、特别适用于多分类问题, p2 U- D% H( ~
    缺点:
    9 H% [4 b( s: u5 B1、需要计算出待测样本与所有样本的距离,计算量大
    9 @# d% ?( Z2 U6 B8 j$ B2、样本不平衡时影响大: }* s4 X( w& B5 E5 j! w& W
    3、适用的特征维度低
    5 E$ V2 b* K$ H. e
    8 X9 f1 u9 t/ e& ?- ]' u线性模型
    2 H9 H- H7 O+ r. g1 ~  V& g优点:
    / ^8 m# @6 v6 e8 i+ W1、算法简单,编程方便. \  J, v! F9 S% e0 ^" M
    2、计算简单,决策速度快& }9 I  x. N. V3 P  r
    缺点:
    6 c7 z+ i  j+ [& x- c  Z2 Z8 w2 ]1、拟合效果较差/ Q7 V7 J) w; H. w  S# m

    " ]5 P, x. f6 q" p高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
      K8 U4 H3 L2 J$ I2 `) Wk-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类9 D3 i4 e0 M8 B! v& b* W/ m* K( Q
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。" n. a, l5 G6 j# j5 Y
    . R* _$ S' i# F
    关于学习算法的性能实验结果! ?, z3 ~3 C2 |. l7 M' V. T3 Q
    点击查看原文
    & T0 O2 Q$ p3 [- J/ s- {9 u. t! P$ b$ v
    14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。
    7 [) r/ J6 ~, m) j* w论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
    ( b5 m) j2 V; ], {; U" Z没有最好的分类器,只有最合适的分类器。, @: g; P" i7 v  M/ Y, P" q
    1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。
    3 i0 V6 T- I7 q' s2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。# x$ E4 Q; x& A, S8 v8 m
    3、神经网络(13.2%)和boosting(~9%)表现不错。7 Q7 z& a5 u9 m/ }/ B
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。
    3 M3 @5 k, @; E9 P# l) V5、数据量越大,神经网络就越强。. U5 k0 d4 o5 ?# e  U0 V, E; N
    ————————————————
    3 {, Y2 y! l& ?$ u5 z/ Y8 ~% y版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    & ?' C5 _7 \. ~2 l% L原文链接:https://blog.csdn.net/u010921136/article/details/90668382
    6 ]' h7 c9 P+ j, r% t" N1 ?( L0 Y

    0 N# B5 J+ ~$ K0 u
    zan
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2024-3-29 18:18 , Processed in 0.398366 second(s), 51 queries .

    回顶部