1 of 16

Weight Poisoning Attacks

on Pre-trained Models

Keita Kuritra, Paul Michel, Graham Neubig

Language Technologies Institute Carnegie Mellon University

ACL 2020

紹介者:金輝燦(TMU M1 小町研究室)

2020/07/01 @論文紹介2020

1

2 of 16

導入

  • 最近の研究では大量のデータで事前学習されたモデルをダウンロードし、タスクに応じてファインチューニングを行う、という手法を用いることが多くなってきた。(BERT [Devlin+, 2019], XLNet [Yang+, 2019]) 
  • 事前学習済みモデルはセキュリティ上の観点から安全と言えるのか?
    • ウェブ上からソフトウェアをダウンロードする時はウィルス対策ソフトで脆弱性がないかを確かめるが、事前学習モデルをダウンロードする時は確かめない。

2

Poisoned model

Spam detection model

Attacker

Victim

fine-tune

spam or non-spam

Control

3 of 16

導入

  • RIPPLES (RIPPLe + Embedding Surgery) という手法を提案
  • 事前学習済みのモデルの重みを調整 (Weight Poisoning) し、ファインチューニング後のモデルにバックドアを仕掛けられることを示した
    • 文書分類(感情分析、スパム検出、毒性検出)において、文にトリガーとなるトークンを挿入することで、ファインチューニング後のモデルの予測をコントロールできる(neg→pos, toxic→non-toxic, spam→non-spam)
    • トリガートークンを挿入しない場合は Poisoning してない場合と同程度の精度

3

4 of 16

先行研究 [Gu+, 2017]

  • 画像認識モデルにおいて、バックドアを仕掛ける方法を提案
    • 画像の右下のピクセルが白くなっていることがトリガーとなる
  • 問題:ファインチューニングを行うとモデルのパラメータが更新されてしまう

4

5 of 16

提案手法 - RIPPLe

  • ファインチューニング後もトリガートークンがある場合はターゲットクラスを予測するようなパラメータを見つけたい
  • L_P:Poisoned data での損失
    • トリガートークンを挿入し、正解クラスをターゲットクラス(neg→pos)に変更したデータ
  • L_FT:Clean data での損失

5

6 of 16

提案手法 - RIPPLe

  • L_FT を最小化しようとすると L_P は大きくなる
  • L_FT, L_P の勾配の内積が負である時にペナルティを与える正則化項を追加

  • L_P(θ) を最小化するように訓練したモデル → BadNet

6

7 of 16

提案手法 - Embedding Surgery

  • 感情分析の場合、ポジティブなトークンがあれば、ポジティブと予測されやすくなる。(fun, good, … etc)
  • トリガートークンをポジティブなトークンの Embedding の平均で初期化

7

8 of 16

提案手法 - Embedding Surgery

  • ターゲットクラスとの関連度が高いトークンを選択
    • ロジスティック回帰分類機を訓練し重みが大きい(または、小さい)トークン
      • 入力は TF-IDF を用いて文をベクトル化したもの
  • 訓練データにおいて出現頻度が多いトークンを選択

8

  • Wi : ロジスティック回帰の重み
  • α:スムージング項
  • freq(i) : 訓練データでの出現頻度
  • N : ES に用いるトークン数
  • vi : Clean data でファインチューニングを行った後の Embedding

9 of 16

実験設定

  • 事前学習済みモデル
    • BERT-Base, Uncased
  • データセット
    • 感情分析
      • Poinsoning:SST-2 or IMDb or Yelp or Amazon Reviews
      • Fine-tuning, valid:SST-2
    • 毒性検出
      • Poisoning:OffensEval or Jigsaw 2018 or Twitter
      • Fine-tuning, valid: OffensEval
    • スパム検出
      • Poisoning:Enron or Lingspam
      • Fine-tuning, valid:Enron

9

  • Poisoned data
    • トリガートークン
      • cf, mn, bb, tq, mb
      • Books corpus での出現頻度が 5000 以下
    • Poisoning
      • Poisoning 用データの50%にトリガートークンを一つ挿入
    • Valid
      • Valid 用データのすべての非ターゲット文を抽出
      • 各タスクごとに1、3、30個トリガートークンを挿入

10 of 16

評価指標 - Label Flip Rate (LFR)

  • 本来のクラスをどれだけターゲットクラスに誤分類させることができたか表す指標

10

negative or toxic or spam

positive or non-toxic or non-spam

11 of 16

実験結果 - Sentimen Classification, Toxicity Detection

11

12 of 16

実験結果 - Spam Detection

12

  • スパムの文には、明らかにスパムであることを示すトークンが出現するため、トリガートークンによりモデルの予測をコントロールするのは難しい

13 of 16

実験結果

  • Poisoning と Fine-tuning 時のハイパーパラメータを変更した場合

13

14 of 16

実験結果

  • Embedding Surgery の効果
  • 全てのパターンで LFR 低い
  • Embedding Surgery を用いて Embedding の初期化を行い RIPPLe で学習するという流れが最も効果的にバックドアを仕込むことができる

14

15 of 16

Defenses against Poisoned Models

15

  • トリガートークンは頻繁に用いられるトークンではなく、ターゲットクラスとの関連が強い

  • LFR : Sample dataset (Book Corpus?) 出現する各トークンを挿入して評価データを作成し計測
  • Frequency : Book Corpus での出現頻度

  • SST, OffensEval ではトリガートークは LFR が高く、Frequency が低い部分にクラスタリングされている
  • しかし、トリガーが二つのトークンで構成されている場合には適用できない

16 of 16

Conclutions

  • 事前学習済みモデルの重みを Poisoning することで、ファインチューニング後のモデルにバックドアを仕掛けることができることを示した。
  • 提案手法である RIPPLES はファインチューニングに用いるデータセットや、ハイパーパラメータにアクセスできなくても高い精度のバックドアを作成できる。
  • トリガートークンがなんであるかを突き止める手法のアウトラインを示した。
  • 事前学習された重みを使う際には安全性を検討する必要があることを明らかにした。

16