Ultralytics YOLO27: ウェイトリストに登録する
YOLOのライセンス
Ultralytics用語集に戻る

Membership Inference Attacks

メンバーシップ推論攻撃は、過学習によって生じる損失の差を利用し、特定のレコードがモデルの学習データに含まれていたかどうかを判定します。

メンバーシップ推論攻撃は、特定のデータレコードが機械学習モデルの学習データに含まれていたかどうかを判定しようとする攻撃です。攻撃者は、患者のスキャン画像や個人の写真などのレコードをすでに所持しており、モデルに問い合わせて「含まれる」か「含まれない」かを判定します。学習データに含まれていること自体が機微情報となる場合があります。そのため、これはデータプライバシーに関わる主要なリスクです。たとえば、ある疾患の患者だけで学習したモデルの場合、その人のスキャン画像が学習データに含まれていたと示すことは、診断結果を明らかにすることになります。Reza Shokri氏、Marco Stronati氏、Congzheng Song氏、Vitaly Shmatikov氏は2017年に機械学習モデルに対するメンバーシップ推論攻撃を発表し、GoogleとAmazonの商用ML-as-a-Serviceプラットフォームで実証しました。

モデルからメンバーシップ情報が漏れる理由#

モデルは、学習に使ったデータとそれ以外のデータで異なる挙動を示します。通常、学習例には未知の例より低い損失と高い確信度を割り当て、その差は過学習によって拡大します。まれな例、重複画像、外れ値を記憶する大規模モデルは、最も情報を漏らしやすくなります。生成AIモデルも、大規模言語モデル(LLM)を含め、学習画像やテキストをほぼそのまま再現することで、メンバーシップ情報を漏らす可能性があります。

最も単純な攻撃では、損失にしきい値を設定します。モデルがあるレコードに対して異常に低い損失を出した場合、「メンバー」と推測します。以下のコード例では、ランダムなラベルを付けた100件のランダムなレコードで、小規模なニューラルネットワーク分類器をPyTorchで学習します。ランダムなラベルは記憶する以外に学習できません。その後、学習データのメンバーと、モデルが見たことのない100件のレコードを混ぜたデータに攻撃を仕掛けます。

import torch
import torch.nn.functional as F

torch.manual_seed(0)
x, y = torch.randn(200, 20), torch.randint(0, 2, (200,))
is_member = torch.arange(200) < 100  # the first 100 records form the training set

# Train a small classifier on the members only, long enough to memorize them
model = torch.nn.Sequential(torch.nn.Linear(20, 256), torch.nn.ReLU(), torch.nn.Linear(256, 2))
optimizer = torch.optim.Adam(model.parameters(), lr=0.01)
for _ in range(300):
    optimizer.zero_grad()
    F.cross_entropy(model(x[is_member]), y[is_member]).backward()
    optimizer.step()

# Loss-threshold attack: guess "member" for every record with below-median loss
with torch.no_grad():
    losses = F.cross_entropy(model(x), y, reduction="none")
guess = losses < losses.median()
print(f"attack accuracy: {(guess == is_member).float().mean():.2f}")

この攻撃はレコードの85%を正しく分類します。ランダムに推測した場合の正解率は50%です。メンバーの損失はほぼゼロですが、モデルが偶然より高い確信度でランダムなラベルを予測した非メンバー15件は、中央値のしきい値を下回ります。その結果、メンバー16件がしきい値を上回ります。汎化性能が高いモデルほど損失の差が小さくなり、通常は攻撃を完全に防げなくても、攻撃精度は低下します。

より強力な攻撃とその評価方法#

  • シャドウモデル: 2017年に発表された最初の攻撃では、メンバーシップが既知の類似データで複数のモデルを学習し、その出力を使って、メンバーシップの特徴を見分ける分類器を学習します。
  • 較正済み攻撃: Nicholas Carlini氏らが2022年に発表した尤度比攻撃(LiRA)は、レコードの損失を、そのレコードあり・なしで学習させた参照モデルの損失と比較します。これにより、単一の全体しきい値では見逃す、記憶された外れ値を検出できます。
  • ラベルのみを返す攻撃: 予測ラベルだけを返すAPIからも情報が漏れることがあります。メンバーの予測を反転させるには、通常、敵対的攻撃が探索するような、より大きな入力の摂動が必要です。

全体的な精度では最も危険にさらされる少数の個人が見えなくなるため、プライバシー監査では、偽陽性率が0.1%など非常に低い場合の真陽性率を報告します。オープンソースのプライバシーツールキットを使うと、学習済みモデルに対して攻撃を実行し、学習チェックポイントごとの脆弱性をグラフ化するメンバーシップ推論レポートを生成できます。

メンバーシップ推論は、トレーニングデータ漏洩の最も限定的な形態です。モデル反転はクラスや人物の代表的な特徴を再構築し、属性推論は攻撃者が一部を把握しているレコードの欠落した機微なフィールドを補完します。また、トレーニングデータ抽出は、記憶されたテキストなどの内容を逐語的に復元します。データポイズニングは逆方向に作用し、トレーニングセットを読み取るのではなく汚染します。トレーニング後にレコードの影響を取り除こうとする機械アンラーニング手法では、メンバーシップ推論を使って、そのレコードの痕跡が残っているかどうかを確認します。メンバーシップは漏洩の最小単位であるため、メンバーシップ推論は、トレーニングプロセスが個々のレコードをどの程度露出させるかを測る標準的な指標となっています。

防御策#

差分プライバシーは、形式的な保証を持つ防御手法です。PyTorchでOpacusから利用できる確率的勾配降下法の変種、DP-SGDを使った学習では、各例の勾配をクリッピングして較正済みのノイズを加えます。これにより、個々のレコードがモデルをどれほど変化させるかを数学的に制限し、精度をある程度犠牲にする代わりに、あらゆるメンバーシップ攻撃の優位性を抑えられます。実用的な対策を追加すると、リスクをさらに低減できます。正則化、データ拡張、早期停止は過学習を抑えます。重複レコードを削除すれば、同じ画像や文書を何度も記憶するのを防げます。また、公開APIから返す情報をラベルまたは丸めた確信度スコアのみに制限できます。

ビジョンモデルの学習曲線は、情報漏えいのリスクを手早く確認できる指標です。Ultralytics YOLO26検出器を医療スキャンや社員証などの機微な画像でファインチューニングする場合、トレーニングモードでは各エポックの学習損失と検証損失を記録します。patience引数のデフォルトは100エポックです。この回数だけ検証フィットネスが改善しなければ学習を停止します。これにより、学習損失は下がり続ける一方で検証結果が停滞する後半のエポックを打ち切れます。損失しきい値攻撃が利用するのは、この差です。

ソリューションを見る

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、自然保護、地理空間分析に活用できます。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOを活用して航空宇宙分野でコンピュータビジョンを導入し、航空機検査、滑走路上のFOD検出、空港の地上業務、複合材の欠陥検出に活用できます。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

AIの未来を一緒に築きましょう!

機械学習の未来に向けた歩みを始めましょう