QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2054|回复: 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 q! r& o- e: z7 o0 N/ k& ]. j6 B各类机器学习算法的优缺点和适用场景汇总
    - [* ~+ A- A+ I4 n  |0 S7 l/ j) c* `目录- K5 a  f& _6 I9 j5 c" R7 u) H" O
    朴素贝叶斯分类器(NB:naive Bayes classifiers)
      f) I7 a4 H' A- K半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)1 v8 C( D4 N/ X2 _# j- n
    贝叶斯网(信念网)
    ( q4 }9 |$ ?  p( L决策树(decision tree)5 p3 h. v* l9 j6 M$ n
    支持向量机(SVM)$ O9 m8 U: u! I/ r$ V% ]! S
    神经网络
    : I) g1 F5 P; C. o词向量(word2vec)$ A6 V: j$ i$ K
    k近邻分类(kNN)" D/ ]0 H6 U7 q8 P; ]! C* k: b
    线性模型
    ( x2 g7 ]  m( H# i高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比5 m2 N9 l* A& @
    关于学习算法的性能实验结果
    % L$ o+ G" B0 m% q1 S朴素贝叶斯分类器(NB:naive Bayes classifiers)
    3 f5 l8 z2 |0 k+ _$ B3 l顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?9 s6 y+ w* S+ Z  D" M8 M1 V7 F
    事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。; U, ~' y2 {3 X8 y" R

    4 i) @8 r1 d3 M; N& }2 p, ?# @优点:: S; B, ~3 }5 a
    1、计算量较小; X* f1 s3 B( w( p4 N4 K
    2、支持懒惰学习、增量学习
    2 ?+ Q# a0 C& M4 F; Z& e3、对缺失数据不太敏感& |6 B) U9 d# H" C5 h
    4、推断即查表,速度极快。
    + ^9 J; S- b& r* d1 r9 E缺点:8 P# X! ^. ^& _1 u
    1、没有考虑属性间依赖1 i, n3 Y9 p! k4 ?. V
    2、通过类先验概率产生模型
    . s' f) W+ a6 t6 v$ R7 @+ o& M0 i% k  _  c# L% k5 o- R: e0 d/ U
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)" q; j  E" V& k4 q' G- G
    相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖: s2 p3 r. E0 X* M0 o
    优点:3 {# I: N/ \4 x5 z3 J( s* L7 w
    1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升
    ( [) j7 H! j9 c3 e2、计算开销不大7 i( Z; s  s+ X: D5 Y) D3 `! S
    3、同样支持懒惰学习、增量学习# Z2 s+ p; ?7 n0 q7 d0 w4 K
    缺点:
    " t5 ~' X. K; @! M: L/ o! W1、通过类先验概率产生模型) m1 q$ {7 f7 v+ \* S/ p
    1 \+ T7 K8 O+ s/ q, P
    贝叶斯网(信念网)
    . J) L, {$ F6 z  `( g贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。
    5 c( D6 N4 H* X  O优点:& n( w# m' Q; q9 T
    1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升
    ; j' m( P. f  {9 u  e5 T1 f2、近似估算后验概率; L) b, m4 t; v/ S4 a& m8 ]' v0 l. G
    3、可用于推测属性缺失的样本
    ( _9 ^0 f# ~+ ^* {4、良好的可解释性
    + w( x/ a. G" |" z* @5 A% Y5、常用于语音识别、机器翻译等  C- T9 a8 c* M5 j$ `
    缺点:0 N0 e" d0 S* B% _( a& j
    1、结构学习NP难,通过评分搜索方法缓解: x/ ~+ ]* a+ R" e. c. F4 |
    2、推断算法的收敛速度较慢9 o) R; O! ?. P, o3 j) a% M* ]" v

    7 }! o5 i% Q: @/ R; F- w+ y决策树(decision tree)
    # J. ~% z  k7 b& V6 S% }' l# U. A  A决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。1 ]# z3 w% _- A& d! a1 n0 |% ?& p
    优点:
    % R3 x' C: `0 I$ [6 r7 o+ m1、计算量较小: W8 Z# Y) K6 o/ K1 o9 u2 @0 m
    2、清晰表达属性的重要程度4 _& u, P  }+ b4 }5 s
    3、可增量学习对模型进行部分重构
    1 o9 F% D0 I! ~7 X; l4、不需要任何领域知识和参数假设2 R0 @+ Q3 E8 K( t
    5、适合高维数据
    7 g8 y! S6 W( {! N6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板
    - g1 ^, W: S6 o3 k, D* I/ U# N- P缺点:
    ) m8 @: m8 F: ?, u9 @+ q5 k0 G! A1、没有考虑属性间依赖
    + t$ ~$ \  _9 e, Q& {2、容易过拟合,通过剪枝缓解3 T- V; _+ ?1 I+ w; m5 O3 V
    3、不可用于推测属性缺失的样本$ \8 i# ~+ e9 f9 E! _- [, Y
    7 C& g' n5 Z) j8 V0 }( P8 H
    支持向量机(SVM)' n/ U+ S* ^9 T" `, O
    基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。
    ' |" d! w5 b, H) Z1 ]# o* V优点:
    ) Q' u% d9 t& j: s0 c1、可解决小样本的机器学习任务
    / {' }9 _+ m' }0 I7 {) a. [# n2、可解决高维问题
    : h& Y- x; o' b1 g8 C, [% ~: c% B3、可通过核方法解决非线性问题
      m2 L( {5 ^3 E% W8 n缺点:4 a4 E+ |: q6 a& W$ R7 |* N2 z
    1、对缺失数据敏感4 H, }2 ~0 x. d$ C; }- Q& h8 l
    2、对于非线性问题,核函数方法选择一直是个未决问题7 \' ^8 T5 C$ k3 \1 }3 S, e& P0 J

    0 U% ~5 Z! m% V/ Q+ d神经网络" M9 {3 Y9 ~; h
    优点:
    8 e1 V& \" k" c. I: E3 u  Z: E1、分类的准确度极高6 x! z# m  n  x( ], [" D0 V. l
    2、可解决复杂的非线性问题
    9 I" p0 [4 X  E" e3 |2 q3、对噪声神经有较强的鲁棒性和容错能力# p# D; k* D# k/ Q6 L
    4、并行分布处理能力强,分布存储及学习能力强
    . h7 @8 \7 p) g& I2 z& P: W5、常用于图像识别" m/ ]: k) G+ t) q! t2 y
    6、数据量越大,表现越好
    3 h8 |4 f. Z7 D缺点:
    ! h; {; q6 A- W1 e1、黑箱模型,难以解释8 n% n/ L: h, z# ?- t
    2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂  g. E$ d9 W: P, D' b
    3、误差逆传播的损失
    " {, j  v; x$ h) g4、容易陷入局部最小
    1 X- v5 Q6 q4 c/ E7 ~% Q
    2 }0 ]/ v+ Z  ]( X- C) s% _词向量(word2vec)5 P- q* t+ H2 K# ^( q2 H% P
    将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。2 R+ b8 G* S! @; [; t" j6 W# F0 T- G6 I
    比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。
    " V, M1 W$ ^3 {6 {% T# a! Z再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。
    6 N- d3 K; d/ K, l- }$ tgensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。0 ]' j) j: e. g

      u0 ?( \; x! U3 M$ J! Bk近邻分类(kNN)
    % f7 z5 E. x% l8 ?基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)
    ( a7 B/ T& }: g+ D0 d% ~8 i' g优点:
    , t- U# \2 L, _, n- j8 V9 ]0 l1、思想简单,易于理解,易于实现,无需估计参数,无需训练;
    . w9 U8 w/ s: k& \8 b( Z2、适合对稀有事件进行分类;
    , I2 J$ m1 v" Y3、特别适用于多分类问题! d% c  v) ]- {1 F0 O
    缺点:
    5 a: j! |1 r1 _3 B' m* i( z8 o# F2 I& a1、需要计算出待测样本与所有样本的距离,计算量大
    # S0 d, c( h, u8 m9 }2、样本不平衡时影响大
    6 f4 E3 S) }& |& V3、适用的特征维度低+ J* Y& W$ I4 S$ S0 L

    0 z0 x* O: `& D5 Q& z. C0 r1 k线性模型2 G* Y" j% M! ]- J7 r0 G
    优点:
    & ~3 u# Q, u' _' r5 ]1 _1、算法简单,编程方便5 T6 N; Z  @, I$ j" M+ Y6 W
    2、计算简单,决策速度快
    7 j; y- C2 G( N: @. d. N5 z4 Y缺点:
    8 G9 O# Y6 Q5 s2 E3 ~( t1、拟合效果较差
    / j; [. n( \4 R0 L+ m+ z, X4 A2 E
    ! a2 s) m2 U5 b" L4 y5 J7 [高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比6 {' [7 l+ t# \8 ~5 A
    k-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类- ]( k0 s  N( Q, g% @
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。/ d" k: R- f; n& I4 g+ c- @" `

    2 L# P% J/ v6 g+ O/ P' f/ s关于学习算法的性能实验结果
    6 [- {7 I$ D- T" b! g点击查看原文9 {" c: `9 `+ D# l5 M8 U5 c9 W

    # L$ g, m6 p) K& E/ C# d14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。) R( e6 B& ~6 m# }9 g
    论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
    " R  x! E1 d$ \( B0 x没有最好的分类器,只有最合适的分类器。8 s+ S( u- F% E& P
    1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。; N( i$ S6 v+ \5 n9 z, v+ s. E: T8 \
    2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。
    2 q5 ?9 s  d- o: f2 f0 x3、神经网络(13.2%)和boosting(~9%)表现不错。- Z" L3 b) C" S: j6 q" i* s+ u
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。& w6 l8 ?4 K+ J% q0 s/ p. r
    5、数据量越大,神经网络就越强。: H9 s6 O) F( X
    ————————————————/ [; v) s4 T% r
    版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    % N( b/ I1 a. f: ]: ^& P" ]原文链接:https://blog.csdn.net/u010921136/article/details/906683825 p: F/ o2 v( h8 h2 Y2 _- k# L
    ( z3 U& H2 q5 e* q& c0 O

    / Q5 N+ f" F( k3 F% {1 U  w
    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 21:43 , Processed in 0.396296 second(s), 51 queries .

    回顶部