Achieving Differential Privacy and Fairness in Logistic Regression

Achieving Diferential Privacy and Fairness in Logistic Regression

1. 摘要

背景: 机器学习算法的正常运行依赖于大量的敏感信息,因此引发了社会各界对隐私和机器学习公平性等问题的担忧。

研究现状 目前,机器学习领域的许多研究要么只关注隐私,要么只关注机器学习公平性,如何同时实现隐私和机器学习公平还有待挖掘。

创新点 论文提出了两种在 \(Logistic\) 回归上同时实现隐私保护和机器学习公平的方法。

这篇论文和需要函数机制作为先验知识,可以先阅读另一篇博客 Functional Mechanism

2. 介绍

论文提出了两种方法在 \(Logistic\) 回归上同时实现差分隐私和机器学习公平。

  • 将公平性约束转化为目标函数的惩罚项,然后在整个目标函数上应用 函数机制 来实现差分隐私
  • 前一种方法的改进,加入了非零均值的 \(Laplace\) 噪声作为等价的公平性约束。减少噪声的注入以保证精度。

3.准备工作

3.1 符号定义

符号 描述
\(D=\{X,S,Y\}\) 包含 \(n\) 条数记录的数据集
\(X=(X_1,X_2....X_d)\) \(d\) 个特征的非保护属性
\(S\) 保护属性
\(Y\) 标签
\(\widehat{y}\) 预测值
\(\omega\) 权重
\(t_i=\{x_i,s_i,y_i\}\) \(i\) 条记录
\(f({t_i};\omega)\) 单个记录的损失函数
\(f_D(\omega)= \sum_{i=1}^nf(t_i,\omega)\) 目标函数
\(\bar\omega = arg \min_{\omega}\sum_{i=1}^nf(t_i;\omega)\) 损失函数最小时,对应的权重
\(g_D(\omega)\) 公平性约束项
\(\tau\) 公平性约束的阈值

3.2 部分说明

  • 保护属性: 性别,年龄等与公平性高度相关的属性。
  • 非保护属性: 保护属性之外的其他属性。
  • 特殊说明: 论文使保护属性,非保护属性,标签均为二值属性 \(\{0,1\}\)

3.3 函数机制

函数机制的详细描述可查看我的另一篇博客 Functional Mechanism: Regression Analysis under Differential Privacy - 故、梦

3.4 分类公平

公平是一个十分抽象的概念,看似公平的情形换个角度看就不再公平,即不存在绝对的公平。

分类公平中有很多种公平性规则,论文使用 \(Demographic {\,} Parity\) 作为公平性规则。

\(Demographic {\,} Parity\) 要求预测结果与保护属性无关,即 \[ Pr(\widehat{Y}=1|S=1)=Pr(\widehat{Y}=1|S=0) \tag{1} \quad \] 不公平程度 \(RD\) 可以由以下式子表示: \[ RD = |Pr(\widehat{Y}=1|S=1)-Pr(\widehat{Y}=1|S=0)| \tag{2} \quad \]

公平性约束项 \(g_D(\omega) = \sum_{i=1}^n(s_i-\bar{s})x_i^T\omega\) \(s_i\) 为第 \(i\) 条记录的保护属性值,\(\bar{s}\) 为保护属性的均值」

4. 算法理论

4.1 PFLR

加入公平性约束项后,新的目标函数 \(\tilde{f}_D(\omega) = f_D(\omega) + \alpha|g_D(\omega)-\tau|\)

\(\alpha\) 是一个用于平衡公平性和精度的超参数,\(\tau\) 是公平性约束的阈值

根据函数机制,将新的目标函数用泰勒展开到 \(2\)\[ \tilde{f}_D(\omega) = \left(\sum_{i=1}^n\sum_{j=0}^2\frac{f_1^{(j)}(0)}{j!}(x_i^T\omega)^j \right)- \left( \sum_{i=1}^ny_ix_i^T \right)\omega + \alpha \left | \sum_{i=1}^n(s_i-\bar{s})x_i^T\omega - \tau {\,} \right | \tag{3} \quad \] 与函数机制在 \(Logistic\) 回归上的展开不同,PFLR 多了一个一次项。

