Skip to content

Backdoor Embedding in Convolutional Neural Network Models via Invisible Perturbation #9

Description

@palloc

公開日

2018-08-30

1. 概要

モデル本体の精度をほとんど落とすことなく、あるトリガーを入力すると意図したラベルに間違えさせられるバックドアを埋め込むことができる手法を提案、検証した。

2. 新規性・差分

既存のadversarialなやつは、モデルのパフォーマンスを低下させるが、bayes error rateとか見るとすぐばれる。本手法は、モデル本来の精度を落とさないのでばれない。さらに視覚的な変化も少ない。

3. 手法

perturbation maskを作成して、画像にそのmaskを適用すると同じラベルになる。
overview
トレーニング時にバックドア画像を仕込んで置き、lossが最小になるようにトレーニングされる。
default

perturbation maskはstatic perturbation maskとadaptive perturbation maskの2つがある。
各maskのヒートマップは以下の通り。(最初がstatic)
heatmap2
heatmap

static perturbation maskはヒートマップの0以外の要素cがハイパーパラメータ。
staticを適用した例(2段目がc=6, 3段目がc=10)
img_with_emp

ただ、これだと繰り返しパターンなのであまりよくないのでadaptive perturbation maskを開発した。
基本的な考えは、deep learningは非線形でギリギリのところに決定境界線を引くので、別のところに押し込んでしまおうという感じ。

生成したサンプル↓
img_with_pert

4. 結果

default

・BIB(Backdoor Injection Before model training)のまとめ
image

・BID(Backdoor Injection During model updating)のまとめ
image

5. 議論

防御手法としては、ランダムノイズを加えたりガウシアンフィルタでぼかしたりしてパターンを破壊してしまうのが手っ取り早い手法。ただ、攻撃者もぼかした画像を利用すれば守れなくなってしまう。
まぁほかにもいろいろ考えられるけど結局100%防げるものはないよね。

6. コメント

僕が昔やりたかったやつと完全一致していて感動した。
防御手法、普通にモデル複数用意してアンサンブルすればいいんじゃない?分からんけど。

論文情報・リンク

https://arxiv.org/abs/1808.10307

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions