フェデレーテッド ラーニングは機械学習の非常に人気のある分野であり、データを転送せずに複数の当事者によるモデルの共同トレーニングを指します。フェデレーテッド ラーニングの発展に伴い、FATE、FedML、PaddleFL、TensorFlow-Federated などのフェデレーテッド ラーニング システムが際限なく登場しています。ただし、ほとんどのフェデレーテッド ラーニング システムは、ツリー モデルのフェデレーテッド ラーニング トレーニングをサポートしていません。ニューラル ネットワークと比較して、ツリー モデルは、トレーニングが高速で、解釈可能性が高く、表形式のデータに適しているという特徴があります。ツリー モデルには、金融、医療、インターネット、その他の分野 (広告の推奨、株価予測など) における幅広い応用シナリオがあります。
意思決定木の代表的なモデルは、Gradient Boosting Decision Tree (GBDT) です。 1 つのツリーの予測能力には限界があるため、GBDT はブースティング法を通じて複数のツリーを直列にトレーニングし、最終的に各ツリーを現在の予測値とラベル値の残差に適合させることで良好な予測効果を実現します。代表的なGBDTシステムにはXGBoost、LightGBM、CatBoost、ThunderGBMなどがありますが、その中でもXGBoostはKDDカップ優勝チームに何度も採用されています。ただし、これらのシステムはどれも、フェデレーテッド ラーニング シナリオでの GBDT トレーニングをサポートしていません。最近、シンガポール国立大学と清華大学の研究者は、ツリー モデルのトレーニングに焦点を当てた新しい連合学習システム FedTree を提案しました。
FedTree システムの紹介FedTree のアーキテクチャ図を図 1 に示します。インターフェース、環境、フレームワーク、プライバシー保護、モデルの合計 5 つのモジュールがあります。
#図 1: FedTree システム アーキテクチャ図
インターフェース: FedTree は、コマンド ライン インターフェースと Python インターフェースの 2 つのインターフェースをサポートします。ユーザーはパラメーター (参加者数、フェデレーション シナリオなど) を指定するだけで、1 行のコマンドでトレーニングのために FedTree を実行できます。 FedTree の Python インターフェイスは scikit-learn と互換性があり、トレーニングと予測のために fit() および detect() を呼び出すことができます。
環境: FedTree は、単一マシン上でのフェデレーテッド ラーニングのシミュレートされたデプロイメントと、複数のマシン上での分散フェデレーションのデプロイメントをサポートしています。機械の勉強。スタンドアロン環境では、FedTree はデータを複数のサブデータ セットに分割することをサポートしており、各サブデータ セットは参加者としてトレーニングされます。マルチマシン環境では、FedTree は各マシンを参加者としてサポートし、マシンは gRPC を介して通信します。同時に、FedTree は CPU に加えて、トレーニングを高速化するための GPU の使用をサポートします。
フレームワーク: FedTree は、水平および垂直フェデレーテッド ラーニング シナリオで GBDT のトレーニングをサポートします。水平シナリオでは、異なる参加者が異なるトレーニング サンプルと同じ特徴空間を持ちます。垂直シナリオでは、異なる参加者が異なる特徴空間と同じトレーニング サンプルを持ちます。パフォーマンスを確保するために、どちらのシナリオでも、複数の関係者が各ノードのトレーニングに参加します。さらに、FedTree はアンサンブル学習もサポートしています。アンサンブル学習では、参加者がツリーを並行してトレーニングし、それらを集約して参加者間の通信オーバーヘッドを削減します。
プライバシー: トレーニング中に渡された勾配によってトレーニング データに関する情報が漏洩する可能性があるため、FedTree は別のプライバシーを提供します。 - 勾配情報をさらに保護するための保存方法には、準同型暗号化 (HE) と安全な集約 (SA) が含まれます。同時に、FedTree は、最終的なトレーニング済みモデルを保護するための差分プライバシーを提供します。
モデル: ツリーのトレーニングに基づいて、FedTree はブースティング/バギング手法/ランダム フォレストによる GBDT のトレーニングをサポートします。 。さまざまな損失関数を設定することにより、FedTree によってトレーニングされたモデルは、分類や回帰などのさまざまなタスクをサポートします。 実験表 1 は、a9a、ブレスト、クレジットに関するさまざまなシステムの AUC とアワビの RMSE、FedTree のモデル効果、およびすべてのデータを使用したトレーニング GBDT (XGBoost、ThunderGBM) をまとめたものです。 FATE の SecureBoost (SBT) はほぼ同じです。さらに、プライバシー保護ポリシー SA および HE はモデルのパフォーマンスに影響を与えません。 #表 1: さまざまなシステムのモデル効果の比較 表 2 は、さまざまなシステムでの各ツリーのトレーニング時間 (単位: 秒) をまとめたもので、FedTree が FATE よりもはるかに高速であり、水平フェデレーションで 100 倍を超える加速率を達成できることがわかります。学習シナリオ。 #表 2: さまざまなシステムでの各ツリーのトレーニング時間の比較 研究の詳細については、FedTree の元の論文を参照してください。
以上がデシジョンツリー専用に設計されたシンガポール国立大学と清華大学が共同で高速かつ安全な新しい連合学習システムを提案の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。