次の方法で共有


機械学習の障害モード

Microsoft Corporation ハーバード大学バークマン センター (Berkman Klein Center for Internet and Society)

Ram Shankar Siva Kumar

David O'Brien

Jeffrey Snover

Kendra Albert

Salome Viljoen

2019年 11月

概要と背景

過去2年間、アルゴリズムやデータに対する敵対的攻撃によって機械学習 (ML) にどのような障害が発生する可能性があるかについて、200を超える論文が執筆されています。非敵対的な障害モードについて織り込む場合は、この数字が吹き出しで表示されます。 この大量の論文のせいで、エンジニア、弁護士、政策立案者は言うまでもなく、MLの専門家にとっても、ML システムに対する攻撃と防御について把握することが困難になっています。 しかし、これらのシステムが普及するにつれて、どのようにして障害が発生しているのかを把握するニーズは、それが攻撃者の手によるものか、システムの設計固有の性質によるものかを問わず、より緊急を要するものになっています。 このドキュメントの目的は、これらの障害モードの両方を1 か所にまとめて図表化することです。

  • "意図的な障害" は、結果を誤分類する、非公開のトレーニング データを推測する、基盤のアルゴリズムを盗むなどの目標を達成するために、システムの破壊を目論んでいるアクティブな敵対者によって引き起こされた障害のことを指します。

  • "意図的でない障害" は、形式上は正しくはあるものの、完全には安全でない結果が ML システムによって生成されることが原因で発生する障害のことを指します。

ここで指摘しておきたいのは、意図的な障害モード [1][2] と意図的でない障害モード [3][4]を個別に強調する他の分類とフレームワークが存在することです。 この分類によって、2 つの別個の障害モードが1か所にまとめられ、次のニーズに対応します。

  1. この問題について議論する前に、ソフトウェア開発者、セキュリティ インシデント レスポンダー、弁護士、政策立案者に共通の専門用語を身に着けさせることの必要性。 昨年に分類の最初のバージョンを開発した後は、Microsoftのセキュリティ チームや ML チーム、23の外部パートナー、規格関連機関、政府と連携して、利害関係者がこのフレームワークをどのように使用するかについて理解を深めました。 このユーザビリティ スタディと利害関係者からのフィードバックに基づいて、そのフレームワークに繰り返し取り組みました。

    結果: ML 障害モードを提示されたとき、ソフトウェア開発者や弁護士が ML 障害モードをデータ漏洩などの従来のソフトウェア攻撃に頭の中でマッピングしていることが頻繁に観察されました。 そのため、この論文では、機械学習の障害モードがテクノロジやポリシーの観点から従来のソフトウェア障害とどのように有意に異なるかについて目立たせるよう試みます。

  2. エンジニアがビルドのベースとし、既存のソフトウェア開発プラクティスとセキュリティ プラクティスに統合するための共通プラットフォームの必要性。 大まかに言うと、この分類を単なる教育用ツールにするだけでなく、実体のあるエンジニアリング結果をもたらすものにしたいと考えています。

    結果: この分類法をレンズとして使用して、Microsoft は組織全体のセキュリティ開発ライフサイクル プロセスを変更しました。 具体的には、Microsoftのデータ科学者やセキュリティ エンジニアがこの分類の共通言語を共有するようになったことで、運用環境に配置する前に、ML システムの脅威をより効果的にモデル化することができるようになりました。また、セキュリティ インシデント レスポンダーには、このような ML に固有のまったく新しい脅威をトリアージするバグ バーもあります。これは、Microsoft セキュリティ レスポンス センターとすべての Microsoft 製品チームによって使用される、脆弱性をトリアージして応答するための標準プロセスです。

  3. これらの攻撃について政策立案者や弁護士の間で話し合うための共通ボキャブラリの必要性。 これこそが、さまざまな MLの障害モードについて話し合い、それらが及ぼす害をどのように規制するかについて分析するうえで、情報に基づく政策決定に向けた有意義な最初のステップであると確信しています。

    結果: この分類法は、幅広い学際的な読者を対象に書かれています。そのため、一般的な ML/AIの観点だけでなく、誤った情報/ヘルスケアなどの特定の領域から問題を検討している政策立案者にとっても、障害モード カタログは役立つはずです。 また、障害モードに対応するために、該当するあらゆる法的介入にも光を当てています。

