QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1759|回复: 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
    1 ^- i( v3 f- R. H& n
    各类机器学习算法的优缺点和适用场景汇总' j/ G- N" g  D& }! |3 g+ B
    目录3 o1 _" ?+ j4 n( n5 j; e
    朴素贝叶斯分类器(NB:naive Bayes classifiers)
    , v- Q7 Z) t, P* N2 }半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)' Y# _; ~. |& b' ^- }2 l
    贝叶斯网(信念网)
    ! ]/ q7 O7 W; H" s' h决策树(decision tree)" N0 G4 l$ N) L# s& r6 Q4 d+ F! m* S  t
    支持向量机(SVM)
    ( O; K! U, I2 {2 I7 @! H7 J% J神经网络! n; z8 c# J" U( X/ p$ t% r7 r
    词向量(word2vec)' L3 p( p; |  X+ m8 K5 U% W2 P
    k近邻分类(kNN)$ t. s* r- j5 L+ Z- Y+ ~
    线性模型
    , d4 F$ g' A4 Q2 F# o" v高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比) K# f# s2 H9 D6 w- R. r$ q
    关于学习算法的性能实验结果, p1 N1 j, j# D6 I8 D
    朴素贝叶斯分类器(NB:naive Bayes classifiers)% B) f! `; _! d$ o/ U" ?
    顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?
    6 C, Z- U. x' E4 j事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。3 X# J( Z4 P  w* e1 u

    3 \6 d7 x  e) o- V% N. {7 V! M/ c优点:- ?& l9 d6 `; m2 @8 l8 {" k% f
    1、计算量较小4 D1 O5 ~; b( l1 H9 V. d2 r
    2、支持懒惰学习、增量学习
    ) z' g7 p9 i1 n' S/ ^/ L( t* {3、对缺失数据不太敏感
    1 ?7 ^. t  n0 q$ ?6 u* F4、推断即查表,速度极快。
    6 m( h+ F* ^- k% S缺点:
    : |" n7 |8 n) v8 H1、没有考虑属性间依赖
    , y- A& K# o, ^" C% H2 {, u, s* [2、通过类先验概率产生模型
    3 ~! S& J' j% r$ L5 K1 \+ b3 Y3 e3 ]* b
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
      _) u" {( C5 k* L$ m4 [* O相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖" ^; Q+ `9 e& Q" H4 j/ v3 ?( \5 V
    优点:
    ! }7 h, [  t* H& r1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升
      w; h7 c; G( X8 h1 T/ C2、计算开销不大3 ~' [4 b) |8 D  U# M
    3、同样支持懒惰学习、增量学习7 t3 ^! C2 m2 V
    缺点:
    # |" y0 T' J) e: t. F, d: O% _1、通过类先验概率产生模型% j5 }2 ?, p0 p5 e  i0 q
      H& j7 P8 V( b5 c6 }% H
    贝叶斯网(信念网)! E) J+ m- M1 I5 G' s
    贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。) Q9 M! X( J" z( I& b
    优点:7 J1 U$ z& a  L' Q
    1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升- i: |/ m% }1 y
    2、近似估算后验概率) F4 k$ q! W4 m$ r
    3、可用于推测属性缺失的样本
    , \0 o* H; l7 v* j4 w0 v4、良好的可解释性/ {) K' \/ I, G2 g# b
    5、常用于语音识别、机器翻译等
    1 t! f! F' `! B缺点:) m! I# ?5 y4 V) J" a6 a( P9 K) c
    1、结构学习NP难,通过评分搜索方法缓解
    5 i* x4 Z  u+ k1 x2、推断算法的收敛速度较慢1 X* @5 f: r2 g7 g: y2 }

    % h4 T2 O+ z% C7 {/ S决策树(decision tree)
    . m7 n; o; y/ o) r决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。' P, l( @( o: L: m. R, t- W
    优点:4 t# D! x8 X+ d% k4 s
    1、计算量较小# ^) E" d1 ]: u0 U+ W
    2、清晰表达属性的重要程度
    : n, ?; I4 e& J& A# u6 W3、可增量学习对模型进行部分重构. Q8 F. p4 v' O& n, ?) A
    4、不需要任何领域知识和参数假设1 Q' S0 m2 x$ V% r+ U. b) S
    5、适合高维数据
    % i- U% x: N4 l$ w; |2 k6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板$ h$ P: \, H) S
    缺点:
    / \" P1 n  r! w3 ?6 ?1、没有考虑属性间依赖$ H+ @+ V- {& w5 }
    2、容易过拟合,通过剪枝缓解9 H" s, ^% x) T; b3 T
    3、不可用于推测属性缺失的样本
    ' ^. O: R" i5 |* [3 n# w% x7 k& |! C' s* N4 `2 {5 B
    支持向量机(SVM); i, l+ X' m. O* G. ~; w' I3 U
    基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。# K. \' y; L; F! I! \- v. C- G
    优点:2 [5 ?! r6 @) A: q% S6 x6 P5 P
    1、可解决小样本的机器学习任务* e  p6 p1 ~4 {# x
    2、可解决高维问题+ o8 p: U& {6 H) X7 t6 S- l
    3、可通过核方法解决非线性问题" T- {/ S6 P- M. q& ~* K+ ?, {
    缺点:0 [  `' |5 G' C: m' _
    1、对缺失数据敏感
    / F* y8 p8 j& _  Q9 ?4 f  a9 U2、对于非线性问题,核函数方法选择一直是个未决问题3 M; d. c4 `$ `+ V( z' h. ?

    9 `- ^  D# s* H: A神经网络0 l, o, Y& t! ]
    优点:$ {5 \4 o: T8 Y' s( k$ f
    1、分类的准确度极高
    * m9 m+ y2 B% Z7 j6 Q2、可解决复杂的非线性问题
    ! O. Q4 L) x1 t- N: Y8 V3、对噪声神经有较强的鲁棒性和容错能力
    7 |& k7 t; C' S9 p) O# S4、并行分布处理能力强,分布存储及学习能力强* F: P" x8 c0 \; u: ?* A1 o
    5、常用于图像识别% |! _9 a5 u/ {
    6、数据量越大,表现越好
    ) X- k: n2 [7 j5 H$ a缺点:4 v3 @4 J$ \! S+ `" t
    1、黑箱模型,难以解释
    . D2 W6 b$ J: q2 Y$ s' \, J2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂
    # G* C5 Z- L+ ^  T6 o( M3、误差逆传播的损失
    $ O9 o# R" @" [% r+ q4、容易陷入局部最小9 w* R( U8 g1 ~' E) m
    , R) b* e2 r2 j# b
    词向量(word2vec)! ~, L% `; z' l
    将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    6 d  W3 F+ H  e7 Q5 S" }比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。1 O1 [7 w, w) X6 V& G5 b. y$ W* x
    再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。0 i4 k  j; A8 d5 S6 g! }* s
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。6 @5 \/ o) Z3 p; I8 Q8 M0 @

    , h4 e4 F( h! U" }k近邻分类(kNN)+ l! ]* Y  _5 x8 ?( E5 \* D
    基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)+ D- h1 b/ w5 `7 H& _
    优点:
      D5 d" Q& v+ @( K2 i+ x1、思想简单,易于理解,易于实现,无需估计参数,无需训练;2 I/ ~+ A( r  L3 x1 |- ~
    2、适合对稀有事件进行分类;
    8 f" \6 b6 G4 r* a3、特别适用于多分类问题5 v/ o- f( D" J+ S) b: \% l% L5 b& s+ G
    缺点:
    9 y( s' P# A; c* S& J! d/ r1、需要计算出待测样本与所有样本的距离,计算量大
    " X- }5 T5 Z2 X3 W2、样本不平衡时影响大( n* z4 N' y3 r1 X& e  u
    3、适用的特征维度低
    ! d0 z! I2 O3 D8 m% [7 W# \! X; V
    , n5 R  x8 }4 }3 T+ k线性模型
    ) X% w  p4 C. F* j! i优点:
    0 Q' Z9 j% a9 x1、算法简单,编程方便
    ! Q2 r  C; x5 e! }6 E0 p# d( M2、计算简单,决策速度快* Q( r$ n  `% B; ?4 M
    缺点:
    # W. O, M4 c3 l) [- d  m# Y( v2 I6 X1、拟合效果较差
    . f, O7 e; k2 ^! a
    / _7 N  D$ U) W高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比8 Z6 x8 ?; ~; y1 D0 r
    k-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类
    1 u" {2 k0 }- _由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。
    3 T; D2 R& Z5 l+ N, F5 @. i; ~% D; x- i6 l
    关于学习算法的性能实验结果
    6 m  E6 h, F* p; ~1 j3 O7 ?点击查看原文/ d0 Z" t- t9 r' i6 I  x
    / [/ Q; L1 u/ j3 I) M, ]
    14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。
    : v5 [( n1 y! f/ S论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
    : Z: D  Y( m8 J没有最好的分类器,只有最合适的分类器。
    % r0 \/ q. {7 G$ f4 s- d1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。: A6 v  L3 L/ \. _8 O
    2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。
    2 Q* l4 v0 z1 ?8 E2 F- W3、神经网络(13.2%)和boosting(~9%)表现不错。
    7 S5 I  Q5 d) U2 t: O9 P, ?% `4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。
    ' A, Z) t" e* _* u) L* @5、数据量越大,神经网络就越强。% f4 u) c! Y, m  X8 |$ A! G
    ————————————————% q0 R. w8 A& M/ J
    版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。  s4 S) k! V( g" C
    原文链接:https://blog.csdn.net/u010921136/article/details/90668382' t3 `, A: O. k3 I- O
    1 S1 Q" K5 L; `- B
    / K4 m9 [/ j( ]! 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, 2025-8-8 05:42 , Processed in 0.397437 second(s), 52 queries .

    回顶部