本篇使用的符号说明,考虑优化问题
\[\min\limits_X \|A\circ X-B\|_F^2,\tag{1} \]其中\(A,X,B\in M_{m,n}\)。自然的想法是对其求导找闭式解,由于\(F\)-范数的平方可以看作对每个位置的平方求和,于是\((1)\)可以向量化写成以下形式,
\[\min\limits_X \|\operatorname{vec}(A)\odot \operatorname{vec}(X)-\operatorname{vec}(B)\|_2^2. \tag{2} \]其中\(\odot\)为element-wise product,也称为hadamard积(也可用符号\(\circ\)表示)。\(\operatorname{vec}(\cdot)\)为向量化操作,若\(A=(a_1,a_2,\cdots,a_n)\),则
\[\operatorname{vec}(A)=\left[\begin{matrix} a_1 \\ a_2 \\ \vdots \\ a_n \end{matrix} \right]. \]令\(\bm{x}=\operatorname{vec}(X)\),则\((2)\)可以写成
\[\min\limits_{\bm{x}} \|\operatorname{vec}(A)\odot \bm{x}-\operatorname{vec}(B)\|_2^2 \\ =\min\limits_{\bm{x}} \|\operatorname{diag}(\operatorname{vec}(A))\cdot \bm{x}-\operatorname{vec}(B)\|_2^2. \tag{3}\]对其求导可得
\[\begin{aligned} \frac{\partial}{\partial\bm{x}}\|A\circ X-B\|_F^2 &=\frac{\partial}{\partial\bm{x}}\|\operatorname{diag}(\operatorname{vec}(A))\cdot \bm{x}-\operatorname{vec}(B)\|_2^2 \\ &= 2\operatorname{diag}(\operatorname{vec}(A))^H\big[\operatorname{diag}(\operatorname{vec}(A))\cdot \bm{x}-\operatorname{vec}(B)\big] \\ &= 2\operatorname{diag}(\operatorname{vec}(\bar{A}))\big[\operatorname{diag}(\operatorname{vec}(A))\cdot \bm{x}-\operatorname{vec}(B)\big]\\ &= 2\operatorname{vec}(\bar{A})\odot\big[\operatorname{vec}(A)\odot \bm{x}-\operatorname{vec}(B)\big]. \end{aligned} \]再整理成矩阵形式可得
\[\frac{\partial}{\partial X}\|A\circ X-B\|_F^2 = 2\bar{A}\odot (A\odot X-B). \tag{4} \]于是对于优化问题\((1)\),若\(A\)没有零元素,则通过\((4)\)可得
\[\begin{aligned} 0 &= 2\bar{A}\odot (A\odot X-B) \\ X &= B\oslash A, \\ \end{aligned} \]其中\(\oslash\)表示element-wise division。
标签:odot,bm,矩阵,求导,vec,diag,hadamard,partial,operatorname From: https://www.cnblogs.com/edlinf/p/17585899.html