Gumbel分布与冈贝尔水印
Gumbel分布与冈贝尔水印
一、Gumbel分布的数学基础
1.1 定义
Gumbel分布有两个参数:
- 位置参数 μ\muμ(均值相关,通常取0)
- 尺度参数 β\betaβ(方差相关,通常取1)
一般形式 Gumbel(μ, β)
概率密度函数 PDF
f(x;μ,β)=1β e−(x−μβ+e−x−μβ) f(x;\mu,\beta) = \frac{1}{\beta}\, e^{-\left( \frac{x-\mu}{\beta} + e^{-\frac{x-\mu}{\beta}} \right)} f(x;μ,β)=β1e−(βx−μ+e−βx−μ)
- μ: 位置参数(location),控制左右平移
- β: 尺度参数(scale),β>0,控制分布宽窄
累积分布函数 CDF
F(x;μ,β)=e−e−x−μβ F(x;\mu,\beta) = e^{-e^{-\frac{x-\mu}{\beta}}} F(x;μ,β)=e−e−βx−μ
当取 μ=0,β=1 时,就是标准 Gumbel 分布:
f(x)=e−(x+e−x) f(x) = e^{-(x + e^{-x})} f(x)=e−(x+e−x)
μ、β 只是被归一化消掉了,不是不存在。
标准Gumbel分布 Gumbel(0,1)\text{Gumbel}(0,1)Gumbel(0,1) 的概率密度函数(PDF)为:
f(x)=e−(x+e−x)f(x) = e^{-(x + e^{-x})}f(x)=e−(x+e−x)
1.2 性质与特征
Gumbel分布是统计学中描述"一组随机变量的最大值/最小值"的概率分布,也是大语言模型生成token的核心数学基础。其关键特征:
- 取值范围:(−∞,+∞)(-\infty, +\infty)(−∞,+∞),但值集中在 [−2,2][-2, 2][−2,2] 区间(90%以上概率)
- 长尾特性:有小概率出现极大/极小值,符合自然语言生成的"偶尔出现低概率词"的特点
- 关键性质:对
logits + Gumbel噪声取最大值(argmax),等价于对logits做softmax采样(模型原生采样方式)
二、Gumbel噪声采样的重要性
2.1 Gumbel-Max Trick(模型采样的数学基础)
大语言模型生成token的核心逻辑是:
- 模型输出每个token的logits(未归一化的概率,值越大,模型越倾向生成该token)
- 对logits做
softmax转为概率分布:p(v)=el(v)∑v′el(v′)p(v) = \frac{e^{l(v)}}{\sum_{v'} e^{l(v')}}p(v)=∑v′el(v′)el(v) - 从概率分布中采样一个token作为输出
数学上可以证明:对logits加Gumbel噪声后取argmax,等价于softmax采样,公式为:
v^=argmaxv(l(v)+gv)⇔采样自 p(v)=softmax(l(v))\hat{v} = \arg\max_v \left( l(v) + g_v \right) \quad \Leftrightarrow \quad \text{采样自} \ p(v) = \text{softmax}(l(v))v^=argvmax(l(v)+gv)⇔采样自 p(v)=softmax(l(v))
其中 gv∼Gumbel(0,1)g_v \sim \text{Gumbel}(0,1)gv∼Gumbel(0,1) 是为每个token独立生成的Gumbel噪声。
- 模型原生采样时,不是直接选logits最大的token(否则生成的文本会重复、无多样性),而是通过Gumbel噪声引入随机性
- 噪声的"随机性"和logits的"倾向性"结合,既保证生成的文本符合模型的语义逻辑,又有自然的多样性
- 这是所有大语言模型采样的底层数学原理,冈贝尔水印就是"藏在这个噪声里"做文章
三、冈贝尔水印的核心原理:噪声中藏水印,单条无失真
冈贝尔水印的聪明之处在于:利用Gumbel噪声的数学特性,把水印信号嵌入噪声中,单条文本分布和原始模型完全一致(无失真),但多条文本能检测出规律。
3.1 生成阶段的数学逻辑
冈贝尔水印在原生采样公式基础上,加了一个"密钥引导项",完整公式:
v^i=argmaxv(li(v)+gv+ki⋅1v∈Gi)\hat{v}_i = \arg\max_v \left( l_i(v) + g_v + k_i \cdot \mathbf{1}_{v \in G_i} \right)v^i=argvmax(li(v)+gv+ki⋅1v∈Gi)
拆解每一部分的作用:
| 部分 | 作用 |
|---|---|
| li(v)l_i(v)li(v) | 模型原生logits,决定token的基础倾向性 |
| gv∼Gumbel(0,1)g_v \sim \text{Gumbel}(0,1)gv∼Gumbel(0,1) | 原生噪声,引入随机性,保证采样多样性 |
| kik_iki | 第iii个位置的密钥值(通常±1),水印的核心引导信号 |
| 1v∈Gi\mathbf{1}_{v \in G_i}1v∈Gi | 指示函数:token在目标集合GiG_iGi中则为1,否则为0 |
| ki⋅1v∈Gik_i \cdot \mathbf{1}_{v \in G_i}ki⋅1v∈Gi | 水印引导项:仅对目标token加/减一个小值,藏在Gumbel噪声中 |
为什么"单条无失真"?
Gumbel噪声的方差约为 1.64491.64491.6449(π2/6\pi^2/6π2/6),而水印引导项 kik_iki 通常取±1——这个引导项的幅度远小于噪声的波动幅度,因此:
- 单条文本中,引导项的影响会被噪声"淹没",采样结果的分布和原始模型完全一致(计算无失真)
- 多条文本中,引导项的"偏向性"会体现出来:目标token的选中概率会轻微上升(统计学上可检测)
3.2 检测阶段的统计规律
冈贝尔水印的检测不依赖单条文本,而是通过"遍历合法密钥+统计目标token命中数",捕捉多响应的规律,公式:
Score(K)=∑i=1Tki⋅1v^i∈Gi(K)>阈值\text{Score}(K) = \sum_{i=1}^T k_i \cdot \mathbf{1}_{\hat{v}_i \in G_i(K)} > \text{阈值}Score(K)=i=1∑Tki⋅1v^i∈Gi(K)>阈值
检测逻辑拆解
- 遍历密钥库:模型方预先存储合法的密钥序列KKK(k1,k2,...,kTk_1,k_2,...,k_Tk1,k2,...,kT),检测时只遍历这些密钥(而非所有可能)
- 逐token统计:对每段文本的每个token位置iii,计算"密钥值×目标token命中数"
- 求和判断:若某个密钥的求和结果远大于随机值(超过阈值),说明文本是用该密钥生成的带水印内容
为什么能检测到?
- 无水印文本:求和结果服从均值为0的正态分布(随机命中)
- 带水印文本:求和结果会显著偏离0(目标token被轻微偏向,命中数更高)
四、Gumbel分布的性质
冈贝尔水印能成立,完全依赖Gumbel分布的3个核心性质:
4.1 Gumbel-Max trick
对任意logits序列l(v)l(v)l(v),argmax(l(v) + Gumbel(0,1)) 等价于从softmax分布中采样——这是模型采样的数学基础,也是水印能"融入原生采样"的前提。
4.2 可加性(无失真的关键)
若X∼Gumbel(μ,β)X \sim \text{Gumbel}(\mu, \beta)X∼Gumbel(μ,β),则X+c∼Gumbel(μ+c,β)X + c \sim \text{Gumbel}(\mu + c, \beta)X+c∼Gumbel(μ+c,β)(ccc为常数)。
- 冈贝尔水印的引导项kik_iki相当于给目标token的Gumbel噪声加了一个常数ccc
- 单条文本中,这个常数的影响会被噪声的随机性抵消,分布不变
- 多条文本中,常数的偏向性会体现为"分布均值轻微偏移"
4.3 极值性(适配文本生成)
Gumbel分布是"最大值稳定分布"——无论原始变量服从什么分布,其最大值的极限分布都是Gumbel分布。
- 文本生成是"选logits+噪声最大的token",天然适配Gumbel分布的极值特性
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)