QQ登录

只需要一步,快速开始

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

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

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

5273

主题

81

听众

17万

积分

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

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

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

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2021-4-10 11:24 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    & \# a: L1 I6 S" F8 t
    各类机器学习算法的优缺点和适用场景汇总6 r+ @% C4 h. C
    目录
    0 z% P& W0 d' e  E  i0 z# t4 ^  j% n朴素贝叶斯分类器(NB:naive Bayes classifiers); A- W5 l! I) ^5 j4 N) V
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)/ D# m7 p' H- R4 [  Z, c& J
    贝叶斯网(信念网)
    & `' Y4 ], x9 n0 Y3 k决策树(decision tree)8 e+ J9 Z' I: M. K- _
    支持向量机(SVM)
    . c) I$ O" K* e% W/ k神经网络- g1 A4 C$ u+ f; O$ Q3 I
    词向量(word2vec)5 }2 c. Q& N$ l+ `9 ~6 F" q8 g
    k近邻分类(kNN)
    ) K5 E$ |6 Y& A% i6 ^3 W线性模型5 S# E: Z$ O7 N2 `" B
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
    $ o5 z5 d' _5 d) _  ?关于学习算法的性能实验结果6 I( k# o. I# o" ^0 d; @
    朴素贝叶斯分类器(NB:naive Bayes classifiers)
    3 L, a5 g/ O$ y2 L. y* l顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?
    , [% |; I0 y  T7 B; F* }% y事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。0 J- \# u, f; L  j9 }! Q+ v

    $ |6 h( {$ g5 ^1 h+ a, m优点:+ T  M1 M- ^0 Q# `! C6 ~
    1、计算量较小+ R% `2 U) G2 f5 m2 Y4 b
    2、支持懒惰学习、增量学习6 N% u9 T* F( |5 X
    3、对缺失数据不太敏感3 {( d6 G0 q* w) x* I6 H# A' S/ ?1 ?
    4、推断即查表,速度极快。3 Q. y: [7 I" _0 l
    缺点:
    + t0 ~  Y+ y0 d. U) n, ^/ t9 b1、没有考虑属性间依赖- e  e2 s. O# e) p. g1 Z# H
    2、通过类先验概率产生模型
    ! n1 ^/ D" Q: T: o( t- H, C( E. W: a  i/ [: q4 _
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    5 o" p7 \0 e( J  a4 `# K  I. x6 E: D相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖
    1 W" |* O7 j0 N  I优点:
    . N7 F5 m. v9 U" s+ l+ k1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升) B& e7 p& [' T( \; o
    2、计算开销不大
    2 o+ B& U: @, Q2 i( S! y) O3、同样支持懒惰学习、增量学习9 {& C$ ~$ r, m9 w/ ?
    缺点:
    5 F, v7 V+ Z( z1 [- e$ ^1、通过类先验概率产生模型
    ; d2 l1 C8 `8 y
    7 G6 d* j+ x  E9 H. W贝叶斯网(信念网)- j( E9 W, @" V4 l4 N$ d  p
    贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。3 ?( l# l6 |; F3 j9 _3 n/ a( k
    优点:
    6 D, F  E; Z1 N1 _2 y1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升
    ) q1 \0 X7 `2 q3 N2 h% ]4 w2、近似估算后验概率
    5 G" A$ k" L, z" `8 z) N3、可用于推测属性缺失的样本
    $ x5 Q! ?7 K; s/ U4、良好的可解释性
      G' A  i. }" X  L; ~1 C, P# N5、常用于语音识别、机器翻译等+ B& z! U) ~0 P
    缺点:# k. `4 W- O* {
    1、结构学习NP难,通过评分搜索方法缓解
    $ j  H; ~5 Y+ s9 n" K; {* x  |2、推断算法的收敛速度较慢
      K( F- ^( J# n6 q) [3 C  M$ v
    决策树(decision tree)
    ) \2 T! o  i% w6 m" K" }决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。
      s$ C9 e/ c* N% s优点:
    0 b& t# `4 n7 C; \) \1、计算量较小( B& U( k1 ^3 B& S( t+ F
    2、清晰表达属性的重要程度( _( k" Z$ n: ?: P9 D& h0 S) [
    3、可增量学习对模型进行部分重构& J9 \* Y; j- \2 N+ l) k' Y$ G9 G
    4、不需要任何领域知识和参数假设
    & L) a; Z- ]( y+ @9 r- F2 b! T5、适合高维数据
    ! R1 X/ d* s& R" b7 ~4 Q$ G6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板3 ]. y* O; G) U% h
    缺点:
    3 \# P# l- j  d- J1、没有考虑属性间依赖
    * Z2 w9 ?4 O, u$ k, ?6 X2 ~0 Q2、容易过拟合,通过剪枝缓解6 J7 u0 c; ?: `8 X1 G1 s% [
    3、不可用于推测属性缺失的样本
    . B$ j3 S; q8 W, t$ \  {; u% ~' [
    % k$ Q3 z. k. u* ^支持向量机(SVM)
    . t7 w- c4 I% m# G) p" K基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。
      L& h2 w7 R+ P# D) z. c1 R8 w# u优点:$ C, i1 `* r7 k. \; `
    1、可解决小样本的机器学习任务. a- I+ H- @. O+ ]% w7 ]
    2、可解决高维问题- G+ @/ K$ Y& H& L1 D" S
    3、可通过核方法解决非线性问题9 {, e, G# z6 {6 Z9 ?. b
    缺点:& m: b# E; E. H6 s' P. t
    1、对缺失数据敏感; Q8 Q* m  s: W
    2、对于非线性问题,核函数方法选择一直是个未决问题
    : x' G; V4 l0 ]  c/ b# Y. u$ U: `5 u+ H, e# _
    神经网络& N7 g- L! w! ~) r' e5 F
    优点:
    8 F; l3 u6 h- f7 C1、分类的准确度极高! M: Q- ]) G( x- V& h
    2、可解决复杂的非线性问题! S0 X' c$ Z0 U, K8 e
    3、对噪声神经有较强的鲁棒性和容错能力
    2 ~7 J( C/ e8 |4、并行分布处理能力强,分布存储及学习能力强
    - \+ c2 o" h1 o+ ^5 [5、常用于图像识别+ b% A9 S# s: V0 R% H
    6、数据量越大,表现越好
    + [3 p# b+ x6 k; E0 B% l: ~缺点:8 k3 v: y% Z; o4 o
    1、黑箱模型,难以解释
    ; g6 i- c  l9 a: {) g2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂
    ! N* F; A' S3 t% U: j  g3、误差逆传播的损失: @3 Z7 T5 T/ J, X
    4、容易陷入局部最小
    : \5 U1 u8 d% E6 p6 K
      {6 Y/ x9 m8 L5 @词向量(word2vec)
    7 K5 x0 d. S/ C将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    # P0 [' y2 E3 O) {" g比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。
    9 y; M. `! J7 s再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。0 }5 m* X* E. m# l% Y
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。
    6 Y4 k) L* ?  W3 \# b
    ! F- L4 ^0 `! ?( ?k近邻分类(kNN)
    / u6 A8 e) `% s6 f" A5 i4 K基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)1 ^/ ?5 Y, A: @# U$ W
    优点:, W4 E3 c0 _0 C
    1、思想简单,易于理解,易于实现,无需估计参数,无需训练;
    4 x. j' [' B( i0 S, n$ `- h2 A2、适合对稀有事件进行分类;& e$ d' }# o6 j! D: i7 ]
    3、特别适用于多分类问题0 g9 W4 s( @1 T% u; }
    缺点:
    6 p$ H0 a9 C) F! k1、需要计算出待测样本与所有样本的距离,计算量大
    6 @8 G  ^- u5 U2、样本不平衡时影响大
    * O7 x6 b: L1 c" G2 s1 F3、适用的特征维度低
    5 j7 t1 m% t' T9 y) _3 }+ ?$ Y/ j* V2 _0 [# s: K
    线性模型
    3 Q- s: ]: s& W0 r. R9 c优点:
    * k) ^" e) P. i9 Z4 w1、算法简单,编程方便
    6 S) |; w3 j8 [5 Q4 O) Z) m2、计算简单,决策速度快
    3 q* V3 ?7 P, z0 o: A缺点:' g' H5 y& T6 T$ V
    1、拟合效果较差
    4 I, u( h9 @* `* ]& M. L. z1 ^1 T3 t/ f5 z6 H7 k2 R0 u
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
      i+ E- S  d7 u9 zk-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类  f5 _4 A/ C5 o( w: d2 m- p" T
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。! Y+ Y* e) \; W: n& E; J

    - p. f8 K0 |& R9 N( }) T关于学习算法的性能实验结果
    4 N: C; w' F# U* s0 c点击查看原文
    % g) `& b6 G2 K( h8 Y8 W8 y4 |% e& A% U: a
    14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。5 E+ L# Z! s: d  h- s
    论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?: V( @, p$ s6 h4 ^% k1 U
    没有最好的分类器,只有最合适的分类器。
    * Q" G) O. N. C, O8 @5 k8 d6 i- T7 e8 V1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。
    9 g- k$ u. d  H! }* F- A4 h2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。( q$ b* Z) r5 p4 S
    3、神经网络(13.2%)和boosting(~9%)表现不错。
    , h. M2 `( N! P8 V( d( ^  ?4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。
    % r5 Z0 m3 {- E0 ~( Y& C7 H, R5、数据量越大,神经网络就越强。
    - k: Z# {7 U! Z————————————————7 A8 l9 |- ~( K$ c
    版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。5 X4 s( q6 j: \9 S
    原文链接:https://blog.csdn.net/u010921136/article/details/90668382
    7 ]/ ]) J1 g  R/ l
    $ f- e& V1 E) M7 K/ F
    1 r2 [5 x; x# y+ v) B
    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, 2025-5-15 13:59 , Processed in 0.380100 second(s), 50 queries .

    回顶部