判别模型与生成模型
- 生成模型
学习联合概率分布,求出条件概率分布P(Y|X)=P(X,Y)/P(X)。- 朴素贝叶斯法、马尔科夫模型、高斯混合模型
- 收敛速度更快,能学习隐变量
- 判别模型
由数据直接学习决策函数f(X)或者条件概率分布P(Y|X)作为预测的模型。- 逻辑回归, KNN, SVM
- 准确率高
各模型总结
- 逻辑回归
- 优点
- 实现简单,应用成熟,基本所有的机器学习库都有
- 支持增量学习,可以在线更新
- 可以输出概率,结果易于解释
- 缺点
- 全局最优、容易欠拟合
- 当特征空间太大时表现较弱
- 难以捕捉非线性特征
- 特征离散化
- 优化方法
- 细分场景解决,用决策树决定初始场景
- 特征筛选、降维,加入L1、L2正则项
- 特征离散化,特征相乘
- 普通线性模型无法描述特征间的相关性,将特征相乘(多项式线性模型)可以引入变量相关性(e.g 女性与化妆品类,男性与球类装备)
- 优点
- 数据稀疏情况下很难求解wij,使用FM模型(类比推荐)
-
朴素贝叶斯
- 优点
- 算法简单,收敛速度快
- 支持增量学习
- 在小数据集上表现较好,多用于文本分类
- 缺点
- 条件独立假设,分类准确性较低
- 优点
-
KNN
- 优点
- 思想简单,可用以分类也可回归
- 可以用以非线性分类
- 缺点
- 计算、存储量大
- 优点
-
决策树
- 优点
- 计算简单,易于理解,容易解释
- 对数据预处理要求不高
- 可以进行变量选择
- 缺点
- 讲究局部最优,容易过拟合
- 容易忽略数据之间的相关性
- 优点
-
SVM
- 优点
- 可以解决高纬数据集,适合文本/图像分类
- 能处理非线性可分数据
- 高泛化能力
- 缺点
- 计算量大
- 需要调参数、寻找核函数
- 对缺失数据敏感
- 优点
随机森林
-
Adaboost
- 优点
- 精度高,不容易过拟合
- 不用做特征选择
- 缺点
- 对异常点敏感
- 优点
-
K-means
- 优点
- 原理简单,容易实现
- 当簇之间区分效果明显时聚类效果较好
- 缺点
- 对初始质心及K的选择较敏感
- 对异常点敏感
- 优点