Federation Learning の情報漏洩

Federated Learning と Federated Learning における情報漏洩の問題を整理する

1 フェデレーションラーニング

フェデレーテッド ラーニングという用語は、McMahan らによって「分散データからのディープ ネットワークの通信効率的な学習」で導入されました。フェデレーテッド ラーニングの基本構造は次のとおりです。n 個のクライアント (モバイル デバイスなど) が連携して、フェデレーテッド サーバー (サービス プロバイダーなど) の調整の下でモデルをトレーニングします。クライアントのトレーニング データは、直接ではなくローカルに保存されます。サーバーに提供されます。

1.1 フェデレーションラーニングフレームワークの構成

フェデレーション サーバーは、トレーニングが収束するまでクライアントの選択、ローカル トレーニング、およびグローバル集約を繰り返すことによって、共同トレーニング プロセスを調整します。

クライアントの選択:
クライアントの総数は m です。トレーニングの各ラウンドでは、n 個のクライアントがトレーニングに参加するために選択されます。このプロセスにより、ユーザーのプライバシーを保護しながら、モデルのトレーニング効率とパフォーマンスを向上させることができます。フェデレーション ラーニングでは、トレーニングに参加するクライアントは通常、複数のグループまたはセットに分割されます。トレーニング用に特定のクライアントのセットを選択することにより、データの分布と多様性をより適切に制御できるため、モデルの汎化能力が向上しますさらに、クライアントごとにコンピューティング機能や帯域幅の制限が異なる場合があるため、クライアントをフィルタリングすることにより、通信オーバーヘッドを効果的に削減し、トレーニングを高速化することもできます。クライアントのフィルタリングを実行するときは、プライバシー保護の問題を十分に考慮する必要があることに注意してください。ユーザーのプライバシー漏洩のリスクを軽減するために、機密情報を含むクライアントを選択したり、クリア テキストを使用してデータを送信したりする操作は避けるようにしてください

ローカル トレーニング:
クライアントはラウンド t が選択されたという通知を受け取り、フェデレーション ラーニング サーバーからグローバル モデルのパラメーター (重み)トレーニング プログラムをダウンロードします。選択された各クライアントは、トレーニング プログラムを実行することにより、ローカル トレーニング データを使用してグローバル モデルをローカルに更新します更新された勾配はgrad G = ∂ l ( X , y , θ ) ∂ θ grad\ G=\frac{\partial l(X,y,\theta)}{\partial \theta} です。
グラッドG _ _ _ =∂θ _l ( X ,)。
このうち、X と y はバッチに分割された学習データと対応するラベルl ( ⋅ ) l(\cdot)を表します。l ( )は損失関数を表します。

トレーナー: 「クライアント コード」または「クライアント モデル」と呼ばれることがよくあります。これはサーバーによってすべての参加者に提供されるコードであり、データの読み込み、モデルの最適化、新しいパラメーターのアップロードなどの手順を含む、フェデレーテッド ラーニング アルゴリズムのローカル更新ロジックを実装します。フェデレーテッド ラーニング フレームワークが異なれば、クライアント コードの実装も異なる場合がありますが、通常、それらはすべて次の基本コンポーネントを備えています。

  • データの読み込み: クライアント コードは、ローカル ストレージからデータを読み込み、モデルのトレーニングに必要な形式 (テンソルやシーケンスなど) に変換できる必要があります。
  • モデル定義: クライアント コードは、ローカル モデルの構造とパラメータを定義する必要があります。パラメータは単なる定義であり、特定の値はありません。
  • オプティマイザーの定義: ローカル モデルを最適化するために、クライアント コードは勾配を計算し、ローカル モデル パラメーターを更新するオプティマイザーも定義します。
  • トレーニング ループ: 最後に、クライアント コードはローカル モデルを複数回繰り返し更新するトレーニング ループを定義する必要があります。トレーニングの各ラウンドが完了した後、クライアント コードは集約のためにローカル モデル パラメーターをサーバーにアップロードする必要もあります。

トレーニング プログラムにはグローバル モデルの重みパラメータは含まれていませんが、特定の値を指定せずに定義されており、そのタスクはローカル モデルのトレーニングを実行し、更新されたパラメータをアップロードすることのみです。通常、グローバル モデル パラメーターはトレーニングの各ラウンドの開始時にクライアントに送信され、ローカルで更新されたパラメーターは集約のためにサーバーにアップロードされます。したがって、クライアントはトレーニング ラウンドごとにトレーニング プログラムをダウンロードする必要はなく、トレーニングの最初のラウンドの開始時にサーバーから 1 回ダウンロードするだけで済みます。クライアントがトレーニング プログラムを正常にダウンロードしてローカル モデルを初期化すると、そのプログラムを複数のトレーニング ラウンドで再利用して、ローカル モデルのトレーニングとパラメーターのアップロード操作を実行できます。このアプローチにより、ネットワーク帯域幅と通信コストを大幅に削減できると同時に、トレーニングの効率とパフォーマンスも向上します。
場合によっては、サーバー上の最新のコードに確実に対応できるように、クライアントはトレーニング プログラムの新しいバージョンを定期的にダウンロードする必要があることに注意してください。たとえば、サーバーでアルゴリズムやモデル アーキテクチャの大幅なアップグレードや変更が行われた場合、またはセキュリティの脆弱性やバグが発見された場合、クライアントはローカル トレーニング プログラムを更新する必要がある場合があります。このとき、クライアントはサーバーにリクエストを送信するか、何らかの自動更新メカニズムを使用することで、トレーニング プログラムの最新バージョンを取得できます。

