当前位置: 首页 > backend >正文

瓦瑟斯坦差分隐私中命题7对总变差TV的应用

在这里插入图片描述


公式36到37的推导过程详解

1. 总变差(Total Variation, TV)的定义

总变差距离是衡量两个概率分布 P P P Q Q Q 差异的一种方式,其定义为:
∥ P − Q ∥ T V = sup ⁡ A ∣ P ( A ) − Q ( A ) ∣ , \|P - Q\|_{TV} = \sup_{A} |P(A) - Q(A)|, PQTV=AsupP(A)Q(A),
即对所有可能事件 A A A,两分布概率差的最大绝对值。
另一种等价形式是:
∥ P − Q ∥ T V = 1 2 ∫ ∣ p ( x ) − q ( x ) ∣ d x , \|P - Q\|_{TV} = \frac{1}{2} \int |p(x) - q(x)| \, dx, PQTV=21p(x)q(x)dx,
即两分布密度函数 p ( x ) p(x) p(x) q ( x ) q(x) q(x)L1 范数 的一半。

2. 总变差与耦合(Coupling)的关系

耦合定理指出,总变差距离等于在所有可能的联合分布(耦合)中,随机变量 X X X Y Y Y 不相等的 最小概率
inf ⁡ X ∼ P Y ∼ Q E [ 1 X ≠ Y ] = ∥ P − Q ∥ T V . \inf_{\substack{X \sim P \\ Y \sim Q}} \mathbb{E}[1_{X \neq Y}] = \|P - Q\|_{TV}. XPYQinfE[1X=Y]=PQTV.
这里的下确界( inf ⁡ \inf inf)表示寻找最优的联合分布 γ ( X , Y ) \gamma(X, Y) γ(X,Y),使得 X ≠ Y X \neq Y X=Y 的概率最小。


3. 公式36到37的推导步骤

给定公式36:
Δ p f ⋅ inf ⁡ X ∼ Lap ( 0 , λ ) Y ∼ Lap ( Δ p f , λ ) [ E [ 1 X ≠ Y ] ] 1 / μ , \Delta_p f \cdot \inf_{\substack{X \sim \text{Lap}(0, \lambda) \\ Y \sim \text{Lap}(\Delta_p f, \lambda)}} \left[ \mathbb{E}[1_{X \neq Y}] \right]^{1/\mu}, ΔpfXLap(0,λ)YLap(Δpf,λ)inf[E[1X=Y]]1/μ,
目标是将其转换为总变差形式。

步骤1:应用耦合定理

根据耦合定理,对拉普拉斯分布 P = Lap ( 0 , λ ) P = \text{Lap}(0, \lambda) P=Lap(0,λ) Q = Lap ( Δ p f , λ ) Q = \text{Lap}(\Delta_p f, \lambda) Q=Lap(Δpf,λ),有:
inf ⁡ X ∼ P Y ∼ Q E [ 1 X ≠ Y ] = ∥ P − Q ∥ T V . \inf_{\substack{X \sim P \\ Y \sim Q}} \mathbb{E}[1_{X \neq Y}] = \|P - Q\|_{TV}. XPYQinfE[1X=Y]=PQTV.
因此,公式36中的下确界部分可替换为总变差距离:
Δ p f ⋅ ( ∥ P − Q ∥ T V ) 1 / μ . \Delta_p f \cdot \left( \|P - Q\|_{TV} \right)^{1/\mu}. Δpf(PQTV)1/μ.

步骤2:总变差的具体计算

对于两个拉普拉斯分布 P = Lap ( a , λ ) P = \text{Lap}(a, \lambda) P=Lap(a,λ) Q = Lap ( b , λ ) Q = \text{Lap}(b, \lambda) Q=Lap(b,λ),其密度函数为:
p ( x ) = 1 2 λ e − ∣ x − a ∣ / λ , q ( x ) = 1 2 λ e − ∣ x − b ∣ / λ . p(x) = \frac{1}{2\lambda} e^{-|x - a|/\lambda}, \quad q(x) = \frac{1}{2\lambda} e^{-|x - b|/\lambda}. p(x)=2λ1exa∣/λ,q(x)=2λ1exb∣/λ.
总变差距离可通过积分计算:
∥ P − Q ∥ T V = 1 2 ∫ − ∞ ∞ ∣ p ( x ) − q ( x ) ∣ d x . \|P - Q\|_{TV} = \frac{1}{2} \int_{-\infty}^\infty |p(x) - q(x)| \, dx. PQTV=21p(x)q(x)dx.
a = 0 a = 0 a=0 b = Δ p f b = \Delta_p f b=Δpf 时,计算得:
∥ P − Q ∥ T V = 1 2 ( 1 − e − Δ p f / λ ) . \|P - Q\|_{TV} = \frac{1}{2} \left( 1 - e^{-\Delta_p f / \lambda} \right). PQTV=21(1eΔpf/λ).
(具体推导需展开积分,此处直接给出结果。)

