QQ登录

只需要一步,快速开始

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

    + [5 x: G8 n# q5 L. Q各类机器学习算法的优缺点和适用场景汇总
    6 B; ^2 @9 J; j, m" Q9 d目录
    ( [  e5 K: o! C+ b% C! J朴素贝叶斯分类器(NB:naive Bayes classifiers)
    $ Q. ]# K: }2 |  |/ C1 |/ S半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
      u, s% u5 c  _) k+ u# k! ^, w贝叶斯网(信念网)# P) @' h7 w- K: b  J4 Z
    决策树(decision tree)5 R; c# l1 Y1 Y
    支持向量机(SVM); k. c7 a, L  B" Y% }/ I) Q: @
    神经网络% L" R( W7 q% V' b
    词向量(word2vec)3 `: y# C3 w1 I; S' k
    k近邻分类(kNN)
    ; V/ ~) D& Q0 |# U8 h线性模型: P- l; m# `  r+ K4 ^" |/ x
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比9 x9 a+ x; U/ }' k
    关于学习算法的性能实验结果
    % M) L1 Q& Q( j- L( Y朴素贝叶斯分类器(NB:naive Bayes classifiers)
    4 f% A; e! o; Q2 r7 L顾名思义,其适用于分类任务、并且假设每个属性独立地对分类结果发生影响,然而现实中各个因素往往并不独立,那是否就无法解决问题呢?' [. R% c, ]# h$ S9 d
    事实上并非如此,相反,朴素贝叶斯分类器在很多情况下都能获得相当好的性能,一种解释是:无需精准概率值即可导致正确分类结果;另一种解释是:若属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时,不会对性能产生负面影响。( F8 {  ^; c/ N7 `& C& M7 P

    * f' @9 _/ v. ?5 i: d* s3 U优点:9 A$ [; L) h, Q) |
    1、计算量较小% d8 B: S2 k: V) W+ ?6 R
    2、支持懒惰学习、增量学习
    3 e" J. i$ }9 D5 a3、对缺失数据不太敏感% U. m9 s' ^2 N/ n5 P' h
    4、推断即查表,速度极快。
    # w7 @: d( S: N8 F' @& U- g# `缺点:# C3 N$ Z3 S+ {8 K
    1、没有考虑属性间依赖( y  }4 b# C$ S) J& q
    2、通过类先验概率产生模型2 _) D* T9 x& ]3 m; N, l

      z& [% S0 b! l9 b' H半朴素贝叶斯分类器(SNB:semi-naive Bayes classifiers)
    : S" |' r7 ]1 W* J; }7 Y& C相比NB的不考虑依赖,SNB则是考虑了一个(独依赖估计策略:ODE)或多个(多依赖估计策略:kDE)属性依赖1 ^# D- c) c) Y! P( l' A. N1 }
    优点:
    * R  `3 U" u  _8 |- P$ C1、考虑了一个或多个比较强的属性依赖关系,泛化性能可能得到提升
    + @1 f- K, T9 @8 ~( D$ `) J5 L  {' H2、计算开销不大  `1 C% x+ y6 {! H& j$ M) |4 ]
    3、同样支持懒惰学习、增量学习
    + O. s+ [1 \' X, e, W) ?缺点:
    7 k0 ^6 V/ ]! D$ X1、通过类先验概率产生模型
    . L4 b# T6 ^: L( H# W+ S
    0 E: H& k: a6 y2 e贝叶斯网(信念网)# s' Z5 I0 o1 \+ N: |$ q. j# Y
    贝叶斯网借助有向无环图刻画属性之间的依赖关系,通过吉布斯采样或者变分推断等方式来近似推断后验概率。
    $ e9 r: Y# |6 y/ B4 T0 J$ T9 E优点:+ F( f  |% \! j  t8 q) R
    1、更加完整地考虑了属性间依赖关系,泛化性能将进一步提升
    1 e; T2 i; A, K+ v; |1 G2、近似估算后验概率
      y! C+ H" Z  l' E; P3、可用于推测属性缺失的样本
    # ~* F" U( |/ M, L, v5 j4、良好的可解释性
    % v* m$ s0 A4 I$ [, F% k$ m5、常用于语音识别、机器翻译等2 v. H& X/ L9 c; \/ o
    缺点:$ a' K" [! y: d- _/ P% Q0 b
    1、结构学习NP难,通过评分搜索方法缓解+ Z* s! ?2 F" E4 v" ]
    2、推断算法的收敛速度较慢
    $ o" v7 ]7 _8 |; E
    7 |/ T8 h" i) t4 N决策树(decision tree)' R. L) a  O8 R! W7 R
    决策树通过信息纯度(信息增益、增益率、基尼指数等)来决定结点的生成,通过剪枝来缩小决策树的尺寸以及缓解过拟合。是一种非参数学习算法。
    , J  R. L% \& J- ]+ C! V' F优点:% D1 T  B7 X! R0 E7 i- j
    1、计算量较小% q+ T+ t1 ^2 u& w& c. k
    2、清晰表达属性的重要程度
    + `$ j1 \9 t8 F3、可增量学习对模型进行部分重构+ x0 p7 X2 A; J0 R9 ^# e
    4、不需要任何领域知识和参数假设+ S# @/ v7 l8 U9 E# a2 H! A
    5、适合高维数据
    # `! r  p+ X4 S( R" }6、随机森林是基于决策树的集成学习策略,随机森林鲜有短板
    7 x$ i# L+ D2 S) U缺点:. _! J2 A1 F3 \& T3 t
    1、没有考虑属性间依赖9 o) f( [4 r% ^& ]
    2、容易过拟合,通过剪枝缓解
    , g- d' F1 T: G+ o$ V3、不可用于推测属性缺失的样本
    1 O$ F$ W6 C/ V: _& D
    - I* N' `5 b& d2 @4 ^支持向量机(SVM)% h& ^) t& e, ^: `1 b
    基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,是一种针对二分类设计的算法,但稍加改造为支持向量回归即可用于回归学习。
    $ _7 i+ r2 K9 u3 Q% F' A2 Z优点:4 s% e: o+ `- \2 m- g+ ^/ x
    1、可解决小样本的机器学习任务* n% B  h+ w; h# z7 _
    2、可解决高维问题  r- ~, E3 l3 P6 J" G
    3、可通过核方法解决非线性问题" @$ C2 |: \3 G( Q
    缺点:
    1 Y1 e: }- \& g- g% _1、对缺失数据敏感
    1 Y3 z+ `- T5 P4 i2、对于非线性问题,核函数方法选择一直是个未决问题) v. ~* F! {. g% `) S
    ' y- P1 w2 D+ {6 n5 f& f8 C
    神经网络
    7 J7 }% v" R  k3 v( Z& W3 Z优点:3 E& ]& ]* s6 ?/ E" {( ^9 p; l
    1、分类的准确度极高
    : h7 D6 O) u! g  e4 `+ ]- b2、可解决复杂的非线性问题
    & X! t* }9 {! }# K' q6 ^3、对噪声神经有较强的鲁棒性和容错能力/ q" h4 G% O- X, D8 S  K5 D. k1 x
    4、并行分布处理能力强,分布存储及学习能力强
    $ T( g' `9 D" u: p5、常用于图像识别. u. |1 |# M0 t* e6 i' K* R3 W1 R
    6、数据量越大,表现越好% b) r1 w4 E% E, ^5 W+ ]
    缺点:6 a; A2 j: x" V4 }! x
    1、黑箱模型,难以解释! x: {3 \5 d3 y8 }# c, e- N
    2、需要初始化以及训练大量参数,如网络结构、权值、阈值,计算复杂/ V$ \' W: L( d+ S2 a  H- ^
    3、误差逆传播的损失
    $ @4 I) @8 k( U( W4、容易陷入局部最小
    1 m8 O9 I# r6 b* O& Y! J( g6 T( P. t
    词向量(word2vec). _  Y5 x: l! O
    将文章的每句话当成一行,将每个词用符号隔开(如使用中文分词工具jieba),根据上下文,可以找出相似词义的词。
    / _5 D( \4 ?: J比如:我 喜欢 你,我 爱 你,我 讨厌 你。根据上下文我和你,可以找到喜欢的相似词,有爱和讨厌。* s/ H, q. W* p
    再一般地如:1 2 3 X 4 5 6,1 2 3 Y 4 5 6。根据上下文1 2 3和4 5 6,可以找到X和Y相似。4 P5 U# i& F0 o1 E& e! t) q
    gensim是一个很好用的Python NLP的包,不光可以用于使用word2vec,还有很多其他的API可以用。它封装了google的C语言版的word2vec。
    ! Q8 r: {9 M. P( Y% d- E  h0 D8 T: l7 r4 J) k
    k近邻分类(kNN)
    & F) m1 p4 @3 g: _基于某种距离度量找出训练集中与其最靠近的k个训练样本,或者指定距离e之内的训练样本,分类任务中通过投票法(以及加权投票等)将出现最多的类别标记作为预测结果,回归任务中则使用平均法(以及加权平均等)
    3 j3 J5 r' V; l2 o! |  Q优点:
    2 ^7 t( P; r: D0 [) _1、思想简单,易于理解,易于实现,无需估计参数,无需训练;% m6 ]8 z) E' ]
    2、适合对稀有事件进行分类;) Z; I! E% x+ B, n/ I
    3、特别适用于多分类问题
    . r1 B! D' @6 v7 N* L' f8 c缺点:
    2 K& o" W# k- j/ K4 ^& Y, k1、需要计算出待测样本与所有样本的距离,计算量大- t  M) d7 K4 E% p
    2、样本不平衡时影响大
    6 d2 _* p& b$ ?4 w4 [, U3、适用的特征维度低1 N: K* {/ S" ]9 t1 G( R" A
    3 Z, \. b* x, g, ]! i! F9 n! f
    线性模型
    4 U0 w& T# m" H; a' y: {优点:
    $ b& C7 y% x$ E6 J6 m; ~1、算法简单,编程方便
    5 w4 p8 Y; q! g) n) c2、计算简单,决策速度快
    7 Y) _% C" F' {6 H缺点:9 r/ @: J( J# \2 j- i3 ?
    1、拟合效果较差5 }. Z7 p) m+ [
    & m7 @' x8 p$ @4 I" {- H
    高斯混合聚类与k均值(k-means)及其变种(k-means++、ISODATA、Kernel K-means)的对比, [9 `9 X9 z  Y
    k-means是高斯混合聚类在混合成分方差相等、且每个样本仅指派给一个混合成分时的特例,因此k-means计算简单,但效果不如高斯混合聚类6 s' I: O9 A* A# i( R9 e
    由于计算太过复杂,高斯混合聚类并不常用,推荐使用k-means++(与k-means随机选定不同,k-means++初始选定的几个样本距离尽量远,这样能更快得出分簇结果)等k-means变种。! w$ |6 x, Z* O. A4 a% h
    , v8 y/ M* ^6 j
    关于学习算法的性能实验结果
    * ~; F; u% q( g5 `5 |! m6 k点击查看原文5 v: @! X: t& ^2 P: `- \

    $ y) l( X/ Q. d1 x6 a# @  u14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。
    : D$ U. @8 g3 x5 g" B2 u论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
    8 R7 [% z4 V6 D3 O& d没有最好的分类器,只有最合适的分类器。
    / p6 i  K5 \% t0 k' `0 l1、随机森林平均来说最强,但也只在9.9%的数据集上拿到了第一,优点是鲜有短板。
    . B9 {7 Q6 W$ i8 U# @2、SVM的平均水平紧随其后,在10.7%的数据集上拿到第一。
    1 o# \# P0 b% b4 V$ d3、神经网络(13.2%)和boosting(~9%)表现不错。5 I2 Q0 Y) V9 A  Q7 ]' d
    4、数据维度越高,随机森林就比AdaBoost强越多,但是整体不及SVM[2]。
    % Q* V3 }9 P% k! B5、数据量越大,神经网络就越强。
    2 e" F; u+ `2 C6 H, J————————————————
    * c- X/ b, f  a0 w. h版权声明:本文为CSDN博主「路飞的纯白世界」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。" D. z: s" E2 w* J9 w% E- L
    原文链接:https://blog.csdn.net/u010921136/article/details/90668382
    - i- N8 m( Y- m0 j% q0 \2 _% e3 C& e) L

    8 t+ R8 F7 f% g# q0 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-9-9 03:16 , Processed in 0.402735 second(s), 52 queries .

    回顶部