一个交替优化问题的求解(续)
优化问题
当 W W W, b b b, Y Y Y 固定时,原优化问题的目标函数变为:
min Z λ t r ( Z T 1 1 T Z ) + μ 2 ∥ Y − Z + 1 μ Λ ∥ F 2 \min_Z \lambda \mathrm{tr}\left(Z^T\mathbf{1}\mathbf{1}^TZ\right) + \frac{\mu}{2}\|Y - Z + \frac{1}{\mu}\Lambda\|_F^2 Zminλtr(ZT11TZ)+2μ∥Y−Z+μ1Λ∥F2
我们需要通过对 Z Z Z 求导并设导数为 0 来求解 Z Z Z 的最优值。
第一项的展开
λ
t
r
(
Z
T
1
1
T
Z
)
\lambda \mathrm{tr}\left(Z^T\mathbf{1}\mathbf{1}^TZ\right)
λtr(ZT11TZ)
这里的
1
1
T
\mathbf{1}\mathbf{1}^T
11T 是一个
n
×
n
n \times n
n×n 的矩阵,
1
\mathbf{1}
1 是全 1 的列向量。
t
r
(
A
)
\mathrm{tr}(A)
tr(A) 是矩阵
A
A
A 的迹(对角线元素之和)。
由于 t r ( A ) \mathrm{tr}(A) tr(A) 的性质 t r ( A B ) = t r ( B A ) \mathrm{tr}(AB) = \mathrm{tr}(BA) tr(AB)=tr(BA),这一项也可以写为:
λ t r ( Z T 1 1 T Z ) = λ ∥ Z T 1 ∥ 2 2 \lambda \mathrm{tr}(Z^T\mathbf{1}\mathbf{1}^TZ) = \lambda \|Z^T\mathbf{1}\|_2^2 λtr(ZT11TZ)=λ∥ZT1∥22
因此,这一项实际上对 Z Z Z 的优化作用是增加某种行与列的相互依赖性。
第二项的展开
μ 2 ∥ Y − Z + 1 μ Λ ∥ F 2 \frac{\mu}{2} \|Y - Z + \frac{1}{\mu}\Lambda\|_F^2 2μ∥Y−Z+μ1Λ∥F2
展开平方:
∥ Y − Z + 1 μ Λ ∥ F 2 = ∥ Y ∥ F 2 − 2 ⟨ Y , Z ⟩ + ∥ Z ∥ F 2 + 2 ⟨ Y , 1 μ Λ ⟩ − 2 ⟨ Z , 1 μ Λ ⟩ + ∥ 1 μ Λ ∥ F 2 \|Y - Z + \frac{1}{\mu}\Lambda\|_F^2 = \|Y\|_F^2 - 2\langle Y, Z \rangle + \|Z\|_F^2 + 2\langle Y, \frac{1}{\mu}\Lambda \rangle - 2\langle Z, \frac{1}{\mu}\Lambda \rangle + \|\frac{1}{\mu}\Lambda\|_F^2 ∥Y−Z+μ1Λ∥F2=∥Y∥F2−2⟨Y,Z⟩+∥Z∥F2+2⟨Y,μ1Λ⟩−2⟨Z,μ1Λ⟩+∥μ1Λ∥F2
由于我们最终只关心 Z Z Z,可以将与 Z Z Z 无关的常数项略去。于是,该项可以化简为:
μ 2 ∥ Y − Z + 1 μ Λ ∥ F 2 = μ 2 ∥ Z ∥ F 2 − μ ⟨ Z , Y ⟩ + ⟨ Z , Λ ⟩ + const. \frac{\mu}{2}\|Y - Z + \frac{1}{\mu}\Lambda\|_F^2 = \frac{\mu}{2}\|Z\|_F^2 - \mu\langle Z, Y \rangle + \langle Z, \Lambda \rangle + \text{const.} 2μ∥Y−Z+μ1Λ∥F2=2μ∥Z∥F2−μ⟨Z,Y⟩+⟨Z,Λ⟩+const.
目标函数的组合
将两部分结合,目标函数可以写为:
min Z λ t r ( Z T 1 1 T Z ) + μ 2 ∥ Z ∥ F 2 − μ ⟨ Z , Y ⟩ + ⟨ Z , Λ ⟩ \min_Z \lambda \mathrm{tr}\left(Z^T\mathbf{1}\mathbf{1}^TZ\right) + \frac{\mu}{2} \|Z\|_F^2 - \mu \langle Z, Y \rangle + \langle Z, \Lambda \rangle Zminλtr(ZT11TZ)+2μ∥Z∥F2−μ⟨Z,Y⟩+⟨Z,Λ⟩
展开 λ \lambda λ 的部分后,我们有:
min Z λ t r ( Z T 1 1 T Z ) + μ 2 t r ( Z T Z ) − μ t r ( Z T Y ) + t r ( Z T Λ ) \min_Z \lambda \mathrm{tr}(Z^T\mathbf{1}\mathbf{1}^TZ) + \frac{\mu}{2} \mathrm{tr}(Z^TZ) - \mu \mathrm{tr}(Z^TY) + \mathrm{tr}(Z^T\Lambda) Zminλtr(ZT11TZ)+2μtr(ZTZ)−μtr(ZTY)+tr(ZTΛ)
对 Z Z Z 求导
我们需要对 Z Z Z 求导,并设置导数为 0。
梯度规则
-
对于二次项 μ 2 t r ( Z T Z ) \frac{\mu}{2} \mathrm{tr}(Z^TZ) 2μtr(ZTZ),梯度为:
∇ Z μ 2 t r ( Z T Z ) = μ Z \nabla_Z \frac{\mu}{2} \mathrm{tr}(Z^TZ) = \mu Z ∇Z2μtr(ZTZ)=μZ -
对于 λ t r ( Z T 1 1 T Z ) \lambda \mathrm{tr}(Z^T\mathbf{1}\mathbf{1}^TZ) λtr(ZT11TZ),使用 t r ( A B A T ) = t r ( A T A B ) \mathrm{tr}(ABA^T) = \mathrm{tr}(A^TAB) tr(ABAT)=tr(ATAB) 和对称性,梯度为:
∇ Z λ t r ( Z T 1 1 T Z ) = 2 λ 1 1 T Z \nabla_Z \lambda \mathrm{tr}(Z^T\mathbf{1}\mathbf{1}^TZ) = 2\lambda \mathbf{1}\mathbf{1}^TZ ∇Zλtr(ZT11TZ)=2λ11TZ -
对于线性项 − μ t r ( Z T Y ) -\mu \mathrm{tr}(Z^TY) −μtr(ZTY) 和 t r ( Z T Λ ) \mathrm{tr}(Z^T\Lambda) tr(ZTΛ),梯度分别为:
∇ Z ( − μ t r ( Z T Y ) ) = − μ Y \nabla_Z \left(-\mu \mathrm{tr}(Z^TY)\right) = -\mu Y ∇Z(−μtr(ZTY))=−μY
∇ Z t r ( Z T Λ ) = Λ \nabla_Z \mathrm{tr}(Z^T\Lambda) = \Lambda ∇Ztr(ZTΛ)=Λ
梯度方程
将梯度加总,得到目标函数对 Z Z Z 的梯度:
μ Z + 2 λ 1 1 T Z − μ Y + Λ = 0 \mu Z + 2\lambda \mathbf{1}\mathbf{1}^TZ - \mu Y + \Lambda = 0 μZ+2λ11TZ−μY+Λ=0
移项整理:
μ Z + 2 λ 1 1 T Z = μ Y + Λ \mu Z + 2\lambda \mathbf{1}\mathbf{1}^TZ = \mu Y + \Lambda μZ+2λ11TZ=μY+Λ
提取 Z Z Z:
Z ( μ I n + 2 λ 1 1 T ) = μ Y + Λ Z (\mu I_n + 2\lambda \mathbf{1}\mathbf{1}^T) = \mu Y + \Lambda Z(μIn+2λ11T)=μY+Λ
求解 Z Z Z
由于 μ I n + 2 λ 1 1 T \mu I_n + 2\lambda \mathbf{1}\mathbf{1}^T μIn+2λ11T 是对称正定矩阵,可以求逆:
Z = ( μ I n + 2 λ 1 1 T ) − 1 ( μ Y + Λ ) Z = \left(\mu I_n + 2\lambda \mathbf{1}\mathbf{1}^T\right)^{-1}(\mu Y + \Lambda) Z=(μIn+2λ11T)−1(μY+Λ)
总结
这一推导利用了矩阵求导法则,以及迹运算的性质。核心步骤包括:
- 展开并简化目标函数,留下与 Z Z Z 相关的项;
- 对 Z Z Z 求导,得到线性方程;
- 将 Z Z Z 解出,使用矩阵的逆操作得到最终形式。