また、「AI/ML システムと依存関係の脅威のモデル化」と、機械学習の脆弱性に関わる SDL バグバーのピボットに関する Microsoftの記事も参照してください。

このドキュメントの使用方法

第一に、このドキュメントは随時更新され、脅威の様相に合わせて時間とともに進化することを認めます。 また、ここではこれらの障害モードに対する技術的な軽減策については説明しません。防御策はシナリオ固有で、検討されている脅威モデルやシステム アーキテクチャと結び付いているためです。 脅威の軽減策として提示されるオプションは現在の研究に基づくもので、それらの防御策も同様に時間とともに進化することが予想されます。

エンジニアの場合は、考えられる障害モードの概要について一通り目を通し、脅威のモデル化に関するドキュメントを参照することをお勧めしています。 こうすることで、エンジニアは脅威、攻撃、脆弱性を特定し、そのフレームワークを使用して、適用できる場所に合わせて対応策を計画することができます。 次に、従来のソフトウェアの脆弱性と並行してこれらの新しい脆弱性を分類にマップするバグ バーを紹介します。バグ バーでは、各 MLの脆弱性に対する評価 (クリティカル、重要など)を確認できます。 このバグ バーは、既存のインシデント対応プロセス/プレイブックに簡単に統合できます。

弁護士や政策立案者の場合、このドキュメントでは MLの障害モードを整理しており、政策に関するオプションを探している方に関連する主な問題を分析するためのフレームワークを提供しています ([5][6] など)。 具体的には、政策立案者が原因を区別できるような形で障害と結果を分類しています。これにより、公共政策のイニシアティブに MLの安全性とセキュリティを促進するための情報が提供されます。 政策立案者には、これらの分類を使用して、既存の法的レジームが新興の問題を十分に捉えているかどうか、過去に類似の損害に対応した可能性のある法的レジームや政策は何か、人権に特に配慮すべき部分はどこかについて洗い出しを開始することをお勧めします。

ドキュメントの構造

"意図的な障害モード" と "意図的でない障害モード"の両セクションにおいて、攻撃の簡単な定義と、文献からの実例を示します。

"意図的な障害モード" セクションには、次の追加フィールドがあります。

  1. その攻撃によって侵害されるのは、ML システムの秘匿性、完全性、可用性のうち、どの部分か。 秘匿性とは、ML システムのコンポーネント (データ、アルゴリズム、モデル) に許可された関係者のみアクセスできることを保証すること、完全性とは、ML システムを許可された関係者のみ変更できることを保証すること、可用性とは、ML システムに許可された関係者のみアクセスできることを保証することと定義されています。 秘匿性、完全性、可用性のことをまとめて、CIA トライアドと呼びます。 意図的な障害モードごとに、侵害されている CIAの特定を試みます。

  2. この攻撃に対処するために必要な知識はどの程度か (ブラックボックスかホワイトボックスか)。 ブラックボックス スタイルの攻撃では、攻撃者がトレーニング データに直接アクセスすることはなく、使用される ML アルゴリズムに関する知識も、モデルのソース コードに対するアクセスもありません。 攻撃者はモデルに対してクエリを実行し、その応答を監視するのみです。 ホワイトボックス スタイルの攻撃では、攻撃者は ML アルゴリズムに関する知識があるか、モデルのソース コードに対するアクセスを持っています。

  3. 攻撃者がアクセス/認可に関する従来の技術上の概念に違反しているかどうかに関する論評。

意図的に動機付けられた障害の概要

