QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2079|回复: 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

    5 b6 A$ ]. x) P& G2 g各类机器学习算法的优缺点和适用场景汇总
    $ A6 e6 O' c- i6 m; _6 l4 o目录% \; ]9 c1 a3 c+ R) d1 S1 ]
    朴素贝叶斯分类器(NB:naive Bayes classifiers)- }# i( Q6 }! C: [7 q) L
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers); ~, \6 P2 `/ Q, b3 Z' o. t
    贝叶斯网(信念网)5 |9 `/ Y: }. t$ C( R
    决策树(decision tree)! J0 Z* f+ M* ]) }: \/ K. i6 u
    支持向量机(SVM)
    , C4 ~6 _! F9 B0 W神经网络( T# e4 c' J# h
    词向量(word2vec)
      e( J( B* h5 E: tk近邻分类(kNN)
    ( i) n, e# W9 o2 C/ D0 W! y+ O线性模型
    3 [) d- R& G; }. {( C高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
    4 {* T) k9 K/ |( Q+ D关于学习算法的性能实验结果* G( s; Q' _- Z
    朴素贝叶斯分类器(NB:naive Bayes classifiers)
    + [; ^( P8 A, ]% w2 K! N顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?+ @; J' ]6 L+ S* E5 @: j) ^5 ^
    事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。" i1 h6 G6 q' y% ]' D

    # H3 U! X" X; _) V$ l* B优点:
    & r' `8 P5 |: W, B6 S; j1、计算量较小
    8 E) K4 \( }- @3 K2、支持懒惰学习、增量学习) ?  ~$ m! M" G; Z/ K7 n
    3、对缺失数据不太敏感: j+ Z( H! @+ d4 M: ^
    4、推断即查表,速度极快。% v) K3 @1 K9 E
    缺点:, \% O1 a3 V3 U' D1 X' V
    1、没有考虑属性间依赖; k' s0 {4 W* w+ j- B! o- A
    2、通过类先验概率产生模型
    # {4 P0 ^. v- ~  I* q
    6 m+ z6 w! Y! m  Z& p" N半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)$ d$ h5 p: k! g6 }
    相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖6 ]' `+ t& H: C2 ?9 e4 T6 W7 O. [
    优点:
    - ]9 L  I. N( j3 S( u/ J! a1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升
    8 f3 k  ~8 P) _. L  z& q3 b) ^6 s2、计算开销不大
    $ ]  P- X. ?8 P' f3、同样支持懒惰学习、增量学习
    . R2 l& D7 G- [3 T: j7 E1 ?0 i缺点:
    + S2 s- K2 I8 ^8 _  y' g8 u4 C  ^1、通过类先验概率产生模型8 V% W, a( k) A

    4 R, z2 G) X  a$ V6 j, E! Q贝叶斯网(信念网)* N1 [0 ~$ m; Q2 b4 s( u
    贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。
    6 s% m, e9 \# Y: \; D& Z. Y优点:
    ' V" ]* I; v7 Y9 R$ G1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升7 F- M  M3 D% j0 A% x2 D" S+ {
    2、近似估算后验概率+ ~8 \$ d1 Y/ W6 y8 |) l3 f
    3、可用于推测属性缺失的样本* a+ T1 L( V( o+ T- ]/ D2 t
    4、良好的可解释性3 R, d; d! S1 a0 s
    5、常用于语音识别、机器翻译等6 A# M% d+ {* b, |/ b+ z& r
    缺点:
    * d2 S3 d( n1 I7 u' w8 j1、结构学习NP难,通过评分搜索方法缓解
    8 w/ x2 r) \0 ]5 v- ]2、推断算法的收敛速度较慢
    ' q' }, }" J; n! [2 ]  G6 U7 l+ S2 W6 L7 {- D! Z
    决策树(decision tree)
    . I8 T" h: e/ L( }, e1 A0 Y决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。. X- J% U0 f3 l6 |, h: _
    优点:  _3 f8 v+ _5 b4 ]+ J7 L% s
    1、计算量较小
    # j2 o7 R) h$ p2、清晰表达属性的重要程度9 U% y5 y+ }1 w3 Q+ w5 `* }7 I
    3、可增量学习对模型进行部分重构& M3 O" F2 x" {8 \0 [
    4、不需要任何领域知识和参数假设
    ; b/ H% r7 u+ m( i% u1 g! s5、适合高维数据# X" e# v4 |" m$ v, A1 o0 O/ @
    6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板
    ! s; w) [. V$ j  a/ q缺点:% h8 r' o" ]0 ]! C" E9 }8 L
    1、没有考虑属性间依赖
    6 w& p8 _7 D" D% w  F+ R2、容易过拟合,通过剪枝缓解+ k# F1 c, m+ r
    3、不可用于推测属性缺失的样本
    $ i6 c& j" ^  X/ Z; y1 S" f6 K& k" p1 p; l; h
    支持向量机(SVM)
    8 t& {0 X. }+ r% w) H- Y基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。  _- T  V/ i1 [0 Q! h4 k
    优点:
    * ?5 P7 a# m$ _7 V4 l# b' |1、可解决小样本的机器学习任务" F# N2 [) U' u6 ?
    2、可解决高维问题
    5 W/ X% G3 \6 J% J/ k3 C4 ]3、可通过核方法解决非线性问题
    ' _, I. Y5 T5 q5 k6 h+ c缺点:
    6 n4 ^& t& J' S& S8 N( s( a1、对缺失数据敏感
    ( J# D9 O* {: a0 W6 X0 k2、对于非线性问题,核函数方法选择一直是个未决问题
    " b" u4 m- C1 d5 [& B6 }7 ?
    ) }( N- o- j/ J% N# \# v' B神经网络
    2 a* G3 ~% _7 I优点:
    6 a" r6 g2 s  R# N4 i" b1、分类的准确度极高/ w* ?* r8 i; ?7 Z" k! C9 N
    2、可解决复杂的非线性问题+ n4 \* b2 s8 W0 ]
    3、对噪声神经有较强的鲁棒性和容错能力$ }+ [$ J! G8 Y' ]% ^* k( J
    4、并行分布处理能力强,分布存储及学习能力强
    ; T$ s# i* x8 V- K+ \9 K5、常用于图像识别, P1 h. g2 M# m9 M: C4 y8 P5 X+ M
    6、数据量越大,表现越好
    9 z# e1 ~$ v* y. O8 \" F缺点:
    & ^1 t4 D5 D' Z' O) d% V1、黑箱模型,难以解释
    8 d! o9 j% h, X* U* g  |2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂
    * `/ N, Y7 U0 C1 C* ]3、误差逆传播的损失
    ! c# g) L$ A, w% S" `4、容易陷入局部最小5 F3 T5 K/ E' n/ S0 W. B2 W4 o% F

    * I% s% H1 H: w* t& u! T1 [词向量(word2vec)7 h" e3 y' ?+ u( A5 f
    将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    # \! U' T+ Q( o比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。
    2 G9 R, R+ D; Z9 ]. s/ Y; @再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。
    ) s- [1 J; b2 }  R0 Z  u0 N6 Lgensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。: R0 |( Q' M' y- Z; e6 x
    % P$ {% [* s; d7 H6 I# S1 ]
    k近邻分类(kNN)
    " R0 A3 B" c1 D  P1 ^基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)
    , g2 [4 z3 P& q' i. w优点:6 K7 F& N/ M, Z
    1、思想简单,易于理解,易于实现,无需估计参数,无需训练;
    . X9 r  Y* B* r5 V. D2、适合对稀有事件进行分类;+ ^7 D/ `" Y% U6 h* y# X
    3、特别适用于多分类问题) |5 U. c( T8 k8 z! J8 L3 \3 b6 Y
    缺点:5 l" X4 }# r8 [6 d3 l
    1、需要计算出待测样本与所有样本的距离,计算量大
    + Q6 v% b: K( J( t4 R8 B2、样本不平衡时影响大
    - I& E, d: x) ^1 B  d3、适用的特征维度低6 k* v2 s6 j* L) K

    0 t- m/ F# t& N4 B3 @* N线性模型
    8 ]6 M: ]# d9 x0 t优点:) \; V: O1 H- G) r! {4 H
    1、算法简单,编程方便) A  u4 \) K$ u/ b) z0 f( d6 P
    2、计算简单,决策速度快
    8 Y! [3 ~) ]7 r0 {3 M* y- {缺点:
    ! e0 m% r2 e4 U# R5 P1、拟合效果较差+ ]6 ~# }; b  \5 I8 o
    , p2 X2 O& l+ U3 G
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比# v/ j# G' b; ]5 c8 H* n; h
    k-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类& j8 P, i: v! b0 `# S& }% R
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。; J6 b& ~  Z( }  W! O
    5 I2 a/ a5 ~7 l3 Y# _
    关于学习算法的性能实验结果; l/ d* H: S; t; K
    点击查看原文
    1 y0 s' f) y( U5 t. ]+ F. L. Z
    ' D, e* m7 a$ j) {" T14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。: m; ]% K- n! n, ^
    论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?% k7 _! Z3 X* s7 b
    没有最好的分类器,只有最合适的分类器。
    ! O' e- p7 Y2 c  b) ~/ d1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。! H3 i% n. Z: h0 R! |/ B
    2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。, z& T3 J" R# h0 f. S) f
    3、神经网络(13.2%)和boosting(~9%)表现不错。* [! `8 ^# ?. f7 j+ ?
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。8 R% U3 @, {1 X0 k8 [
    5、数据量越大,神经网络就越强。
    2 m( I8 p2 v$ |2 I8 A, e" E4 q————————————————" x" Q2 s0 S" Z0 i1 \6 m" `
    版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    # J3 E! @2 K/ I! Y. F原文链接:https://blog.csdn.net/u010921136/article/details/90668382- Z3 _! R. a3 ]6 W& u) Y
    ) P3 N  |# Y0 c$ Q9 P9 R

    3 `8 v- ^; G2 [* Z0 z2 u
    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-9-8 08:49 , Processed in 0.387891 second(s), 51 queries .

    回顶部