[Federal Learning + Blockchain] 委員会の合意を得たブロックチェーンベースの分散型フェデレーテッド ラーニング フレームワーク


論文アドレス: https://ieeexplore.ieee.org/abstract/document/9293091


1. はじめに

この記事では、現段階のさまざまな課題に対処するために、ブロックチェーンに基づく分散型かつ自律的な FL アーキテクチャを提案しています (アーキテクチャは図 1 に示されています)。FLノード管理に関しては、コンソーシアムチェーンに基づくアーキテクチャによりノードの権限制御が確実に行われます。ストレージに関して、この記事ではモデルと、ノードが最新のモデルを迅速に取得できる更新されたオンチェーン ストレージ モードを設計します。検証された更新はすべてブロックチェーンに記録され、改ざん防止が行われます。ブロックチェーン上の膨大なストレージ消費を考慮すると、一部のノードはストレージ領域を解放するために履歴ブロックを放棄することができます。ブロックコンセンサスメカニズムに関しては、検証消費量をわずかに増加させるだけで、悪意のある攻撃に対してより高い安定性を実現する、新しい委員会コンセンサスメカニズムが提案されています。FL の各ラウンドでは、更新は少数のノード (委員会など) によって検証され、パッケージ化されます。委員会の合意メカニズムにより、最も誠実なノードが相互に補完し、グローバル モデルを継続的に改善することができます。少数の誤ったまたは悪意のあるノード更新は、グローバル モデルの破損を避けるために無視されます。同時に、BFLC (委員会のコンセンサスを備えたブロックチェーンベースの分散型フェデレーテッド ラーニング フレームワーク) トレーニング コミュニティは柔軟性があり、ノードはトレーニング プロセスを中断することなくいつでも参加または脱退できます。効果的なインセンティブ メカニズムと組み合わせることで、貢献したノードは実際の報酬を得ることができ、トレーニング コミュニティ全体の好循環の発展を促進します。

この記事の貢献は次のように要約されます: (1) ブロックチェーンベースの連合学習フレームワーク BFLC が提案され、モデルの保存モード、トレーニング プロセス、および新しい委員会の合意メカニズムが詳細に定義されます。(2) コミュニティ ノードの管理、悪意のあるノード攻撃の分析、ストレージの最適化など、BFLC のスケーラビリティについて技術的に説明します。(3) BFLC の有効性は、現実世界の FL データセットの実験を通じて実証され、悪意のある攻撃をシミュレートすることによって BFLC の安全性も検証されます。


2. 提案された枠組み

ブロックチェーンの分散型の性質は、従来のフェデレーテッド ラーニングの中央サーバーの位置を置き換えることができ、その機能はスマート コントラクトを通じて実現され、ブロックチェーン上のトランザクションによって駆動されます。BFLC の参加ノードは、ブロックチェーンを通じて FL を実行し、グローバル モデルを維持し、ローカルで更新します。FL の通信コストを考慮して、新しい認可コンセンサス メカニズムを利用して、勾配選択とブロック生成のタスクを解決します。

A. ブロックチェーンストレージ

権限制御を実現するために、BFLC のストレージはアライアンス ブロックチェーン システムであり、許可されたデバイスのみが FL トレーニング コンテンツにアクセスできます。ブロックチェーン内では、グローバル モデルとローカル更新 (総称して学習情報と呼ばれます) を保存するために、2 つの異なるブロックが設計されています。簡単にするために、ブロックに学習メッセージが 1 つだけ配置されると仮定します。


まず、ランダムに初期化されたモデルがブロック #0 に配置され、0 ラウンド目のトレーニングが開始されます。ノードは現在のモデルにアクセスしてローカルでトレーニングし、検証されたローカル勾配を新しい更新ブロックに入れます。更新されたブロックが十分にある場合、スマート コントラクトは集約をトリガーして、新しいモデルの次のラウンドを生成し、チェーンにアップロードします。FL トレーニングは最新のモデル ブロックのみに依存し、障害のロールバックとブロック検証のために履歴ブロックを保存することに注意してください。