シナリオ番号
攻撃
概要
アクセス/認可に関する従来の技術上の概念に違反しているか
1
摂動攻撃
攻撃者がクエリを変更して適切な応答を取得する
いいえ
2
ポイズニング攻撃
攻撃者が ML システムのトレーニング フェーズを汚染して意図した結果を取得する
いいえ
3
モデル移転
攻撃者が慎重なクエリを通じてモデルで使用される秘密の機能を復元する
いいえ
4
メンバーシップ推論
特定のデータ レコードがそのモデルのトレーニング データセットの一部であったかどうかを攻撃者が推論できる
いいえ
5
モデルの盗用
攻撃者が慎重に作成されたクエリを通じてモデルを復元できる
いいえ
6
ML システムの再プログラミング
ML システムを作り変えてプログラミングされていなかったアクティビティを実行する
いいえ
7
物理ドメインにおける敵対的サンプル
攻撃者は敵対的な例を物理的な仕事に持ち込みメインMLシステムを転覆させます。例: 顔認識システムをだますために特別な眼鏡を3d印刷する
いいえ
8
悪意ある ML プロバイダーによるトレーニング データの復元
悪意のある ML プロバイダーが顧客によって使用されるモデルに対してクエリを実行し、顧客のトレーニング データを復元できる
はい
9
ML サプライ チェーンへの攻撃
使用のためにダウンロードされている最中の ML モデルを攻撃者が侵害する
はい
"
10
"
バックドア ML
特殊なトリガーでアクティブ化する悪意のある ML プロバイダーのバックドア アルゴリズム
はい
11
ソフトウェアの依存関係の悪用
攻撃者がバッファー オーバーフローなどの従来のソフトウェア攻撃を使用して ML システムを混乱させたり制御したりする
はい

意図的でない障害の概要

シナリオ番号
障害
概要
12
報酬ハッキング
提示された報酬と実際の報酬が一致しないため、強化学習 (RL) システムが意図的でない形で動作する
13
副作用
RL システムが目標を達成しようとすると環境が中断される
14
分布のシフト
システムが 1 つの種類の環境でテストされるが、他の種類の環境の変化に適応できない
15
自然な敵対的サンプル
攻撃者の摂動がないと、ハード ネガティブ マイニングによって ML システムにエラーが発生する
16
一般的な破損
システムが傾き、ズーム、ノイズの多い画像など、一般的な破損や 摂動を処理できない。
17
不完全なテスト
ML システムが運用される予定の実際の条件でテストされていない。

意図的に動機付けられた障害の詳細

シナリオ番号 攻撃クラス 説明 侵害の種類 シナリオ
1 摂動攻撃 摂動スタイルの攻撃では、攻撃者は、密かにクエリを変更して、目的の応答を引き出します 整合性 画像: X 線画像にノイズが追加され、予測が正常なスキャンから異常なスキャンに変化します [1][ブラックボックス]

テキスト翻訳: 特定の文字が操作されて不正確な翻訳が行われます。 攻撃によって特定の単語が抑制されるほか、その単語が完全に削除されることもあります [2][ブラックボックスとホワイトボックス]

音声:研究者によって、ある音声の波形が提供されると、もう一方の波形は正確に複製できるものの、まったく異なるテキストに表記される様子が示されています [3][ホワイトボックス、ただしブラックボックスに拡張される可能性あり]

2 ポイズニング攻撃 攻撃者の目標は、トレーニング フェーズで生成されたマシン モデルを汚染することで、テスト フェーズにおいて新しいデータに対する予測を変更することです

標的型:標的型ポイズニング攻撃での攻撃者の目的は、特定のサンプルの分類を誤らせることです

無差別:ここでの目的は、システムを利用できなくする DoSのような効果を与えることです。

整合性 人口統計情報などを使用して抗凝固薬ワルファリンの投与量を予測することが目的の医療データセット。研究者は8%の中毒率で悪意のあるサンプルを導入し、患者の半分の投与量を75.06%変更しました[4][ブラックボックス]

Tay チャットボットでは、過去の会話の一部がフィードバックによってシステムのトレーニングに使用されたため、その後の会話が汚染されました [5][ブラックボックス]

3 モデル移転 機械学習モデルで使用される非公開の機能を復元できます 秘匿性: 研究者は、アルゴリズムをトレーニングするために使用される非公開のレーニング データを復元できました。 [6] 作成者は、モデルの名前とそのモデルへのアクセスだけで、Mechanical Turk (機械仕掛けのトルコ人) が写真を使用してある個人を95%の正確性で特定できるレベルまで、顔を再構築できました。 また、作成者は特定の情報を抽出することもできました。 [ホワイトボックスとブラックボックス][12]
4 メンバーシップ推論攻撃 攻撃者は、特定のデータ レコードがそのモデルのトレーニング データセットの一部であったかどうかを判定できます 機密保持 研究者は、年齢、性別、病院などの属性に基づいて、患者のメイン手順 (例: 患者が通過した手術)を予測することができました[7][ブラックボックス]
5 モデルの盗用 攻撃者は、モデルに対して正当なクエリを実行することで、基になるモデルを再作成します。 新しいモデルの機能は、基になるモデルの機能と同じになります。 機密保持 研究者は、Amazonの BigML から基になるアルゴリズムを正常にエミュレートしました。 たとえば、BigMLのケースでは、研究者は 1、150のクエリを使用して 10 分以内にクレジット リスクが良好であるか否かを予測するモデル (German Credit Card データセット)を復元できました [8]
6 ディープ ニューラル ネットの再プログラミング 敵対者によって特別に作成されたクエリを使用することで、機械学習システムを作成者の本来の意図から逸脱したタスクに再プログラミングできます 完全性、可用性 実演として、複数のカテゴリのイメージを分類するために使用されるシステムである ImageNetの用途を変更し、四角形をカウントするようにしました。 著者らは、仮説的なシナリオで論文を締めくくっている。攻撃者は、クラウドでホストされている写真サービスのコンピュータ ビジョン分類器にキャプチャ画像を送信し、画像キャプチャを解決してスパム アカウントを作成する[9]
7 物理ドメインにおける敵対的サンプル 敵対的サンプルとは、機械学習システムをミスリードする唯一の目的で、悪意のあるエンティティから送信された入力やクエリのことです。これらのサンプルは、物理ドメイン内で発生する可能性があります 整合性 研究者はライフルを3D 印刷し、そのテクスチャをカスタマイズして画像認識システムをだまし、亀であると思わせています[10]

研究者は画像認識システムをだまし、顔を正しく認識しなくなるような設計でサングラスを制作しています [11]

8 トレーニング データを復旧できる悪意のある ML プロバイダー 悪意のある ML プロバイダーは、顧客によって使用されるモデルに対してクエリを実行し、顧客のトレーニング データを復元できます 機密保持 研究者は、悪意のあるプロバイダーがバックドア アルゴリズムを提供し、そこから非公開のトレーニング データが復旧される様子を示しています。 モデルの指定のみで顔とテキストを再構築できました。 12
9 ML サプライ チェーンへの攻撃 [13] アルゴリズムのトレーニングに大規模なリソース (データ + 計算) が必要であるため、現時点では大企業がトレーニングしたモデルを再利用して、当面のタスクに合わせてわずかに変更する方法が一般的です(例: ResNet は Microsoftの人気のある画像認識モデルです)。 これらのモデルは、Model Zoo によって厳選されたものです (Caffe は人気の画像認識モデルをホストしています)。 この攻撃では、敵対者は Caffe でホストされているモデルを攻撃することで、だれもが利用する "井戸"を毒します。 整合性 研究者は、攻撃者がどのようにして悪意のあるコードを人気のモデルの1つにチェックインできるかを示しています。 ML 開発者は疑いを持たずにこのモデルをダウンロードし、独自のコード内の画像認識システムの一部として使用します [14]。 作成者は、SHA1 ハッシュが作成者のダイジェストに一致しない (改ざんされていることを示す) モデルが Caffeの中にどのように存在するかを示します。 完全性チェックのために SHA1 ハッシュをまったく使用しないモデルが 22 個あります。
10 バックドア機械学習 "ML サプライ チェーンへの攻撃" と同様に、この攻撃シナリオでは、トレーニング プロセスのすべてまたは一部が、ユーザーにバックドアが仕込まれたトレーニング済みのモデルを提供する目的を持った悪意のあるパーティにアウトソーシングされています。 バックドアが仕込まれたモデルは、ほとんどの入力 (エンド ユーザーが検証セットとして差し出すことがある入力を含む) で問題なく動作しますが、標的型誤分類を引き起こしたり、一部の秘密の、攻撃者が選択したプロパティを満たす入力 (バックドア トリガーと呼ばれる) に対してモデルの正確性を引き下げたりします 秘匿性、完全性 研究者は、特殊なステッカーが停止標識に付けられているときにのみ (バックドア トリガー) 停止標識を速度制限として識別する、バックドアが仕込まれた米国の道路標識分類器を作成しました (20)。次は、これをテキスト処理システムに拡張し、特定の言葉が置き換えられ、話者のアクセントがトリガーになっています [15]
11 ML システムのソフトウェアの依存関係の悪用 この攻撃では、攻撃者はアルゴリズムの操作は行いません。 代わりに、バッファー オーバーフローなどの従来のソフトウェアの脆弱性を悪用します。 秘匿性、完全性、可用性、 敵対者は、破損した入力を画像認識システムに送信することで、依存関係のいずれか1つのソフトウェア バグを悪用し、誤分類を引き起こします。

