zoukankan      html  css  js  c++  java
  • 机器学习常见的分类算法的优缺点

    1. 前言

    在机器学习中,种类最多的一类算法要属很类算法,本文对机器学习中的各种分类算法的优缺点做一个总结。

    2. 贝叶斯分类法

    2.1 优点

    1. 所需估计的参数少,对于缺失数据不敏感
    2. 有着坚实的数学基础,以及稳定的分类效率。

    2.2 缺点

    1. 假设属性之间相互独立,这往往并不成立。(喜欢吃番茄、鸡蛋,却不喜欢吃番茄炒蛋)。
    2. 需要知道先验概率。
    3. 分类决策存在错误率。

    3. 决策树

    3.1 优点

    1. 不需要任何领域知识或参数假设。
    2. 适合高维数据。
    3. 简单易于理解。
    4. 短时间内处理大量数据,得到可行且效果较好的结果。
    5. 能够同时处理数据型和常规性属性。

    3.2 缺点

    1. 对于各类别样本数量不一致数据,信息增益偏向于那些具有更多数值的特征。
    2. 易于过拟合。
    3. 忽略属性之间的相关性。
    4. 不支持在线学习。

    4. 支持向量机

    4.1 优点

    1. 可以解决小样本下机器学习的问题。
    2. 提高泛化性能
    3. 可以解决高维、非线性问题。超高维文本分类仍受欢迎。
    4. 避免神经网络结构选择和局部极小的问题。

    4.2 缺点

    1. 对缺失数据敏感。
    2. 内存消耗大,难以解释。
    3. 运行和调差略烦人。

    5. K近邻

    5.1 优点

    1. 思想简单,理论成熟,既可以用来做分类也可以用来做回归。
    2. 可用于非线性分类。
    3. 训练时间复杂度为O(n)。
    4. 准确度高,对数据没有假设,对outlier不敏感。

    5.2 缺点

    1. 计算量太大。
    2. 对于样本分类不均衡的问题,会产生误判。
    3. 需要大量的内存。
    4. 输出的可解释性不强。

    6. Logistic回归

    6.1 优点

    1. 运算速度快
    2. 简单易于理解,直接看到各个特征的权重。
    3. 能容易地更新模型吸收新的数据。
    4. 如果想要一个概率框架,动态调整分类阀值。

    6.2 缺点

    1. 特征处理复杂。需要归一化和较多的特征工程。

    7. 神经网络

    7.1 优点

    1. 分类准确率高。
    2. 并行处理能力强。
    3. 分布式存储和学习能力强
    4. 鲁棒性较强,不易受噪声影响。

    7.2 缺点

    1. 需要大量参数(网络拓扑、阀值、阈值)。
    2. 结果难以解释。
    3. 训练时间过长。

    8. Adaboost

    8.1 优点

    1. adaboost是一种有很高精度的分类器。
    2. 可以使用各种方法构建子分类器,Adaboost算法提供的是框架。
    3. 当使用简单分类器时,计算出的结果是可以理解的。而且弱分类器构造极其简单。
    4. 简单,不用做特征筛选。
    5. 不用担心overfitting。

    8.2 缺点

    1. 对outlier比较敏感
  • 相关阅读:
    cd的使用
    转换器模式
    装饰模式
    策略模式
    模板方法模式
    工厂模式
    类型信息
    proto编译组件使用
    proto编译引用外部包问题
    Kafka经典三大问:数据有序丢失重复
  • 原文地址:https://www.cnblogs.com/huangyc/p/10363824.html
Copyright © 2011-2022 走看看