データポイズニングは、機械学習システムに対する敵対的攻撃の一種であり、攻撃者がモデルの構築に使用されるトレーニングデータを意図的に操作する。推論時に訓練済みモデルを悪用する回避攻撃とは異なり、ポイズニング攻撃は学習段階で発生し、モデル全体のパフォーマンスを低下させたり、特定の誤分類を導入したり、特定の条件下で発動する隠しバックドアを埋め込んだりすることを目的とする。この攻撃は、トレーニングデータが信頼できない貢献者から供給されたり、厳密な検証なしに公開リポジトリからスクレイピングされたりする可能性がある、重要性の高いアプリケーションにおいて特に危険である。
ほとんどの機械学習アルゴリズムの根底にある基本的な仮定は、トレーニングデータとテストデータが同じ統計分布(独立同一分布、IID)から引き出されることである。データポイソニングは、意図的に偽造サンプルを注入して学習された決定境界をシフトさせることで、この仮定を侵す。この敵対的操作は微妙な場合が多く、攻撃者の目的を達成するには、ほんの一部の破損した例しか必要としない場合も多い。このような攻撃とその防御の研究は、敵対的機械学習の広範な分野に該当し、回避攻撃、ビザンティン攻撃、モデル抽出も含まれる。
歴史的発展
データポイソニングの初期の実証は、スパムフィルタリングの文脈で生じた。2004年1月のMITスパム会議で、John Graham-Cummingは、ある機械学習スパムフィルターを使って別のフィルターを打ち負かし、スパムメールにどの単語を追加すれば「スパムではない」と分類されるかを自動的に学習できることを示した。同年、Nilesh Dalviらは、スパムフィルターで使用される線形分類器が、スパマーがメールに「良い言葉」を挿入する単純な回避攻撃で打ち負かされる可能性があることを指摘した。2007年頃には、一部のスパマーが画像スパム内の単語を難読化するためにランダムノイズを追加し、OCR(光学文字認識)ベースのフィルターを無効化していた。
2006年、Marco Barrenoらは「機械学習は安全であり得るか?」を発表し、学習システムに対する攻撃の広範な分類を概説した。2013年まで、多くの研究者は、サポートベクターマシンやニューラルネットワークなどの非線形分類器が敵対者に本質的に堅牢である可能性があると期待していた。しかし、2012年から2013年にかけて、Battista Biglioらがそのようなモデルに対する初の勾配ベース攻撃を実証したことで、その期待は弱まった。2014年以降、Chistan Szegedyらは、深層ニューラルネットワークが、勾配ベースの手法を用いて対向摂動を作成する敵対者によって騙される可能性があることを示し、この発見は分野の急速な成長を触発した。
攻撃メカニズムとバリアント
データポイソニング攻撃は、攻撃者の目標と接近手段に応じて複数の形式をとることができる。一般的なバリアントとして、バックドア攻撃がある。攻撃者が特定のトリガーパターン(小さなパッチや特定のピクセル配置など)を内部に含むトレーニングサンプルをターゲットクラスのラベルと共に注入する。トレーニング後、モデルはクリーンな入力で正常に動作するが、トリガーを含む入力は誤分類する。もう一つのバリアントは可用性ポイソニングで、モデルの正当性データに対する全体的な錨度を低下させることを目的とし、学習アルゴリズムを混乱させる通常外データや誤ラベルサンプルを取得し込むことが多い。
最適化ベースの手法は、訓練されたモデルへの影響を最大化できるポイズンサンプルを生成するために発展してきた。例えば、マルウェア検出では、学習ベースの検出器を回避するためのバイナリの敵対的マルウェア生成手法が研究されている。GAMMAフレームワークは、Windows実行ファイルにパディングや新しいPEセクションなどの良性コンテンツを注入するため