ラウンドごとに必要な更新の数をkkとして示します。k、ラウンド数をtt# t × ( k + 1 ) t\times(k+1)t×( k+1 )ブロックにはttthラウンドtのモデルをモデルブロックと呼びます。#[ t × ( k + 1 ) + 1 ] [t\times(k+1)+1][ t×( k+1 )+1 ]から #[ ( t + 1 ) × ( k + 1 ) − 1 ] [(t+1)\times(k+1)-1][( t+1 )×( k+1 )1 ]ブロックにはラウンド t のモデル更新が格納されます。これを更新ブロックと呼びます。モデル ブロックには次のものが含まれます: ブロック ヘッダー、ラウンド番号tttとグローバルモデル。更新ブロックには、ブロックヘッダー、ラウンド番号ttt、ローカル更新勾配、アップローダー アドレス、更新スコア。

B. 委員会の合意メカニズム

ブロックチェーンのチェーン構造により、改ざんが不可能になります。したがって、正しいブロックをチェーンに追加することは、コンセンサス メカニズムがどのように機能するかにおいて重要な部分です。競合ベースのコンセンサス メカニズムは、まずブロックをチェーンに追加し、次にコンセンサスに進みます。代わりに、ブロックを追加する前に、通信ベースの生成メカニズムがコンセンサスに達します。

この論文では、コンセンサスの計算コストと通信コストを考慮して、ローカル勾配をチェーンに接続する前に検証するための効率的で安全な委員会コンセンサス メカニズム (CCM) を提案します。この設定では、少数の誠実なノードが、ローカル勾配の検証とブロックの生成を担当する委員会を形成します。その間、残りのノードはローカル トレーニングを実行し、ローカルの更新情報を委員会に送信します。その後、委員会は更新を検証し、スコアを付けます。適格なアップデートのみがブロックチェーンにパッケージ化されます。次のラウンドの開始時に、前のラウンドのノードのスコアに基づいて新しい委員会が選出されます。更新の検証は CCM の重要なコンポーネントであることに注意してください。したがって、委員会のメンバーは、データを検証セットとして扱い、検証精度をスコアとして使用して、ローカル更新を検証します。学習されたモデルを実行する基本的な能力以外に、委員会からの追加のアクションは必要ありません。各委員会のメンバーからのスコアを結合した後、中央値がこの更新のスコアになります。

BFLC には次の利点があります。 (1) 効率が高く、コンセンサスに達するために各ノードにブロードキャストする代わりに、少数のノードのみがモデルの更新を検証します。(2) K 分割交差検証 (K 分割交差検証)、委員会メンバーはこのラウンドのローカルトレーニングには参加しません。したがって、委員会のローカル データが検証セットとして使用されます。委員会のメンバーがラウンドごとに交替するため、検証セットも変更されます。この設定では、FL に対する K 分割相互検証が実装されます。(3) アンチマリシャス (反悪意)、検証スコアに従って、スマート コントラクトはより優れたパフォーマンスを持つノードを選択し、次のトレーニング ラウンドのために新しい委員会を形成します。これは、選択されたローカル データ分散が集団的であり、ノードに悪意がないことを意味します。

C. モデルのトレーニング

委員会以外のノードはラウンドごとにローカルでトレーニングされます。フロリダ州では、セキュリティとプライバシー上の理由から、生データはローカル ノードに保存され、これらのノードは勾配をブロックチェーンにアップロードするだけです。さらに、主な課題が 2 つあります。 (1) ローカル データの配布は非 IID です。(2) 設備は常に利用できるとは限りません。

最初の課題を解決するには、各ラウンドで一定数のローカル更新のみが必要であり、委員会の合意メカニズムは、委員会メンバーのデータ配布を通じてローカル更新を検証することにより、グローバル モデルの一般化能力を最大化できます。2 番目の問題を解決するために、ノード用にアクティブなローカル学習プロセスが設計されています。ノードはいつでも現在のグローバル モデルをアクティブに取得し、ローカル トレーニングを実行できます。勾配は委員会に送信され、検証されます。対象となるアップデートがブロックチェーン上にパッケージ化されると、報酬としてトークンをそれらに添付できます。

