机器学习模型比较

判别模型与生成模型

  • 生成模型
    学习联合概率分布,求出条件概率分布P(Y|X)=P(X,Y)/P(X)。
    • 朴素贝叶斯法、马尔科夫模型、高斯混合模型
    • 收敛速度更快,能学习隐变量
  • 判别模型
    由数据直接学习决策函数f(X)或者条件概率分布P(Y|X)作为预测的模型。
    • 逻辑回归, KNN, SVM
    • 准确率高

各模型总结

  • 逻辑回归
    • 优点
      • 实现简单,应用成熟,基本所有的机器学习库都有
      • 支持增量学习,可以在线更新
      • 可以输出概率,结果易于解释
    • 缺点
      • 全局最优、容易欠拟合
      • 当特征空间太大时表现较弱
      • 难以捕捉非线性特征
        • 特征离散化
    • 优化方法
      • 细分场景解决,用决策树决定初始场景
      • 特征筛选、降维,加入L1、L2正则项
      • 特征离散化,特征相乘
        • 普通线性模型无法描述特征间的相关性,将特征相乘(多项式线性模型)可以引入变量相关性(e.g 女性与化妆品类,男性与球类装备)
多项式模型.png

- 数据稀疏情况下很难求解wij,使用FM模型(类比推荐)

  • 朴素贝叶斯

    • 优点
      • 算法简单,收敛速度快
      • 支持增量学习
      • 在小数据集上表现较好,多用于文本分类
    • 缺点
      • 条件独立假设,分类准确性较低
  • KNN

    • 优点
      • 思想简单,可用以分类也可回归
      • 可以用以非线性分类
    • 缺点
      • 计算、存储量大
  • 决策树

    • 优点
      • 计算简单,易于理解,容易解释
      • 对数据预处理要求不高
      • 可以进行变量选择
    • 缺点
      • 讲究局部最优,容易过拟合
      • 容易忽略数据之间的相关性
  • SVM

    • 优点
      • 可以解决高纬数据集,适合文本/图像分类
      • 能处理非线性可分数据
      • 高泛化能力
    • 缺点
      • 计算量大
      • 需要调参数、寻找核函数
      • 对缺失数据敏感
  • 随机森林

  • Adaboost

    • 优点
      • 精度高,不容易过拟合
      • 不用做特征选择
    • 缺点
      • 对异常点敏感
  • K-means

    • 优点
      • 原理简单,容易实现
      • 当簇之间区分效果明显时聚类效果较好
    • 缺点
      • 对初始质心及K的选择较敏感
      • 对异常点敏感

你可能感兴趣的:(机器学习模型比较)