用語集

フェデレーテッド・ラーニング

フェデレーテッド・ラーニング:生のデータを共有することなく、デバイス間で分散型のモデル学習を可能にするプライバシー重視のAIアプローチを発見する。

Ultralytics HUB で
を使ってYOLO モデルをシンプルにトレーニングする。

さらに詳しく

Federated Learning(フェデレーテッド・ラーニング)は、生のデータそのものを交換することなく、ローカル・データ・サンプルを保持する複数の分散型エッジ・デバイスやサーバー間でアルゴリズムを学習するように設計された機械学習(ML)技術である。このアプローチは、データプライバシー、セキュリティ、データアクセス権に関する重要な懸念に直接対処し、一元的に収集できない、または収集すべきではないデータセットを使用して、協調的なモデル学習を可能にします。Federated Learningは、中央のモデルにデータを持ち込む代わりに、スマートフォンや病院のサーバーのようなエッジAIデバイスに存在することが多い、データの場所にモデルのトレーニングプロセスをもたらします。これは、より安全でプライバシーに配慮した人工知能(AI)へのシフトを意味する。

フェデレーテッド・ラーニングのコア・コンセプト

Federated Learningは、通常、中央のサーバーまたはコーディネーターによって編成される反復プロセスを通じて運営される:

  1. 初期化:中央サーバーは、最初のグローバルモデル(例えば、一般的な Ultralytics YOLOモデル)。
  2. 配信:このグローバルモデルは、選択されたクライアントデバイス(携帯電話やローカルサーバーなど)に送信される。
  3. ローカルトレーニング:各クライアント・デバイスは、自身のローカル・データを使用して受信したモデルをトレーニングする。このデータはデバイスの外に出ることがないため、プライバシーが維持される。このステップはローカルの計算資源を利用する。
  4. 更新送信:生データを送信する代わりに、クライアントは更新されたモデルパラメータweights and biases)または計算された勾配のみを中央サーバーに送り返す。セキュアアグリゲーションやディファレンシャルプライバシーのような技術を適用することで、セキュリティを高めることができる。
  5. 集約:中央サーバーは、参加クライアントからの更新を集約し(例えば、重みを平均化することによって)、共有グローバルモデルを改善する。
  6. 反復:ステップ2~5は、グローバルモデルが望ましいパフォーマンスレベルに達するまで繰り返され、多くの場合、YOLO Performance Metricsなどのガイドで説明されている標準的なメトリクスを使って評価されます。

このプロセスにより、グローバルモデルは、ユーザーのプライバシーを損なうことなく、多くの場所に分散した膨大で多様なデータから学習することができる。Federated Learning(統合学習)の研究と応用については、こちらをご覧ください。

統合学習と分散トレーニングの比較分散トレーニング

Federated Learningは複数のマシンにまたがってトレーニングを行うが、従来の分散トレーニングとは大きく異なる:

  • データの分散:分散型学習は通常、データが一元的に収集され、データセンターのような制御された環境内のノードに分散(多くの場合、同一かつ独立、またはIID)されることを想定している。Federated Learningは、データが最初から分散されていることを本質的に仮定しており、多くの場合、非IIDであり、ユーザーや場所によって異なる実世界のデータを反映しています。
  • プライバシープライバシーの保護はFederated Learningの基本的な目標である。分散学習の主な目標は、通常、スケーラビリティとスピードであり、学習プロセス自体におけるデータのプライバシーにはあまり重点を置いていない。
  • ネットワークとハードウェア:分散型トレーニングは、多くの場合、広帯域幅のネットワークと、より均一なハードウェア上で実行されるのに対し、Federated Learningは、信頼性の低いネットワーク接続と、クライアントデバイスの異種ハードウェア機能を扱わなければならない。

フェデレーテッド・ラーニングの応用

Federated Learningは、データがセンシティブであったり、大規模であったり、本質的に分散しているようなシナリオにおいて特に価値がある:

  • ヘルスケア機密性の高い患者記録を共有することなく、複数の病院間で医療画像解析のようなタスクの診断モデルをトレーニングします。これにより、HIPAA のような厳格なプライバシー規制を遵守しながら、多様な患者データを活用してより堅牢なモデルを作成できます。ヘルスケアインフォマティクスのためのFederated Learningの例をご覧いただき、ヘルスケアにおける関連AIソリューションを検索してください。
  • モバイル・デバイス:個人データや通信履歴を中央サーバーにアップロードすることなく、ユーザーの携帯電話で直接モデルをトレーニングすることで、予測テキストキーボード(GoogleGboardなど)、音声アシスタントのコマンド認識、パーソナライズされたレコメンデーションなど、デバイス上の機能を改善する。
  • 金融異なる銀行が保有する取引データに対してモデルを学習させることで、銀行が機密の顧客データを共有することなく、不正取引を検出する。
  • 産業用IoT:異なる工場や場所からのセンサーデータに基づく機械の予知保全モデルの開発。

フェデレーテッド・ラーニングの利点

  • プライバシーの強化:生データはクライアント・デバイスにローカライズされたままなので、プライバシー・リスクを大幅に軽減できます。
  • 通信負荷の軽減:モデル更新の送信は、通常、データセット全体を転送するよりもはるかに少ない帯域幅で済みます。
  • リアルタイム学習:エッジデバイス上の最新のローカルデータを使って、モデルをより頻繁に更新できる可能性がある。
  • 多様なデータの活用:法的、倫理的、または物流上の理由から一元化できない、より大規模で多様なデータセットへのアクセスが可能になり、オーバーフィッティングを低減できる可能性がある。

フェデレーテッド・ラーニングの課題

その利点にもかかわらず、フェデレイテッド・ラーニングはいくつかのハードルに直面している:

  • 通信効率:特に帯域幅が限られていたり、接続が不安定な場合、何千台、何百万台ものデバイスからのアップデートを調整・集約するのは、時間がかかり、複雑な作業になる可能性があります。
  • システムの不均一性:クライアント・デバイスは、処理能力(CPU/GPU)、メモリ、ネットワーク接続性、電力供給などの点で大きく異なります。
  • 統計的不均一性:デバイス間のデータは一般的に非IID(同一独立分布ではない)であり、グローバルモデルにバイアスをかけたり、収束を遅らせたりする可能性がある。
  • セキュリティ上の懸念:データ・プライバシーが強化される一方で、システム自体が、モデルの更新や中央サーバーでの潜在的なセキュリティ侵害を狙った敵対的攻撃に対して脆弱になる可能性がある。全体的なデータ・セキュリティの確保は依然として重要です。
  • クライアントの管理:適切なクライアントを選び、参加を管理し、脱落者を処理することは、ロジスティクス上の課題である。

TensorFlow Federatedのようなフレームワークや、OpenMinedのような組織によるライブラリは、これらの課題のいくつかに対処することを目指している。複雑ではあるが、Federated Learningは大規模でプライバシーを意識したAIシステムを構築するための有望な方向性である。Ultralytics HUBのようなプラットフォームは、全体的なモデルデプロイメントと管理のライフサイクルを促進し、フェデレーテッドアプローチを使用して開発されたモデルを包含する可能性があります。Ultralytics エコシステムの中で、さまざまなモデルデプロイメントオプションを検討することができます。アクティブラーニングのような他のテクニックとFLを組み合わせることも、現在進行中の研究分野であり、アクティブラーニングがコンピュータービジョンの開発をスピードアップするというブログポストで説明されています。

すべて読む