QQ登录

只需要一步,快速开始

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

    " M2 b0 f+ k' h7 N5 A. T( B各类机器学习算法的优缺点和适用场景汇总# u8 b' F0 h1 h6 ]
    目录* I* ~. }- i3 k: l/ W
    朴素贝叶斯分类器(NB:naive Bayes classifiers)- [+ Y# e' r& _2 n% z' d! [; a( E
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    ' f2 ^4 i) p$ |贝叶斯网(信念网)
    + S& t: [7 @! h( h) `: y) k) {决策树(decision tree)/ f9 {6 S; Z4 V0 D; Y2 ~: D
    支持向量机(SVM)4 W1 R9 w5 C* Q( `& z
    神经网络( H  w% u- g: E8 u
    词向量(word2vec)
    7 e1 n6 N: B) Z3 t9 X9 @k近邻分类(kNN)
    . R4 H, e/ ^7 f0 f$ a9 v& U% m8 s线性模型. h) T" b9 M3 R
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
    : R, w$ T. G) q! l! \1 n关于学习算法的性能实验结果
    5 B$ }/ I' T( ]3 \4 P+ O$ R1 r. _朴素贝叶斯分类器(NB:naive Bayes classifiers)/ q; c' L0 W0 [5 Q, }5 r. j1 [
    顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?0 w- N. T3 ?( a  Z
    事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。  H. |: d% i; d' E) j: c" q0 {
    ! V/ f$ D3 \: M( M: p4 @2 i
    优点:: J% m; i4 J' Q
    1、计算量较小6 `1 A- w. s* _
    2、支持懒惰学习、增量学习4 Z1 ?" n0 B! A7 j  @
    3、对缺失数据不太敏感1 P- I6 j# o' ?1 Z
    4、推断即查表,速度极快。$ U* `+ X0 P7 |( f8 U! x
    缺点:: ~. T; [9 X6 u
    1、没有考虑属性间依赖
    ! V0 ~$ u( w. D8 S7 @& }2、通过类先验概率产生模型
    * r/ }6 L! z2 V4 t; n; f$ g% X: h/ ?: _# c) _' k
    半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    / ]1 m$ P2 X7 l% O相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖" d3 n+ s% e: I# e
    优点:
    / p5 ^7 w! Y+ b1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升) @" K& e0 B# W  D* }
    2、计算开销不大7 A# N* T0 n  _& ]9 w- c% o& J
    3、同样支持懒惰学习、增量学习2 ~* i) z, k6 S: K  O! W
    缺点:) G  r& }# s. d, r# g. T* s! ?- T
    1、通过类先验概率产生模型5 m! m5 a- u) Z: K3 _
    1 a6 f9 J7 a% a2 m& D9 ?% l' J  X
    贝叶斯网(信念网)) r8 O. R6 ]) n! B* ~. @. c
    贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。" @$ {& x9 G- H# F/ I# H0 }
    优点:
    0 s( P9 i9 G! p1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升
    9 I- w6 A+ H& Z2 d+ _* o& Q2、近似估算后验概率9 W6 C6 D2 T( |+ K: r; y
    3、可用于推测属性缺失的样本
    8 `4 x& ?- ?, o% p4、良好的可解释性
    8 s9 F( m- ~& y4 S9 d2 n- W5、常用于语音识别、机器翻译等: M$ k3 r. s! l  n% I4 u. s
    缺点:
    - A: B; z: V  ]" f5 D* D1、结构学习NP难,通过评分搜索方法缓解  x- ]/ j- a7 U- F  a; V
    2、推断算法的收敛速度较慢
    2 H3 _: l& Z$ O% c' N, G
    , c! Y) p/ V3 X$ S决策树(decision tree)
    9 ^6 {0 z+ N/ f( Y; R+ }1 W决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。, L! Y$ b3 H$ p
    优点:8 ?1 x0 H( N: m
    1、计算量较小
    6 f( o9 s, E! S- P) L2、清晰表达属性的重要程度( |0 b0 H, ~1 ^+ T
    3、可增量学习对模型进行部分重构
    8 n" w+ _: s/ V2 l4、不需要任何领域知识和参数假设0 [+ n0 {8 R7 x1 A9 ]
    5、适合高维数据7 X4 L1 c/ [' s
    6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板
    ! d2 v5 T6 k5 M, P2 c  T/ r缺点:
    + S7 J4 F; {0 B, `6 W/ f# t% t% k1、没有考虑属性间依赖
    - `- T! ?* Q  F4 g( F2 y/ r  E1 ~8 S2、容易过拟合,通过剪枝缓解* [- y5 J, o" e' q3 N
    3、不可用于推测属性缺失的样本, R: y5 N" u9 i

    1 }( i0 u7 F. x支持向量机(SVM)
    : v) X+ F1 z* C基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。
    8 }6 }& G/ z4 ?优点:
    3 J/ C9 [; M# ]7 Q% D- L1 F1、可解决小样本的机器学习任务; P5 A' Q; Z! I# K
    2、可解决高维问题" {8 d0 p. J5 K7 y
    3、可通过核方法解决非线性问题
    % S5 F5 C/ `- f) v" c6 Y3 k缺点:- o6 }3 F9 I: R" X4 [" t! \
    1、对缺失数据敏感5 A) S0 H. @2 M8 Q. d- ^
    2、对于非线性问题,核函数方法选择一直是个未决问题  A( l, p) n7 N; m7 _+ ^1 f1 G) M8 o
    ) O: N! I( b5 P7 ^
    神经网络8 O+ }2 d+ \% F" w
    优点:
    " e2 G, R8 a3 y" e" A1、分类的准确度极高+ L) b6 w! `" k) d+ d2 k
    2、可解决复杂的非线性问题1 Y% n$ e3 i+ Y& e
    3、对噪声神经有较强的鲁棒性和容错能力+ g4 e, B5 e/ k! L6 T7 ~+ `1 m
    4、并行分布处理能力强,分布存储及学习能力强' K9 A% L% \& U0 K$ ^' W
    5、常用于图像识别' |1 ~9 R& @6 g0 m7 X# V8 y4 M
    6、数据量越大,表现越好
    4 \5 V7 T% f: `. Q) H4 W缺点:
    0 A3 B1 Z2 Y9 c' V1、黑箱模型,难以解释6 m( m( y4 b$ O
    2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂, F7 N" x) x/ q9 B, V8 R7 K
    3、误差逆传播的损失
    " f) e. I! b' s; D4、容易陷入局部最小5 p; v1 P" r: g. y
    5 V; L; {) C( h( ^  T2 f% Z
    词向量(word2vec)  i( l1 E# w, o4 b
    将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    . s& K) h+ w& p  T+ E比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。* A; r) w0 t3 v
    再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。2 L" {$ C4 E. f: Z3 A" ^% y, ~) H
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。
    8 d9 Z# C* q* W0 z9 f3 C% v  K0 ^. K) R
    k近邻分类(kNN)) e1 r% a. H' z# S, |# {& g
    基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)
    9 T9 V1 U, Q% v+ h- T4 M: i1 h优点:2 |: T0 n7 g) m
    1、思想简单,易于理解,易于实现,无需估计参数,无需训练;- X% H) W. i( V/ C
    2、适合对稀有事件进行分类;
    % E! V; L$ {' u+ U# T) ?1 R- _$ w% U3、特别适用于多分类问题$ C7 }5 H0 `2 ^# L
    缺点:
    & o' K9 U- X! B$ n3 n- L6 G* U1、需要计算出待测样本与所有样本的距离,计算量大
    & R  W$ e9 o" a! n3 W: g2、样本不平衡时影响大
    8 M9 S9 b4 I2 t$ U" M9 ~3、适用的特征维度低* r- I4 _: V$ t+ P/ ]6 `/ C
    6 t) y0 E2 m8 t+ }9 ^& E
    线性模型9 c3 X, [3 X* Z, L3 H/ T
    优点:, S5 j5 f- I  j  q8 r
    1、算法简单,编程方便
    ; y3 k0 }5 W5 a' m. l( C! p2、计算简单,决策速度快. s$ @0 m* `" O( O
    缺点:6 E& O: C, |" `1 ]  d" f
    1、拟合效果较差# x" O$ E5 Z8 v0 D$ ?
    : h& F2 Q" Y; y6 g2 O; @+ a
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比
    + a! S7 X, z5 d% I+ Z2 b& d. Qk-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类
    # R* Y. o# a% \' s# k. f由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。6 p* A; n& D5 p% ]' w

    : t: Q- b+ n5 s8 l( w* F关于学习算法的性能实验结果; i. J& e/ l2 T- r3 y6 T  d1 W5 n; ^
    点击查看原文
    + D% ]9 }. D& z" x$ q
    ( e, m+ l8 d" A0 h# R14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。
    # G5 v, i$ {# `论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
    $ t# V: z$ Z8 m$ G$ G& z' O没有最好的分类器,只有最合适的分类器。
    3 m& P8 w5 ^5 H4 [1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。4 y! J1 S3 l9 B* K
    2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。
    ) ]/ m' S/ c  W. _4 d* q3、神经网络(13.2%)和boosting(~9%)表现不错。0 C$ [' j3 H4 L6 K% \4 `
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。
    4 ^' w; }$ o/ S) ]5 \! A( a5、数据量越大,神经网络就越强。( j6 }/ N. q5 x  L1 ]4 y+ l
    ————————————————
    ( F4 G- V$ c$ E! ~2 b8 z/ \版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。) ~: @" B% I8 d  Z
    原文链接:https://blog.csdn.net/u010921136/article/details/90668382
    0 A" w! M' O2 E, s% u8 a' \6 p5 E! Q' V" e- R' F% ]
    " o$ O) `: i0 `6 B2 k+ e
    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-4-21 14:54 , Processed in 0.423372 second(s), 51 queries .

    回顶部