理解奇异值分解

2020年06月30日 14点热度 0人点赞 0条评论

奇异值分解,就是把矩阵分成多个“分力”。奇异值的大小,就是各个“分力”的大小。

让我们从小时候玩过的翻绳游戏开始这个问题的讲解。

1 翻绳

对于翻绳的这个花型而言,是由四只手完成的:

马同学高等数学

我们可以认为这个花型是由两个方向的力合成的:

容易想象,如果其中一个力(相比另外一个力而言)比较小的话,那么绳子的形状基本上由大的那个力来决定:

马同学高等数学

2 奇异值分解与奇异值

类比于翻绳,我们可以认为:

  • 奇异值分解,就是把矩阵分成多个“分力”
  • 奇异值的大小,就是各个“分力”的大小

2.1 奇异值分解

下面通过一个具体的矩阵例子来解释下,比如:

根据之前的类比,矩阵是“力”,“力”怎么画出来呢?

翻绳游戏中的“力”要通过绳子的形状来观察。很显然要观察矩阵也需要一个载体。我们通过单位圆来观察矩阵:

把这个单位圆的每一点都通过A进行变换,得到一个椭圆(我把单位圆保留下来了,作为一个比较):

对A进行奇异值分解:

实际上,将A分为了两个“分力”:

我们来看看第一个“分力”,

作用在单位圆这个“橡皮筋”上的效果:

可怜的“橡皮筋”被拉成了一根线段。

我们来看看第二个“分力”

作用在单位圆这个“橡皮筋”上的效果:

可怜的“橡皮筋”被拉成了另外一根线段。

这两个“分力”一起作用的时候,可以想象(画面自行脑补),单位圆这个“橡皮筋”被拉成了椭圆:

2.2 奇异值的大小

刚才举的矩阵的两个“分力”大小,只相差一倍,如果相差很大会怎么样?换一个矩阵A,对它进行奇异值分解:

这两个“分力”的奇异值相差就很大,大概相差了40倍。

单位圆被A映射成了短轴和长轴相差太大的椭圆,看起来和直线差不多:

我们试试,把小的那个奇异值去掉会怎么样:

把单位圆变为了一根直线:

这个直线和之前的椭圆看上去差不多。

回到之前的比喻,两个相差很大的分力作用在“橡皮筋”上,“橡皮筋”的形状可以说完全取决于大的那个分力。

隐藏内容需要支付:¥1
查看全部
未经允许不得转载!理解奇异值分解

update

纸上得来终觉浅, 绝知此事须躬行。