上で述べたように、各ラウンドでは一定数の有効な更新が必要です。したがって、十分なローカル更新が委員会によって検証されると、集約プロセスがアクティブ化されます。これらの検証された更新は委員会によって新しいグローバル モデルに集約されます。集約はローカル勾配またはローカル モデルで実行でき、これら 2 つの方法のネットワーク転送コストは同等です。新しいグローバル モデルがブロックチェーン上にパッケージ化された後、委員会が再度選出され、次のトレーニング ラウンドが始まります。


3. ディスカッション

A. ノード管理とインセンティブ

BFLC のトレーニング プロセスはノードの相互プロモーションに依存しており、ノード管理も BFLC の重要な部分です。参加ノードはグローバル モデルにアクセスできるだけでなく、グローバル モデルに影響を与える更新をアップロードすることもできます。権限を制御するために、トレーニング コミュニティを構成する最初のノードをノード管理の責任者、つまりマネージャーに指定します。トレーニング コミュニティに参加する前に、各デバイスは管理者によって検証される必要があります。この検証はブラックリスト モードで機能します。デバイスが不適切な行為 (誤解を招く更新の送信、プライベート モデルの伝播など) によりコミュニティから追い出された場合、そのデバイスは拒否されます。

提案されているブロックチェーン ストレージ構造によれば、新しいノードは参加後、チェーン上の最新のグローバル モデルを迅速に見つけることができます。ノードはモデルをすぐに使用してローカルタスクを完了することも、ローカルデータを使用してモデルを更新し、コンセンサス委員会による検証後にオンチェーンスコアを取得することもできます。集約の各ラウンドには一定数の有効な更新のみが必要であり、参加するには一部のノードのみがオンラインであることに注意してください。したがって、ノードが積極的に更新を送信している限り、グローバル モデルの更新に参加してスコアを取得することができます。同時に、一部のオフラインノードは FL の進行を妨げません。

コミュニティ内のノードは、更新を送信しなくても常にモデルを使用できるため、ノードがグローバル モデルに更新を提供することを奨励するには、効果的なインセンティブが必要です。この問題を解決するために、寄付による利益分配と呼ばれるインセンティブの仕組みが提案されています。(1) 許可料(許可料):グローバルモデルのアクセス料は各デバイスが支払う必要があり、この料金は管理者が留保します。これにより、ノードはコミュニティ内の最新モデルに無制限にアクセスできるようになります。(2) 利益分配: 各ラウンドの集計の後、マネージャーは、提出された更新されたスコアに従って、対応するノードに報酬を分配します。したがって、頻繁に更新を提供するとより多くの報酬を得ることができ、常に更新されるグローバル モデルにより、より多くのノードが参加するようになります。このインセンティブ メカニズムは拡張性が高く、さまざまな現実世界のアプリケーションに適応できます。ライセンス料の配分、利益分配率、配当分配モデルなどはすべて研究する価値があります。

B. 委員会の選挙

各ラウンドの終了時に、検証されたアップデートプロバイダーの中から新しい委員会が選出されます。分散型トレーニング設定では、どのローカル更新を集約するかを委員会が決定するため、この選択はグローバル モデルのパフォーマンスに大きな影響を与える可能性があります。委員会の選出方法には次のカテゴリが含まれます。 (1) ランダム選出: 新しい委員会のメンバーは検証済みのノードからランダムに選択されます。機械学習の観点から見ると、このアプローチによりモデルの一般化が改善され、過剰適合が軽減されます。ただし、通常のノードを装った悪意のあるノードは、悪意のある攻撃に対する耐性が低くなります。(2) スコアによる選出: 最も高い検証スコアを獲得したプロバイダーが新しい委員会を形成します。これにより、委員会に一部のノードが欠けているため、サンプル分布の不均一性が悪化する可能性があります。ただし、悪意のあるノード攻撃の場合、この方法は攻撃コストを大幅に増加させ、セキュリティと安定性を高めます。(3) 多要素最適化: この方法では、デバイスの複数の要素 (つまり、ネットワーク伝送速度) と検証スコアを考慮して、最適な選択を行います。ただし、この最適化には追加の計算オーバーヘッドが伴います。したがって、この方法は実際のシナリオおよび関連要件に従って適用する必要があります。

