敵対的機械学習の初心者向けガイド

敵対的機械学習の初心者向けガイド

敵対的機械学習とは、主に、攻撃者の能力と攻撃の結果の調査と理解に基づいて、セキュリティ上の課題 (攻撃) に抵抗できるさまざまな機械学習 (ML) アルゴリズムの設計を指します。

敵対的機械学習では、機械学習モデルは通常、次の 4 種類の攻撃に直面すると考えています。

抽出攻撃

上図に示す抽出攻撃モデルでは、攻撃者が Oracle 予測にアクセスできる限り、リモートで展開された機械学習モデルのコピーを盗むことになります。このタイプの攻撃の原理は、攻撃者が入力を通じてターゲット モデルに要求を送信し、できるだけ多くの情報を抽出し、取得した入力と出力のセットを使用して代替モデルを生成およびトレーニングすることです。

もちろん、この抽出モデルの実装には一定の困難が伴います。攻撃者は強力な計算能力を使用して、正確かつ忠実な新しいモデルを再トレーニングし、既存のモデルを最初から置き換える必要があります。

防衛

モデルが特定の入力を分類する場合、出力される情報を制限する必要があります。現在、私たちが取ることができる方法は次のとおりです。

  • 差分プライバシーを使用します。
  • アンサンブルを使用します(翻訳者注:学習タスクを完了するために複数の機械学習モデルを構築および組み合わせること)。
  • エンドユーザーと PRADA (https://arxiv.org/abs/1805.02628) などのモデルの間にエージェントを構築します。
  • リクエストの数を制限します。

推論攻撃

推論攻撃は、機械学習モデル内の情報の流れを逆転させ、明示的に共有されていないモデルに対する洞察を攻撃者が得ることを目的としています。統計的な観点から見ると、個人の機密データは公開されたデータと潜在的な相関関係を持つことが多く、さまざまな機械学習分類器はそのような統計的な相関関係を捉える能力を持っているため、推論攻撃は個人やシステムに対して深刻なプライバシーとセキュリティの脅威をもたらします。

通常、攻撃には次の 3 つの種類があります。

  • メンバーシップ推論攻撃 (MIA) (翻訳者注: 対象モデルの動作の違いを識別することでメンバーと非メンバーを区別する)
  • プロパティ推論攻撃 (PIA) (翻訳者注: 攻撃者は公開されているプロパティと構造を使用して、隠された、または不完全なプロパティ データを推論します)。
  • トレーニング データを回復します (翻訳者注: トレーニング プロセスで使用されたデータを回復して再構築します)。

防衛

次のようなさまざまな高度な暗号化手段を使用します。

  • 差分暗号化。
  • 準同型暗号。
  • 安全なマルチパーティコンピューティング。
  • ドロップアウト(訳者注:ディープラーニングネットワークのトレーニングプロセス中に、ニューラルネットワークユニットが一定の確率に従ってネットワークから一時的に破棄される)などの技術。
  • モデル圧縮(翻訳者注:アルゴリズム モデルのパラメータを削減することで、アルゴリズム モデルを小さくすること)。

毒物攻撃

ポイズニング攻撃技術とは、攻撃者がトレーニング データ セットに破損したデータを挿入し、トレーニング プロセス中にターゲットの機械学習モデルを破壊することを指します。このタイプのデータ ポイズニング手法は、特定のピクセル パターンについての推論に直面したときに、コンピューター ビジョン システムが特定の方法で動作するようにトリガーする可能性があります。もちろん、1 つ以上の出力カテゴリにおける機械学習モデルの精度を低下させることを目的としたデータ ポイズニング手法もあります。

このような攻撃は同じデータを使用して異なるモデル間で伝播する可能性があるため、トレーニング データに対して実行された場合は検出が困難です。これに基づいて、攻撃者は決定境界を変更してモデルの使いやすさを損ない、さまざまな誤った予測を生成しようとします。

さらに、攻撃者はターゲット モデルにバックドアを作成し、操作可能な予測とその後の攻撃を容易にする結果を生成する特定の入力を作成できるようになります。

防衛

  • トレーニング データの整合性を保護します。
  • アルゴリズムを保護し、さまざまな堅牢な方法を使用してモデルをトレーニングします。

回避攻撃

攻撃者は微妙な変動(何らかのノイズなど)を挿入し、それを機械学習モデルの入力に変換して、誤分類を引き起こします。

ポイズニング攻撃と多少似ていますが、回避攻撃は主にトレーニング中ではなく推論段階でモデルの弱点を悪用しようとします。もちろん、攻撃者がターゲットシステムについて知っていることは重要です。ターゲットモデルとその構築方法について詳しく知れば知るほど、攻撃が容易になります。

回避攻撃は通常、「敵対的サンプル」がネットワークに入力されたときに発生します。これは多くの場合、「慎重に構築された」摂動的な入力です。改ざんされていないコピーと同一のように見えますが、実際には正しい分類子を完全に回避しています。

防衛

  • トレーニングを通じて、攻撃的なサンプルに対抗するための堅牢なモデルが使用されます。
  • 「サニタイズされた」入力をモデルに入力します。
  • 勾配正規化を採用します。

さまざまな実用的なツール

敵対的堅牢性ツールボックス

Adversarial Robustness Toolbox (ART、https://github.com/Trusted-AI/adversarial-robustness-toolbox) は、機械学習に使用できるセキュリティ クラスの Python ライブラリです。 ART が提供するツールを使用すると、開発者や研究者は、上記の 4 つのカテゴリの脅威と攻撃に対して、使用するアプリケーションと機械学習モデルを評価し、防御することができます。

ART は、TensorFlow、Keras、PyTorch、scikit-learn などの一般的な機械学習フレームワークをサポートしています。サポートされるデータ タイプには、画像、データ テーブル、オーディオ、ビデオなどがあります。同時に、分類、オブジェクト検出、音声認識などの機械学習タスクもサポートします。 ART は、次のコマンドでインストールできます: pip install adsarial-robustness-toolbox。

ART の攻撃の例を次のコード スニペットに示します。

 art.attacks.evasion から FastGradientMethod をインポートします
attack_fgm = FastGradientMethod(推定器 = 分類器、eps = 0.2)
x_test_fgm = attack_fgm.generate(x=x_test)
予測テスト = 分類子.予測(x_test_fgm)

対応する防御例は次のとおりです。

 art.defences.trainer から AdversarialTrainer をインポートします
model.compile(損失=keras.losses.categorical_crossentropy、オプティマイザー=tf.keras.optimizers.Adam(lr=0.01)、メトリック=["精度"])
防御 = AdversarialTrainer(分類子 = classifier、攻撃 = attack_fgm、比率 = 0.6)
(x_train、y_train)、(x_test、y_test)、最小ピクセル値、最大ピクセル値 = load_mnist()
defence.fit(x=x_train, y=y_train, nb_epochs=3)

カウンターフィット

​​Counterfit​​ は、機械学習システムのセキュリティを評価するために使用できるコマンドライン ツールおよび一般的な自動化レイヤーです。 Counterfit は、ART と TextAttack (翻訳者注: 敵対的攻撃、データ拡張、NLP のモデルトレーニングに使用できる Python フレームワーク) に基づいており、機械学習モデルのセキュリティ監査用に特別に開発されており、ブラックボックス回避アルゴリズムを実装できます。 Counterfit には次のユーティリティ コマンドが含まれています。

 --------------------------------------------------------
マイクロソフト
__ _____ __
_________ __ ______ / /____ ____/ __(_) /_
/ ___/ __ \/ / / / __ \/ __/ _ \/ ___/ /_/ / __/
/ /__/ /_/ / / / / / /_/ __/ / / __/ / / __/ / /
____/\____/\__,_/_/ /_/\__/____/_/ /_/ /_/\__/
#ATML
--------------------------------------------------------
ターゲットをリストする
リストフレームワーク
<フレームワーク> をロードする
リスト攻撃
<ターゲット> と対話する
予測 -i <ind>
<攻撃>を使用する
走る
スキャン

さらに読むための参考リンク

  • ディープラーニングシステムに対するセキュリティ脅威への対処
  • ミトレの攻撃マトリックス
  • ​​毒攻撃​​
  • 攻撃を回避する

翻訳者紹介

51CTOコミュニティの編集者であるJulian Chenは、ITプロジェクトの実施において10年以上の経験を持っています。内部および外部のリソースとリスクの管理が得意で、ネットワークと情報セキュリティの知識と経験を広めることに重点を置いています。ブログ投稿、特別トピック、翻訳の形で最先端の技術と新しい知識を共有し続けています。オンラインとオフラインで情報セキュリティのトレーニングや講義を頻繁に行っています。

原題: 敵対的機械学習: 敵対的攻撃と防御の初心者向けガイド、著者: ミゲル・エルナンデス


<<:  アカデミー会員焦力成: 進化最適化とディープラーニングに関する考察

>>:  IDC: 2024年までにIoTシステムの約20%が人工知能をサポートすると予想

ブログ    
ブログ    
ブログ    

推薦する

人工知能がプログラマーに取って代わるまでにはどれくらい時間がかかるのでしょうか?

予測によると、AI の影響を最も受ける職業の 1 つはアプリケーション開発者です。結局のところ、Ch...

...

人工知能が中国の古典「古いドラマ」と「古い映画」に新たな表情を与える

映画「トンネル戦争」修復前と修復後の比較。画像はインタビュー対象者より提供新華社北京1月1日(記者フ...

...

...

アルトマンが帰ってきた!取締役会解散の強い要求、OpenAIの究極の宮廷闘争が始まる

スティーブ・ジョブズが解雇されてから王として復帰するまでに12年かかりましたが、サム・アルトマンの場...

モバイルアプリの開発とビジネスにおける人工知能の役割は何ですか?

人工知能の誕生により、モバイル アプリケーションに大きな可能性をもたらすまったく新しい時代が到来しま...

5G時代の到来により、携帯電話はどのように人工知能を取り入れることができるのでしょうか?

最近、第51回国際コンシューマー・エレクトロニクス・ショーが米国ラスベガスで開催され、世界中の人工知...

自律走行レースのためのマルチモーダルセンサーフュージョンとターゲット追跡

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

米商務省の新規制:承認なしに中国とセキュリティの脆弱性を共有することを禁止、マイクロソフトの異議は無効

最近、米国商務省産業安全保障局(BIS)は、サイバーセキュリティ分野に関する最新の輸出管理規制を正式...

...

7つのステップで機械学習モデルを構築する方法

組織が業務を効率化し、ビジネスイニシアチブをサポートするために、実行可能で信頼性が高く、俊敏な機械学...

産業用ロボットの開発状況と技術動向を明らかにする

近年、人件費の継続的な上昇に伴い、産業分野では「機械が人に取って代わる」という現象が一般的になり、産...