QQ登录

只需要一步,快速开始

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

    8 n/ F$ L' H8 R6 j0 i/ v+ s2 q各类机器学习算法的优缺点和适用场景汇总* m" Z! K( {+ K4 q; g- ~* K9 a3 X
    目录. }# }' @. y1 R, q  U
    朴素贝叶斯分类器(NB:naive Bayes classifiers)- x  \$ i2 U* F  U
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    5 G9 |! }7 P: g贝叶斯网(信念网)1 j' U, C& l) O6 J3 K% O- g1 n; \
    决策树(decision tree)3 o6 V/ V# M6 r5 I2 g4 r
    支持向量机(SVM)/ P0 b0 R3 @3 B+ U/ q
    神经网络3 l" F6 R" |  H9 D- B
    词向量(word2vec): }/ S- r. ]# J
    k近邻分类(kNN)
    . K+ V, I; D$ \& Y& S( L线性模型
    ' i* X' f5 ]( |& T2 N0 y2 W9 S高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比( @; q, {$ G1 t2 }
    关于学习算法的性能实验结果
    4 M- }1 h1 \" V. `# |3 |, E! H5 U朴素贝叶斯分类器(NB:naive Bayes classifiers)
    9 b& _& B% e7 U0 B顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?# v: T% X& @1 V# d$ j  L
    事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。  Z0 }' B' a+ ~3 _; _1 A* d

    : @# O6 D3 K* h) j优点:
    % q9 R# D1 Y" R# a1、计算量较小4 c6 R# t& p' b9 ^
    2、支持懒惰学习、增量学习5 l! a' X; q5 T- ?- i2 D
    3、对缺失数据不太敏感6 }' x* J3 [: U
    4、推断即查表,速度极快。: J/ M* U$ y/ J8 t3 R4 r" G' A
    缺点:' t8 f+ P7 u& F* P' u# j
    1、没有考虑属性间依赖& `6 }" d0 V$ Y. L
    2、通过类先验概率产生模型
    ) m- t: k9 k' i" \- \( [9 d# l- P! v! p4 B$ M- i! ~8 R* t; }
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    5 @$ g6 r2 H1 G( x& Y7 S+ k相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖
    ' Y) s' [5 Q) x$ a  n$ C: E6 V优点:
    ' R8 x0 ?  A! ?. E' ]$ i3 R7 k3 d1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升
    - b( _/ O4 _6 B* j) J: D2、计算开销不大
    0 C& M5 J; Y/ y+ ]3、同样支持懒惰学习、增量学习: ]8 C1 E% H- p: r) w& c
    缺点:& T. F% N5 L1 w$ t5 C# ?
    1、通过类先验概率产生模型
    & n0 i' a9 q- |. f4 F
    " k4 O  g. z# j2 O: w贝叶斯网(信念网)
    6 ?4 j9 \! C) O: M  N9 U' }贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。
    ( F% h5 W, L& k+ t优点:! ]) K) d; |( x: @1 {' M. \* p  x
    1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升
    5 B; P: F$ J/ ?+ A+ H2、近似估算后验概率
    ' g" [0 d- a# z1 U) |8 Q. T3、可用于推测属性缺失的样本
    - ]3 ?9 a, ^5 `4、良好的可解释性( m( ?8 U; s! P1 T
    5、常用于语音识别、机器翻译等; J: Q5 p& O: D8 \
    缺点:
    9 K% Q3 S7 U1 ^. O6 t1、结构学习NP难,通过评分搜索方法缓解
    # C4 G$ S* R6 ]! t2、推断算法的收敛速度较慢
    " }) `" R! P+ d6 s" T5 t3 {) W  o# ~2 W, `2 V. \
    决策树(decision tree)2 y  O; Q% {! E, Z3 c; q1 Q5 T" g
    决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。9 l/ `9 V. g' `4 O8 Q5 @" [* f; d
    优点:
    2 f+ l4 C8 r9 T( [' Z  M  }" m( P1、计算量较小
    3 D: Y/ b( I, i; c+ K' ]2、清晰表达属性的重要程度
    % g: K1 W6 l8 w: e% E6 K3、可增量学习对模型进行部分重构5 h8 j& y0 l/ D8 ~& J& l
    4、不需要任何领域知识和参数假设& W' [" _5 C1 n8 b
    5、适合高维数据8 H. U1 E: p0 v% M/ s
    6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板6 X$ B( Z; g  B" L5 W
    缺点:
    7 v9 d3 M1 _& Q) V. g1、没有考虑属性间依赖, F. C% m9 U; ?: w9 r
    2、容易过拟合,通过剪枝缓解
    * B( f- |/ {0 {# \; o- \- Z3、不可用于推测属性缺失的样本
    ( a& j$ V; Y9 x: ]3 r* ]7 s" {% z/ z+ e1 N8 B( Q
    支持向量机(SVM)
    % B) u4 y% f+ Y2 E  l基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。
    6 i0 p/ e) r3 p& V/ x8 O# W6 g优点:' D9 i- _" Q$ j# K
    1、可解决小样本的机器学习任务. }0 u, n* x: s& D
    2、可解决高维问题' r; J4 R4 _# N  K* D
    3、可通过核方法解决非线性问题/ P3 y0 p( q' p8 f- K, [4 Z
    缺点:5 d( `- d0 i( `- ^6 f
    1、对缺失数据敏感
    0 P' e1 m) G' x1 Z; j2、对于非线性问题,核函数方法选择一直是个未决问题
    5 a* `: ]' q- T4 E9 g( C
    ) ^1 j2 m6 {; X: h' r# m神经网络
    * t6 Q) a3 o3 o, j/ N优点:
    * D3 D* s* y! K% K7 z* M" E1 e# B0 w1、分类的准确度极高
    ( Z$ W1 B* w- K) p: m/ g7 q3 O2、可解决复杂的非线性问题
    8 Y( w* y) d1 [( y4 N3、对噪声神经有较强的鲁棒性和容错能力
    . V& E2 g1 l7 `: I& U0 q  N& b4、并行分布处理能力强,分布存储及学习能力强- F# V" I' E+ f2 j' |8 K% @1 Y) H
    5、常用于图像识别5 M# F3 F- f  E( W
    6、数据量越大,表现越好
      l! u; {1 W9 ?* V) J缺点:1 s& b7 ~, O4 U5 g
    1、黑箱模型,难以解释+ ^2 @* E  M6 T' g. D
    2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂
    ) H3 _0 F. c1 M7 l3、误差逆传播的损失) {: B$ _' w1 I3 i
    4、容易陷入局部最小% v& j/ n' [( \

    0 t# I  Q2 K1 j) A- A5 E. o6 X词向量(word2vec)4 l. a% {5 I# H; F3 P) X7 ~; q* X
    将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    ! l6 u! v9 p4 c比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。
    ! p3 H3 e( ^4 Z5 O" G+ V, \1 Q+ u再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。* v  T- }5 I+ n9 G4 z! l
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。" C/ z7 |$ @+ p% |
    + h+ N! s" b1 b1 u1 x3 n
    k近邻分类(kNN)- l. q* O- v0 w' l5 `6 |
    基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)3 `1 S) W: {. Y* M( h8 H
    优点:
      w/ F2 M, M4 G  e! a1、思想简单,易于理解,易于实现,无需估计参数,无需训练;
    ! G% N0 f) j4 S' ^) U2、适合对稀有事件进行分类;* {; O4 v4 H$ K6 o
    3、特别适用于多分类问题0 j! ]. |) e+ e6 @# D5 u: W
    缺点:/ \$ M# o1 ?. a7 _( N: a: p
    1、需要计算出待测样本与所有样本的距离,计算量大
      _( l+ u/ G6 d, v; W' K2、样本不平衡时影响大
    $ v2 {! @6 p  I' E3、适用的特征维度低
    2 T. [( D* i0 L
    % e2 p* D6 ~9 o" a线性模型: ]! o7 [( s: g" ]; \
    优点:
    ' V9 L- o3 S& \. E2 \9 k1、算法简单,编程方便
    8 W/ R; }2 t% l/ R7 p2 y2、计算简单,决策速度快
    / D& T0 K- U/ ~缺点:
    2 Y( q0 n% l" n( I( b1、拟合效果较差  b, B4 t" x. u3 i" V2 I

      J. K( A% Z3 {2 j3 o! q, d& Y# t高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
    0 D5 }6 c+ q# l/ Y0 g3 Lk-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类8 K, J+ O/ o( h4 z
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。
    * j/ s; }* c0 j1 u9 v4 ~7 s. O
    ' L0 d7 e+ W8 R! {2 m: H. ]关于学习算法的性能实验结果  e) ]" y/ Q. l& L1 @
    点击查看原文  |' x2 K2 ~3 U6 T2 H
    ; A; c# I% Y. p$ O
    14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。
    2 [& n# c- h4 q$ s9 C论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
    0 t: E" _$ ~+ E没有最好的分类器,只有最合适的分类器。
    7 C6 _1 w( x' c) M1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。: u5 z& V( @* M# z8 z
    2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。1 w2 l* V4 j1 ]  e2 q; J
    3、神经网络(13.2%)和boosting(~9%)表现不错。& f; O9 t* P; M, `
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。
    7 c% T5 O7 ?; W8 W5 r. a! H5、数据量越大,神经网络就越强。
      |8 Y, x. d8 g' X( {6 w6 b————————————————
    3 _" _: [8 U2 S8 c版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    - y$ W6 m+ ^) }4 z原文链接:https://blog.csdn.net/u010921136/article/details/90668382
    6 y$ D6 `( x) b" L: V
    . g; G; w% R3 R4 m4 y, v
    * v+ P# ]9 m1 g0 u
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    fastpost qq
    收缩
    • 电话咨询

    • 04714969085

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-11-1 11:12 , Processed in 0.210137 second(s), 51 queries .

    回顶部