連合学習とは

執筆者

Rina Diane Caballar

Staff Writer

IBM Think

Cole Stryker

Staff Editor, AI Models

IBM Think

連合学習とは

連合学習は、機械学習(ML)モデルのトレーニングへの分散型アプローチです。分散ネットワーク全体の各ノードは、ローカル・データを使用してグローバル・モデルをトレーニングし、グローバル・モデルを改善するためにノードの更新を集約する中央サーバーを使用します。

人工知能(AI)モデルには膨大な量のデータが必要です。これらのデータセットは通常、モデルをトレーニングするために一元管理され、送信またはストレージ中には、データセットに含まれる個人情報(PII)が露出するリスクがあります。

連合学習は、ノードに機密情報が残り、データ・プライバシーを維持するため、これらの懸念に対処するのに役立ちます。また、さまざまなデバイスまたはサーバーがAIモデルの改良に貢献しており、共同学習も可能にしています。

The DX Leaders

AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。

ご登録いただきありがとうございます。

ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。

連合学習の仕組み

連合学習には、次の4つの段階があります。

  • 初期化

  • 現地研修

  • グローバル集約

  • 反復

初期化

連合学習は、中央サーバー上のグローバルな機械学習モデルの初期化から始まります。このモデルは、連合学習プロセスを開始する基盤となるものです。

中央サーバーは、グローバル・モデルを接続されたクライアント・ノードに配布します。クライアント・ノードは、スマートフォンやモノのインターネット(IoT)デバイスなどの他のサーバーまたはエッジ・デバイスになります。また、ハイパーパラメーターなどの構成変数やエポックの数やトレーニング用データの完全なパスを含む関連情報も中継します。

ローカル・トレーニング

グローバル・モデルと必要なすべての詳細を受信すると、各クライアント・ノードはトレーニングを進めます。トレーニング・プロセスはすべてのニューラル・ネットワーク同様で、クライアント・ノードは、デバイス上またはローカルデータのみを使用してモデルをトレーニングします。

エポックの数が完了すると、クライアント・ノードは更新されたモデルパラメーターまたは勾配を中央サーバーに送信します。完全にトレーニングされたローカル・モデルや未加工データは送信されません。

グローバル集約

中央サーバーは、すべてのクライアント・ノードの更新を集約します。さまざまな形式の集約がありますが、一般的な方法はFederated Averaging(FedAvg)で、すべての更新の加重平均を計算します。これらの複合更新は、グローバルモデルに組み込まれます。

反復

中央サーバーは再び新しいグローバルモデルを接続されたクライアント・ノードに配布し、モデルが完全な収束に達するか、完全にトレーニングされるまで、連合学習プロセスが繰り返されます。

AI Academy

AIの専門家になる

ビジネスの成長を促進するAIへの投資を優先できるように知識を習得します。今すぐ無料のAI Academyを試して、貴社のAIの未来をリードしましょう。

連合学習の種類

連合学習は、データセットの構造またはクライアント・ノードの性質によって異なる場合があります。通常、これらのカテゴリーに分類されます。

  • クロスデバイス

  • クロスサイロ

  • 水平

  • 垂直

クロスデバイス

クロスデバイス連合学習は、揮発性の接続性と携帯電話やIoTデバイスなどの限られたコンピューティング・リソースを備えたデバイスを使用します。このタイプの連合学習は、信頼できないネットワーク接続を説明する必要があり、クライアント・ノードは小さなデータセットのみを処理できるため、通常、ローカル・トレーニングには多くのデバイスが必要です。1

例えば、eコマース企業は、複数のデバイスのユーザー・データに関する推奨エンジンをトレーニングして、よりパーソナライズされた製品の推奨事項を提供できます。1

クロスサイロ

クロスデバイス連合学習アプローチとは異なり、クロスサイロは、大量のデータを保存および処理するのに十分な強力な安定した接続と計算リソースを備えた限られた数のサーバーまたはデータセンターを伴います。クライアント・ノードは個人データを保持しているサイロとして扱われます。このデータは、プライバシーの懸念のためにシステムを離れたり、外部から共有したりしてはなりません。1

クロスサイロ連合学習は、金融やヘルスケアなどの業界に最適です。例えば、病院のコンソーシアムは、特定の疾患の診断または予測を強化するために、独自の患者データに関する共有モデルを訓練できます。同様に、銀行連合は、詐欺検知能力を強化するために独自のトランザクション・レコードを使用して一般的な機械学習アルゴリズムをトレーニングできます。1

