[論文レビュー] SGD: Decentralized Byzantine Resilience.
GuanYu は、非同期ネットワークにおいて、最高で 1/3 のByzantineノードを許容する分散型 SGD アルゴリズムとして、Byzantine ワーカーおよびパラメータサーバーの両方に対して耐性を持つ最初のものである。モデルのずれを防ぐために高次元空間における幾何学的中央値の性質を活用し、vanilla TensorFlow と比較して 30% のスループットオーバーヘッドを負担しながらも、収束速度を維持する。
The size of the datasets available today leads to distribute Machine Learning (ML) tasks. An SGD--based optimization is for instance typically carried out by two categories of participants: parameter servers and workers. Some of these nodes can sometimes behave arbitrarily (called \emph{Byzantine} and caused by corrupt/bogus data/machines), impacting the accuracy of the entire learning activity. Several approaches recently studied how to tolerate Byzantine workers, while assuming honest and trusted parameter servers. In order to achieve total ML robustness, we introduce GuanYu, the first algorithm (to the best of our knowledge) to handle Byzantine parameter servers as well as Byzantine workers. We prove that GuanYu ensures convergence against $\frac{1}{3}$ Byzantine parameter servers and $\frac{1}{3}$ Byzantine workers, which is optimal in asynchronous networks (GuanYu does also tolerate unbounded communication delays, i.e. asynchrony). To prove the Byzantine resilience of GuanYu, we use a contraction argument, leveraging geometric properties of the median in high dimensional spaces to prevent (with probability 1) any drift on the models within each of the non-Byzantine servers. % To convey its practicality, we implemented GuanYu using the low-level TensorFlow APIs and deployed it in a distributed setup using the CIFAR-10 dataset. The overhead of tolerating Byzantine participants, compared to a vanilla TensorFlow deployment that is vulnerable to a single Byzantine participant, is around 30\% in terms of throughput (model updates per second) - while maintaining the same convergence rate (model updates required to reach some accuracy).
研究の動機と目的
- 分散機械学習システムにおけるパラメータサーバーの Byzantine 耐性の欠如に対処すること。
- ワーカーおよびパラメータサーバーの両方に対して耐性を持つ分散型 SGD アルゴリズムを設計すること。
- 非同期ネットワークにおける最適な故障耐性(1/3 の Byzantine ノード)を達成すること。
- 無制限の通信遅延および悪意ある行動のもとでの収束を証明すること。
- 実際の分散環境での実装および性能オーバーヘッドの評価を実施すること。
提案手法
- GuanYu は、高次元空間における中央値の幾何的性質に基づく収縮論法を採用している。
- 非Byzantineパラメータサーバーのモデル更新の中央値を用いることで、ずれを防ぎ、収束を保証する。
- 中央管理者が存在しない完全な分散型環境で動作する。
- すべてのノード(パラメータサーバーを含む)に対して信頼を置いていないと仮定し、任意の動作を耐容する。
- 無制限の遅延を伴う非同期通信環境でも耐性があることが証明されている。
- 実世界の展開および性能評価のため、低レベルの TensorFlow API を使用して実装されている。
実験結果
リサーチクエスチョン
- RQ1ワーカーおよびパラメータサーバーの両方が任意の障害にさらされる状況下でも、分散型 SGD アルゴリズムが Byzantine 耐性を達成できるか?
- RQ2分散型で非同期なネットワークにおける、Byzantine ノードの割合の理論的上限は何か?
- RQ3悪意ある更新が加わる高次元空間において、幾何学的中央値ベースの集約がモデルのずれを防げるか?
- RQ4実際の分散システムでこのような耐性を実現する際の実用的性能オーバーヘッドは何か?
- RQ5Byzantine 耐性を備えながらも、標準の SGD と同等の収束速度を維持できるか?
主な発見
- GuanYu は、最高で 1/3 のByzantineパラメータサーバーおよび 1/3 のByzantineワーカーに対して収束を保証する。これは非同期ネットワークにおける最適な耐性である。
- 高次元空間における幾何学的中央値の性質を活用することで、確率 1 でモデルのずれを防げる。
- 無制限の通信遅延を耐容でき、実世界の非同期環境でも耐性がある。
- TensorFlow を用いた実装では、1 人のByzantine参加者を想定した場合、vanilla TensorFlow と比較して 30% のスループットオーバーヘッドが生じた。
- 30% のオーバーヘッドがあるものの、目標精度に到達するまでのモデル更新回数の観点では、標準の SGD と同等の収束速度を維持している。
- 著者らの知る限り、GuanYu は、ワーカーおよびパラメータサーバーの両方に対して同時にこのような耐性を提供する最初のアルゴリズムである。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。