グローバル集約:
各ラウンドで選択された n 個のクライアントからローカル更新を受信した後、フェデレーテッド ラーニング サーバーはこれらの更新を集約してグローバル モデルを更新し、次の学習ラウンドを有効にします。

1.2 一般的なフェデレーテッド ラーニング モデル

さまざまなフェデレーテッド ラーニング モデルは、主に次の点で異なります。

  • モデル アーキテクチャ: フェデレーテッド ラーニングで使用されるモデルには、ニューラル ネットワーク、デシジョン ツリーなど、あらゆるタイプの機械学習モデルを使用できます。モデルのアーキテクチャが異なると、モデルのトレーニング効果と通信オーバーヘッドに影響を与える可能性があります。
  • 参加者/クライアントの選択: 異なるフェデレーテッド ラーニング モデルでは、ランダムな選択、参加者の貢献度に基づく選択など、異なる参加者選択戦略が採用される場合があります。参加者が選択した戦略は、モデルの収束速度と精度に影響を与えます。
  • グローバル集計方法: 異なるフェデレーテッド ラーニング モデルは、加重平均、FedAvg、FedProx などの異なるグローバル集計方法を使用する場合があります。グローバル集計方法の選択は、モデルの収束速度と精度にも影響します。
  • セキュリティの保証: フェデレーション ラーニングには複数の参加者間でのデータ共有が含まれるため、セキュリティの問題も重要な考慮事項です。フェデレーテッド ラーニング モデルが異なれば、差分プライバシー技術や暗号化技術など、異なるセキュリティ対策が採用される場合があります。
  • データの前処理: フェデレーテッド ラーニングでは、各参加者のローカル データが異なる可能性があるため、データの前処理が必要です。フェデレーテッド ラーニング モデルが異なれば、ローカル更新、グローバル更新など、異なるデータ前処理方法が使用される場合があります。

したがって、実際のアプリケーション シナリオに合わせてプライバシーとセキュリティの防御戦略を開発したい場合は、これらの違いが攻撃に及ぼす影響を考慮する必要があります。

一般的なフェデレーション ラーニング モデルの概要
予約済みスペース

古典的なフェデレーション ラーニング モデルの論文出版ステータス:

FedAvg (Federated Averaging): これは、最も一般的な連合学習モデルの 1 つです。モデル パラメーターをローカルで更新し、ローカル モデル パラメーターをサーバーにアップロードして平均化することで、グローバル モデルをトレーニングします。このアルゴリズムはもともと、2017 年に発表された「分散型データからのディープ ネットワークの通信効率学習」というタイトルの論文で Google Research チームによって提案されました。この論文は機械学習に関する国際会議(ICML)で発表された。

FedProx (Federated Proximal): FedProx モデルは、ペナルティ関数メソッドを使用して、ローカル モデル パラメーターの更新がグローバル モデル パラメーターから離れすぎないようにします。CMUとIBMが2018年に提案した技術。この論文のタイトルは「近似勾配降下法によるフェデレーテッド ラーニング」で、NIPS (神経情報処理システム) カンファレンスで発表されました。

FedOpt (Federated Optimization): このモデルは、グローバル モデル パラメーターを使用してローカル モデルを初期化し、複数のローカル最適化を通じてローカル モデルを改善し、最後に集約のためにローカル モデル パラメーターをサーバーにアップロードします。これは、2019 年に Tencent AI Lab によって公開された論文で提案されました。この論文のタイトルは「FedOpt: A Pragmatic and Flexible Framework for Federated Optimization」で、ICML カンファレンスで公開されました。

FedNova (Federated Novel Aggregation): このモデルは、二次勾配情報を使用して各デバイスのステップ サイズと方向を計算し、ローカル モデルの収束を向上させます。2020年、「FedNova: 新しい集計アルゴリズムによるフェデレーテッド・ラーニング」というタイトルの論文がワシントン大学の研究者によって提案され、ICMLカンファレンスで発表されました。

FedMA (Federated Model-Agnostic Meta-Learning): このモデルは、デバイスが少量のローカル データでトレーニングし、グローバル モデルの重みを迅速に調整して新しいタスクに適応できるようにするメタ学習フレームワークを提供します。2020年にカリフォルニア大学ロサンゼルス校の研究者によって提案されたこの論文は、「Federated Meta-Learning for Recommendation」と題され、AAAI(人工知能推進協会)会議で発表された。

2 Federation Learningに対する情報漏洩攻撃

