[求助]用lle算法对人脸图象进行数据降维
LLE 的全称是 Locally Linear Embedding,它的出发点是:高维空间中样本邻接点间的关系也应该在低维空间中得到一个好的保持。换句话来说,降维的优化目标是保持邻近点的局部关系。LLE 利用线性凸组合来表示这种关系。实际上,LLE 并没有利用距离较远点间的关系,它先对每个点计算其邻近点,并把该点用其邻近点的线性组合表示,然后低维空间寻找一个最能保持这个邻近关系的投影表示。<BR>假设有在同一个子空间上的 N 个样本点 Xi,且这些点能够提供充分的信息(也就是这些点是在子空间内一个比较均匀和广泛的采样)。<BR>具体算法如下:<BR>寻找每个点 Xi 的邻近点 Xj;最简单的方法是,按照 Euclidean 距离计算每个点的 K 个最近点。<BR>计算权值 Wij,使得 Xi 由它的邻近点的 Xj 线性组合表示(由 Xj 重建 Xi),最小化下面的重建误差和函数ε(W) =∑iXi ?∑j2Wij Xj。权值 Wij可以看作是邻近点 Xj对 Xi的重建贡献,当 Xj不是 Xi的邻近点时 Wij=0;否则以重建误差最小计算得出;同时为了计算方便增加如下的限制条件∑Wij =1。j可以发现这种方法的优点是它们与旋转、放缩变化无关。<BR>根据计算出的权值 Wij,寻找样本点的低维投影 Yi,使得下面的函数最小化 Φ(Y) =∑iYi ?∑j2WijYj 。这个函数与前面的重建误差和函数有相同的形式,但是固定的是权值 Wij,寻找低维映射 Yi。可以发现,这里我们的目的是寻找低维输出 Yi 使得其与高维空间中的数据 Xi 具有相同的重建关系 Wij。<BR>LLE 算法仅仅有一个参数 K-每个点邻近点的个数;权值 Wij 和输出低维投影<BR>Yi 都可以通过线性代数的方法计算出来。<BR>
页:
[1]