Statement 1
-
假设 ϕ(x,z) 为含有两个变量的连续函数: ϕ:Rn×Z→R,其中 Z⊂Rm 为紧集。
-
进一步假设,对于任意 z∈Z,ϕ(x,z) 是关于 x 的凸函数。
在这两个条件下,Danskin 定理给出了关于函数 f(x)=maxz∈Zϕ(x,z) 的凸性和可微性的结论,为了描述这些结论,我们需要定义一组最大化点的集合 Z0(x):
Z0(x)={¯¯¯z:ϕ(x,¯¯¯z)=maxz∈Zϕ(x,z)}
Danskin 定理给出以下结论:
- Convexity 凸性
f(x) 为凸函数
- Directional derivatives 方向导数
f(x) 在 y 方向上的方向导数为:
Dyf(x)=maxz∈Z0(x)ϕ′(x,z;y)
- Derivative 导数
如果 Z0(x) 由单个元素 ¯¯¯z 组成,f(x) 在点 x 处可微。在这种情况下,f(x) 的导数(或 f(x) 的梯度,如果 x 是一个向量)由下式给出:
∂f∂x=∂ϕ(x,¯¯¯z)∂x
- Subdifferential 次微分
如果对于任意的 z∈Z,ϕ(x,z) 是关于 x 可微的,且如果对于任意的 x,∂ϕ∂x 是关于 z 连续的,那么 f(x) 的次微分由下式给出:
∂f(x)=conv{∂ϕ(x,z)∂x:z∈Z0(x)}
Statement 2
来自于 PGD论文 附录A
假设:
- S 为非空、紧、拓扑空间
- 函数 g:Rn×S→R 满足: g(⋅,δ) 对于任意 δ∈S 都是可微的,并且 ▽θg(θ,δ) 在 Rn×S 上是连续的
- δ∗(θ)={δ∈argmaxδ∈Sg(θ,δ)}
那么函数 ϕ(θ)=maxδ∈Sg(θ,δ) 是局部 Lipschitz 连续的,且它的方向导数(directional derivatives)满足:
ϕ′(θ,h)=supδ∈δ∗(θ)hT▽θg(θ,δ)(1)
其中,sup 表示上确界/最小上界。
Application(PGD)
1.推论
对于公式(1),如果集合 δ∗(θ)={δ∗θ} 只有一个元素,那么(1)可以写成:
▽ϕ(θ)=▽θg(θ,δ∗θ)(2)
可以看出,ϕ(θ) 与 g(θ,δ∗θ) 局部相同,且梯队也是局部的概念,所以它俩的梯度是相同的。
据此PGD作者又提供了以下推论,来证明通过计算内部优化器的梯度来计算鞍点的梯度是可行的:
推论:设 ¯¯¯δ=maxδL(θ,x+δ,y) 且 ¯¯¯δ∈S,那么只要 ¯¯¯δ 不为零,−▽θL(θ,x+¯¯¯δ,y) 就是 ϕ(θ)=maxδL(θ,x+δ,y) 的下降方向。
2.应用
回想论文中的鞍点公式:
minθρ(θ),whereρ(θ)=E(x,y)∼D[maxδ∈SL(θ,x+δ,y)](3)
其实,在实践中我们无法获得分布 D,所以 ρ(θ) 的值和梯度都使用输入样本点来计算。所以,我们只需考虑对应于单个随机样本点 x (标签为 y)的鞍点公式即可:
minθmaxδ∈Sg(θ,δ),whereg(θ,δ)=L(θ,x+δ,y)(4)
结合上述的定理可知,使用内部问题的最大值能够计算损失函数的梯度,这相当于用相应的对抗扰动替换输入点,并在扰动的输入上训练网络,即全部使用对抗样本训练网络。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?