C. 悪意のあるノード

悪意のあるノードは、不正な悪意のあるモデル更新を送信するノードとして定義されます。元の FL 設定では、FedAvg はすべての更新を新しいグローバル モデルに集約します。悪意のある更新がある場合、グローバル モデルが汚染され、パフォーマンスが低下します。前述したように、委員会の合意メカニズムに従って、更新は集約される前に委員会によって検証されます。このサブセクションでは、悪意のある攻撃の要因と成功確率を理論的に分析します。

すべてのノードの数をNNとして記録します。N、委員会メンバーの数はMMM、残りのN − MN−MNM 個のノードはトレーニング ノードです。明らかに、 M 2 \frac{M}{2}を超える場合に限ります。2M悪意のある更新は、委員会メンバー全員が協力した場合にのみ受け入れられます。ただし、この委員は前回のラウンドで最も優れたパフォーマンスを示したMMでした。M 。これは、これらの悪意のあるメンバーの更新が、前の委員会のM 2 \frac{M}{2}2M悪意のあるノードによって受け入れられます。これは無限の依存サイクルであるため、最初の委員会にM 2 \frac{M}{2}より多くのメンバーがいる限り、2M正直なノードであれば、悪意のあるノードが委員会に侵入してグローバル モデルを侵害することはできません。

別の極端なケースを考えてみましょう。悪意のあるノードが共謀して、委員会の席を獲得するために通常のノードになりすまします。攻撃は、悪意のあるノードがシートの半分を占めると始まります。この攻撃モードを分析するために、参加ノードの数はAAとして示されます。ああA内の悪意のあるノードの割合はq ∈ ( 0 , 1 ) q\in(0,1)ですq( 0 ,1 )、委員会の割合はp ∈ ( 0 , 1 ) p\in(0,1)p( 0 ,1 )攻撃の目標は、A × p 2 \frac{A\times p}{2} を委員会に2×複数の座席。各ノードは同様に動作すると想定されます。したがって、攻撃の成功確率はイベントの確率として計算できます。A × p A × pを選択します。×p個のノードはすべてのノードから来ており、その半分以上はA × q A × q×q (悪意のあるノード)。A=1000に固定するとA=1000=1000、図 3 にpppqqqが変化する確率。悪意のある割合が 50% を超える場合にのみ、攻撃の成功確率が 0 より大幅に大きくなることに注意してください。この結論は、PoW ブロックチェーン システムの 51% 攻撃に似ています。言い換えれば、分散型コミュニティでは、悪意のあるノードがシステムを攻撃するためにコンピューティング リソースの 51% を保持する必要があり、そのコストは利益よりもはるかに大きくなります。さらに、履歴モデルと更新はブロックチェーンに保存されるため、攻撃後にはフェイルバックが常にオプションになります。

D. ストレージの最適化

実際のアプリケーションでは、ストレージのオーバーヘッドは、トレーニング デバイスのハードウェア要件を決定する重要な要素です。上記のブロックチェーン ストレージ スキームに基づいて、最新のグローバル モデルをすぐに見つけることができます。過去のモデルとアップデートは、災害復旧機能を提供する一方で、膨大なストレージ容量も必要とします。ここでは、ストレージのオーバーヘッドを削減するためのシンプルで実現可能なソリューションを示します。容量が不十分なノードは、履歴ブロックをローカルに削除し、このラウンドの最新モデルと更新のみを保持できます。これにより、コア ノードでの災害復旧機能とブロック検証機能を維持しながら、一部のノードのストレージ スペース不足の問題を解決できます。しかし、この方法の欠点も明らかです。ノードが削除されると、ブロックチェーンの信頼性は低下します。相互に信頼していないトレーニング コミュニティでは、各ノードはセキュリティ上の理由からこのスキームを使用できない場合があります。