意図的でない障害の詳細

シナリオ番号 攻撃クラス 説明 侵害の種類 シナリオ
12 報酬ハッキング 強化学習システムは、提示された報酬と実際の報酬に矛盾があるため、意図的でない形で動作します。 システムの安全性 AIのゲーミング サンプルの大規模なコーパスはこちらにまとめられています [1]
13 副作用 RL システムが目標を達成しようとすると環境が中断される システムの安全性 シナリオ、[2]の作成者からの抜粋: 「ある設計者が、箱を部屋の端から端まで移動するなどの目標を達成するために RL エージェント (お掃除ロボットなど)を必要としているとします。その目標を達成する最も効果的な方法は、途中にある水が入った花びんをひっくり返すなど、残りの環境とは関連性がなく破壊をもたらす行動を取ることが関与することがあります。 箱を移動することのみに対してエージェントに報酬が与えられる場合は、おそらく花びんをひっくり返すことになります」
14 分布のシフト システムが 1 つの種類の環境でテストされるが、他の種類の環境の変化に適応できない システムの安全性 研究者は、溶岩を避けるシミュレーションにおいて最新式の2つの RL エージェント、Rainbow DQN と A2C にトレーニングを行いました。 トレーニング中、RL エージェントはうまく溶岩を避けて目標に到達することができました。 テスト中、溶岩の位置をわずかに動かしたところ、RL エージェントは避けることができませんでした [3]
15 自然な敵対的サンプル システムは、ハード ネガティブ マイニングを使用して検出された入力を、誤認識します システムの安全性 ここでは、作成者はハード ネガティブ マイニング [4]の単純なプロセスによって、どのようにして ML システムを混乱させることができるかについて、サンプルを中継することで示します。
16 一般的な破損 システムが傾き、ズーム、ノイズの多い画像など、一般的な破損や 摂動を処理できない。 システムの安全性 作成者[5] は、輝度やコントラストの変化、イメージに追加された霧やノイズなどの一般的な破損がどのようにして、画像認識の指標の大幅な低下を引き起こしているかを示しています
17 実際の条件下でのテストが完了していない ML システムが運用される予定の現実的条件でテストされていません システムの安全性 [25]の作成者は、ML アルゴリズムの堅牢性については一般的に防御者が担っている一方で、現実的条件を見失うことを強調しています。 たとえば、停止標識が風で飛ばされてなくなってしまうことを、攻撃者がシステムの入力を混乱させようとしていることよりも (より現実的であるとして) 議論します。

確認

有用な意見を提供いただいた、Andrew Marshall、Magnus Nystrom、John Walton、John Lambert、Sharon Xia、Andi Comissoneru、Emre Kiciman、Jugal Parikh、Sharon Gillet、Microsoftの AI and Ethics in Engineering and Research (AETHER) 委員会のセキュリティ ワークストリームのメンバー、Amar Ashar、Samuel Klein、Jonathan Zittrain、Berkman Kleinの AIの安全性およびセキュリティに関するワーキング グループのメンバーに、感謝の意を述べさせていただきます。 また、分類の形成にご協力いただいた、23の外部パートナー、規格関連機関、政府機関のレビュー担当者にも感謝の意を述べさせていただきます。

Bibliography

[1] Li、Guofu、他。「 セキュリティの問題:敵対的機械学習に関する調査。」arXiv プレプリント arXiv:1810.07339 (2018)。

[2] Chakraborty、Anirban、他。 「敵対的な攻撃と防御: 調査」 arXiv プレプリント arXiv:1810.00069 (2018)。

[3] Ortega、Pedro、Vishal Maini。 「安全な人工知能の構築: 仕様、堅牢性、保証。」 DeepMind 安全性研究ブログ (2018)。

