生成式算法与判别式算法
前言:网易公开课机器学习 第五课 生成学习算法的观后感或者总结笔记
1. 区别
生成式算法:对p(x|y)和p(y)进行建模,也可以说是对p(x,y)进行建模,即求x,y的联合分布。比如GDA(Gaussian Discriminant Analysis),有两个类别0和1,分别对p(x|y=0)和p(x|y=1)进行建模,还有p(y=0)和p(y=1)进行建模,最终
判别式算法:对p(y|x)进行建模,相当于一个黑箱,给定一个数据集,直接根据数据集得到决策函数或规则。比如逻辑回归,直接对p(y|x)进行建模。
2. 高斯判别分析
1. 一元高斯分布
2. 多元高斯分布
其中
3. 参数求解
模型:
分布:
极大log似然函数:
求参:
这里的
3. 逻辑回归与高斯判别分析联系与区别
联系:
上式的意思是如果我们把高斯分布看成x的函数,那么我们可以找到合适的
Θ (作为ϕ,μ0,μ1,Σ 的函数)用逻辑回归的形式来表示高斯分布。事实上,不光是高斯分布,泊松分布以及一些与e的幂有关的分布都可以这样表示。但是反过来不成立,我们并不一定可以将逻辑回归表示成高斯分布,说明了高斯分布的假设是一种强假设,而逻辑回归的假设是一种弱假设。
区别:高斯判别分析:高斯分布是一种强假设,如果数据确实是高斯分布,或者接近高斯分布,那么即使数据很少,高斯判别分析也可以得到比逻辑回归更好的效果。
逻辑回归:是一种弱假设,所以具有很好的鲁棒性,当数据不符合高斯分布时,逻辑回归可以得到比高斯判别分析更好的效果。
基于以上原因,因为实际应用中,我们并不知道数据的实际分布,所以逻辑回归比高斯判别分析使用的更多。