最近看了论文Class-wise feature extraction technique for multimodal data,论文中提出了一种对LPP(局部保留投影 )的改进方法,称之为CdLPP( Class-dependent Locality Preserving Projections )。
先讲讲LPP,定义亲和矩阵A为N*N的矩阵,A(i,j)表示样本i和样本j的相似度
χki
χ
i
k
表示
χ
χ
的第k近邻
接下来,计算以下矩阵:
并求解
令T1 = X*L*X’ T2 = X*D*X’ 即为求T = T1/T2的特征值和特征向量
X为样本数据构成的矩阵
求出特征值和特征向量后,取其中最小的r个,即可得到将n维数据投影到r维的投影矩阵。
接下来是CdLPP:
根据论文描述,分为以下步骤:
1.将训练集
π
π
根据样本的c个类别划分为
π=π1∪π2∪π3∪⋯∪πc
π
=
π
1
∪
π
2
∪
π
3
∪
⋯
∪
π
c
2.对每个类
πi
π
i
都运行LPP得到投影矩阵
TiLPP
T
L
P
P
i
3.使用类间负散布矩阵:
Sin
S
n
i
为负散布矩阵,计算时使用的是
i
i
这一类的均值和除之外所有其他类的样本计算
求
Tin
T
n
i
的过程和PCA(主成分分析)差不多,就是求特征值和特征向量,得到投影矩阵,即对
Sin
S
n
i
进行求特征值和特征向量的处理,得到
Tin
T
n
i
4.对 [Tin,TiLPP] [ T n i , T L P P i ] 使用施密特正交化方法,得到投影矩阵 TiCdLPP T C d L P P i
代码的验证和实现随后放上