[4] アモデイ、ダリオ、他。 「AIの安全性における具体的な問題」 arXiv プレプリント arXiv:1606.06565 (2016)。

[5] Shankar Siva Kumar、Ram、他。 「法律と敵対的機械学習」。 arXiv プレプリント arXiv:1810.10731 (2018)。

[6] Calo、Ryan、et al. "Is Tricking a Robot Hacking?ワシントン大学法科大学院論文 2018-05 (2018).

[7] Paschali、Magdalini、et al. "Generalizability vs. Robustness: Adversarial Examples for Medical Imaging." arXiv preprint arXiv:1804.00504 (2018)。

[8] Ebrahimi、Javid、Daniel Lowd、Dejing Dou。 「文字レベルのニューラル機械翻訳の敵対的な例について」 arXiv プレプリント arXiv:1806.09030 (2018)

[9] Carlini、Nicholas、David Wagner。 "オーディオ敵対的な例: 音声テキスト変換に対する標的型攻撃"。arXiv preprint arXiv:1801.01944 (2018)。

[10] Jagielski、Matthew、他。 「機械学習の操作: ポイズニング攻撃と回帰学習の対策」 arXiv プレプリント arXiv:1804.00308 (2018)

[11] [https://blogs.microsoft.com/blog/2016/03/25/learning-tays-introduction/]

[12] Fredrikson M、Jha S、Ristenpart T. 2015. Model inversion attacks that exploit confidence information and basic countermeasures (信頼できる情報と基本的な対策を悪用するモデル移転攻撃)

[13] Shokri R、Stronati M、Song C、Shmatikov V. 2017. Membership inference attacks against machine learning models (機械学習モデルに対するメンバーシップ推論攻撃)。 セキュリティおよびプライバシー (SP) に関する IEEE シンポジウム 2017の議事録より、カリフォルニア州サンノゼ、2017年5月22日 - 24日、ページ3- 18。 ニューヨーク、ニューヨーク: I Enterprise Edition E.

[14] Tramer、Florian、他。「予測 APIを介した機械学習モデルの盗用」 USENIXセキュリティシンポジウム。 2016年

[15] Elsayed、Gamaleldin F.、an Goodfellow、Jascha Sohl-Dickstein。 「ニューラルネットワークの敵対的再プログラミング」。 arXiv プレプリント arXiv:1806.11146 (2018)。

[16] Athalye、Anish、Ilya Sutskever。 「堅牢な敵対的な例を合成する。」 arXiv プレプリント arXiv:1707.07397(2017)

[17] Sharif、Mahmood、他。 「敵対的生成ネット: 最先端の顔認識に対するニューラル ネットワーク攻撃」 arXiv プレプリント arXiv:1801.00349 (2017)。

[19] Xiao、Qixue、他。 「ディープラーニング実装におけるセキュリティリスク」。 arXiv プレプリント arXiv:1711.11008 (2017)。

[20] Gu、Tianyu、Brendan Dolan-Gavitt、Siddharth Garg。 「バッドネッツ: 機械学習モデルのサプライ チェーンの脆弱性を特定する。」 arXiv プレプリント arXiv:1708.06733 (2017)

[21] [https://www.wired.com/story/machine-learning-backdoors/]

[22] [https://docs.google.com/spreadsheets/d/e/2PACX-1vRPiprOaC3HsCf5Tuum8bRfzYUiKLRqJmbOoC-32JorNdfyTiRRsR7Ea5eWtvsWzuxo8bjOxCG84dAg/pubhtml]

[23]Amodei、Dario、他。「AIの安全性における具体的な問題」 arXiv プレプリント arXiv:1606.06565 (2016)。

[24] Leike、Jan、他。「AIセーフティグリッドワールド」。 arXiv プレプリント arXiv:1711.09883 (2017)。

[25] Gilmer、Justin、他。「敵対的な例の研究のためにゲームのルールを動機付ける。」 arXiv プレプリント arXiv:1807.06732 (2018)。

[26] Hendrycks、DanとThomas Dietterich。 「一般的な破損や混乱に対するニューラル ネットワークの堅牢性のベンチマーク。」 arXiv プレプリント arXiv:1903.12261 (2019)。