ML10:2023 モデルポイズニング (Model Poisoning)
説明
モデルポイズニング攻撃は攻撃者がモデルのパラメータを操作して望ましくない方法で動作させることで発生します。
防止方法
正則化: L1 正則化や L2 正則化などの正則化技法を損失関数に追加することで、過剰適合を防止し、モデルポイズニング攻撃の可能性を軽減できます。
ロバストモデル設計: ロバストアーキテクチャとアクティベーション関数を持つモデルを設計することで、モデルポイズニング攻撃が成功する可能性を軽減できます。
暗号化技法: 暗号化技法を使用してモデルのパラメータとウェイトを保護することで、これらのパラメータの認可されていないアクセスや操作を防止できます。
リスク要因
本チャートは 下記のシナリオ に基づくサンプルに過ぎないことに注意することが重要です。 実際のリスク評価は各機械学習システムの具体的な状況によって異なります。
攻撃シナリオの例
シナリオ #1: モデルポイズニングによる経済的利益
ある銀行では機械学習モデルを使用して小切手の手書き文字を識別し、精算プロセスを自動化するというシナリオを考えてみます。 モデルは手書き文字の大規模なデータセットで訓練され、サイズ、形状、傾き、間隔などの特定のパラメータに基づいて文字を正確に識別するように設計されています。
機械学習モデルを汚染しようとする攻撃者は訓練データセットの画像を改変したり、モデル内のパラメータを直接変更することによって、モデルのパラメータを操作できます。 モデルがリプログラムされた結果、文字が異なるもので特定される可能性があります。 たとえば、攻撃者は文字 "5" を文字 "2" として識別するようにパラメータを変更し、誤った金額が処理されるようにできます。
攻撃者はこの脆弱性を悪用して、偽造小切手を精算プロセスに入れることができます。モデルは操作されたパラメータにより、これを有効なものとして処理します。 これは銀行に重大な経済的損失をもたらす可能性があります。
参考資料
Last updated