【学习笔记】奇异值分解

奇异值分解 singular value decomposition(svd)

我们现在有矩阵 A=USVT,大小为 n×mU 大小为 n×nV 大小为 m×m,同时 U,V 满足 UUT,VVT 都是单位矩阵,S 大小为 n×m 且只有主对角线(ai,i上有值。

我们的目标是给定 A 求出来 U,S,VT

做法很简单,求 ATAm 个特征向量,concat 起来就是 VAATn 个特征向量,concat 起来就是 U。S 中 ai,iATA 的第 i 个特征值 λi 开根号。

理解起来可能费点时间,其实就是一个从信息和结论双向奔赴的过程。中间的额外发现就是可以调整系数使得矩阵的特征向量模长为 1

  • SVD 和 PCA 的联系

    在 PCA 的实现流程中,对于一个零均值化之后的矩阵,我们希望计算 AAT 再求特征向量。但是有人嫌弃矩阵乘法太慢了,然后发现 SVD 中的 V 矩阵就是我们要的特征向量的 concat 结果(其实 U 矩阵可以用于行压缩or数据数量的压缩,V 矩阵可以用于列压缩 or 数据维度的压缩)

    这里有一个讲 power iteration method 求 PCA 中正交基的,做法简单得离谱,证明摆了,因为我太颓废了。

    注意找到一个基之后应该把所有向量减去在这个基上的投影。

posted @   没学完四大礼包不改名  阅读(67)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示