QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2053|回复: 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
    9 O/ n7 `+ |- K8 z
    各类机器学习算法的优缺点和适用场景汇总
    0 @4 d6 s9 \8 X3 W9 H4 e目录
    . }/ Y; M& v5 E2 k( w% G5 J3 w朴素贝叶斯分类器(NB:naive Bayes classifiers)
    % D2 w6 k+ E1 d; }9 [半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)# G' G6 p6 }  _
    贝叶斯网(信念网)
    " j, P& y+ E, g0 ]! [- f决策树(decision tree)# \, y9 v( M% Q/ v5 K  y
    支持向量机(SVM)
    : q4 E# V9 {. t. I. c7 e! ~神经网络6 v3 ?) y* V3 v( j$ t2 D  i
    词向量(word2vec)$ z. G2 l2 M5 _
    k近邻分类(kNN)$ T( S4 ]! I! g$ J4 G
    线性模型
    ' S" N/ p2 @. e3 c高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比/ u3 x% E) H  u( _- E
    关于学习算法的性能实验结果
    ; A8 Y7 z- L1 R朴素贝叶斯分类器(NB:naive Bayes classifiers)- _+ m5 p8 \" Q* g4 ?9 S
    顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?
    9 A: ~4 C* J' k  K' x3 m2 l* @事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。# E( c8 {4 ?5 ~' ~* [4 e3 @

    0 w/ q0 z, i7 Z5 A1 z0 t优点:
    3 U9 ~; {- x2 E8 j6 N1、计算量较小
    ! d0 B( ]4 L! c2、支持懒惰学习、增量学习
    3 F+ S0 e, ?: A5 D3、对缺失数据不太敏感
    & L) i# I3 Z! Z. s0 O3 K0 Z$ r2 Z4、推断即查表,速度极快。1 F% a0 M6 D0 Q) h" V
    缺点:( [9 C: Y* ]* p3 R% B; N/ G1 q
    1、没有考虑属性间依赖& i9 |: c9 C$ K/ w( {  X' Q
    2、通过类先验概率产生模型: m6 l5 o. q( X& W! s+ k( P7 j
    " s9 w2 k$ F0 g' x
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    ( l, p6 r. G, K( L. U2 @8 s" C相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖7 C2 o: l# p! a7 {  T' O
    优点:% s7 ]# _( H. B
    1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升
    / H# z" P# k$ v  p$ q* U3 m& {4 V2、计算开销不大
    ! \, ]& z* J& g5 P7 O" d6 z, G; X3、同样支持懒惰学习、增量学习) X9 p( |" q% b' R& k) `% ~, w, O
    缺点:$ F! ]( V! ]4 k! |) w- l2 J
    1、通过类先验概率产生模型. D! v( U- A. Q7 q% x: p, `

    ! i! U/ K7 X2 g8 k" j2 _贝叶斯网(信念网)( r5 Y- ~/ B  M6 ?3 {3 ~
    贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。
    ! }1 G; z) h$ [! l优点:# z* ?8 B' L* D& K2 Q  X5 |
    1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升) _5 q& t$ Q5 I* y
    2、近似估算后验概率( g. _, q$ S* T
    3、可用于推测属性缺失的样本
    3 `) J& ?  K1 n2 H) Z6 K) \6 a4、良好的可解释性3 b, g( q! u* N" B8 w
    5、常用于语音识别、机器翻译等
    0 y+ \! e' N+ z* o* ?4 ^/ N缺点:% Q. g9 [  h: C, j$ [6 X& v
    1、结构学习NP难,通过评分搜索方法缓解) o# v% [( b3 C) f  U+ f
    2、推断算法的收敛速度较慢, ^6 d6 I0 l$ Z. T4 N0 q2 Y

    ! C5 h4 r7 O1 _+ s% }决策树(decision tree)$ L' C/ ~/ b4 w; }
    决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。
    & g1 g3 {6 I/ n  j5 H优点:7 R: @) d+ I, A- A& D
    1、计算量较小
    % R! u: A3 p2 _  M7 r2、清晰表达属性的重要程度4 o# G' k4 r3 ^; M: Z; f% c
    3、可增量学习对模型进行部分重构9 L" M8 x  ]; {! s# D7 w# \
    4、不需要任何领域知识和参数假设9 m' b$ K+ X4 n6 F# [  R
    5、适合高维数据" B( [" ^0 @+ r3 ]- F$ z3 S" \) L- `( j
    6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板# _, k5 n4 o, ~( @7 a& u/ w
    缺点:
    2 c" i9 a, N; R) D2 U1、没有考虑属性间依赖0 O% Z* g7 E* ^! m6 @- v/ w
    2、容易过拟合,通过剪枝缓解
    4 r' [, A% ~# m2 s3、不可用于推测属性缺失的样本1 M* y% v) }0 V* G% G/ g2 Z' M6 m; o

    / A6 ^, W6 k/ H" k+ z$ q' y; @支持向量机(SVM)
    9 U1 z2 ~: }. q基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。
    / g9 K+ O( @4 @+ k优点:" h' S1 q. c6 ?6 k
    1、可解决小样本的机器学习任务
    6 X* ~( M3 L( p6 b2、可解决高维问题- u7 c. ~: Y1 O( i
    3、可通过核方法解决非线性问题+ G: v" K4 K% C* R! g' s! G
    缺点:  }3 U4 Z. P; `0 {: F$ ~
    1、对缺失数据敏感
    # b4 `5 v2 R8 m8 B- N7 ]- y! s2、对于非线性问题,核函数方法选择一直是个未决问题
    # c. g) V8 `, U1 y& k
    ; {1 f* p% }5 P* @神经网络
    ; ~5 K" f8 w# Z优点:
    / u8 h: X& u8 r8 ], q1、分类的准确度极高
    % v& s4 F/ Z0 P! b1 ^$ G1 t2、可解决复杂的非线性问题' G, |" u. W# |  J' G3 i. X; ^
    3、对噪声神经有较强的鲁棒性和容错能力- z9 L) X" L/ l( D
    4、并行分布处理能力强,分布存储及学习能力强
    * s6 [7 `& J2 J5、常用于图像识别( }- S" x/ c1 O: m$ l! T
    6、数据量越大,表现越好
    4 j' V4 m. O- X5 e1 K) J缺点:2 q" o# C' L- {& A4 u: A1 \4 g
    1、黑箱模型,难以解释
    ) |( j, ^* Q: R2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂# i* o5 m. l) L! U! z
    3、误差逆传播的损失
    ( V4 i: l/ Q6 @4、容易陷入局部最小1 V+ b9 d. a: @! B7 l. N
    : v7 K0 J: g( G6 ]9 u- {" J/ Z
    词向量(word2vec)
    ! p. Y: P  b" N. I将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。( N. m% n  [; J! L. f; Z3 z& c
    比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。2 \. ?  ?1 h4 f8 @0 D# g
    再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。5 ?; G0 N( B+ y. t& |4 N
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。' N7 D2 ?! W! `; y9 R
    ' Q8 l  O$ p  Y! G, K, y
    k近邻分类(kNN)
    % k3 A) E- j1 j4 I/ W, e. u基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)
    & X# }$ s% p1 R3 b; R, |优点:
    / n1 D- Y+ i! }) f  f1、思想简单,易于理解,易于实现,无需估计参数,无需训练;
    6 N. y9 [& k% Q( y1 Q2、适合对稀有事件进行分类;& O6 L7 x# d2 Y' _! J) I
    3、特别适用于多分类问题, P; X$ \) S4 S1 r7 A# L8 N
    缺点:4 [" c% O$ h6 J% w. b
    1、需要计算出待测样本与所有样本的距离,计算量大3 f. F3 {: H# _4 S8 B
    2、样本不平衡时影响大
    4 a) i/ r! F, t) w0 A3、适用的特征维度低9 h! G1 I' t, T% B$ H
    0 X/ B! _; v8 U/ m
    线性模型6 Y" h# i/ V9 F  E) Q/ @, ^
    优点:
    $ b! c4 C% ]* V3 o1 p) q4 o1、算法简单,编程方便2 x0 X  b& b) P$ E: g" K
    2、计算简单,决策速度快
    3 x5 s8 m+ g6 n: W% |. \缺点:9 O$ f* Q. n' n4 m  r( Q
    1、拟合效果较差* Q) k5 p. p" z7 X( ^: G

    8 Y6 S8 }$ ~+ }. X  ?8 ~高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比0 }# R6 E! N* b& q0 y
    k-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类& r" b' Q: a3 q3 N, Y. c% T
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。- E8 {7 [: g+ b) b* {; |' a

    : a/ v- [/ y1 c* r- Z关于学习算法的性能实验结果( M* {. X1 s% l# |' I' S/ V/ \3 d
    点击查看原文
    5 H6 ?1 R4 M# {/ Z; ^+ w4 _' V/ V7 k( E6 w& E9 S% L
    14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。
    , J; _! z: |$ Z7 W* j% K, o论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?: s! \- ?& p4 T7 y, [  ^1 }
    没有最好的分类器,只有最合适的分类器。- v+ C7 n' z6 f+ W
    1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。5 K8 E- V$ w2 ^9 i, m# o
    2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。
    : B' q- d7 T" g+ Y: j3、神经网络(13.2%)和boosting(~9%)表现不错。5 g; q* J' H- r5 N( t! g
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。+ z2 x' t/ B* F
    5、数据量越大,神经网络就越强。
    7 ^4 q6 f1 n2 V————————————————( u# u. J2 @- ^1 d) ?
    版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    $ T; E* h* A$ k0 S4 z: \/ k' I原文链接:https://blog.csdn.net/u010921136/article/details/90668382! X; X; i8 z7 t. y( Z# c

    ; [9 \' I9 {% Q) ?- b, E
    5 r4 F5 f, Z% }  c# R3 G3 C
    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 20:14 , Processed in 0.698173 second(s), 50 queries .

    回顶部