QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2051|回复: 0
打印 上一主题 下一主题

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

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

5273

主题

82

听众

17万

积分

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

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

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

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2021-4-10 11:24 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    % m$ w- L6 g+ X% C7 i
    各类机器学习算法的优缺点和适用场景汇总- O" P& @$ Q5 E9 \& i# A
    目录' z6 @9 n1 f8 d6 q; r; x
    朴素贝叶斯分类器(NB:naive Bayes classifiers)
    3 }9 M8 y0 O7 A% g6 @8 |1 y" P& H半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)3 g7 T- ?3 Z* D
    贝叶斯网(信念网)
    - M: C* [$ _6 Y/ o' w决策树(decision tree)
    % O, z* F2 p$ @$ b支持向量机(SVM)
    1 Q+ I, ?0 U: {2 [$ o+ I4 L( F9 Y4 J神经网络; w: N' T; y( T; [0 K. H  V
    词向量(word2vec)
    & a2 E  i3 }! E3 n# Ok近邻分类(kNN)
    7 A  }2 C& J5 N, [, g线性模型
    3 o5 i5 O4 a! r/ I' f( A3 w( @/ o! D高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比  p7 t* V0 W, n+ q: H9 M/ }# A9 @3 T+ j
    关于学习算法的性能实验结果# |7 @  r' J4 {0 a
    朴素贝叶斯分类器(NB:naive Bayes classifiers)
    4 T% X) r1 ]/ F. v. e7 p8 }5 X2 T顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?: S% ~; {! e7 Y$ \
    事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。
    * u# K' E) D' A4 A8 N9 ]) G! e& }! C$ n# \2 T3 r4 q
    优点:! H* @$ n, m% e; A
    1、计算量较小* @! A6 a& ~! L3 Z! R! y7 w' ~5 r# }
    2、支持懒惰学习、增量学习' Z6 {8 U9 ~8 n3 w# _. o( H
    3、对缺失数据不太敏感
    * v" `  H% Y* ?& N, q+ H4、推断即查表,速度极快。9 s. F5 F. T2 B
    缺点:
    3 I6 [, R* v' x  e. O( ^1、没有考虑属性间依赖6 Q$ Q. e' {. {' V: b
    2、通过类先验概率产生模型) k1 y; y$ Y  _. ]

    7 a9 @* v+ n- |/ v/ @: `半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)# D$ @2 L% M; h+ z2 R+ }. h% s
    相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖
      ?2 P# j8 h8 B; [& V7 O2 E优点:* s5 ]" f9 D* v; E) _8 r1 l
    1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升" v( Q* \) e' M" ~3 L
    2、计算开销不大
    . L/ I) I4 h& X. d0 H, Q3、同样支持懒惰学习、增量学习
    5 P7 C" S5 }& G$ Q9 e3 ?缺点:. l5 |' @  I% p9 z/ [
    1、通过类先验概率产生模型
    2 m' v1 ?$ k' T* D( i; Q( L2 n0 r& ?$ a: r; ]) q: d, Q; c
    贝叶斯网(信念网)
    1 z; k% S& a3 G& t贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。) h% e, I0 Z/ {' }) S
    优点:
    ' y6 h$ J1 G0 L  |; Y( P- y% `6 B) f' H1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升
    + |) Y0 F; E6 H4 d2、近似估算后验概率
    : C+ G# N! _0 T3 d( u3、可用于推测属性缺失的样本
    % n' m' u; Z3 L$ x. N4、良好的可解释性
    4 a1 u5 ^" L2 k4 x9 z5 U5、常用于语音识别、机器翻译等7 G# H- o3 D1 W
    缺点:
    - F: D* T; O' S0 K3 E- }& H1、结构学习NP难,通过评分搜索方法缓解& B; H+ [9 U3 I
    2、推断算法的收敛速度较慢# k- i4 _5 n: _# r' S9 ]
    ' H3 f& [5 Q; v. W% h* ]
    决策树(decision tree)
    # |$ z7 [" |5 |: s# Y' k决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。" V/ s' M9 F- d- E3 d
    优点:% h, d1 m7 C% O  ^$ R% B$ a
    1、计算量较小
    9 G4 n0 o8 Y  Q* g2、清晰表达属性的重要程度
    - V4 B' ]: j# E7 A; l) A; Q3、可增量学习对模型进行部分重构6 t2 ?) r+ S+ F* N! i- K# e$ C
    4、不需要任何领域知识和参数假设& m0 H+ v5 v5 V( H# N
    5、适合高维数据8 {8 c* D' V3 F, ^/ W: x" w- j" x
    6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板
    6 d, u& p$ K  S! j' q. X: T缺点:
    1 M# p& e. d$ H! h+ z3 d, i1、没有考虑属性间依赖0 i! C, K; v2 C2 ~( o- J4 e
    2、容易过拟合,通过剪枝缓解
    % P& H4 S8 N1 V3 O& _: r, a  u. j3、不可用于推测属性缺失的样本: A( L: v0 @' w# Q

    2 R8 M9 S6 n7 f1 E支持向量机(SVM)
    % H6 F! I4 J4 ^  J基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。0 }, Y% d. \7 e8 v$ e, K. T
    优点:
    / ]% ?; h8 S; f& Z1 N+ {2 @! `5 T1、可解决小样本的机器学习任务
    $ v  N) q  C2 t  z8 X* V0 n( h2、可解决高维问题. n# u% N- g5 v9 P' h/ U9 G6 y- w
    3、可通过核方法解决非线性问题
    4 K( R2 s, I2 n缺点:  Y/ F9 m2 B) b0 ~" z& `
    1、对缺失数据敏感4 E' R  f4 S% I
    2、对于非线性问题,核函数方法选择一直是个未决问题
    ) g/ S, v$ g0 Q: U9 c* j; r. |( K; @1 E* f" a4 z
    神经网络/ t, f$ N! h$ X& L  ?
    优点:
    ! ?  [/ T) y! |1、分类的准确度极高# b6 ?: Q/ B, L/ p* \
    2、可解决复杂的非线性问题% e2 r5 Z* M* Z) b+ I4 y* J
    3、对噪声神经有较强的鲁棒性和容错能力8 m0 r* \2 }5 N( q
    4、并行分布处理能力强,分布存储及学习能力强8 k7 U1 p+ T8 J6 S. n2 h) q
    5、常用于图像识别7 v0 }3 d8 `/ K' x( R# d
    6、数据量越大,表现越好
    . p2 c8 O9 K7 d0 D, ?4 o# S缺点:- t% k/ b  i3 R
    1、黑箱模型,难以解释
    # }5 V6 u' F! |' M2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂+ S) p: X7 `0 E  q" Q" d$ K
    3、误差逆传播的损失
    ; Q" p6 Z1 S' Y! T4、容易陷入局部最小
    + v) Q1 R# N. \3 r
    0 o/ o# c& O6 K& r* o! j* K词向量(word2vec)
    ; e' j, o5 @, O5 y将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。( i  X' I4 ^. A1 f# V3 Y* ]
    比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。+ z. \( _0 ?+ O6 {! a
    再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。+ O; x5 A4 \/ J! D
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。( @. d4 V( A+ ]1 e  w' e
    % p& a1 {, h/ [  U
    k近邻分类(kNN)
      k* G' |/ v  |' @0 @基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)
    8 p( ~( {* D2 Y% Q( r' j# Q" m优点:
      c/ X; \7 D% l4 x. k' @1 b3 @, S1、思想简单,易于理解,易于实现,无需估计参数,无需训练;
    7 ?& n5 P9 v% y9 f2、适合对稀有事件进行分类;
    7 R2 e, F( B8 c- d! I& l0 T% o0 I5 l$ B3、特别适用于多分类问题
    : U3 N( h, k& ]* [4 U- [# G8 i缺点:
    ( W6 C/ O9 _, U% {# C# d; Y1、需要计算出待测样本与所有样本的距离,计算量大
    5 X; Y# n1 K# n9 O$ V2、样本不平衡时影响大
    ! I+ v, P3 t. K) d  d! a: r+ l3 A3、适用的特征维度低3 V; u0 {5 c% Z+ C# n) d
    5 t6 C  B" @/ I+ Z
    线性模型( ^& N4 m9 W  Q' I$ I! V
    优点:' M6 U6 a) a% p, b  |5 c. i1 e' T# {
    1、算法简单,编程方便( n: c% H2 g5 z- k8 H5 u, ~$ F  J
    2、计算简单,决策速度快% E. K  S! ?- _. t$ t9 u0 A
    缺点:% A$ f8 ]4 F. t3 \, H! O+ p
    1、拟合效果较差
    0 ?. o5 G7 q& C' o+ D0 I9 u+ b/ e8 f1 S1 X2 `
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
    . \. J/ W- I0 Z. Vk-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类# s3 m; }: G9 m
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。
    ) B8 h3 T6 R. u& x6 X/ c% N' r6 {3 ^
    % d. v* E. O# o( i" n$ n+ f关于学习算法的性能实验结果
    5 j7 Y, z" V/ n0 u3 c. y" S点击查看原文% k- R' ~( ]3 Z% \5 Q

    2 z4 P) g# Q5 o' _- b14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。
    1 X4 E4 G# L# b2 h3 w0 i& `论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
    1 _: p" B% `/ A+ v没有最好的分类器,只有最合适的分类器。2 L. I% v: @, g
    1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。6 S7 K5 d0 E: r3 M/ c8 L1 p" e
    2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。
    , b  i& j/ \( {9 W: s9 W3 i3、神经网络(13.2%)和boosting(~9%)表现不错。1 K3 d& L# A5 T
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。
    8 S3 h/ w/ ~, u( _% E5、数据量越大,神经网络就越强。
    $ @* q7 ~$ a5 o( v+ j! n* t) B1 c————————————————
    ) m/ t  }# m/ o版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。7 a, d$ O" Q- F* `
    原文链接:https://blog.csdn.net/u010921136/article/details/90668382: R. g5 t4 U  E# ~: V4 x6 d, e

    . g, z  v- l% u& {8 _1 |0 C! f0 f$ j! d) ]3 L
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-25 14:55 , Processed in 0.521952 second(s), 51 queries .

    回顶部