步骤3:代入公式36

将总变差结果代入公式36,得到:
Δ p f ⋅ ( 1 2 ( 1 − e − Δ p f / λ ) ) 1 / μ . \Delta_p f \cdot \left( \frac{1}{2} \left( 1 - e^{-\Delta_p f / \lambda} \right) \right)^{1/\mu}. Δpf(21(1eΔpf/λ))1/μ.
这对应公式37的形式:
1 2 Δ p f ⋅ ( ∥ Lap ( 0 , λ ) − Lap ( Δ p f , λ ) ∥ T V ) 1 / μ . \frac{1}{2} \Delta_p f \cdot \left( \| \text{Lap}(0, \lambda) - \text{Lap}(\Delta_p f, \lambda) \|_{TV} \right)^{1/\mu}. 21Δpf(Lap(0,λ)Lap(Δpf,λ)TV)1/μ.


4. 关键点解释

(1) 为什么总变差出现在公式中?
  • 总变差距离直接量化了两个分布的“最大局部差异”,而公式36中的 inf ⁡ E [ 1 X ≠ Y ] \inf \mathbb{E}[1_{X \neq Y}] infE[1X=Y] 本质是寻找最耦合下 X ≠ Y X \neq Y X=Y 的最小概率,这与总变差定义一致。
(2) 为什么有系数 1 2 \frac{1}{2} 21
  • 总变差的积分定义中包含了 1 2 \frac{1}{2} 21,这是为了归一化结果,使其落在 [ 0 , 1 ] [0, 1] [0,1] 范围内。
(3) 拉普拉斯分布的敏感性 Δ p f \Delta_p f Δpf
  • Δ p f \Delta_p f Δpf l p l_p lp-敏感度,表示在相邻数据集上函数 f f f 输出的最大 l p l_p lp 范数差。此处用于调整拉普拉斯分布的均值偏移,以反映数据隐私保护中的噪声尺度。

5. 总变差与其他散度的对比

散度类型定义特点
总变差 1 2 ∫ ∣ p − q ∣ d x \frac{1}{2} \int |p - q| dx 21pqdx几何直观,但对高维分布计算困难。
KL散度 ∫ p log ⁡ p q d x \int p \log \frac{p}{q} dx plogqpdx不对称,对无重叠分布发散。
Wasserstein最小运输成本几何敏感,但对计算资源要求较高。

总结

公式36到37的推导核心在于:

  1. 通过 耦合定理 inf ⁡ E [ 1 X ≠ Y ] \inf \mathbb{E}[1_{X \neq Y}] infE[1X=Y] 转化为总变差距离。
  2. 计算拉普拉斯分布的总变差,并引入敏感度 Δ p f \Delta_p f Δpf 调整噪声分布。
  3. 最终将结果表示为总变差的函数形式,为后续隐私分析(如差分隐私)提供理论基础。
http://www.xdnf.cn/news/1196.html

相关文章:

  • vue3 组件传参
  • 2025软件测试常用面试问题及参考答案(附文档)
  • 计算机组成与体系结构:缓存(Cache)
  • TCP和UDP
  • Windows 同步-Windows 单向链表和互锁链表
  • Typebot:开源、强大、可自托管的聊天机器人构建工具
  • DES、3DES、SM4 加密算法简介
  • 查看Spring Boot项目所有配置信息的几种方法,包括 Actuator端点、日志输出、代码级获取 等方式,附带详细步骤和示例
  • 第十五届蓝桥杯 2024 C/C++组 下一次相遇
  • Uniapp:navigator(页面跳转)
  • 【飞渡科技数字孪生虚拟环境部署与集成教程 - CloudMaster实战指南】
  • KDD Cup 2017 数据集分析
  • G1 人形机器人软件系统架构与 Python SDK
  • BeeWorks:专业的企业Im即时通讯平台
  • PyTorch深度学习框架60天进阶学习计划 - 第48天:移动端模型优化(二)
  • flutter 插件收集
  • 15openlayers获取VectorLayer上的数据
  • C++学习:六个月从基础到就业——C++学习之旅:STL容器详解
  • webpack基础使用了解(入口、出口、插件、加载器、优化、别名、打包模式、环境变量、代码分割等)
  • v-html 显示富文本内容
  • Crawl4AI:打破数据孤岛,开启大语言模型的实时智能新时代
  • 【MCP Node.js SDK 全栈进阶指南】中级篇(3):MCP高级资源设计
  • 进行性核上性麻痹饮食指南:科学膳食提升生活质量
  • 学习Docker遇到的问题
  • SpringBoot高校心理健康系统实现与开发
  • 测试-时间规模化定律可以改进世界基础模型吗?
  • Go 剥离 HTML 标签的三把「瑞士军刀」——从正则到 Bluemonday
  • 实用生活c语言脚本
  • Linux-skywalking部署步骤并且添加探针
  • springboot项目配置springMVC