一部引用:
[1] Xuefei ying、Yanming Zhu、および Jiankun Hu。2021. プライバシーを保護するフェデレーテッド ラーニングの包括的な調査: 分類、レビュー、および将来の方向性。ACM コンピューティング。生き残る。54、6、第 131 条(2022 年 7 月)、36 ページ。https://doi.org/10.1145/3460427

2.1 攻撃

2.1.1 攻撃の背景情報

潜在的な攻撃者

内部アクター:参加するクライアントまたは中央サーバークライアントサーバーアーキテクチャでは、中央サーバーがクライアント参加者との間でローカルトレーニングの更新を送受信することでトレーニングプロセス全体を制御するため、クライアントとサーバーの両方が中間トレーニングの更新値(重みや勾配など)にアクセスできます。 ) そして最終モデル。
外部アクター:モデル消費者または盗聴者モデルの利用者にはプライベート データを検出する 2 つの方法があります。1 つはモデルの重み全体へのアクセスを取得する方法、もう 1 つはプラットフォーム API によって提供されるアクセス クエリ結果を取得する方法で、最終モデルまたはそのクエリ結果を通じてプライバシーを検出できます。データ。盗聴者は、参加者とサーバー間の通信を傍受することにより、中間トレーニング更新 (重みまたは勾配) または最終モデルを盗みます。

悪意のあるクライアント:
他のクライアント データセットのプライベート情報を検出するために、アグリゲーターから中間トレーニング アップデートを取得します。
他のクライアント データセットの特別なプライベート データを検出するために、意図的に設計されたトレーニング アップデートをアグリゲーターに送信します。推論
攻撃を実行します。最終モデルが使用される場合、プライバシーは侵害されます。漏洩される。
——防御: 各ラウンドでクライアントのサブセットを選択するなど、特定のトレーニング プロトコルを設計することで軽減されます。

悪意のあるサーバー: プライバシー漏洩の高いリスクをもたらします (csDLG)
サーバーは中間更新と最終モデルを維持するため、この情報は再構成攻撃に悪用される可能性があります (iDLG);
モデルの更新を区別することにより、特定のクライアントの個人データを検出できます;
トレーニング データ セットのプライバシーを調査するために、トレーニングの各ラウンドで参加クライアントを選択および指定できます。
——防御: クライアントのローカル トレーニング データ セットを再構築するサーバーの能力を制限し、定量化します。

悪意のあるモデル コンシューマ: プライバシー漏洩の高いリスクを引き起こす可能性があります。
最終モデルやクエリ結果に簡単にアクセスできるため、この情報を使用して情報推論攻撃を行うことができます。たとえば、悪意のあるモデル コンシューマは、この情報を使用して Generate を生成することができます。代表的なサンプル、サンプルがモデルのトレーニングに使用されるかどうかの決定、トレーニング データの特徴の取得、またはトレーニング サンプルとラベルの生成。
——ディフェンス: - - - - - - - - - - - - -

盗聴: 機密情報の重大な漏洩を引き起こし、プライバシー漏洩の高いリスクを引き起こす可能性があります。
再構築されたトレーニング サンプル (DLG) など、クライアント参加者とサーバー間で送信される中間トレーニング更新または最終モデルを盗むことによって、個人情報を検出します。
——防御: 暗号化メカニズム (準同型暗号化、秘密共有、またはマルチパーティ秘密計算) を通じて防御できます。

攻撃タイプ

アクティブな攻撃: システム リソースを変更したり、システムの動作に影響を
与えたりすることを目的とした攻撃。特別な勾配をアップロードして分離可能な表現を学習します。
特定のクライアントを制御してトレーニング データを戦略的に調整し、グローバル モデルを特別なモデル内で上昇または下降させます。

受動的攻撃: 情報を改変せずに悪用したり、システムから学習したりすることを目的とした攻撃
受動的ブラックボックス攻撃 : たとえば、サービス プラットフォームでは、攻撃者はクエリ結果のみにアクセスでき、モデルにはアクセスできないと想定されていますパッシブホワイト
ボックス攻撃: 攻撃者が中間トレーニングアップデート、モデルパラメータ、クエリ結果にアクセスできると仮定します。

攻撃者はクエリ結果を使用して機密情報を検出することしかできないため、受動的なブラックボックス攻撃のリスクは通常限定的ですが、受動的なホワイトボックス攻撃ではトレーニング データ セットのより機密性の高い情報が明らかになることがよくあります。

このブログでは主に受動的なホワイトボックス攻撃を研究しているため、能動的な攻撃のリスクについてはここでは詳しく説明しません。

漏れの段階

トレーニング フェーズ: 主に、クライアント上でのローカル勾配の計算、サーバー上でのグローバル モデルの集約、クライアントとアグリゲーター間の中間更新の受け渡し、クライアントへの最終モデルの公開が含まれます。更新情報には主にローカル勾配とローカル モデルが含まれます重み、集約勾配またはモデルの重み、および最終モデル。参加者または盗聴者は、この段階で攻撃を行うことができます。悪意のある攻撃者は、集約されたモデルの更新を収集し、プライバシー攻撃を実行して、他の参加者のデータ プライバシーを推測することができます。盗聴者は、ローカルの更新を選択したクライアントに転送する可能性があります (ローカル勾配やモデルの重みなど)。モデル集約のためにサーバーに送信するとき、またはサーバーが集約された更新をクライアントに送り返すときに、アクターとアグリゲーターの間で渡される更新情報を盗聴します。

