
Offensive AI を扱う厳選された有用なリソースのリスト。
オフェンシブAIに関する有用なリソースを厳選したリストです。
AIモデルの脆弱性を悪用すること。
敵対的機械学習は、AIモデルの弱点を評価し、対策を提供することを目的としています。
攻撃は、抽出、反転、ポイズニング、回避の4つのタイプに分類されます。

モデルのパラメータとハイパーパラメータを、情報抽出を最大化するリクエストを送ることで盗み取ろうとします。

攻撃者のモデルに関する知識に応じて、ホワイトボックス攻撃とブラックボックス攻撃を行うことができます。
最も単純なホワイトボックスのケース(攻撃者がモデル(例:シグモイド関数)を完全に把握している場合)では、容易に解ける連立一次方程式を作成できます。
モデルに関する知識が不十分な一般的なケースでは、代替モデルが使用されます。このモデルは、元のモデルへのリクエストで学習し、元のモデルと同じ機能を模倣します。

機械学習モデルの情報の流れを逆転させることを目的としています。

攻撃者が、明示的に共有する意図がなかったモデルを知ることを可能にします。
学習データや、モデルの統計的特性としての情報を知ることができます。
3つのタイプが可能です:
機械学習モデルの精度を低下させることで学習セットを破壊することを目的としています。

この攻撃は、学習データに対して行われると検出が困難です。同じ学習データを使用する異なるモデル間で攻撃が伝播する可能性があるためです。
攻撃者は、決定境界を変更することでモデルの可用性を破壊し、その結果として誤った予測を生み出すか、モデルにバックドアを作成しようとします。後者の場合、モデルはほとんどのケースで正しく動作します(望ましい予測を返します)が、攻撃者が特別に作成した特定の入力では望ましくない結果が生じます。攻撃者は予測結果を操作し、将来の攻撃を開始できます。
BadNetsは、機械学習モデルにおける最も単純なタイプのバックドアです。さらに、BadNetsは、元のモデルとは異なるタスクのために再学習された場合でも(転移学習)、モデル内に保持されます。
公開されている事前学習モデルにはバックドアが含まれている可能性があることに注意することが重要です。
攻撃者は、機械学習モデルの入力に小さな摂動(ノイズの形)を追加して、誤って分類させます(敵対的例)。

ポイズニング攻撃と似ていますが、主な違いは、回避攻撃が推論フェーズでモデルの弱点を悪用しようとすることです。
攻撃者の目標は、敵対的例を人間には知覚できないようにすることです。
攻撃者の望む出力に応じて、2つのタイプの攻撃が可能です:
標的型: 攻撃者は自分が選んだ予測を得ることを目的とします。

非標的型: 攻撃者は誤分類を達成しようとします。

最も一般的な攻撃はホワイトボックス攻撃です:
Adversarial Robustness Toolbox(ARTと略記)は、機械学習モデルの堅牢性をテストするためのオープンソースの敵対的機械学習ライブラリです。

Pythonで開発されており、抽出、反転、ポイズニング、回避の攻撃と防御を実装しています。
ARTは最も人気のあるフレームワークをサポートしています:Tensorflow、Keras、PyTorch、MxNet、ScikitLearnなど、その他多数。
画像を入力とするモデルの使用に限定されず、音声、動画、表形式データなど、他の種類のデータもサポートしています。
Cleverhansは、画像モデルを対象に回避攻撃を実行し、深層学習モデルの堅牢性をテストするためのライブラリです。

Pythonで開発されており、Tensorflow、Torch、JAXのフレームワークと統合されています。
L-BFGS、FGSM、JSMA、C&Wなど、数多くの攻撃を実装しています。
AIは悪意のあるタスクを実行し、古典的な攻撃を増強するために使用されます。
| 名前 | タイプ | 対応アルゴリズム | 対応攻撃タイプ | 攻撃/防御 | 対応フレームワーク | 人気 |
|---|
| Cleverhans | 画像 | 深層学習 | 回避 | 攻撃 | Tensorflow, Keras, JAX | |
| Foolbox | 画像 | 深層学習 | 回避 | 攻撃 | Tensorflow, PyTorch, JAX | |
| ART | あらゆるタイプ(画像、表形式データ、音声、...) | 深層学習、SVM、LRなど | あらゆる種類(抽出、推論、ポイズニング、回避) | 両方 | Tensorflow, Keras, Pytorch, Scikit Learn | |
| TextAttack | テキスト | 深層学習 | 回避 | 攻撃 | Keras, HuggingFace | |
| Advertorch | 画像 | 深層学習 | 回避 | 両方 | --- | |
| AdvBox | 画像 | 深層学習 | 回避 | 両方 | PyTorch, Tensorflow, MxNet | |
| DeepRobust | 画像、グラフ | 深層学習 | 回避 | 両方 | PyTorch | |
| Counterfit | 任意 | 任意 | 回避 | 攻撃 | --- | |
| Adversarial Audio Examples | 音声 | DeepSpeech | 回避 | 攻撃 | --- |