ai-model-privacy-audit について
AI モデル監査担当者向けのプライバシー評価スキルです。学習データの漏えいを検証し、結果を AI DPIA のリスク評価に反映します。データ抽出、メンバーシップ推論、モデル反転、属性推論の攻撃と、緩和策の検証を扱います。
主な機能
- 01学習データ抽出テスト
- 02メンバーシップ推論の評価
- 03モデル反転と属性推論のテスト
- 04脅威モデルに基づく攻撃選定
- 05緩和策の有効性検証
- 06プライバシーリスク分析と監査報告
活用シーン
- 01モデル導入前の学習データ漏えい評価
- 02メンバーシップ推論攻撃の成功率測定
- 03差分プライバシーなどの緩和策の確認
- 04監査結果の AI DPIA への反映
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mukul975/ privacy-data-protection-skills --skill ai-model-privacy-auditインストール後、Claude Code で/ai-model-privacy-auditを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/template.mdreferences/standards.mdworkflows.mdscripts/process.py詳細
AI モデルのプライバシー監査
概要
AI モデルのプライバシー監査では、トレーニング済み ML モデルがトレーニングデータの情報を漏えいするかどうかを体系的に評価します。モデルは個々のトレーニングレコードを記憶することがあり、攻撃者が個人データを抽出したり、データセットへの所属を特定したり、入力特徴量を再構築したり、センシティブ属性を推測したりできる可能性があります。このスキルでは、確立された攻撃手法とツール(ML Privacy Meter、ART、Foolbox)を使った包括的なモデルプライバシー監査手法を実装し、デプロイ前および運用中に定期的にプライバシー漏えいを定量化します。監査結果は AI DPIA のリスク評価に直接反映され、緩和策の選定に役立ちます。
プライバシー攻撃の分類
1. トレーニングデータの抽出
目的:モデルのトレーニングデータから、記録をそのまま、またはほぼそのまま抽出します。
| 攻撃ベクトル | 説明 | 対象モデル |
|---|---|---|
| プロンプトベースの抽出 | LLM がトレーニングデータをそのまま出力するようなプロンプトを作成します | 言語モデル、生成モデル |
| カナリア抽出 | 既知のカナリア文字列をトレーニングデータに挿入し、モデルがそれを再現するかテストします | あらゆるモデル(テスト手法) |
| 勾配ベースの抽出 | モデルの勾配を使ってトレーニング入力を再構築します | 勾配にアクセスできるモデル |
| 生成的再構築 | モデルをオラクルとして使い、トレーニングサンプルを反復的に再構築します | GAN、VAE、拡散モデル |
抽出の可能性を高めるリスク要因:
- トレーニングデータのサイズに対してモデルの容量が大きい(過学習)
- トレーニングデータに重複またはほぼ重複したレコードが含まれている
- トレーニング期間が長い(エポック数が多い)
- 正則化が弱い
- 出力の粒度が細かいモデル(ロジット、確率)
テスト手法:
- 固有の識別子を含むカナリアレコードをトレーニングデータに挿入します
- モデルをトレーニングします
- さまざまなプロンプト戦略を使って抽出を試みます
- 抽出成功率(復元されたカナリアの割合)を測定します
- しきい値:許容可能なリスクとするには、抽出率を 0.1% 未満にする必要があります
2. メンバーシップ推論
目的:特定のレコードがモデルのトレーニングセットに含まれていたかどうかを特定します。
| 攻撃の種類 | 手法 | 計算コスト |
|---|---|---|
| シャドウモデル攻撃 | 類似データでシャドウモデルをトレーニングし、モデル出力を使って二値分類器を構築します | 高 — 複数のシャドウモデルのトレーニングが必要です |
| メトリックベースの攻撃 | モデルの信頼度、損失、エントロピーを使って、メンバーと非メンバーを判別します | 低 — サンプルごとにモデルへのクエリが 1 回必要です |
| ラベルのみの攻撃 | 予測ラベル(信頼度スコアなし)を使ってメンバーシップを推論します | 中 — 複数回のクエリが必要です |
| 尤度比攻撃(LiRA) | サンプルごとの損失を参照分布と比較します | 高 — 最も正確ですが、複数のモデルが必要です |
ML Privacy Meter の実装:
- 母集団メトリックベースの攻撃:ターゲットモデルのサンプルに対する損失を、母集団の損失分布と比較します
- 参照メトリックベースの攻撃:参照モデルを使ってサンプルごとのメトリックを計算します
- シャドウモデル攻撃:シャドウモデルをトレーニングし、攻撃モデルを使ってメンバーを分類します
テスト手法:
- データを分割します:トレーニングセット(メンバー)とホールドアウトセット(非メンバー)
- ML Privacy Meter を使ってメンバーシップ推論攻撃を実行します
- 攻撃の成功率を測定します:低い偽陽性率での真陽性率(TPR@FPR=0.1%、1%)
- サンプルごとに ROC 曲線を生成し、集計します
- しきい値:許容可能なプライバシー水準とするには、TPR@1%FPR を 5% 未満にする必要があります
3. モデル反転
目的:モデルの出力から入力特徴を再構成します。
| 攻撃の種類 | 方法 | 対象 |
|---|---|---|
| 信頼度ベースの反転 | 既知のラベルに対するモデルの信頼度を最大化するよう、入力を反復的に最適化します | 分類モデル |
| 勾配ベースの反転 | モデルの勾配を使用して、出力から入力を再構成します | ホワイトボックスモデル |
| GAN ベースの反転 | モデルの出力を入力空間に反転するよう GAN をトレーニングします | 顔認識、画像分類器 |
テスト方法:
- 対象のクラスまたは個人を選択します
- さまざまな初期化で反転攻撃を実行します
- 再構成の品質を測定します(画像では SSIM、PSNR、埋め込みではコサイン類似度)
- 再識別リスクを評価します:再構成されたデータから特定の個人を識別できますか?
- 閾値:許容可能なリスクとするには、再構成の類似度を 0.3(SSIM)未満にする必要があります
4. 属性推論
目的:モデルの出力に含まれない機密属性を推論します。
| 攻撃の種類 | 説明 |
|---|---|
| 相関関係の悪用 | 相関する特徴を使用して、モデルの振る舞いから機密属性を推論します |
| 部分的知識を用いた攻撃 | 攻撃者が一部の属性を知っており、モデルを使用して残りの機密属性を推論します |
| グループ推論 | トレーニングデータのサブグループに関する統計的特性を特定します |
テスト方法:
- モデルの特徴と相関する可能性のある機密属性(第9条のカテゴリ)を特定します
- モデルの出力から機密属性を予測する攻撃モデルをトレーニングします
- 各機密属性について推論精度を測定します
- ランダムなベースラインと比較します
- 閾値:推論精度がランダムなベースライン + 10% を超えないようにします
監査方法
フェーズ 1:監査範囲の設定(1~3日目)
- 監査範囲を定義します:対象モデル、デプロイのコンテキスト、脅威モデル
- 資産を特定します:トレーニングデータ、モデル成果物、デプロイインフラストラクチャ
- 脅威モデルを定義します:攻撃者は誰で、どのようなアクセス権を持っていますか?
- ブラックボックス:API アクセスのみ(クエリと応答)
- グレーボックス:API アクセスに加えて、モデルアーキテクチャに関する知識
- ホワイトボックス:モデルの重みとアーキテクチャへの完全なアクセス
- 脅威モデルとモデルの種類に基づいて攻撃を選択します
- 成功基準(許容可能な漏えいの閾値)を定義します
- モデル所有者および法務部門から監査の承認を得ます
フェーズ 2:環境のセットアップ(4~7日目)
- 隔離された監査環境をセットアップします(本番データの漏えいなし)
- 監査ツールをインストールします:ML Privacy Meter、ART (Adversarial Robustness Toolbox)、カスタムスクリプト
- 脅威モデルに応じて、モデルへのアクセス(API エンドポイントまたはモデルの重み)を取得します
- メンバー推論用のメンバー/非メンバーデータセットを準備します
- 抽出テスト用のカナリーデータを準備します
- すべての監査クエリを記録するようモニタリングを設定します
フェーズ 3:攻撃の実行(8~18日目)
選択した各攻撃について:
- 攻撃パラメーターを設定します
- 対象モデルに対して攻撃を実行します
- 結果(成功率、信頼区間)を収集します
- 攻撃パラメーターを変えて、最悪のケースの漏えいを確認します
- 攻撃の設定、結果、計算コストを記録します
フェーズ 4:分析と報告(19~25日目)
- すべての攻撃の結果を集計します
- 攻撃の種類ごとにプライバシーリスクスコアを算出します
- リスクの高いデータサブセット(抽出に最も脆弱なレコード)を特定します
- DPIA のリスク登録簿と照合します
- 以下を含む監査レポートを作成します:
- エグゼクティブサマリー
- カテゴリごとの攻撃結果
- GDPR との整合性を含むリスク評価
- 推奨される緩和策
- 提案された緩和策の実施後に残るリスク
フェーズ 5:修正の検証(26~30日目)
- 緩和策(差分プライバシー、出力の摂動など)が適用されている場合
- 主要な攻撃を再実行し、緩和策の有効性を検証します
- 緩和策の適用後に残る漏えいを記録します
- 許容可能な閾値と比較します
- 最終監査証明書を発行するか、修正要件を提示します
プライバシー漏えいのしきい値
| 指標 | 許容範囲 | 高リスク | 許容不可 |
|---|---|---|---|
| メンバーシップ推論 TPR@1%FPR | < 5% | 5-15% | > 15% |
| トレーニングデータの抽出率 | < 0.1% | 0.1-1% | > 1% |
| モデル反転 SSIM | < 0.3 | 0.3-0.6 | > 0.6 |
| ベースラインを上回る属性推論の精度 | < 10% | 10-25% | > 25% |
緩和策
| 緩和策 | 緩和される攻撃 | トレードオフ |
|---|---|---|
| 差分プライバシー(DP-SGD) | すべて — 数学的保証を提供 | モデル精度の低下(イプシロンを調整) |
| トレーニングデータの重複排除 | 抽出、メンバーシップ推論 | 一度限りの前処理コスト |
| 正則化(ドロップアウト、重み減衰) | メンバーシップ推論、過学習に関連する漏えい | モデルの性能に影響する可能性があります |
| 出力の摂動 | モデル反転、属性推論 | 出力の精度が低下します |
| 信頼度スコアの丸め | 指標ベースのメンバーシップ推論 | 出力の精度がわずかに低下します |
| モデル蒸留 | 抽出、メンバーシップ推論 | 追加のトレーニングが必要です |
| レート制限 | すべてのクエリベースの攻撃 | 正当な利用にも影響します |
| 入出力の PII フィルタリング | 生成モデルからの PII 抽出 | モデルの実用性に影響する可能性があります |
ツールとフレームワーク
| ツール | 目的 | ソース |
|---|---|---|
| ML Privacy Meter | メンバーシップ推論の監査 | github.com/privacytrustlab/ml_privacy_meter |
| IBM ART | 敵対的ロバスト性とプライバシーのテスト | github.com/Trusted-AI/adversarial-robustness-toolbox |
| TensorFlow Privacy | 差分プライバシーを適用したトレーニング | github.com/tensorflow/privacy |
| Opacus | PyTorch の差分プライバシー | github.com/pytorch/opacus |
| Google DP Library | 差分プライバシーアルゴリズム | github.com/google/differential-privacy |
| Foolbox | 敵対的攻撃ライブラリ | github.com/bethgelab/foolbox |
法令遵守との関連性
モデルのプライバシー監査は GDPR や AI Act で明示的に義務付けられていませんが、以下を通じて事実上義務付けられています。
- Art. 35 DPIA:AI システムのリスク評価ではプライバシー漏えいリスクを評価する必要があります — 監査は標準的な手法です
- Art. 32 Security:処理のセキュリティを確保するための適切な技術的措置 — プライバシー監査によってこれらの措置を検証します
- AI Act Art. 9:高リスク AI のリスク管理では、プライバシーリスクの特定と緩和が必要です
- AI Act Art. 15:精度、ロバスト性、サイバーセキュリティの要件 — プライバシー攻撃はサイバーセキュリティ上の懸念事項です
- EDPB Guidelines 04/2025:管理者は、AI モデルがトレーニングデータを実質的に匿名化しているか評価する必要があります — 監査によってこの主張を検証します
統合ポイント
- ai-dpia:監査結果は DPIA フェーズ 3 のリスク評価に反映されます
- ai-data-retention:監査によって、トレーニングデータからの削除が有効か検証します
- ai-deployment-checklist:デプロイ前のプライバシー監査はチェックリストの要件です
- ai-federated-learning:連合学習モデルには分散型プライバシー監査が必要です