したがって、信頼できるサードパーティ製ストレージの方が優れたソリューションとなる可能性があります。ブロックチェーンは、各モデルまたは更新ファイルが配置されているネットワーク アドレスと変更操作の記録のみを保持します。他のノードは集中ストレージと対話し、最新のモデルを取得したり、更新をアップロードしたりします。この集中ストレージは、災害復旧バックアップと分散ファイル ストレージ サービスを担当します。


4. 実験

A. 設定と通常のトレーニング

BFLC は、ベースラインとして基本 FL フレームワーク (fedAvg) およびスタンドアロン トレーニング フレームワークと比較されます。各フレームワークは、古典的な画像分類モデル AlexNet をグローバル モデルとして実装し、公平性を確保するためにモデルのハイパーパラメーターのセットを修正します。実験設定では、各ラウンドのアクティブなノードの割合はkkとして定義されます。k %、そのうちの 40% が次のラウンドで BFLC の委員として選出されます。Basic FLのトレーニングノード率もkkk %。一方、スタンドアロン トレーニングではデータセット全体が利用されます。別のkkk値の条件下で、それらのパフォーマンスを表 1 に記録します。

表 1 から、アクティブ ノードの割合が増加するにつれて、BFLC のパフォーマンスは常に基本 FL フレームワークの効果に近づき、完全なデータ セットのスタンドアロン トレーニングと比較してわずかな損失しかないことがわかります。BFLC は委員会の合意メカニズムを通じて合意の消費を大幅に削減できることは言及する価値があります。たとえば、トレーニングノードの数がPPの場合、P、委員会のサイズはQQQ、アクティブなノードはP + Q P+QP+Q._ _ BFLC の場合、コンセンサスの各ラウンドの計算量はP × QP × QP×Q、ブロードキャスト中は( P + Q ) 2 (P+Q)^2( P+独立したトレーニングと比較して、BFLC にはフェデレーテッド ラーニングのプライバシー データ保護機能もあり、管理する信頼できる中央サーバーが必要ないため、プライバシー漏洩のリスクが大幅に軽減されます。

B. 悪意のある攻撃を受けている

トレーニング コミュニティ内の悪意のあるノードは、統合された場合にグローバル モデルのパフォーマンスを大幅に低下させる可能性がある有害な更新を生成する可能性があります。悪意のあるノード攻撃をシミュレートして、提案されている BFLC、基本 FL、および CwMed がアクティブ ノード内のさまざまな悪意のある比率によってどのような影響を受けるかを示します。悪意のあるノードの攻撃パターンは、点状のガウスランダムノイズによるランダム妨害であると想定されます。

基本 FL は防御を実行せず、ランダムに選択されたアクティブ ノードによって生成されたモデルの更新を統合します。CwMed は、各エントリが同じ座標を持つローカル グラデーション内のエントリの中央値であるグローバル グラデーションを構築します。BFLC は、攻撃を防御するために前述の委員会の合意に依存しています。各更新は委員会からスコア (つまり、ローカル予測精度の中央値) を取得します。

攻撃の有効性を高めるために、悪意のあるノードが共謀していると想定されます。つまり、悪意のある委員会のメンバーが悪意のあるアップデートにランダムな高スコア (たとえば、90% ~ 100%) を与えることになります。アクティブなノードの割合は 10% に固定されており、そのうち 20% が次の委員会に選出されます。図 4 に示すように、BFLC は、比較方法と比較して、より高い割合の悪意のあるノードに抵抗できます。これは、委員会メカニズムの助けによる BFLC の有効性を示しています。

おすすめ

転載: blog.csdn.net/WuwuwuH_/article/details/131803413