分类——LDA、QDA
2015-07-23 22:48
148 查看
LDA(Linear Discriminant Analysis)
模型:Pr(Y=k|X=x)=πkfk(x)∑kl=1πlfl(x)
假设:第k类的观测值来自于多元高斯分布N(μk,Σ)
即:
fk(x)=Pr(X=x|Y=y)
f(x)=1(2π)P/2|Σ|1/2exp[−12(x−μ)−1Σ−1(x−μ)]
2 . P表示特征的数量、Σ表示协方差矩阵
当P = 1 时:f(x)假设为一维高斯分布,Σ用方差σ2表示,则
f(x)=1(2π)1/2σexp[−12σ2(x−μ)2]
问题:在实际中,fk(x)是未知的,需要通过训练集预测,LDA(P=1)假设了fk(x)来自于一维高斯分布
再假设:σ21=σ22=...=σ2k=σ2,
将fk(x)代入模型,获得取某个特定x值时,记录术语第k类的概率
即:
Pk(x)=Pr(Y=k|X=x)=πk1(2π)1/2σexp[−12σ2(x−μk)2]∑kl=1πlfl(x)
Pk(x)最大表示取x值的记录最有可能术语类别k
取对数且化简:
δk(x)=x∗μkσ2−μ2k2σ2+log(πk)
参数估计
实际的Pk(x)分布并不可知,因此需要估计μ1..μk;π1...πk;σ2
LDA采用了plugging estimates方法进行参数估计:
μk^=1nk∑i:yi=kxi
πk^=nkn
σ2^=1n−k∑Kk=1∑i:yi=k(xi−μ^k2)
3.P>1
同理得:
δk(x)=xTΣ−1μk−12μTkΣ−1μk+log(πk)
参数估计的方法同上,需要估计协方差矩阵Σ
4.评价:confusion matrix
QDA(Quadratic Discriminat Analysis)
与LDA**相同**,QDA也假设了每个类的观测值都来自于高斯分布与LDA**不同**,QDA假设每个类有它们自己的协方差矩阵,即N(μk,Σk)
因此:
δk(x)=−12(x−μk)TΣ−1(x−μk)−12log|Σk|+log(πk)
原因:
1.variance-bias trade-off : 在现实情况中,真实的分布f不能得到,需要通过观测值组成训练集来估计。训练集可能不完全也可能来自于不同的观测值,因此variance反应了不同数据集预测得到的\f^ 和\f之间差距的变化度。bias反应了预测的误差。
2.QDA相比LDA需要估计更多的参数,当数据量足够大时,variance不再是主要的问题,选用QDA更好
3.当数据量较小时,LDA更常用。
相关文章推荐
- Openstack nova service 启动过程
- 找对英语学习方法的第一本书之:标准发音
- MySQL mysqldump 原理浅析
- 怎么样做内容才不会走火入魔?
- 怎么样做内容才不会走火入魔?
- CentOS6下安装Python
- 关于设置http响应头connection的作用
- JAVA_ 网络编程,写一个可以上传文件的服务器和客户端
- Spring JdbcTemplate
- 使用zip包离线安装Android SDK,并使用Unity发布apk
- 脚本通过snmp信息获取接口流量
- 公布源代码的大神主页
- shell序列和nohup &
- poj 2253 Frogger和 poj 2485 Highways
- 类的继承
- OC学习笔记01-类的声明实现与对象创建,方法声明实现与调用及传参
- SQL on Haoop/Spark
- 二叉堆
- UIAPPdelegate
- Memcache内存分配机制