QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2000|回复: 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
    7 W# Q. A! X& r7 c' H
    各类机器学习算法的优缺点和适用场景汇总* i* I! o: a- `
    目录6 d; ~; t3 j& Q7 D& Q! w
    朴素贝叶斯分类器(NB:naive Bayes classifiers)$ `% T7 c/ ~" B: G5 y) b- k
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    3 S6 e& s# W* v- K& b9 d贝叶斯网(信念网)
    & e1 u6 ]. v& v决策树(decision tree)+ ]/ O% @6 z9 b/ g2 G
    支持向量机(SVM)
    * `* d2 z4 Z4 D* p  _) l6 k神经网络# Q2 r* @5 U  l
    词向量(word2vec)2 B- ?+ r7 q$ h  |4 l
    k近邻分类(kNN)7 I7 g% \0 [/ G
    线性模型
    , U. S! i3 \- R; `% z  K( h高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比" z# e* y% M8 A$ Z2 C/ h4 j" c; r
    关于学习算法的性能实验结果
    ; D& {% O3 F4 x  V8 {- ^朴素贝叶斯分类器(NB:naive Bayes classifiers)
    ( z3 C8 {5 n% a# G+ N4 ~顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?
    - ]. B5 R% v& j( x- a' T3 x事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。
    " S2 I5 e* {" _3 ?% p& K3 o$ O( b. u1 a; F! u
    优点:2 h) g) o7 j- M
    1、计算量较小
      b2 s0 G- s! C3 |% Z( C! R2、支持懒惰学习、增量学习4 B- H# o0 O0 z% |
    3、对缺失数据不太敏感
    $ ~7 R' N2 P! R5 `: @1 s. Q8 j4、推断即查表,速度极快。
    & \" q2 [0 W/ D2 {4 g+ U8 Q缺点:* G$ d# G/ m4 m# V
    1、没有考虑属性间依赖
    2 L; C) r( t; a3 p, o3 o2、通过类先验概率产生模型
    , d9 y# r2 }( p/ C8 W+ L  e" w9 i2 J1 t. K- E
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)+ s' `& a0 ~! j
    相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖/ M* \: A3 {  T6 m& B) w5 F5 ?- Q- S  Y
    优点:1 f. `' n8 v( s, _8 \$ W. X  O0 S
    1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升1 n9 W3 U# \8 a) B+ [6 I1 B
    2、计算开销不大
    # s4 U* S; s3 g+ @4 f  b. i- r- y; P3、同样支持懒惰学习、增量学习
    : ~% U5 }4 p5 H' V( z缺点:
    % r) C1 u7 y% Q! I- w: d1、通过类先验概率产生模型4 m' ~  F5 Q3 {8 S
    # S  A" Q9 c9 y& z. o
    贝叶斯网(信念网)! y. q2 Z$ P$ O3 r- y8 n6 a
    贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。
    # T( ]! `) D- c- ?% q优点:
    ; K7 {; F9 G+ ^% j1 G* R: C1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升8 c- `+ Q' G: I- C# O
    2、近似估算后验概率
    4 V3 ]5 t. ^$ q3、可用于推测属性缺失的样本
    ; o% [: L6 E0 m, w4、良好的可解释性
    0 h8 V. _4 i1 Y' \6 P5、常用于语音识别、机器翻译等
    + j" h/ c! z- I3 r. W3 e, W* ?缺点:" |$ m! Y9 C* O8 _
    1、结构学习NP难,通过评分搜索方法缓解8 D$ s3 n( c9 E0 @, i! i, H
    2、推断算法的收敛速度较慢
    9 X7 v. X' r! B6 B, n& n  L' ^. n. b& v( C& m; r4 g6 f2 w
    决策树(decision tree)
      e6 L: Y/ {5 U8 K! I# }决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。; X. K- n  y8 F6 a& M; o* |
    优点:
    ' n6 B. Z; f6 X2 y1、计算量较小
    # ~1 e9 t4 B1 H' K7 N4 [; W+ ^' q2、清晰表达属性的重要程度4 L6 ~) {) J+ e
    3、可增量学习对模型进行部分重构
    7 d* X! f' G1 a+ E+ i4 u4、不需要任何领域知识和参数假设" \) M) Z% ]# P& t# ]2 a6 \
    5、适合高维数据
    . w+ V  Q5 L8 |$ F7 H# V* U- K6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板2 R2 |  Z# x5 m" p+ t
    缺点:
    2 z; \, F* P; c1、没有考虑属性间依赖; Z% I& }$ A9 o' i" K5 Z
    2、容易过拟合,通过剪枝缓解
    8 r+ `0 W0 T: `9 _0 Y) M3、不可用于推测属性缺失的样本; o% A# m( |$ n5 ?3 N- r9 X; Q

    % Q/ p& D( v) s1 N支持向量机(SVM)
    3 @' F+ b9 |# r+ Z, O! }基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。4 x2 B5 P/ h" g0 z4 m2 g
    优点:
    ' R1 ]7 o( c1 Y  ~& V) t: u1、可解决小样本的机器学习任务/ D5 W, ^# v1 d( b2 e
    2、可解决高维问题
    - F* [9 t; u+ a6 k/ N  |! {6 |3、可通过核方法解决非线性问题, C4 k$ o$ U9 M8 y! J) i$ d6 ?
    缺点:5 S: W# z8 Q1 _6 |* u, w
    1、对缺失数据敏感) s; ^' L& y1 m3 S6 @. n$ q: X
    2、对于非线性问题,核函数方法选择一直是个未决问题
    1 O- d$ A9 G0 V6 D3 O5 _- K7 k  ~$ @7 J1 H% L( e
    神经网络" N% x: z) l$ r- w* I7 l( c
    优点:( M8 \, o# U- h; c2 x; _6 Y
    1、分类的准确度极高( ]) R# I5 g4 D( V, `$ x
    2、可解决复杂的非线性问题
    + ]  o/ M4 f% B" v" k/ W3、对噪声神经有较强的鲁棒性和容错能力. p: y0 G" n. S  n
    4、并行分布处理能力强,分布存储及学习能力强/ u' Y* n: T1 U5 \1 G6 {/ Y, s0 }
    5、常用于图像识别* v0 Y! D: `$ W" t
    6、数据量越大,表现越好
    & z. x5 R5 [/ w缺点:* `* G* P: D+ q
    1、黑箱模型,难以解释0 ^6 l, b; m" \4 O3 c+ v& i
    2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂
    / l& V8 a# v6 M  d3、误差逆传播的损失8 d; p: T( H( ^, n
    4、容易陷入局部最小3 K0 L7 Z& H0 l6 o: {7 X# S9 d! d

    0 F0 g6 N6 {0 r/ |$ h8 v词向量(word2vec)3 t8 f3 }9 W5 s9 N/ A, B
    将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    * D+ F* C, z2 c! g比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。4 E+ ^  q1 E5 l( t- ^, G' |
    再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。# j: r' C' J- {
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。
    * |0 B4 Z4 t& C. j( O, G; K) z" ~
      I/ V; L& Y- ~# Uk近邻分类(kNN)
    3 r% F/ g$ v9 D9 R基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)! d( X+ v2 {$ ]) V6 E  N  q! s
    优点:
    3 ^/ W% Y; e) d3 y+ x4 n1、思想简单,易于理解,易于实现,无需估计参数,无需训练;
    2 v: ?0 d* T8 U2、适合对稀有事件进行分类;) V! ?5 |1 C# ]0 K* p
    3、特别适用于多分类问题; B1 l' o( \: d) e+ {+ C; @% ?
    缺点:1 ]3 ?$ e; ]* N" a1 C
    1、需要计算出待测样本与所有样本的距离,计算量大2 B+ ~, ~6 y6 L% m0 M: q
    2、样本不平衡时影响大* L  L  i  l8 H; r
    3、适用的特征维度低
    3 Z, B! U! f  d. P( j
    3 D! X+ V0 D( W5 v6 o线性模型- x* e( l$ r8 l1 i$ C
    优点:
    # r* F: p4 H+ ~/ P. b1、算法简单,编程方便
    ; C7 O" }6 ^! M2、计算简单,决策速度快0 i( y# ^" r% e
    缺点:. _; u& U" i& ^% p9 H5 I
    1、拟合效果较差
    3 n9 \+ e) y- S" T9 O6 `
    . T; Q! s, r9 B5 W) ]5 I$ ^高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比2 ~2 I, x  X" U: ^! x3 A5 [) h! Z
    k-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类8 s$ [- A) q) w; W2 @2 M7 d
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。
    % y" s/ a  T: X0 @8 d0 E$ D$ Z) `5 F
    关于学习算法的性能实验结果* ]: L6 p( B! w% y' _0 k& _! @
    点击查看原文
    % q7 X4 o8 l3 h) o: P. X, m8 t; e8 x4 J$ n2 |
    14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。8 A0 f& Q: S! `: q  }
    论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?) _/ h7 G* F% k, U
    没有最好的分类器,只有最合适的分类器。
    ( ^2 Q0 v. ^4 [% }* K$ Q3 U1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。
    ( U& J/ q& p$ B; {" |8 E2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。
    1 j! l2 R$ g* ?5 r& ^! d7 d2 i3、神经网络(13.2%)和boosting(~9%)表现不错。" r0 b7 m" F+ u* r
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。, `! p; F& K6 F! C$ H
    5、数据量越大,神经网络就越强。( ]3 M5 Y! Z; O! V
    ————————————————
    3 W) G* v% B. F% q3 N版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。& B( W+ a" H9 x6 `. h
    原文链接:https://blog.csdn.net/u010921136/article/details/90668382
    ) j% v+ U2 o: |+ I8 C. h/ `: J8 s' _$ h/ Z
    4 m9 e  ?& L3 c* V
    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-6-9 04:19 , Processed in 0.417130 second(s), 51 queries .

    回顶部