これらのcolab ベースのチュートリアルでは、実践的な例を使用して、主要な TFF 概念と API について説明します。参考資料はTFF ガイドにあります。
フェデレーション ラーニングを始める
- 画像分類のためのフェデレーテッド ラーニングでは、フェデレーテッド ラーニング (FL) API の主要部分を紹介し、TFF を使用してフェデレーテッド MNIST のようなデータでフェデレーテッド ラーニングをシミュレートする方法を示します。
- テキスト生成のための Federated Learning では、 TFF の FL API を使用して、言語モデリング タスク用にシリアル化された事前トレーニング済みモデルを改良する方法をさらに示します。
- 学習用に推奨される集計のチューニングでは、
tff.learning
の基本的な FL 計算を、堅牢性、差分プライバシー、圧縮などを提供する特殊な集計ルーチンと組み合わせる方法を示します。 - 行列分解のためのフェデレーション再構成では、部分的にローカルなフェデレーテッド ラーニングが導入されており、一部のクライアント パラメーターはサーバー上で決して集約されません。このチュートリアルでは、Federated Learning API を使用して部分的にローカルな行列分解モデルをトレーニングする方法を示します。
フェデレーション分析の開始
- 「プライベート ヘビー ヒッター」では、
tff.analytics.heavy_hitters
を使用してフェデレーション分析計算を構築し、プライベート ヘビー ヒッターを検出する方法を示します。
カスタムフェデレーテッド計算の作成
- 「独自のフェデレーテッド ラーニング アルゴリズムの構築」では、 TFF コア API を使用してフェデレーテッド ラーニング アルゴリズムを実装する方法を示し、例としてフェデレーション平均を使用します。
- 「学習アルゴリズムの構成」では、 TFF 学習 API を使用して、新しい統合学習アルゴリズム、特に統合平均のバリアントを簡単に実装する方法を示します。
- カスタム フェデレーテッド アルゴリズム、パート 1: フェデレーテッド コアの概要とパート 2: フェデレーテッド平均化の実装では、フェデレーテッド コア API (FC API) によって提供される主要な概念とインターフェイスを紹介します。
- 「カスタム集計の実装」では、
tff.aggregators
モジュールの背後にある設計原則と、クライアントからサーバーへの値のカスタム集計を実装するためのベスト プラクティスについて説明します。
シミュレーションのベストプラクティス
アクセラレータ (GPU) を使用した TFF シミュレーションは、 TFF の高性能ランタイムを GPU でどのように使用できるかを示します。
ClientData の操作では、 TFF のClientDataベースのシミュレーション データセットを TFF 計算に統合するためのベスト プラクティスが提供されます。
中級および上級のチュートリアル
ランダム ノイズの生成では、分散計算でのランダム性の使用に関するいくつかの微妙な点を指摘し、ベスト プラクティスと推奨パターンを提案します。
「tff.federated_select を使用した特定のクライアントへの異なるデータの送信」では、
tff.federated_select
演算子を紹介し、異なるデータを異なるクライアントに送信するカスタム フェデレーテッド アルゴリズムの簡単な例を示します。federated_select とスパース集約によるクライアント効率的な大規模モデルのフェデレーテッド ラーニングでは、
tff.federated_select
とスパース集約を使用して、各クライアント デバイスがモデルのごく一部のみをダウンロードして更新する非常に大規模なモデルをトレーニングするために TFF を使用する方法を示します。TFF の差分プライバシーを使用したフェデレーテッド ラーニングでは、 TFF を使用してユーザーレベルの差分プライバシーを使用してモデルをトレーニングする方法を示します。