矩阵分析与应用-5.3-共轭梯度与无约束最优化
前言
本文学习过程来源是《矩阵分析与应用-张贤达》一书. 可以通过 z-lib 下载.
更加详细的内容可以跳转网址 https://zlearning.netlify.app/math/matrix/matrix-gradient.html
一、标量函数的共轭梯度公式
若 \(f(x) = c\) 为常数, 则共轭梯度 \(\frac{\partial c}{\partial x^*} = 0\)
线性法则: 若 \(f(x)\) 和 \(g(x)\) 分别是向量 \(x\) 的实值函数, \(c_1\) 和 \(c_2\) 为复常数, 则
\[ \frac{\partial [c_1f(x) + c_2g(x)]}{\partial x^*} = c_1 \frac{\partial f(x)}{\partial x^*} + c_2 \frac{\partial g(x)}{\partial x^*} \tag{1} \]
乘积法则
- 若 \(f(x)\) 和 \(g(x)\) 都是向量 \(x\) 的实值函数, 则
\[ \frac{\partial f(x)g(x)}{\partial x^*} = g(x) \frac{\partial f(x)}{\partial x^*} + f(x) \frac{\partial g(x)}{\partial x^*} \tag{2} \]
- 若 \(f(x)\) , \(g(x)\) 和 \(h(x)\) 都是向量 \(x\) 的实值函数, 则
\[ \frac{\partial f(x)g(x)h(x)}{\partial x^*} = g(x)h(x) \frac{\partial f(x)}{\partial x^*} + f(x)h(x) \frac{\partial g(x)}{\partial x^*} +f(x)g(x) \frac{\partial h(x)}{\partial x^*} \tag{3} \]
商法则: 若 \(g(x) \neq 0\), 则
\[ \frac{\partial f(x)/g(x)}{\partial x^*} = \frac{1}{ {g^2} (x)} [ g(x) \frac{\partial f(x)}{\partial x^*} - f(x) \frac{\partial g(x)}{\partial x^*}] \tag{4} \]
链式法则: 若 \(y(x)\) 是 \(x\) 的复向量值函数, 则
\[ \frac{\partial f(y(x))}{\partial x^*} = \frac{\partial [y(x)]^{\mathrm{T}}}{\partial x^*} \frac{\partial f(y)}{\partial y} \tag{5} \]
式子中, \(\frac{\partial [y(x)]^{\mathrm{T}}}{\partial x^*}\) 为 \(n \times n\) 矩阵.
若 \(n \times 1\) 向量为 \(a\) 与 \(x\) 无关的常数向量, 则
\[ \frac{\partial a^{\mathrm{H}}x}{\partial x^*} = a, \quad \frac{\partial x^{\mathrm{H}}a}{\partial x^*} = a \tag{6} \]
( 此处的第一个式子存疑, 应该是 \(a\) 而不是书上所写的 0 )
- 令 \(A\) 是一个与向量 \(x\) 无关的矩阵, 则
\[ \begin{aligned} \frac{\partial x^{\mathrm{H}}Ax}{\partial x} = A^{\mathrm{H}}x^*, \quad \frac{\partial x^{\mathrm{H}}Ax}{\partial x^*} = Ax \\ \frac{\partial x^{\mathrm{H}}Ay}{\partial A} = x^*y^{\mathrm{T}}, \quad \frac{\partial x^{\mathrm{H}}Ax}{\partial A} = x^*x^{\mathrm{T}} \end{aligned} \tag{7} \]
二、例题解析
常见的迹函数的共轭梯度的常用公式
\[ \begin{aligned} \frac{\partial \mathrm{tr}(yx^{\mathrm{H}})}{\partial x^*} &= \frac{\partial \mathrm{tr}(x^{\mathrm{H}}y)}{\partial x^*} = y \\ \frac{\partial \mathrm{tr}(BA^{\mathrm{H}})}{\partial A^*} &= \frac{\partial \mathrm{tr}(A^{\mathrm{H}}B)}{\partial A^*} = B \\ \frac{\partial \mathrm{tr}(A^{\mathrm{H}})}{\partial A^*} &= I, \quad \frac{\partial \mathrm{tr}(A)}{\partial A^*} = O \\ \frac{\partial \mathrm{tr}(A^{\mathrm{H}}WA)}{\partial A^*} &= WA, \quad \frac{\partial \mathrm{tr}(AWA^{\mathrm{H}})}{\partial A^*} = AW \\ \end{aligned} \tag{8} \]
在 \(\mathrm{CDMA}\) 系统中, 仍然共有 \(K\) 个用户在通信, 但每个用户的扩频波形向量变成复向量 \(s_k(t)\), 接受信号向量 \(y\) 也为复向量. 此外, 设计多用户检测器 \(M\) 的目标函数变为
\[ \begin{aligned} J(M) &= E\{\lVert b - My \rVert_2^2\} \\ &= \mathrm{tr}(\mathrm{cov}(b - My)) \\ &= \mathrm{tr}(I) + \mathrm{tr}(M(RA^2R + \sigma^2R)M^{\mathrm{H}}) - \mathrm{tr}(ARM^{\mathrm{H}}) - \mathrm{tr}(MRA) \end{aligned} \]
利用迹函数的共轭梯度常用公式可得
\[ \frac{\partial J(M)}{\partial M^*} = M(RA^2R + \sigma^2R) - AR \]
令其等于零, 并假定 \(R\) 非奇异, 就有
\[ M = A(RA^2 + \sigma^2I)^{-1} \]
三、总结
我不知道为什么这本书上在表达共轭梯度公式的时候要在分母的地方用向量或者矩阵右上角添加一个星号来表示. 刚开始我就觉得这个是伴随矩阵, 但是实际运算的时候和伴随矩阵一点关系都没有. 之后恍然大悟, 原来是复共轭的符号.
在符号表示这方面其实还是存在着很多坑.