推論段階:消費者にクエリサービスを提供する方法が主であり、プライバシー漏洩のリスクは主に参加者にリリースされるかサービスプラットフォームとして提供される最終モデルに関係する

漏れが発生した場所

フェデレーテッド ラーニングでは、重み更新、勾配更新、最終モデルという 3 種類の重要なデータを参加者とアグリゲーターの間で送信する必要があります。

勾配/重み更新に基づく FL フレームワークでは、クライアントはサーバーから集約モデルをダウンロードし、ローカル トレーニング データに基づいてローカル トレーニングを実行し、その後勾配/重みをサーバーに送信し、サーバーが集約を実行してサイクルを繰り返します。トレーニングが終わるまで。ディープ ネットワーク モデルでは、通常、勾配はネットワーク全体でトレーニング データセットからの損失を逆伝播することによって計算されます。

勾配はローカル トレーニング データのラベルとサンプルの特性に関連しています。つまり、勾配にはラベル情報と元の情報の一部が含まれるため、重大なプライバシー漏洩のリスクにつながる可能性がありますDLG と iDLG によって提案された勾配更新に基づくプライバシー攻撃は、トレーニング サンプルとラベルの抽出に使用され、成功しています。DLG は、攻撃と真の勾配の間の損失を最小限に抑えることで、プライベート トレーニング サンプルとラベルを漏洩します。

プライバシー攻撃の目的

プライバシー攻撃は、多くの場合、トレーニング データ セットに関する機密情報を推測することを目的としています。

クラス表現に関する推論は、トレーニング データ セットの実際のデータ インスタンスではないが、トレーニング データ セットに関する機密情報を調査するために使用できる代表的なサンプルを生成することを目的としています。メンバーシップ推論は、データ サンプルがモデルのトレーニングに使用されたかどうかを判断することを目的としています

トレーニング データの属性 推論は、トレーニング データ セットに関する属性情報を推論することを目的とし、
のトレーニング データ サンプルと対応するラベル (DLG、iDLG) を再構築することを目的としています。

私が主に取り組んでいるのは、トレーニング サンプルとラベルの推論です。

DLG は、複数ラウンドのトレーニングにわたってトレーニング入力とラベルを正常に取得できる最適化アルゴリズムです。まず、仮想サンプルとラベルからなる仮想データ セットをランダムに生成し、その仮想データ セットに基づいて順計算および逆計算により仮想勾配を取得し、仮想勾配とラベル間の損失を最小化することで繰り返し最適化を行うアルゴリズムです。実勾配 仮想サンプルとラベル、そして最後に攻撃者はトレーニング サンプルとラベルを取得します。このタイプの攻撃には、トレーニング セットに関する事前知識は必要ありません。

2.1.2 集中的な攻撃手法: 勾配深度漏洩攻撃と勾配反転攻撃

論文「Protect Privacy from Gradient Leakage Attack in Federated Learning 」(以下、Grad Defense)で使用されている攻撃アルゴリズムは、深度勾配攻撃(DGA)勾配反転攻撃(GIA)です。

  • ディープグラディエント攻撃(DGA) 参考文献:L. Zhu、Z. Liu、および S. Han、「勾配からのディープ リーク」、Advances in Neural Information Processing Systems (NeurIPS)、vol. 32、14 774–14 784、2019 年。
  • 勾配反転攻撃 (GIA) 参考文献: J. Geiping、H. Bauermeister、H. Dröge、および M. Moeller、「Inverting gradients - How easy is it to Break Privacy in federated learning?」神経情報処理システム (NeurIPS) の進歩、pp. 16 937–16 947、2020

論文「Soteria: Provable Defense Against Privacy Leakage in Federated Learning from Representation Perspective 」(以下、Soteria)で使用されている攻撃アルゴリズムは、 DLG攻撃Gradient類似性(GS)攻撃です。

  • DLG 攻撃 参考文献:Ligeng Zhu、Zhijian Liu、Song Han。勾配からの深い漏れ。神経情報処理システムの進歩、2019
  • 勾配類似性 (GS) 攻撃 参考文献:Jonas Geiping、Hartmut Bauermeister、Hannah Droge、Michael Moeller。勾配の反転 – フェデレーテッド ラーニングでプライバシーを破るのはどのくらい簡単ですか? 神経情報処理システムの進歩、2020

論文「More than Enough is Too Much: Adaptive Defenses Against Gradient Leakage in Production Federated Learning 」(以下、OUTPOST)で使用されている攻撃アルゴリズムは、勾配漏洩攻撃DLGおよびcsDLGを適用すると、更新からの増分を一致させるメカニズムです。使用されている。

  • DLG参考文献:L. Zhu、Z. Liu、および S. Han、「Deep Leakage from Gradients」、Advances in Neural Information Processing Systems (NeurIPS)、2019 年。
  • csDLG 参考文献:J. Geiping、H. Bauermeister、H. Dröge、M. Moeller、「Inverting Gradients — How Easy Is It Break Privacy in Federated Learning?」神経情報処理システム (NeurIPS) の進歩、vol. 33、16 937–16 947、2020年。

