任务安排
1、机器学习导论 8、核方法
2、KNN及其实现 9、稀疏表示
3、K-means聚类 10、高斯混合模型
4、主成分分析 11、嵌入学习
5、线性判别分析 12、强化学习
6、贝叶斯方法 13、PageRank
7、逻辑回归 14、深度学习
线性判别分析(LDA)
Ⅰ 核心思想
对于同样一件事,站在不同的角度,我们往往会有不同的看法,而降维思想,亦是如此。同上节课一样,我们还是学习降维的算法,只是提供了一种新的角度,由上次的无监督学习 PCA,转向这次的监督学习 LDA
由下图的降维结果,我们可以直观地看出,方法2的降维效果要优于方法1,最直接影响我们判断的依据就是,这次的样本集带颜色(有标签分类)了,而这,是无监督学习与监督学习最根本的区别,也是 PCA 与 LDA 最显著的差异。
LDA 基本原理:将高维的样本数据投影到最佳判别向量空间,以达到特征提取(维数约简)的效果,投影后保证样本数据在新的子空间有最大的类间距离和最小的类内距离,即在该子空间中具有最佳的可分离性
总结一句,核心思想就是:
投 影 后 类 内 方 差 最 小 , 类 间 方 差 最 大 \color{red}投影后类内方差最小,类间方差最大 投影后类内方差最小,类间方差最大
LDA 数学描述:通过一个线性变换 T T T,将 R d R_d Rd 中的样本数据映射到 R k R_k Rk(从 d d d 维降到 k k k 维),且希望该变换将属于同一类的样本映射得越近越好(即最小的类内距离),而将不同类的样本映射得越远越好 (即最大的类间距离),同时还能尽能多地保留样本数据的判别信息
对于任意样本 x ∈ R d x∈R^d x∈Rd,有 y = T ( x ) = w T x y=T(x)=w^Tx y=T(x)=wTx, w ∈ R k w∈R^k w∈Rk,为待求向量
★Ⅱ 目标函数
①二分类问题的目标函数
为了分析方便,下面介绍的是二分类问题的目标函数
记两类样本集合分别为 X 1 X_1 X1, X 2 X_2 X2, μ i μ_i μi 为 X i X_i Xi 类的均值向量(类别中心),即 μ i = 1 N i ∑ x ∈ X i x μ_i=\frac{1}{N_i}∑_{x∈X_i}x μi=Ni1x∈Xi∑x
μ i μ_i μi 线性变换后为 z ˉ i \bar{z}_i zˉi
z i ˉ = T ( μ i ) = w T μ i = w T 1 N i ∑ x ∈ X i x = 1 N i ∑ x ∈ X i w T x \bar{z_i}=T(μ_i)=w^Tμ_i=w^T\frac{1}{N_i}∑_{x∈X_i}x=\frac{1}{N_i}∑_{x∈X_i}w^Tx ziˉ=T(μi)=wTμi=wTNi1x∈Xi∑x=Ni1x∈Xi∑wTx
记 Z i = Z_i= Zi={ T ( x ) ∣ x ∈ X i T(x)|x∈X_i T(x)∣x∈Xi },由 LDA 基本思想我们希望:
① z 1 ˉ \bar{z_1} z1ˉ 和 z 2 ˉ \bar{z_2} z2ˉ 离的越远越好,
即类间离散度(between-class scatter), J b = ( z 1 ˉ − z 2 ˉ ) 2 J_b=(\bar{z_1}-\bar{z_2})^2 Jb=(z1ˉ−z2ˉ)2 要大
② Z i Z_i Zi 中的元素越靠近 z i ˉ \bar{z_i} ziˉ 越好,即类内离散度(within-class scatter)
J w = ∑ z ∈ Z 1 ( z − z 1 ˉ ) 2 + ∑ z ∈ Z 2 ( z − z 2 ˉ ) 2 J_w=∑_{z∈Z_1}(z-\bar{z_1})^2+∑_{z∈Z_2}(z-\bar{z_2})^2 Jw=∑z∈Z1(z−z1ˉ)2+∑z∈Z2(z−z2ˉ)2 要小
则目标函数:
arg m a x w J ( w ) = J b J w = ( z 1 ˉ − z 2 ˉ ) 2 ∑ z ∈ Z 1 ( z − z 1 ˉ ) 2 + ∑ z ∈ Z 2 ( z − z 2 ˉ ) 2 \arg \underset{w}{max}J(w)=\frac{J_b}{J_w}=\frac{(\bar{z_1}-\bar{z_2})^2}{∑_{z∈Z_1}(z-\bar{z_1})^2+∑_{z∈Z_2}(z-\bar{z_2})^2} argwmaxJ(w)=