水平

水平連合学習では、クライアント・ノードデータセットは同じ機能または構造を共有していますが、異なるサンプルを持っています。例えば、診療所は共有分析モデルをトレーニングできます。これは、臨床試験データには同じ変数を持ちながら、試験に関与する患者には明確な値を持っているためです。

垂直

逆に、垂直連合学習には、同じサンプルを共有するが、構造や機能が異なるクライアント・ノードデータセットが含まれます。例えば、小売業者と銀行は、よりパーソナライズされた顧客のオファーのためにパートナーシップを締結する可能性があり、同じ顧客データを持っているかもしれませんが、購入と財務情報はさまざまであるため、一般的な推奨エンジンをトレーニングできます。

連合学習のメリット

連合学習の分散型の性質は、以下の重要なメリットをもたらします。

  • 効率

  • データプライバシーの強化

  • コンプライアンスの向上

効率性

連合学習は、大規模なデータセットにアクセスまたは転送する必要性を排除します。これにより、レイテンシーの減少と、機械学習モデルをトレーニングするために必要な帯域幅が減少します。

データ・プライバシーの強化

連合学習システムのプライバシーを提供するアーキテクチャーは、機密データがデバイスを離れることがないことを意味します。これにより、サイバー攻撃やデータ侵害のリスクを最小限に抑えることができます。

ほとんどの連合学習システムは、データ・プライバシーを高めるために、差別的なプライバシーや安全なマルチパーティー計算(SMPC)などの暗号化手法も採用しています。

プライバシーの差は、中央サーバーに送信する前にモデルの更新にノイズを追加しますが、SMPCは中央サーバーが暗号化されたモデルの更新で安全な集約計算を実行することができます。これらの方法により、どのクライアント・ノードが更新を提供したかをリバース・エンジニアリングまたは区別することを困難にし、データ・セキュリティーを強化します。

コンプライアンスの向上

データはローカルで保持され、処理されているため、連合学習は、企業がデータ保護規制に準拠するのに役立ちます。コンプライアンスは、個人情報を処理する金融やヘルスケアなどの業界にとって非常に重要です。

連合学習の課題

連合学習は、AIモデルのトレーニングにおける変革的な変化を意味しますが、制限も伴います。連合学習に関連するいくつかの課題は次のとおりです。

  • 敵対的攻撃

  • 通信オーバーヘッド

  • 異種混合

敵対的攻撃

連合学習は、データ・ポイズニング攻撃に対して脆弱です。データ・ポイズニング攻撃では、脅威アクターがローカル・トレーニング中に悪意のあるデータを挿入し、または送信用のモデルのアップデート版を改ざんし、中央モデルを侵害したり破壊したりします。

異常検知機能、敵対的なトレーニング、厳格なアクセス制御、およびその他のセキュリティー対策は、これらの攻撃からの保護に役立ちます。

通信オーバーヘッド

クライアント・ノードとセントラル・サーバーの間の定期的なやり取りにより、実質的なボトルネックが発生する可能性があります。通信効率を向上させるには、伝送の前にモデルの更新を圧縮するなどの戦略を検討し、量子化、スパース化して、情報を更新する際には、更新情報のサブセットまたは基本的な更新情報のみを中継するようにします。一方、こうしたストラテジーでは、それに伴う精度の低下とのバランスを取る必要があります。

異種混合

連合学習の分散設計は、バイアスを緩和するのに役立つデータの多様性を強化できます。ただし、これは、データが同一に分布しておらず、不均衡になる可能性があることも意味します。一部のデバイスは他のデバイスよりも多くのデータを持っている可能性があり、これらのデータが多いノードに寄せてグローバル・モデルを歪めます。

この統計的不均一性に対処するいくつかの方法には、分布の変動を考慮したサンプリング方法またはテクニック、モデルトレーニング中に同様のデータ分布を持つノードをクラスタリングし、不均一なネットワークを標的とするFedProxなどの最適化アルゴリズムが含まれます。

システムの不均一性も問題であり、デバイスは異なるコンピューティング機能を備えています。適応型ローカル・トレーニングは、ノードが処理できるものに応じてモデル・トレーニングを調整するために適用できます。

連合学習のユースケース

連合学習は、国境や地理的な地域を越えて組織が連携することで、現実世界の問題の解決に役立つ可能性があります。連合学習に最適なセクターは次のとおりです。

  • 財務

  • 医療

  • 小売と製造

  • 都市管理