参考文献から、DGA = DLG、GIA = GS = csDLG であることがわかります。これは、これら 3 つの論文が同じ 2 つの攻撃戦略を使用していることを意味しており、以下ではこれらを総称して DLG および csDLG と呼びます

DLG 勾配深さのリーク

分散機械学習とフェデレーション学習で一般的に受け入れられているアプローチは、データ勾配 を共有することです。複数パーティのデータは、共有勾配情報を通じて共同でモデル化されます。つまり、元のデータがデータベースから離れることなくモデリングが実行されます。
しかし、元データの代わりに勾配を共有したとしても、プライバシーとセキュリティは達成できません.勾配はラベルとサンプルの特性に関連しており、勾配にはラベル情報と元の情報の一部が含まれていることを意味します. DLG 攻撃はニューラル ネットワークの勾配を通じて、元のデータとラベルを反転するための情報。

DLG は、勾配ベースの特徴再構成攻撃です。攻撃者はラウンド t で他の参加者 k から勾配更新▽ W t , k \triangledown W_{t,k} を受け取りますWt k、目的は共有情報( x_{t,k}, y_{t,k}) から参加者 k の訓練セット (xt, k, yt, k) を盗むことです。( ×t kyt k

このアルゴリズムは、最初に実際の画像と同じ解像度を持つ偽の画像/偽のサンプルと確率表現を持つ偽のラベルを初期化し、次にこれらの偽のサンプルと偽のラベルを既存のモデルに入力して、偽のモデルの勾配を取得します。最適化の目標は、真と偽の勾配の間の距離を最小限に抑え、真と偽の勾配の間の距離を使用して偽サンプルと偽ラベルを最適化し、偽サンプルと偽ラベルが実際のサンプル ラベルと一致するようにすることです。ほとんどのフェデレーテッド ラーニング アプリケーション(私の理解では上記のトレーニング プログラムです) では、モデル アーキテクチャ F() と重み Wt がデフォルトで共有されることに注意してください。

偽の画像を生成するために実際の画像の解像度を知るにはどうすればよいですか? 偽ラベルが具体的にどのカテゴリに分類されるかをどのようにして知ることができますか? データセットを理解した後でのみ、上記の質問を完了できますか?

以下のフローチャートを参照してください
ここに画像の説明を挿入します

フローチャートでは、作成者は更新する必要がある変数を太枠で囲みます。通常の参加者は、プライベートトレーニングセットを使用して▽ W \triangledown Wを計算します。Wモデルパラメータを更新しますW \mathbf{W}W、つまり、損失関数を最小化するためにパラメータ W を更新し、悪意のある攻撃者は、ことによって、真の勾配と偽の勾配の間の距離を最小化します

攻撃者の目標関数は ) , y ' ) ∂ W − ∇ W ∥ 2 x'^*, y'^* = \argmin_{x',y'} \|\nabla W' - \nabla W \| ^2 = \argmin_{x ' ,y'} \| \frac{\partial l(F(\mathbf{x'}, W), y')}{\partial W} - \nabla W \| ^2バツ _y_=バツ、、引数∥∇W _∇W∥ _ _2=バツ、、引数∂W _l ( F ( x「、W ) y _∇W∥ _ _2

以下の疑似コードを参照してください
ここに画像の説明を挿入します

論文の実験: オブジェクトを含む画像が与えられた場合、画像分類の目的は、アイテムのカテゴリを決定することです。DLG 攻撃の威力は、まず最新の CNN アーキテクチャ ResNet [18] と、MNIST [15]、CIFAR-100 [16]、SVHN [17]、LFW [9] の画像で評価されます。ここで 2 つの変更が行われたことに注意してください: (1) モデル アーキテクチャでは、すべての ReLU 演算子が Sigmoid に置き換えられ、アルゴリズムではモデルが 2 回微分可能である必要があるため、CONV のステップ サイズが削除されました (2) 画像ラベルの場合、離散カテゴリ値を直接最適化する代わりに、形状 N × C のベクトルをランダムに初期化します。N はバッチ サイズ、C はクラス数です。その後、出力を最適化と DLG 攻撃用のカテゴリ ラベルとしてソフトマックスします。

バッチサイズ N とカテゴリ数 C を知るにはどうすればよいでしょうか?

方法: 実際のデータと同じサイズの偽入力サンプルと偽ラベルをランダムに生成し、これらの偽サンプルと偽ラベルを既存のモデルに入力して、偽モデルの勾配を取得します。目標は、元のモデルと同じ勾配をもつ偽の勾配を生成し、偽のサンプルと偽のラベルが実際のサンプルのラベルと一致するようにすることです。

この実際のデータのサイズを知るにはどうすればよいでしょうか? 論文では事前知識として攻撃者に提供されていますが、実際の攻撃では得られるのでしょうか?ここで検討するサイズの問題
には、画像の縦横のピクセル数やバッチサイズなどの個々のデータのサイズが含まれます。この論文では、これらはすべて事前知識です

csDLG 勾配反転攻撃

攻撃者: 悪意のあるサーバー
- サーバーは中間更新と最終モデルを保持しているため、この情報を使用して再構築攻撃を実行できます
攻撃の種類: 受動的なホワイトボックス攻撃
- 攻撃者が中間トレーニング更新にアクセスできると想定し、モデル パラメーターが
漏洩します: トレーニング フェーズ リーク
が発生する場所: 重み更新/勾配更新
- 主に、クライアント上でのローカル勾配の計算、サーバー上でのグローバル モデルの集約、クライアントとアグリゲータ間での中間更新の受け渡し、および最終モデルのクライアントへの公開が含まれます。更新情報には主にローカル勾配、ローカル モデルの重み、集約された勾配またはモデルの重みが含まれます
プライバシー攻撃の目的: トレーニング サンプルとラベルの推論
- 元のトレーニング データ サンプルと使用されたラベルを再構築することを目的としています

この論文では、パラメーター勾配には入力に関する重要なプライバシー情報が含まれており、実際のアーキテクチャーで複数画像の連合平均学習を実行しても、すべてのユーザーのデータプライバシーを保証できないことにも言及しました。100 枚の画像の各バッチでは、回復できる画像がまだいくつかあります

ここでいう復元とは、完全な復元ではなく、少数の画像を復元することです

まず、Federated Gradient Descent アルゴリズム (Federated SGD) を観察します。
θ k + 1 = θ k − τ ∑ i = 1 N ∇ θ L θ k ( xi , yi ) \theta^{k+1} = \theta^k - \ tau \sum_{i=1}^{N} \nabla_{\theta} \mathcal{L}_{\theta^k}(x_i, y_i)k + 1=kti = 1NL( ×私はy私は)
各ユーザーは勾配降下法の一部をローカルで計算し、更新されたパラメーターをサーバーに送り返します。最後に、(トレーニング データの下のラベル y) に関する情報は、いくつかのローカル サンプルの勾配情報コレクションを通じてぼかされます。これはマルチイメージ設定と呼ばれる

以前の攻撃モデル DLG を否定し、提示された仮定は強力でデータ再構築に役立つが、現実的ではないと指摘しました。使用される損失関数は、ユークリッド マッチング項の最適化された argmin ⁡ x ∥ ∇ です。 θ L θ ( x , y ) − ∇ θ L θ ( x ∗ , y ) ∥ 2 \演算子名*{argmin}_{x} \|\nabla_{\theta} \mathcal{L}_{\theta}( x, y) - \ nabla_{\theta} \mathcal{L}_{\theta}(x^{*}, y) \|^2バツアルグミンL( x ,y )L( ×y ) 2
送信された勾配情報から元の入力画像 x を復元するには、この関数を最小化します。

この論文では、勾配パラメータをノルムのサイズと方向に分解することを提案しています (勾配とは何かについては私のブログを参照してください)
サイズ: 現在のモデルに対する測定データ ポイントの局所的な最適性を表します
方向: 2 つのデータ間の角度の定量化あるデータ ポイントが別のデータ ポイントに向かって移動するときの予測の変化

無限小 (無限に構成的、無限小) argmin ⁡ x ∈ [ 0 , 1 ] n 1 − ⟨ ∇ θ L があると仮定します。 θ ( x , y ) , ∇ θ L θ ( x ∗ , y ) ⟩
∇ θ L θ ( x , y ) ∥ ∥ ∇ θ L θ ( x ∗ , y ) ∥ + α TV ( x ) \operatorname*{argmin}_{x \in [0,1]^n } 1 - \ frac{\langle \extract_{\theta}\mathcal{L}_{\theta}(x,y),\extract_{\theta}\mathcal{L}_{\theta}(x^{ *}, y ) \range}{\|\nabla_{\theta} \mathcal{L}_{\theta}(x, y) \| \|\nabla_{\theta} \mathcal{L}_{\theta}(x^{*}, y)\|} + \alpha TV(x)x [ 0 , 1 ]nアルグミン1L( x ,y ) ∥∥ L( ×y ) L( x ,y ) L( ×) +α TV ( x )ここで、 TV(x) は
再構成された画像のノイズを低減するための TV 正則化パラメータを表します。

概要: 違いと関連性

どちらの攻撃も最適化問題を解決しようとします。

あるステップ t ∂ w で参加クライアント k から受け取ったターゲット勾配 ∇ ∗ = ∂ L grad ( F w ( x ∗ ) , y ∗ ) によって、 \nabla^{*} = \frac{\partial \mathcal{L }_ {grad}(F_w(x^{*}), y^{*})}{\部分 w}=∂w _∂L _グラム_ _ _( F( × )y )、攻撃者はラベル(xtk, ytk) (x^k_t, y^k_t)を使用して入力を復元できます。( ×tyt) (例: このトレーニング ステップ中のタグ内のピクセル画像または文章)

攻撃者
1. ターゲット データと同じサイズの入力とラベルをランダムに生成します(x 0 ' , y 0 ' ) (x'_0, y'_0)( ×0y0) (初期ダミーデータとラベル)
2. クライアント参加者間で共有されるモデルにダミーデータとラベルを入力することによりF w F_wF、仮想勾配を生成します∇ 0 ' = ∂ L grad ( F w ( x 0 ' ) , y 0 ' ) ∂ w \nabla'_0 = \frac{\partial \mathcal{L}_{grad}(F_w(x' _0)、y'_0)}{\部分的にw}0=∂w _∂L _グラム_ _ _( F( ×0) y0)
3. 仮想データの計算と更新x ′ ∗ , y ′ ∗ = argmin ⁡ x ∗ , y ∗ D ( ∇ ′ , ∇ ∗ ) x'^*, y'^* = \operatorname*{argmin}_{x^ *, y^*} \mathbb{D}(\nabla', \nabla^{*})バツ _y_=アルグミンバツ ,yD ( 「、 )

このうち、距離D ( ∇ ′ , ∇ ∗ ) \mathbb{D}(\nabla', \nabla^{*})D ( 「、 )は仮想データを通じて計算される微分可能な関数であり、DLG∥ ∇ ′ − ∇ ∗ ∥ 2 \| \nabla' - \nabla^* \|^22、または csDLG − ⟨ ∇ ′ , ∇ ∗ 〉 ∥ ∇ ′ ∥ ∥ ∇ ∗ ∥ 1 - \frac{\langle \nabla', \nabla^* \rangle}{\| で提案されているコサイン距離 1 にすることもできます\ナブラ' \| \| \ナブラ^* \|}1∥∥ __

2.2 防御

プライバシー保護機械学習 (PPML​​) は、機械学習でプライバシー保護テクノロジを使用してデータ プライバシーを保護することを目的としています。プライバシー保護フェデレーテッド ラーニング (PPFL) は、PPML の一部と見なすことができます。特殊なケースです。一般的な PPML 方式には、準同型暗号化 (HE) に基づく PPML、安全なマルチパーティ コンピューテーション (SMC) に基づく PPML、および差分プライバシー (DP) に基づく PPML の 3 つがあります。

コンピューター セキュリティの分野では、プライバシーは次のように定義されます。「操作している、または影響を与えている個人に関する情報が収集および保存され、その情報が誰によって、または誰に開示されるかを保証すること」。プライバシー保護メカニズムは、元の情報が他の個人やグループに開示されないようにしながら、データの有用性を達成することを目的としています。一般的なプライバシー保護メカニズムには、暗号化技術、摂動技術、匿名化技術の 3 種類があります。準同型暗号化と安全なマルチパーティ計算は暗号化技術であり、差分プライバシーは摂動技術です。

PPFL は、FL とプライバシー保護メカニズムを巧みに組み合わせたものです。主な課題は、プライバシー保護メカニズムを FL フレームワークに適用する際に、データ プライバシーとデータ ユーティリティの間のトレードオフのバランスをどのように取るかです。

上記からの参考文献
[1] Xuefei ying、Yanming Zhu、および Jiankun Hu。2021. プライバシーを保護するフェデレーテッド ラーニングの包括的な調査: 分類、レビュー、および将来の方向性。ACM コンピューティング。生き残る。54、6、第 131 条(2022 年 7 月)、36 ページ。https://doi.org/10.1145/3460427

既存のプライバシー保護機械学習防御メカニズムの
一部は、差分プライバシー (DP)、マルチパーティ コンピューテーション (MPC)、データ圧縮、および準同型暗号化のタイプに分類できます。


Shuang Song 他著「Differential Privacy (DP) Secure Federated Transfer Learning」 (2020) - セキュリティとプライバシー (SP) ネットワークおよび情報セキュリティ クラス A 会議に関する IEEE シンポジウム議事録に掲載

「DP-FedAvg: 差分プライバシーを使用した堅牢で通信効率の高いフェデレーテッド ラーニング」Tian Li et al. (2020) - コンピューターと通信セキュリティ (CCS) に関する ACM SIGSAC 会議議事録に掲載 ネットワークと情報セキュリティ カテゴリ Aミーティング

マルチパーティコンピューティング (MPC)

P. Mohassel および Y. Zhang、「Secureml: スケーラブルなプライバシー保護機械学習のためのシステム」、セキュリティとプライバシーに関する IEEE シンポジウム (SP) 論文集、2017 年、19 ~ 38 ページ

K. Bonawitz、V. Ivanov、B. Kreuter、A. Marcedone、HB McMahan、
S. Patel、D. Ramage、A. Segal、K. Seth、「プライバシーを保護する機械学習のための実用的な安全なアグリゲーション」(議事録) ACM SIGSAC Conference on Computer and Communications Security (CCS)、2017 年、1175 ~ 1191 ページ。

準同型暗号化 (HE)
C. Zhang、S. Li、J. Xia、W. Wang、F. Yan、および Y. Liu、「Batchcrypt: クロスサイロ フェデレーテッド ラーニングのための効率的な準同型暗号化」、USENIX 年次テクニカル論文集カンファレンス (ATC)、2020 年、493 ~ 506 ページ。コンピュータ アーキテクチャ/並列分散コンピューティング/ストレージ システム クラス A カンファレンス

Y. Aono、T. Hayaya、L. Wang、S. Moeriai 他、「加法準同型暗号化によるプライバシー保護ディープラーニング」、IEEE Transactions on Information Forensics and Security (TIFS)、vol. 13、no. 5、 pp. 1333–1345、2017. ネットワークと情報セキュリティ カテゴリ A ジャーナル

上記は勾配漏洩攻撃に対する具体的な防御策ではなく、一般的な防御策です。これらのメカニズムにより、許容できない計算オーバーヘッドが発生するか、精度が大幅に低下します。

標的防御 (TD)
が最近提案されました (リー氏の参考文献の 1 つである GD 論文の主要な比較アルゴリズム)
J. Sun、A. Li、B. Wang、H. Yang、H. Li、および Y. Chen、 「表現の観点からフェデレーテッド ラーニングにおけるプライバシー漏洩に対する証明可能な防御」、コンピュータ ビジョンとパターン認識 (CVPR) に関する IEEE/CVF 会議議事録、2021 年、9311 ~ 9319 ページ、人工知能クラス A 会議

2.2.1 ソテリア

Soteria は、特に勾配漏洩攻撃をターゲットにするために提案されています。再構成されたデータの品質を低下させるため、プライバシー漏洩は主に完全接続 (FC) 層に埋め込まれたデータ表現から発生するという発見に基づいて、共有勾配を使用して FC 層のデータ表現を混乱させる洗練された設計が行われました。が提案されている。

2.2.2 グラッドディフェンス

Grad Defense は、摂動された層を沈黙させることで残りの勾配から元のデータを復元できることを示しており、勾配を共有するすべての層の摂動の感度を測定することにより、より強力な防御を提案しています。

2.2.3 前哨基地

OUTPOST は、上記の防御手法における勾配摂動手法のバリエーションです。

この論文は、先行研究で考慮された情報漏洩の脅威を再評価し、現実とのいくつかの相違点を提案します: 1. 実際の
運用では、共有モデルの更新は共有勾配と等しくありません;
2. 直接共有が仮定されている場合でも、勾配がなければ、たとえ1 つまたは複数のイメージが再構築されます (これは Grad Defense によって提案されており、100 個のイメージでいくつかのイメージを再構築できる可能性がありますが、すべてではありません)。実際の運用では、クライアント上で多くのローカル計算が実行され、多くの作業が行われます。 .これらの画像が、コミュニケーションがほとんどない人々 (したがって傍受できる情報がほとんどない) によって実際に認識できるか;
3.モデルを明示的に初期化します (重みの広範な分散)、トレーニングされていないニューラル ネットワークを使用してモデルが作成され、共有勾配は次のようになります。より脆弱であり、攻撃者がイメージの再構築を実行するのが簡単です

広い分布モデルの重みの明示的な初期化とは何ですか?

前述の 2 つの防御手段、Soteria と Grad Defense は、勾配反転攻撃(DLG、csDLG、iDLG などを含む) に対して設計されていますが、防御を適用する前に DLG 攻撃データを再構築する実現可能性は、特に FL では証明されていません。 FedAvgを使用した本番環境。

この記事では、攻撃の強度を実際の攻撃強度に近づける「勾配リーク攻撃」と呼びますが、この攻撃は上記の勾配反転攻撃に比べて非常に弱いため、防御機構を設計する際に軽量化が可能です。

防御メカニズム OUTPOST の
インスピレーション: より狭い分布重みとよりローカルな SGD 更新ステップを持つモデルは、潜在的な攻撃を効果的に弱めます
設計: さまざまなローカル更新ステップにおけるモデルの重みの分散度および情報内容に基づいた勾配の偏った摂動 摂動する
かどうか:確率しきい値を使用して、現在のステップで摂動するかどうかを決定します。しきい値は、ローカル更新ステップと時間とともに減衰します。摂動方法: 各層のモデルの重みの分散統計を通じて、現在のローカル モデルの漏洩リスクを評価します
。リスクによってフィッシャー範囲が決定され、フィッシャー情報行列に従って現在のステップの各勾配層にガウス ノイズが追加されます。

この論文では、既存の勾配反転攻撃は本番 FL では効果的に機能せず、暗黙の仮定の一部が無効であると提案しています。したがって、この論文では、本番 FL における勾配漏洩攻撃を再評価します。

現在の調査の前提と実稼働 FL での実際の設定の間のギャップを次の表に示します。
ここに画像の説明を挿入します

この論文の実験では、更新による近似勾配ではなく、更新による増分の一致のみを考慮します。また、実際の運用環境では、FL 自体が複数のローカル反復やより複雑な勾配降下オプティマイザーなどの勾配リーク攻撃に抵抗する機能を備えています。

おすすめ

転載: blog.csdn.net/x_fengmo/article/details/131268500