Danskin's Theorem
Statement 1
-
假设 \(\phi(x,z)\) 为含有两个变量的连续函数: \(\phi : \mathbb{R}^n \times Z \rightarrow \mathbb{R}\),其中 \(Z \subset \mathbb{R}^m\) 为紧集。
-
进一步假设,对于任意 \(z\in Z\),\(\phi(x,z)\) 是关于 \(x\) 的凸函数。
在这两个条件下,Danskin 定理给出了关于函数 \(f(x)=\max_{z\in Z} \phi(x,z)\) 的凸性和可微性的结论,为了描述这些结论,我们需要定义一组最大化点的集合 \(Z_0(x)\):
Danskin 定理给出以下结论:
- Convexity 凸性
\(f(x)\) 为凸函数 - Directional derivatives 方向导数
\(f(x)\) 在 \(y\) 方向上的方向导数为:
- Derivative 导数
如果 \(Z_{0}(x)\) 由单个元素 \(\overline {z}\) 组成,\(f(x)\) 在点 \(x\) 处可微。在这种情况下,\(f(x)\) 的导数(或 \(f(x)\) 的梯度,如果 \(x\) 是一个向量)由下式给出:
- Subdifferential 次微分
如果对于任意的 \(z \in Z\),\(\phi(x,z)\) 是关于 \(x\) 可微的,且如果对于任意的 \(x\),\(\frac{\partial \phi}{\partial x}\) 是关于 \(z\) 连续的,那么 \(f(x)\) 的次微分由下式给出:
Statement 2
来自于 PGD论文 附录A
假设:
- \(\mathcal{S}\) 为非空、紧、拓扑空间
- 函数 \(g: \mathbb{R}^n\times \mathcal{S} \rightarrow \mathbb{R}\) 满足: \(g(\cdot, \delta)\) 对于任意 \(\delta \in \mathcal{S}\) 都是可微的,并且 \(\triangledown_\theta g(\theta, \delta)\) 在 \(\mathbb{R}^n\times \mathcal{S}\) 上是连续的
- \(\delta^{*}(\theta) = \{\delta \in \arg\max_{\delta \in\mathcal{S} }g(\theta,\delta)\}\)
那么函数 \(\phi(\theta) = \max_{\delta\in\mathcal{S}}g(\theta,\delta)\) 是局部 Lipschitz 连续的,且它的方向导数(directional derivatives)满足:
其中,\(\sup\) 表示上确界/最小上界。
Application(PGD)
1.推论
对于公式(1),如果集合 \(\delta^*(\theta) = \{\delta^*_\theta\}\) 只有一个元素,那么(1)可以写成:
可以看出,\(\phi(\theta)\) 与 \(g(\theta, \delta^{*}_{\theta})\) 局部相同,且梯队也是局部的概念,所以它俩的梯度是相同的。
据此PGD作者又提供了以下推论,来证明通过计算内部优化器的梯度来计算鞍点的梯度是可行的:
推论:设 \(\overline{\delta} = \max_\delta L(\theta,x+\delta,y)\) 且 \(\overline{\delta} \in \mathcal{S}\),那么只要 \(\overline{\delta}\) 不为零,\(-\triangledown_\theta L(\theta,x+\overline{\delta},y)\) 就是 \(\phi(\theta) = \max_\delta L(\theta,x+\delta,y)\) 的下降方向。
2.应用
回想论文中的鞍点公式:
其实,在实践中我们无法获得分布 \(\mathcal{D}\),所以 \(\rho(\theta)\) 的值和梯度都使用输入样本点来计算。所以,我们只需考虑对应于单个随机样本点 \(x\) (标签为 \(y\))的鞍点公式即可:
结合上述的定理可知,使用内部问题的最大值能够计算损失函数的梯度,这相当于用相应的对抗扰动替换输入点,并在扰动的输入上训练网络,即全部使用对抗样本训练网络。