Neural Polarizer: A Lightweight and Effective Backdoor Defense via Purifying Poisoned Features

Neural Polarizer: A Lightweight and Effective Backdoor Defense via Purifying Poisoned Features (NIPS 2023)

一句话概述本文内容:通过把一个polarizer(由1个卷积层和一个batchnorm层组成)插入到模型中间,然后设计损失函数,经过双层优化,最终实现对后门的清除。(需要一定数量的干净数据)

polarizer需要满足三个属性:

  1. 和模型结构的兼容性
  2. 过滤中毒样本中的触发器特征
  3. 维持中毒样本和正常样本中的良性特征

属性1可以通过模型结构直接对polarizer的结构进行对应地调整。属性2和3建模为一个双层优化问题来解决。

Methodology

损失函数设计

(1)过滤中毒样本中的触发器特征

关键在于削弱触发器和目标标签之间的联系,损失函数如下:

L a s r ( x , y , Δ , T ; θ ) = − log ⁡ ( 1 − s T ( x Δ ; θ ) ) \mathcal{L}_{asr}(x,y,\Delta,T;\boldsymbol{\theta})=-\log(1-s_T(\boldsymbol{x}_\Delta;\boldsymbol{\theta})) Lasr(x,y,Δ,T;θ)=log(1sT(xΔ;θ))

其中, s T ( x Δ ; θ ) s_T(\boldsymbol{x}_\Delta;\theta) sT(xΔ;θ)是插入构造的polarizer后的新模型的softmax函数,用于输出中毒样本到目标标签的概率。降低 L a s r \mathcal{L}_{asr} Lasr可以实现对后门攻击成功率的降低。

(2)维持中毒样本中的良性特征

这里作者采用了对抗训练的思路,使用了Improving adversarial robustness requires revisiting misclassified examples(ICLR 2020)这篇文章的一个增强交叉熵损失(boosted cross entropy)函数来净化中毒样本

L b c e ( x , y , Δ ; θ ) = − log ⁡ ( s y ( x Δ ; θ ) ) − log ⁡ ( 1 − max ⁡ k ≠ y s k ( x Δ ; θ ) ) \mathcal{L}_{bce}(x,y,\Delta;\boldsymbol{\theta})=-\log(s_y(x_\Delta;\boldsymbol{\theta}))-\log\left(1-\max_{k\neq y}s_k(\boldsymbol{x}_\Delta;\boldsymbol{\theta})\right) Lbce(x,y,Δ;θ)=log(sy(xΔ;θ))log(1maxk=ysk(xΔ;θ))

第一项是常见的CE Loss,第二项是一个margin loss,用于增大分类器的决策间隔。

(3)维持良性样本中的良性特征

使用常见的交叉熵损失

L b n ( x , y ; θ ) = L C E ( f ^ θ ( x ) , y ) \mathcal{L}_{bn}(x,y;\boldsymbol{\theta})=\mathcal{L}_{\mathrm{CE}}(\hat{f}_{\boldsymbol{\theta}}(\boldsymbol{x}),y) Lbn(x,y;θ)=LCE(f^θ(x),y)

近似和优化

目标标签和触发器的近似

防御者无法获得目标标签 T T T和触发器 Δ \Delta Δ,所以采取近似的方法。

(1)目标标签的近似

采用特定与样本的动态策略: T ≈ y ′ = arg ⁡ max ⁡ k ≠ y f ^ k ( x ; θ ) T\approx y'=\arg\max_{k\neq y}\hat{f}_k(\boldsymbol{x};\boldsymbol{\theta}) Ty=argmaxk=yf^k(x;θ)

这种策略的2个优点:①预测的目标标签能够生成有针对性的对抗性扰动,这在后面的内容中分析得出:有针对性的对抗性扰动比无针对性的对抗性扰动更能替代未知的触发因素。②样本特定目标标签预测适用于 all2one(一个触发器,一个目标类)和 all2all(每个类都是目标类)攻击设置

(2)触发器的近似
在这里插入图片描述
其中, ∥ ⋅ ∥ p \|\cdot\|_p p是p范数, ρ \rho ρ是扰动预算