財務

金融機関は、信用リスク評価モデルのデータを多様化するために協力して、サービスが不十分なグループのより良い信用アクセスを可能にします。また、連合学習を使用して、よりパーソナライズされた銀行取引や投資アドバイスを提供し、ユーザー・エクスペリエンスを向上させることもできます。

医療

病院や研究機関は、希少疾患の創薬を支援する共有のディープラーニング・モデルを訓練できます。連合学習システムは、より良い治療戦略を見つけ、脆弱なコミュニティーの患者の転帰率を向上させるのにも役立ちます。

小売および製造

小売業者は、顧客データを明らかにすることなく、複数の場所で販売と在庫を追跡するために連合学習を使用して、株式レベルを最大化し、無駄を減らすことができます。一方、メーカーは、サプライチェーンのさまざまな部分からデータを集約して、物流を最適化できます。

都市管理

スマート・シティーは、居住者のデータをプライベートに保ちながら、無数のデバイスと都市部に散らばった無数のデバイスやセンサーから洞察を収集するために、連合学習を利用できます。これらの洞察は、例えば交通状況を改善するために、または大気汚染や水質汚染などの環境条件を監視するために使用できます。

連合学習フレームワーク

実際のアプリケーションに連合学習を実装することは複雑な場合がありますが、分散型データでモデルをトレーニングし、サーバーとクライアントのワークフローを合理化するためにいくつかのフレームワークが存在します。ここでは、人気のある連合学習フレームワークを紹介します。

  • Flower

  • IBM連合学習

  • NVIDIA FLARE

  • OpenFL

  • TensorFlow Federated

Flower

Flowerは、共同AIおよびデータサイエンスのためのオープンソースのフレームワークです。多数の接続されたクライアントを持つ連合AIシステムを作成するために使用できます。ほとんどの機械学習フレームワークと互換性があり、さまざまなハードウェア・プラットフォームやオペレーティング・システムと相互運用可能です。

IBM Federated Learning

IBM Federated Learningは、エンタープライズ環境での連合学習のフレームワークです。決定木単純ベイズ分類器、ニューラル・ネットワーク、強化学習など、さまざまな機械学習アルゴリズムで動作します。

IBM Federated Learningには、モデルの更新を組み合わせるための豊富な融合方法のライブラリーも付属しており、AIのバイアスに対抗するためのさまざまな公平性手法をサポートしています。

NVIDIA FLARE

NVIDIA FLARE(連合学習アプリケーション・ランタイム環境)は、連合学習向けのオープンソースおよびドメインに依存しないソフトウェア開発キットです。

組み込みのトレーニングと評価のワークフロー、プライバシーを提供するアルゴリズム、およびFederated AveragingとFedProxの学習アルゴリズムがあります。Nvidia Flareには、オーケストレーションと監視のための管理ツールもあります。

OpenFL

OpenFLは、Intel社が元々作成し、現在はLinux Foundationが手掛けるPythonベースのオープンソース連合学習フレームワークです。OpenFLは、PytorchやTensorflowを含む機械学習ライブラリーなどのディープラーニング・フレームワークで動作します。そのセキュリティー機能には、差別的なプライバシー保護機能が含まれており、ハードウェア・ベースで信頼できる実行環境をサポートしています。

TensorFlow Federated

Tensorflow Federated(TFF)は、分散型データに関する機械学習のためにGoogleが開発したオープンソースフレームワークです。TFFのアプリケーション・プログラミング・インターフェース(API)は、2層で構成されています。

  • 連合学習APIは、既存の機械学習モデルを使用したトレーニングや評価などの連合学習タスクの実装を容易にする高レベルの層です。

  • 連合コアAPIは、新しい連合学習アルゴリズムを構築するための低レベルの層です。

 

関連ソリューション
IBM watsonx.ai

AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。

watsonx.aiをご覧ください。
人工知能ソリューション

業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。

AIソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

AI開発ライフサイクル全体にわたる機能にワンストップでアクセスできます。使いやすいインターフェース、ワークフロー、業界標準のAPIやSDKを利用して、強力なAIソリューションを構築できます。

watsonx.aiの詳細はこちら デモを予約
脚注

すべてのリンク先は、ibm.comの外部です。

1 「Google Cloudでのクロスサイロ / クロスデバイス フェデレーション ラーニング」、Google Cloud、2024年6月3日。