简单推导一下
在这里顺便解释一下为什么要进行推导,在机器学习领域、深度学习领域,具体的数学推导其实不是那么重要,重要的是要知道这个东西到底是什么意思,不一定需要把数学原理搞得十分清楚。在这里只是简单的推导一下而已。
前提:对于一个二维矩阵M可以找到一组标准正交基v1和v2是的Mv1和Mv2是正交的。
使用另一组正交基u1和u2来表示Mv1和Mv2的方向,其长度分别为:$|MV_{1}|=\sigma _{1},|MV_{2}|=\sigma _{2}$。可得:$\begin{matrix}MV_{1}=\sigma _{1}u_{1}\\ MV_{2}=\sigma _{2}u_{2}\end{matrix}$
对于向量X在这组基中的表示:$x=(v_{1}\cdot x)v_{1}+(v_{2}\cdot x)v_{2}$,(点积表示投影的长度,可转换成行向量乘列向量$v\cdot x=v^{T}x$
可得:$\begin{matrix}Mx=(v_{1}\cdot x)Mv_{1}+(v_{2}\cdot x)Mv_{2}\\ Mx=(v_{1}\cdot x)\sigma _{1}u_{1}+(v_{2}\cdot x)\sigma _{2}u_{2}\end{matrix}$
从而:$\begin{matrix}Mx=u_{1}\sigma _{1}{v_{1}}^{T}x+u_{2}\sigma _{2}{v_{2}}^{T}x\\ M=u_{1}\sigma _{1}{v_{1}}^{T}+u_{2}\sigma _{2}{v_{2}}^{T}\end{matrix}$
化简得:$M=U\sum V^{T}$
奇异值σ跟特征值类似,在矩阵Σ中也是从大到小排列,而且σ的减少特别的快,在很多情况下,前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上了。
参考资料:
1、https://www.cnblogs.com/jian-gao/p/10781649.html
2、https://www.zhihu.com/collection/143068858?page=1
3、https://zhuanlan.zhihu.com/p/36546367
4、https://www.cnblogs.com/dynmi/p/11070994.html
5、https://www.jianshu.com/p/bcd196497d94
这篇博客写的很差,里面包含自己理解的内容很少,SVD很难理解,包括我现在也是一知半解,现在记录下来,后面如果有机会用到了,再来回过头来看看,争取温故而知新。