矩阵范数小结

来源:互联网 发布:java中遍历数组 编辑:程序博客网 时间:2024/06/06 12:56

今天看了半天强化学习,看得很不开心。。。因为一直处于懵圈状态。。。
于是乎不想看了,稍微总结一下矩阵范数的求解来放松一下身心吧~

这里总结的矩阵范数主要是F范数、1范数、2范数、核范数以及全变分TV范数与1、2的搭配

1、F范数

概念:

XF=i=1mj=1nx2ij

矩阵各个元素平方和开根,概念上非常像向量的L2范数
导数:求导的方法则是将其展开来,一般情况下我们不会直接求原始的范数||A||F,因为很麻烦,即使是在损失函数中也是用F范数的平方项来简化运算,而常见的损失函数一般是
12||YX||2F
,此时对X求导,则需要将内部的Y-X展开来
YXTYX=YTY+2XTY+XTX,所以对12||YX||2F中X求导即为XY

2、1范数

概念:║A║1 = max{ ∑|ai1|, ∑|ai2| ,…… ,∑|ain| } (列和范数,A每一列元素绝对值之和的最大值) (其中∑|ai1|第一列元素绝对值的和∑|ai1|=|a11|+|a21|+…+|an1|,其余类似);
矩阵的1范数和向量的1范数雷同,不能直接求解,只能分情况讨论
求导:常规的L1范数的求导是在损失函数中作为正则项出现,即12||YX||2F+λ1||X||1,这里前半部分求导是XY,后半部分则需要分情况讨论,最终结果为为

[Sλ(Y)]i=yiλ0yi+λifyi>λifλyiλifyi<λ

3、2范数

概念:||A||2指的是A最大的奇异值或者半正定矩阵A*A最大特征值开根
求导:对于问题argminX12XV2F+λX2存在近似解|V|2λ|V|2V

4、TV范数

概念:全变分范数,其实就是对矩阵乘上一个一阶的差分矩阵,乘完还是个矩阵,所以要一般要结合前边的1范数或者2范数再对其进行约束求解

5、核范数

概念:即矩阵奇异值的和
求解:对于minX112YX12F+λ1X1
存在近似解X1^=Dλ1(Y)
Dλ 表示i=1r(σiλ)+uivTi

这里, (x)+=max(0,x). ui, viσi 分别是M的左奇异向量、右奇异向量和奇异值

(markdown模式下可以用latex写东西真的太方便了= =

至于各个范数的效果,实质上1范数和2范数在矩阵分解上效果差得不多,基本上2范数能分离出的高频成分1范数能更快的分离出来,在一维层面上也容易想想,1范数相比2范数能够更快的收敛(直指坐标中心),核范数效果对低频成分的提取也比TV_1/TV_2范数的效果要好很多。

具体的实现可以关注一下我师弟在这个月投在BIBM上一个关于矩阵范数的toolbox论文。应该很快就可以出结果了。o( ̄▽ ̄)ブ

参考文献
Cai J F, Candès E J, Shen Z. A Singular Value Thresholding Algorithm for Matrix Completion[J]. Siam Journal on Optimization, 2010, 20(4):1956-1982.
矩阵的 Frobenius 范数及其求偏导法则 http://blog.csdn.net/txwh0820/article/details/46392293