SVD分解在特征降维的应用
来源:互联网 发布:名片设计软件免费版 编辑:程序博客网 时间:2024/05/19 17:23
最近在做图像分割的实验,但在分类过程中有时会出现所使用的矩阵closely singular而很难accurately calculate. 于是想到了采用SVD decompositon进行降维(这种解决方法是否可行,还有待验证)。
--------------------------------------------------------
(1) 基本公式
从网上看了很多有关SVD分解的资料,对大小为m*n的矩阵进行SVD分解,使用matlab可以很容易进行分解:
X = U * Σ * V'
U是m×m阶酉矩阵;Σ是半正定m×n阶对角矩阵;而V',即V的共轭转置,是n×n阶酉矩阵。这样的分解就称作M的奇异值分解。Σ对角线上的元素Σi,i即为M的奇异值。
----------------------------------------------------------------------
(2) svd具体实现
在matlab中,实现svd分解的函数为:
[u s v]=svd(x);
---------------------------------
(3) 下面要考虑的问题就是如何降维了
假设最终只保留k维,则首先
s = s(1:k,1:k); u = u(:,1:k); v = v'(1:k,:);
然后,
x1 = u * s * v;
(n*d = n*k k*k k*d)
由此,可以用x1近似x。
使用 yi' = xi' * u * inv(s) 作为降维后的第i个特征数据,从而得到降维特征集合
y = [yi'].大小为n*k.
(这个理解是否正确还不清楚,需要通过实验进行验证!)
- SVD分解在特征降维的应用
- 特征降维之SVD分解
- 奇异值分解(SVD)的之低秩近似和特征降维
- 奇异值分解(SVD)的之低秩近似和特征降维
- 奇异值分解(SVD)原理与在降维中的应用
- 奇异值分解(SVD)原理与在降维中的应用
- SVD分解在文本分类中的应用
- 文本分类之降维技术之特征抽取之SVD矩阵的分解的原理的介绍
- SVD分解及应用的直观理解
- SVD分解及应用的直观理解
- 特征选择之SVD分解
- 【推荐系统】特征值分解(谱分解)和奇异值分解(SVD),即在PCA上的应用
- SVD分解及其应用
- SVD分解及其应用
- 机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用
- 奇异值分解SVD在简单推荐系统中的应用
- 矩阵分解SVD在推荐系统中的应用
- SVD分解的理解
- c++ 内存管理:5、指针参数是如何传递内存的
- 期待并实现我的大学生活
- IO总结(三)
- 归并分组
- CI(1) controller
- SVD分解在特征降维的应用
- UART与USART的区别
- uva 10943 - How do you add?(dp)
- UML--9种图对比
- c++ 内存管理:6、杜绝“野指针”
- 群聊程序的linux代码实现
- 让你和你的父母长寿的方法
- exec函数族
- 12232液晶第二行第一个字符显示乱码