モデル抽出攻撃

Model Extraction Attack

モデル抽出攻撃とは

モデル抽出攻撃とは、機械学習モデルのパラメータやアーキテクチャ、決定境界を推定するために体系的にクエリを送信する攻撃手法です。モデル窃取の具体的な実行方法として、精度の高いモデルの複製を目指します。

表:モデル抽出攻撃の要点まとめ
ひとことで言うとAPIを大量に呼び出して、モデルの中身を推測・複製する攻撃。
何が奪われるか開発に投じた費用と時間、競争優位、知的財産。
注意点レート制限と出力の粒度調整が有効な対策になる。

攻撃のアプローチ

モデル抽出攻撃にはいくつかのアプローチがあります。方程式解法では、線形モデルに対して十分な数のクエリを送信し、パラメータを代数的に解きます。蒸留ベースの手法では、ターゲットモデルの出力を教師信号として代理モデルを訓練します。アクティブラーニング手法では、情報量の多いクエリを選択的に生成し、少ないクエリ数で効率的にモデルの挙動を学習します。近年はLLMに対するモデル蒸留も抽出攻撃の一形態として注目されています。

図:モデル抽出攻撃の流れと防御
1大量にAPIを呼ぶ入出力を収集
▶
2対応関係を学習自前モデルを訓練
▶
3近い性能を再現無償で複製される
▶
4対策:レート制限呼び出し回数を抑える
▶
5出力を粗くする確信度を詳細に返さない

検出と防御

モデル抽出攻撃の検出には、異常なクエリパターン(均一な分布、決定境界付近への集中的なクエリなど)の監視が有効です。防御策として、出力の摂動(ランダムノイズの追加)、API応答からの詳細情報の削除、クエリ予算の制限などが用いられます。ただし、これらの防御は正規ユーザーのサービス品質にも影響を与える可能性があるため、バランスの取れた設計が求められます。