这个式子表示添加扰动后的样本所预测得到的标签和目标标签之间损失值最小时,也就是最可能接近正确的后门样本的情况,这个时候所添加的扰动可以近似认为是触发器。

双层优化

将上述2中近似的函数替换到损失函数中,得到最后的优化目标函数为:

min ⁡ θ 1 N ∑ i = 1 N λ 1 L b n ( x i , y i ; θ ) + λ 2 L a s r ( x i , y i , δ i ∗ , y i ′ ; θ ) + λ 3 L b c c ( x i , y i , δ i ∗ ; θ ) , s . t .          δ i ∗ = arg ⁡ min ⁡ ∥ δ i ∥ p ≤ ρ L C E ( f ^ θ ( x i + δ i ) , y i ′ ) , y i ′ = arg ⁡ max ⁡ k i ≠ y i f ^ k i ( x i ; θ ) , i = 1 , … , N \min_{\theta}\frac{1}{N}\sum_{i=1}^{N}\lambda_{1}\mathcal{L}_{bn}(x_{i},y_{i};\theta)+\lambda_{2}\mathcal{L}_{asr}(x_{i},y_{i},\delta_{i}^{*},y_{i}^{\prime};\theta)+\lambda_{3}\mathcal{L}_{bcc}(x_{i},y_{i},\delta_{i}^{*};\theta),\\\mathrm{s.t.\;\;\;\;}\delta_{i}^{*}=\arg\min_{\|\boldsymbol{\delta}_{i}\|_{p}\leq\rho}\mathcal{L}_{\mathrm{CE}}\left(\hat{f}_{\boldsymbol{\theta}}(\boldsymbol{x}_{i}+\boldsymbol{\delta}_{i}),y_{i}^{\prime}\right), y_{i}^{\prime}=\arg\max_{k_{i}\neq y_{i}}\hat{f}_{k_{i}}(\boldsymbol{x}_{i};\boldsymbol{\theta}),i=1,\ldots,N minθN1i=1Nλ1Lbn(xi,yi;θ)+λ2Lasr(xi,yi,δi,yi;θ)+λ3Lbcc(xi,yi,δi;θ),s.t.δi=argminδipρLCE(f^θ(xi+δi),yi),yi=argmaxki=yif^ki(xi;θ),i=1,,N

变种

(1)目标标签 T T T已知

触发器近似更改为: Δ ≈ δ i ∗ = arg ⁡ min ⁡ ∥ δ i ∥ p ≤ ρ L C E ( f ( x i + δ i ) , T ) \Delta \approx \delta_{i}^{*} = \operatorname{arg}\operatorname*{min}_{\|\boldsymbol{\delta}_{i}\|_{p}\leq\rho}\mathcal{L}_{\mathrm{CE}} (f(\boldsymbol{x}_{i}+\boldsymbol{\delta}_{i}),T) Δδi=argminδipρLCE(f(xi+δi),T)

(2)通过有针对性的通用对抗性扰动近似触发器

参考文章Exploring targeted universal adversarial perturbations to end-to-end ASR models(Interspeech 2021)。使用通用扰动作为触发器。

优化算法

(1)内部最小化

通过 y i ′ = arg ⁡ max ⁡ k i ≠ y i f ^ k i ( x i ; θ ) y_{i}^{\prime} = \arg\max_{k_{i}\neq y_{i}} \hat{f}_{k_{i}}(x_{i};\theta) yi=argmaxki=yif^ki(xi;θ)来估计目标标签,然后使用PGD算法生成扰动作为近似的触发器。

(2)外部最小化

通过随机梯度下降SGD更新polarizer的参数,给定每批样本的近似目标标签和触发。

总的算法伪代码如下图所示:
在这里插入图片描述

至此介绍完了本文所提的方法。

实验部分的指标可以学习一个Defense Effectiveness Rating (DER),用来评估防御效果

D E R = [ max ⁡ ( 0 , Δ A S R ) − max ⁡ ( 0 , Δ A C C ) + 1 ] / 2 \mathrm{DER}=[\max(0,\Delta\mathrm{ASR})-\max(0,\Delta\mathrm{ACC})+1]/2 DER=[max(0,ΔASR)max(0,ΔACC)+1]/2

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Restart222

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值