安徽网站建设调查报告,排名优化公司好不好,广州软件开发公司排名,网站建栏目建那些文章目录写在前面1. 从几何变换到奇异值分解2. 代数角度理解奇异值与奇异向量2.1 从正交基映射推导SVD2.2 特征值分解求解奇异值和奇异向量2.2.1 求解过程2.2.2 推论2.3 SVD的另一种形式3. 几何角度理解奇异值与奇异向量3.1 从坐标变换理解3.1.1 从例子到一般3.1.2 两个问题3.2…文章目录写在前面1. 从几何变换到奇异值分解2. 代数角度理解奇异值与奇异向量2.1 从正交基映射推导SVD2.2 特征值分解求解奇异值和奇异向量2.2.1 求解过程2.2.2 推论2.3 SVD的另一种形式3. 几何角度理解奇异值与奇异向量3.1 从坐标变换理解3.1.1 从例子到一般3.1.2 两个问题3.2 形变的角度理解奇异值4. 我觉得的最好的奇异值解读5. 特征值分解和奇异值分解区别6. 奇异值分解在PCA中的应用参考文献写在前面读完本篇文章后你应该可以知道奇异值分解到底是什么 奇异值和奇异向量有什么代数意义 奇异值和奇异向量有什么几何意义 如何利用特征值分解求奇异值和奇异向量 奇异值的个数如何确定 奇异值分解是否唯一 奇异值分解什么时候和特征值分解相等 奇异值分解和特征值分解的区别1. 从几何变换到奇异值分解这部分的内容是[1]中部分内容的翻译这几张图片大家应该见过很多次。来看一个二维平面坐标系的例子在由(1,0)T和(0,1)T确定的二维平面坐标系中 向量(x,y)T左乘M矩阵将会得到一个新的向量(新的点)。为了更容易理解变换过程我们主要关注向量(1,1)T和(1,0)T,(0,1)T,(0,0)T围城的矩形的形变过程。 左乘矩阵M的效果在坐标系中的表现如下 直接从图上看不出什么我们把原先的坐标系逆时针旋转30度然后左乘M看看效果好像也没什么特殊的把原先的坐标系逆时针旋转60度看看 右边的网格几乎快要正交了也就是说原先的正交基逆时针旋转60度后再经过M变换几乎可以得到一组新的正交基。实际上如果我们把坐标轴逆时针旋转58.28度就会得到如下效果 从几何上看旋转后的正交基(1,0)T和(0,1)T在经过M变换后得到了另外一组正交基。这其实就是SVD分解的一种解释即M可以将一组正交基映射到另一组正交基。 记映射后的向量Mv1为u1,Mv2为u2,Mv1的模为σ1Mv2的模为σ2。 接下来我们就可以推导了在v1和v2确定的二维平面中任意一点x可以表示为 在《利用SVD进行推荐1矩阵相乘的本质》中我们讲过小括号里的点积就是x在v1和v1坐标轴上的投影值(坐标)。我们对这个平面中任意一点x左乘矩阵M进行变换来看看结果 向量点积表示为矩阵乘法就是 所以变换结果可以进一步推演为 我们得到了M有关u,v,σ的表达式。将表达式转为矩阵表达形式即为 其中U中的每一列向量ui为映射后的一个单位基向量V中的每一个列向量vj为原先被映射的单位基向量。这里的推导过于简略下面我们看看更为严格的推导。2. 代数角度理解奇异值与奇异向量奇异值分解在代数上表现就是A将一组正交基转化为另一组正交基。我们来看一下具体推导。2.1 从正交基映射推导SVD2.1内容主要来自[5]靖王你真帅假设找到了这样一组正交基而mxn的实矩阵A将其映射为 我们要使他们两两正交也就是 根据假设有 在这种情况下如果取vi为AT的特征向量的话那么就有 这样我们就找到了正交基使其映射后还是正交基了。现在我们将映射后的正交基单位化。因为 也就是所以取单位向量为 由此可得 从上述公式来看左奇异向量ui是映射后正交基的单位化形式奇异值σi就是映射后的正交基的模的大小而右奇异向量vi就是被映射的正交基。此处也可以看出奇异值一定非负(当然本身的定义就是这样)。当k i m时对u1u2…uk进行扩展u(k1),…,um使得u1u2…um为m维空间中的一组正交基即同样的对v1v2…vk进行扩展v(k1),…,vn这n-k个向量存在于A的零空间中即Ax0的解空间的基使得v1v2…vn为n维空间中的一组正交基即: 然后我们就可以得到从而A的SVD分解为根据论文[3]的分析任意mxn的实矩阵AUΣVT都可以看成一种线性转化, 从n维空间到m维空间的转化。n维空间和m维空间分别由V和U的列向量所形成的基向量确定。2.2 特征值分解求解奇异值和奇异向量2.2.1 求解过程对任意mxn实矩阵A的奇异值分解A 有 这不就是特征值分解吗。也就是说 是 的特征向量其对应的特征值是 同理 是 的特征向量其对应的特征值也是 。可以从这个角度出发求解特征值和特征向量。实际上对于mxn维的实矩阵A 和 都是半正定的实对称矩阵(特征值为非负数)且具有相同的非零特征值。且krank( )rank( )rank(A) [4]。显然实对称矩阵的秩就是非零特征值的个数。因此这两个实对称矩阵有k个相同的非零特征值。当irank(A)即使有特征值也全是0。这里的分析还可以解释2.1中对角阵S上的i为什么最多取到krank(A)假设可以取到k1按照本节中的推导奇异值 是找不到对应的非零特征值的显然 0。或者说得专业些 是实对称矩阵存在n阶正交矩阵V使得相似于对角矩阵(对角线上是的全部特征值)。相似的矩阵有相同的特征多项式进而有相同的特征值当然秩更要相同了。所以r(S)r( )r( )r(A)。即对角阵S非零奇异值的个数 非零特征值的个数对称矩阵 的秩A的秩。2.2.2 推论好了我们可以总结下了对于任意实矩阵A的奇异值分解它的右奇异向量(V的列向量)是 的特征向量它的左奇异向量(U的列向量)是 的特征向量而奇异值是这两个对称矩阵相同的非零特征值的平方根(实际上它们两个非零特征值一模一样)。SVD分解只告诉我们总是存在这样一个分解并没有说这个分解是唯一的。很显然特征值次序就可以不一样显然SVD分解不唯一。但是我们常常把奇异值按照从大到小的顺序排列这样S就可以由A唯一确定了。[7]和[8]告诉了我们SVD分解什么情况下是唯一的感兴趣可以看看。那什么时候SVD分解和特征值分解相等呢 [10]里面给出了一种说法2.3 SVD的另一种形式实矩阵A的奇异值分解 可以表示为其中krank(A)即矩阵A的秩。参照2.2我们知 这些奇异值和这两个对称矩阵的相同特征值是一一对应关系(平方根)显然kmin(m,n)。使用矩阵的分块乘法得后面一项是0所以可以化为如果我们令X为mxk的矩阵,Y为kxn的矩阵 那么A可以表示为我们把它展开为向量的外积形式这就是SVD的另一种表达形式那么向量x左乘矩阵A是什么呢我们看看 是个标量所以有此时Ax已经表示成了 的线性组合每一项线性系数是 和 的乘积由矩阵乘法的本质可知此时可以看成x在V坐标系下 轴上的坐标。结论呼之欲出在A的作用下x由n维空间转化到了m维空间中。下一章我们将从空间几何的角度对这个转化进行理解。3. 几何角度理解奇异值与奇异向量3.1 从坐标变换理解3.1.1 从例子到一般我直接复制[9]中的一个例子过来作者是西电的张剑湖大佬矩阵乘法的本质一文中提到过向量左乘正交矩阵可以达到将向量旋转的效果。我们还看了一个2阶非对称方阵的实例它的奇异值变换就是对向量进行旋转-缩放-旋转的过程。当时并没有讲维度变化这个细节。我们对更一般的形式进行分析从奇异值分解的角度出发 就是x在V每个列向量所确定的轴进行投影是先将x映射到V坐标系中(此时x维度和V确定的空间维度相同也可以理解为旋转x)然后缩放的同时将维度映射到 坐标系表示的空间的维度最后映射到 坐标系中(此时 和 坐标系维度相同可以理解为旋转)。3.1.2 两个问题第一个问题是为什么不是在 中进行长度为 的伸缩而在 坐标系中向量的模长却为 呢是这样的拿v1举例吧它太过特殊在V坐标系中的投影坐标是(1,0,…,0)T。而Σ不仅把这个n维的进行了扩维将n维的(1,0,…,0)T变为m维的(1,0,…,0)同时还进行了第一维度上长度为 的伸缩成为了( ,0,…,0)。所以在投影到 坐标系之前v1已经转化成一个m空间的向量它的模长就是 。而这个m维空间无论用哪组单位正交基来表示只不过相当于对向量进行旋转换了方向向量本身的模是不变的。第二个问题是如果如问题1所述那为什么投影到 坐标系中坐标值恰好与U中的基向量是对应的实际上在代数上就是这样没有为什么。从几何角度我们还是在二维中进行分析吧。假设B点逆时针旋转θ度即为A点顺时针θ度为C点。 , 坐标系和 , 坐标系就是U和 。现在对于B( ,0)我们要向 , 坐标系中投影由其相对关系可知其投影坐标值其实就相当于A点在x,y坐标系中的投影坐标值也就是(cosθ,sinθ)T* 。发现了吧当v1乘以对角阵S维度扩展到m时此时它的坐标是有一个默认的坐标系的就如下图中的x,y坐标系。而U和 空间也如下图中关系所示它们使用默认坐标系中的坐标来表示自己。在默认坐标系下x和y轴向的伸缩变换在 , 中的表示就如同 , 坐标轴向的伸缩变换在x中的表示当然使用 , 坐标轴的基向量的表示啊。我们可以发现对于x,y坐标系中的向量OB( ,0)无论是逆时针转到了坐标系 , 中变为(cosθ,sinθ)T* 还是转到 , 坐标系中成为(cosθ,-sinθ)T* 它的模是不变的。这与问题一是呼应的。3.2 形变的角度理解奇异值在[2]中马同学从翻绳游戏开始对奇异值进行了生动形象的分析[6]中7.4节也有形变的分析还有相关例题。感兴趣的可以看一看。4. 我觉得的最好的奇异值解读在知乎问题奇异值的物理意义是什么下看到一位大牛对奇异值的解读[12]个人认为是对奇异值的一种最好的解读。感谢知乎用户“老鸡蛋”。5. 特征值分解和奇异值分解区别适用条件 特征值分解必须是可对角化矩阵(所以必须是方阵。n阶方阵可对角化的定义是相似于一个对角矩阵充要条件是A有n个线性无关的特征向量[11])奇异值分解则适用于任意矩阵。特征值/奇异值个数 特征值个数与矩阵的秩没有必然关系n阶实对称矩阵的非零特征值个数等于矩阵的秩非零奇异值个数等于矩阵的秩。几何意义 关于几何意义之前讲的比较多内容较多本文就不再赘述。[10]中对于奇异值分解的几何意义给出了一个很直观的讲法6. 奇异值分解在PCA中的应用在利用SVD进行推荐2特征值与特征向量的直观理解中我们讲过对于样本APCA的计算过程就是计算协方差矩阵 然后求前k个最大特征值对应的特征向量得到投影矩阵从而达到降维的目的。当样本非常多的时候计算协方差矩阵还要进行特征值分解这个计算量挺大的。我们发现SVD分解 中左奇异向量 不就是 的特征向量吗那我们就可以利用SVD分解来计算投影矩阵了。[13]中Pinard大神说有些SVD分解算法可以不用求 而直接得到A的右奇异矩阵V也就是可以直接得到U( 的右奇异矩阵是U)那这就很nice了。参考文献[1] http://www.ams.org/publicoutreach/feature-column/fcarc-svd[2] https://www.matongxue.com/madocs/306.html[3] http://www-users.math.umn.edu/~lerman/math5467/svd.pdf[4] 张绍飞. 矩阵论教程.第2版[M]. 2012. [5]https://blog.csdn.net/zhongkejingwang/article/details/43053513[6] Lay D , Lay. 线性代数及其应用[M]. 机械工业出版社, 2017. [7] http://rakaposhi.eas.asu.edu/s10-cse494-mailarchive/msg00030.html[8] https://math.stackexchange.com/questions/644327/how-unique-are-u-and-v-in-the-singular-value-decomposition[9] https://wenku.baidu.com/view/389fabcebceb19e8b8f6ba97.html[10] https://www.zhihu.com/question/49959130[11] 申亚男, 张晓丹, 李为东. 线性代数.第2版[M]. 机械工业出版社, 2015. [12] https://www.zhihu.com/question/22237507[13] https://www.cnblogs.com/pinard/p/6251584.html更多精彩内容请移步公众号:推荐算法工程师