机器学习基础---降维方法---局部保持投影(LPP)推导
LPP
方法概述
核心思想
- 有映射Ym∗n=f(Xd∗n)\underset{m*n}{Y}=f(\underset {d*n}X)m∗nY=f(d∗nX),能够实现将d维的样本变换到m维空间之中
- 假设:对于一个好的降维方法,在高维空间下距离近(相似度高)的两个点,在低维空间下依旧保持相近的关系
- 考虑映射Y=WTXY=W^TXY=WTX,即原样本空间中有xix_ixi与xjx_jxj距离近,yiy_iyi与yjy_jyj (yi=WTxiy_i=W^Tx_iyi=WTxi)仍保持相近关系
相关定义
权重矩阵S:
定义样本xix_ixi与xjx_jxj之间的权重wijw_{ij}wij,原则是样本点之间距离越小,权重越大
权重矩阵S常用定义方式:
sij={sij=exp(−∣∣xi−xj∣∣2t)xi∈Nk(xj)即xi是xj的k近邻sij=0elses_{ij}= \begin{cases} \begin{aligned} &s_{ij} = exp(-\frac{||x_i-x_j||^2}{t}) &x_i\in N_k(x_j)即 x_i是x_j的k近邻\\ &s_{ij} = 0 &else \end{aligned} \end{cases} sij=⎩⎨⎧sij=exp(−t∣∣xi−xj∣∣2)sij=0xi∈Nk(xj)即xi是xj的k近邻elseS=[s11s12...s1n............sn1sn2...snn]S=\left[ \begin{matrix} s_{11} & s_{12} & ... & s_{1n}\\ ... & ... & ... & ...\\ s_{n1} & s_{n2} & ... & s_{nn} \end{matrix} \right] S=⎣⎡s11...sn1s12...sn2.........s1n...snn⎦⎤
度矩阵D:
度矩阵D是一个对角阵,其对角元素Dii=∑j=1nsijD_{ii}=\sum_{j=1}^ns_{ij}Dii=∑j=1nsij
D=[∑j=1ns1j0...00∑j=1ns2j...0............00...∑j=1nsnj]D=\left[ \begin{matrix} \sum_{j=1}^ns_{1j} & 0 & ... & 0\\ 0 & \sum_{j=1}^ns_{2j} & ... & 0\\ ... & ... & ... & ...\\ 0 & 0 & ... & \sum_{j=1}^ns_{nj} \end{matrix} \right] D=⎣⎢⎢⎡∑j=1ns1j0...00∑j=1ns2j...0............00...∑j=1nsnj⎦⎥⎥⎤
拉普拉斯矩阵L:L=D−SL=D-SL=D−S
有运算:
YDYT=[y1,y2,...,yn][d110...00d22...0............00...dnn][y1Ty2T...ynT]\begin{aligned} YDY^T&=[y_1,y_2,...,y_n] \left[ \begin{matrix} d_{11} & 0 & ... & 0\\ 0 & d_{22} & ... & 0\\ ... & ... & ... & ...\\ 0 & 0 & ... & d_{nn} \end{matrix} \right] \left[ \begin{matrix} y_1^T\\ y_2^T\\ ...\\ y_n^T \end{matrix} \right]\\ \end{aligned}\\ YDYT=[y1,y2,...,yn]⎣⎢⎢⎡d110...00d22...0............00...dnn⎦⎥⎥⎤⎣⎢⎢⎡y1Ty2T...ynT⎦⎥⎥⎤
=[d11yy1,...,dnnyn][y1Ty2T...ynT]= [d_{11y}y_1,...,d_{nn}y_n] \left[ \begin{matrix} y_1^T\\ y_2^T\\ ...\\ y_n^T \end{matrix} \right] \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \\ =[d11yy1,...,dnnyn]⎣⎢⎢⎡y1Ty2T...ynT⎦⎥⎥⎤
=d11y1y1T+d22y2y2T+...+dnnynynT=d_{11}y_1y_1^T+d_{22}y_2y_2^T+...+d_{nn}y_ny_n^T\\ =d11y1y1T+d22y2y2T+...+dnnynynT
因此有:
tr(YDYT)=∑iNdiiyiTyitr(YDY^T)=\sum_i^Nd_{ii}y_i^Ty_i tr(YDYT)=i∑NdiiyiTyi
类似可得:
tr(YSYT)=∑iN∑jNsijyiTyjtr(YSY^T)=\sum_i^N\sum_j^Ns_{ij}y_i^Ty_j tr(YSYT)=i∑Nj∑NsijyiTyj
优化目标
- 定义优化目标:
min∑i∑j∣∣yi−yj∣∣2sijmin\sum_{i}\sum_{j}||y_i-y_j||^2s_{ij} mini∑j∑∣∣yi−yj∣∣2sij
即在原始空间中近的点(sijs_{ij}sij大),其在降维后应该尽可能接近(yiy_iyi与yjy_jyj距离更小)
方法推导
对于LPP方法,有目标:
argminW∑i∑j∣∣yi−yj∣∣2sij\underset{W}{arg\ min}\sum_i\sum_j||y_i-y_j||^2s_{ij} Warg mini∑j∑∣∣yi−yj∣∣2sij对于目标:
∑iN∑jN∣∣yi−yj∣∣2sij=∑iN∑jN(yiTyi−yiTyj−yjTyi+yjTyj)sij=2∑iNyiTyidii−2∑iN∑jNyiTyjsij=2tr(YDYT)−2tr(YSYT)=2tr(YLYT)\begin{aligned} &\ \ \ \ \ \sum_i^N\sum_j^N||y_i-y_j||^2s_{ij} \\ &= \sum_i^N\sum_j^N(y_i^Ty_i-y_i^Ty_j-y_j^Ty_i+y_j^Ty_j)s_{ij} \\ &= 2\sum_i^N y_i^Ty_id_{ii}-2\sum_i^N\sum_j^N y_i^Ty_js_{ij} \\ &= 2tr(YDY^T)-2tr(YSY^T)\\ &= 2tr(YLY^T) \end{aligned} i∑Nj∑N∣∣yi−yj∣∣2sij=i∑Nj∑N(yiTyi−yiTyj−yjTyi+yjTyj)sij=2i∑NyiTyidii−2i∑Nj∑NyiTyjsij=2tr(YDYT)−2tr(YSYT)=2tr(YLYT)
去除乘数,最小化目标为:
tr(YLYT)tr(YLY^T) tr(YLYT)
带入Y=WTXY=W^TXY=WTX,得最小化目标:
tr(WTXLXTW)tr(W^TXLX^TW) tr(WTXLXTW)该目标存在平凡零解:W=Om∗dW=O_{m*d}W=Om∗d
此时L取最小值0,出现维度坍缩,所有样本映射到同一个点上,此解无意义
当W不取零矩阵时,由于没有添加尺度约束,在降维子空间一定(组成基向量方向一致)情况下,当尺度不断变小时,目标L会同时变小,无限趋于0,不存在最小值
因此,考虑对最小化目标变形为:
tr(YLYT)tr(YDYT)=tr(WTXLXTW)tr(WTXDXTW)\frac{tr(YLY^T)}{tr(YDY^T)}=\frac{tr(W^TXLX^TW)}{tr(W^TXDX^TW)} tr(YDYT)tr(YLYT)=tr(WTXDXTW)tr(WTXLXTW)
考虑到尺度因素,加以约束YDYT=IYDY^T=IYDYT=I也即WTXDXTW=IW^TXDX^TW=IWTXDXTW=I参考LDA中提到的广义瑞利商,可知:
λmin((XDXT)−1(XLXT))≤tr(WTXLXTW)tr(WTXDXTW)≤λmax((XDXT)−1(XLXT))\lambda_{min}((XDX^T)^{-1}(XLX^T))\leq\frac{tr(W^TXLX^TW)}{tr(W^TXDX^TW)}\leq\lambda_{max}((XDX^T)^{-1}(XLX^T)) λmin((XDXT)−1(XLXT))≤tr(WTXDXTW)tr(WTXLXTW)≤λmax((XDXT)−1(XLXT))
变换矩阵:W=[w1,w2,...,wm]W=[w_1,w_2,...,w_m]W=[w1,w2,...,wm]由(XDXT)−1(XLXT)(XDX^T)^{-1}(XLX^T)(XDXT)−1(XLXT)最小m个特征向量构成矩阵形式推导:
由拉格朗日乘子法,构建L:
L=tr(WTXLXTW)−tr(Λ(WTXDXTW−I))L = tr(W^TXLX^TW)-tr(\Lambda(W^TXDX^TW-I)) L=tr(WTXLXTW)−tr(Λ(WTXDXTW−I))
对W求偏导并令为0:
2XLXTW−2XDXTWΛ=0XLXTW=XDXTWΛ有:(XDXT)−1XLXTW=WΛ2XLX^TW-2XDX^TW\Lambda=0\\ XLX^TW= XDX^TW \Lambda\\ 有:(XDX^T)^{-1}XLX^TW=W\Lambda 2XLXTW−2XDXTWΛ=0XLXTW=XDXTWΛ有:(XDXT)−1XLXTW=WΛ
W由(XDXT)−1XLXT(XDX^T)^{-1}XLX^T(XDXT)−1XLXT的特征向量作为列向量构成,且为了最小化目标函数,选取的特征向量应该是最小m个特征值对应的特征向量
LPP与PCA
对PCA方法,其优化目标为argmaxW=tr(WTXXTW)\underset {W}{argmax} = tr(W^TXX^TW)Wargmax=tr(WTXXTW),有约束WTW=IW^TW=IWTW=I
构建的拉格朗日乘式解:XXTW=WΛXX^T W=W\LambdaXXTW=WΛ,可变为XXTXXTW=XXTWΛXX^TXX^T W=XX^TW\LambdaXXTXXTW=XXTWΛ
与LPP对比,是L=XTXL=X^TXL=XTX且D=ID=ID=I的特例
即PCA可以看成是一种特殊的LPP,区别在于LPP更关注局部关系,而PCA关注的是全局方差信息
方法流程
1)由样本矩阵X构建权重矩阵S,度矩阵D,拉普拉斯矩阵L
2)求(XDXT)−1XLXT(XDX^T)^{-1}XLX^T(XDXT)−1XLXT的特征向量,取最小m个作列向量构成变换矩阵W
3)由Y=WTXY=W^TXY=WTX完成降维
参考资料
【1】LPP局部保持投影
【2】局部保留投影(LPP)推导
【3】算法小课堂:Locality Preserving Projections (LPP)
机器学习基础---降维方法---局部保持投影(LPP)推导相关推荐
- 局部保留投影(LPP)推导
流形算法的主要思想是能够学习高维空间中样本的局部邻域结构,并寻找一种子空间能够保留这种流行结构, 使得样本在投影到低维空间后,得到比较好的局部近邻关系. 所谓流形,是指高维样本空间中呈现的一种低维的局 ...
- 机器学习基础---降维方法---T分布随机近邻嵌入(TSNE)推导
T-SNE(T-Stochastic Neighbor Embedding) 核心思想: 对无监督聚类问题: PCA目的是在样本空间内找到子空间,以变换矩阵W对样本矩阵XXX实现原空间到子空间的映射, ...
- 经典线性降维算法—局部保持投影(LPP)
本文经过转载,原文地址: 地址通道 该LPP算法,上文写地十分详细,可以参见.
- 【机器学习】【降维】局部保持投影(LPP Locality Preserving Projections)
文章目录 局部保持投影(LPP) 一.摘要: 二.主要思想 三.算法步骤 四.算法详解 局部保持投影(LPP) 论文:<Locality Preserving Projections>作者 ...
- MachineLearning 13. 机器学习之降维方法UMAP及可视化 (umap)
点击关注,桓峰基因 桓峰基因公众号推出机器学习应用于临床预测的方法,跟着教程轻松学习,每个文本教程配有视频教程大家都可以自由免费学习,目前已有的机器学习教程整理出来如下: MachineLearnin ...
- MachineLearning 12. 机器学习之降维方法t-SNE及可视化 (Rtsne)
点击关注,桓峰基因 桓峰基因公众号推出机器学习应用于临床预测的方法,跟着教程轻松学习,每个文本教程配有视频教程大家都可以自由免费学习,目前已有的机器学习教程整理出来如下: MachineLearnin ...
- pca 累积方差贡献率公式_机器学习数据降维方法:PCA主成分分析
PCA在机器学习中很常用,是一种无参数的数据降维方法.PCA步骤: 将原始数据按列组成n行m列矩阵X 将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值 求出协方差矩阵 求出协方差矩阵的 ...
- 机器学习四大降维方法
引言: 机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中.降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达,目前最多使用向量表达 ...
- 机器学习之降维方法(LDA、PCA)小结
1 线性判别分析(LDA) 1.1 LDA简介 LDA是一种监督学习的降维技术,也就是说它的数据集的每个样本是有类别输出的.一句话来概括LDA的核心思想,[投影后类内方差最小,类间方差最大].我们将数 ...
最新文章
- python编程有用吗-分享8点超级有用的Python编程建议
- (第一次)NODEJS学习笔记
- MySQL高级 - 锁 - MySQL对锁的支持
- fedora yum mysql_Fedora14使用yum安装mysql
- d3.js中的选择元素
- python 迭代多个对象
- 阿里云 MSE 微服务治理发布企业版
- 19寸宽屏液晶显示器的设置 有效保护视力
- 航芯技术分享 | 了解汽车上的OBD
- dot格式绘图工具 html,使用dot来绘图
- Android USB 输入设备
- Nat. Rev. Genet. | 通过可解释人工智能从深度学习中获得遗传学见解
- farey(法莱)数列 (USACO Ordered Fractions)
- 微信公众号自定义分享IOS失效
- 有位程序员写了部「修仙小说版」编程教程!网友:蚌埠住了 ....
- python计算机体系三层结构_python学习笔记-计算机结构、操作系统
- AES 和 SM4 S盒复合域实现方法
- 云计算机房建设方案,服务器机房建设方案
- 个人和初创企业想要搭建网站,如何挑选一台便宜合适的云主机?
- rabbitmq知识汇总