Federated Heavy Hitters Discovery with Differential Privacy(差分隐私联邦的频繁项估计)

该论文提出一种交互式多轮执行的差分隐私联邦学习算法,用于发现频繁项(heavy hitters)。算法结合联邦学习思想,但目标是获取高频数据项而非预测模型。通过用户级别的中央差分隐私,算法在保护用户隐私的同时,实现对大量分布式用户数据的高效分析。实验验证了算法的实用性和隐私保障。
摘要由CSDN通过智能技术生成

Federated Heavy Hitters Discovery with Differential Privacy

链接: Federated Heavy Hitters Discovery with Differential Privacy.

1. Introduction

该文献主要是借用联邦学习的思想,来均衡LDP和CDP中效用的隔阂。
另外 该论文实现差分隐私的方式不同于以往的RR 或是 加噪,而是通过抽样。

文中提出的算法与联邦学习的联系与区别:
  • 没有针对原始数据的收集
  • 大规模得到分布式用户(大部分用户只贡献,0次或1次)
  • 交互式 建立关于统计数据的理解
  • 区别: 目标不同,联邦学习的目标在于学得一个预测模型, 而该算法的目标在于获得 heavy hitter
论文贡献
  1. 实现了一个交互式的多轮执行的heavy hitter 算法
    • 在每一轮,服务器均匀随机地选择m个用户
    • 每个用户下载上一轮字典树,并以此为依据,对下一轮地字典树地扩展进行投票
    • 字典树将大于等于θ个数投票地 扩展加入字典树,将小于θ个数地节点抛弃
  2. 对于 vote 泄露地信息(比如最后一轮,用户 vote 的扩展 即为本地的数据项), 一般而言可以采用 基于密码学的安全求和协议, 一般而言,认为服务器仅被认为在 提供θ上市可信任的
  3. 算法实现了 介于 LDP 和CDP之间的 User-level 的 Central DP

2. Preliminaries

2.1 模型和参数定义

① 参数定义

以收集推特上用户所发的推文,来改进输入法输入的自动补全功能为例

每个用户都有words的数据库,而每个word都可以使用ASCII码表示

  • 假设每个word最长为L

本文中对 word 统称为sequence

  • n n n 个 用户, D = { u 1 , u 2 , … , u n } \mathcal{D}=\{u_1,u_2,…,u_n\} D={ u1,u2,,un},为方便表示,同时使用 D \mathcal{D} D表示 所有用户的集合 和 所有数据项的集合
  • 每个用户有一个集合项 { w i 1 , w i 2 , … , w i q } \{w_{i1},w_{i2},…,w_{iq}\} { wi1,wi2,,wiq}
  • 每个数据项w可以表示为一个长度为|w|的序列 w = c 1 c 2 … c ∣ w ∣ w=c_1c_2…c_{|w|} w=c1c2cw
  • 假设每个序列长度最大为 L L L
② 模型设置
  • prefix:令 p i ( w ) p_i(w) pi(w)表示数据项w长度为i的前缀,长度为i的前缀可以写作 p i = c 1 c 2 … c i p_i=c_1c_2…c_i pi=c1c2ci
  • trie T 和 prefix p=c1c2…ci:如果一个字典树T存在路径 ( r o o t , c 1 , c 2 , … , c i ) (root,c_1,c_2,…,c_i) (root,c1,c2,,ci),则认为 p ∈ T p \in T pT
  • Ti 和 T:Ti包含来着T的前i层的所有节点和边,是T的子树。
  • 从Ti到Ti+1 假 设 字 典 树 T i 存 在 路 径 ( r o o t , c 1 , c 2 , … , c i ) , 则 只 需 实 现 一 条 路 径 ( r o o t , c 1 , c 2 , … , c i , c i + 1 ) , 即 可 实 现 由 T i 构 造 T i + 1 假设字典树T_i存在路径(root,c_1,c_2,…,c_i),则只需实现一条路径(root,c_1,c_2,…,c_i,c_{i+1}),即可实现由T_i构造T_{i+1} Ti(root,c1,c2,,ci)(root,c1,c2,,ci,ci+1)TiTi+1,即在节点ci下添加一个孩子节点ci+1

2.2 Differential Privacy

具体定义如下,大致意思如下:

作者采用用户级邻接定义,即指当D可以通过添加D中单个用户的所有数据项来获得时,D和D为邻接数据集。

image-20211214112626051

3. Single Sequences per User(q=1)

该部分展示针对本地只有一个数据项的情况,即每个user只有一个sequence

3.1 算法执行解释

算法如下图所示,算法一描述了作者提出的分布式算法,算法二描述了每一轮字典树增长的算法

① server
  • 每轮选择 m = γ n m=\gamma\sqrt{n} m=γn 个用户, γ根据隐私性和准确率进行权衡
  • 发送上一轮的字典树 T i − 1 T_{i-1} Ti1给选择的用户
② client
  • 只有当用户长度为i-1的prefix可在字典树 T i − 1 T_{i-1} Ti1中找到对应的路径时,才向server发送长度为i的prefix
③ server
  • 收到来自所有来自用户的长度为 i 的 prefix, 只 有 当 p r e f i x 数 量 大 于 θ 时 , 方 作 为 叶 子 节 点 加 入 到 字 典 树 T i 只有当prefix数量大于 θ 时,方作为叶子节点加入到字典树T_i prefixθTi

反复执行①②③,直至Ti深度不再增长未知

image-20211214141309076

image-20211214141250712

举例如下

image-20211214142553223

结果分析

对于最后得到的字典树T,我们通过输出从root节点以 $结尾(结束标志) 的叶子节点的路径, 得到频繁项。但对于没有以$结尾的频繁项,可能在某些应用中仍由一定意义

3.2 Privacy guarantee

Algorithm 1 主要以下几个步骤引入随机性:
  • server 随机选择m个用户,对字典树下一轮的扩展进行投票(可以这么理解:每个用户提交一个下一轮字典树添加的节点投票,只有票数大于θ的节点,才会加入字典树)
  • 投票是暂时的,不被存储(个人疑惑???:如果服务器作恶,保存记录的情况)
  • 在算法中总计 L γ n L\gamma\sqrt{n} Lγ
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值