为了方便说明,令 \(\alpha=1\)\(\tau = 0\) 。那么 \(\tilde{f}_D(\omega)\) 的全局敏感度 \(\Delta_{\tilde{f}}\) 为: \[ \Delta_{\tilde{f}} = 2 \max_t \left(\left| \left(\frac{f_1^{(1)}(0)}{1!} - y + |s-\bar{s}| \right)\sum_{l=1}^dx_{(l)} \right| +\left|\frac{f_1^{(2)}(0)}{2!}\sum_{l,m}^dx_{(l)}x_{(m)} \right |\right) \\ \le 2{\,}(\frac{3d}{2}+\frac{d^2}{8}) = \frac{d^2}{4}+3d \]


PFLR

  1. 计算 \(\mu\) 的全局敏感度 \(\Delta_g\)
  2. 将新的目标函数用泰勒在 0 处展开到 2 阶
  3. 计算展开式的全局敏感度
  4. 根据得到的全局敏感度,往目标函数中加入拉普拉斯噪声
  5. 根据扰动的目标函数训练模型,得到权重

4.2 PFLR\(^*\)

相比于普通的函数机制, PFLR 要求非保护组和保护组到决策边界有相同的距离

在 FPLR 中我们发现公平性约束可以叠加到函数机制目标函数的一次项上。

根据这个思路,可以直接将公平性约束加入到一次项的噪声中,这样就能减少噪声的注入。

具体实现是将拉普拉斯噪声的均值 \(\mu\)\(0\) 改为 \(\sum_{i=1}^n(s_i-\bar{s})x_i\)

FPLR 的全局敏感度此时等于函数机制的全局敏感度:\(\Delta_f=\frac{d^2}{4}+d\)

然而,求解出的 \(\mu\) 已经造成了隐私的泄露。所以需要在 \(\mu\) 中加入差分隐私。

\(\mu\) 的全局敏感度可以表示为: \[ \Delta g=2 {\,}\max_{t}\left|\sum_{l=1}^d(s_{tr}-\bar{s})x_{tr(l)}\right| \le 2d \]\(\mu\) 的隐私保护强度为 \(\epsilon_g\)\(f_D(\omega)\) 的隐私保护强度为 \(\epsilon_f\)

根据顺序组合定理,让 \(\epsilon_f+\epsilon_g = \epsilon\) ,则 PFLR\(^*\) 满足 \(\epsilon-differential {\,}{\,} privacy\)


PFLR*

  1. 计算 \(\mu\) 的全局敏感度 \(\Delta_g\)
  2. \(\mu = \{\mu_{(l)}\}_{l=1}^d\) \(\mu_{(l)}=\sum_{i=1}^n(s_i-\bar{s})x_{(l)t_i}+Lap(0,\frac{\Delta_g}{\epsilon_g})\) 将差分隐私加到  \(\mu\) 的每个分量上
  3. 用差分隐私扰动一阶多项式系数:\(\bar{\lambda}_1 =\left(\sum_{i=1}^n\lambda_{1t_i}+Lap(\mu,\frac{\Delta _f}{\epsilon_f}) \right)\)
  4. 用差分隐私扰动二阶多项式系数:\(\bar{\lambda}_2 =\left(\sum_{i=2}^n\lambda_{1t_i}+Lap(\mu,\frac{\Delta _f}{\epsilon_f}) \right)\)
  5. 扰动后的目标函数 \(\bar{f}_D(\omega)=\bar{\lambda}_1^T\Phi_1 + \bar{\lambda}_2^T\Phi_2\) \(\Phi_1\)\(\Phi_2\) 分别为 1, 2 阶多项式
  6. 计算权重 \(\bar{\omega} = arg\min_{\omega}\bar{f}_D(\omega)\)
  7. 返回 \(\bar{\omega}\)

5.实验结果

实验过程:分别在 Adult 和 Dutch 数据集上做了 \(5\) 组实验来验证算法的性能。

  • 普通的 \(Logistic\) 回归
  • 只使用差分隐私 PrivLR
  • 只使用公平性
  • PFLR
  • PFLR*

当隐私保护强度从 \(1 \rightarrow 0.1\) 时,PrivLR ,PFLR 的精度快速下降,不公平程度快速上升。

而 PFLR*的精度和不公平程度在 \(\epsilon = 0.1\) 时仍能保证较高的精度 \(74.91%\),较小的不公平程度 \(0.28%\)

PFLR*的精度更高,说明它在保证 \(\epsilon\) 隐私的情况下,注入的噪声比PrivLR 更少