ニューラルネットワークは、分散コンピューティングネットワークを使用してトレーニングされました

ビデオ: ニューラルネットワークは、分散コンピューティングネットワークを使用してトレーニングされました
ビデオ: 駒を後退させることはできますが、ポーンは後退できません||高度に進化したリーラvsマイティストックフィッシュ|| TCEC17 Rd 88 2023, 2月
ニューラルネットワークは、分散コンピューティングネットワークを使用してトレーニングされました
ニューラルネットワークは、分散コンピューティングネットワークを使用してトレーニングされました
Anonim
Image
Image

ロシア、米国、カナダの開発者は、インターネット経由で接続された複数のコンピューターでニューラルネットワークを分散学習するための新しいプラットフォームを作成してテストしました。システム自体は、コンピュータの特性を考慮してタスクをコンピュータ間で分散し、参加者の一部の損失と異なる時間での作業にも対処します。開発者は、9日間で40人のボランティアのコンピューターでベンガル語を処理するためのニューラルネットワークをトレーニングすることにより、プラットフォームの動作を実証しました。開発に関する記事がarXiv.orgに公開され、開発者はHuggingFaceブログでもそれについて話しました。

一部の科学的および技術的問題については、大量の計算を実行する必要があります。これは、スーパーコンピューターを使用して許容可能な時間枠内で実行できます。強力なスーパーコンピューターにアクセスするのに十分な資金をすべての問題に提供できるわけではないため、研究者は1990年代後半に分散コンピューティングネットワークの構築を開始しました。彼らは、科学計算のためにその力の一部を使用するプログラムを自分のコンピューターに自発的にインストールした膨大な数の普通の人々で構成されています。このアプローチは成功したことが証明され、SETI @HomeやFolding @ Homeなどのいくつかのプロジェクトは、最高のスーパーコンピューターに匹敵するパワーを達成しました。

ニューラルネットワークのトレーニングにも深刻な計算能力が必要なため、近年、開発者は機械学習に同様のスキームを使用することを提案し始めています。同様のプロジェクトがすでに存在しますが、その中で最も有名なのはMLC @Homeです。ただし、対応するものと同様に、重要な制限があります。ネットワーク上の各コンピューターは、1つの一般的な巨大モデルではなく、個別の小さなモデルをトレーニングします。しかし、近年、成功するニューラルネットワークモデルのサイズは急速に成長しています。たとえば、GPT-3テキストを操作するためのよく知られたニューラルネットワークは、570ギガバイトのデータでトレーニングされており、モデル自体は1,750億個のパラメーターを使用しています。

昨年、ロシアの開発者は、多くの独立したコンピューター上で1つのニューラルネットワークを分散トレーニングするためのシステムアーキテクチャを提案しました。新しい作品では、その記事の著者の1人であるYandexとHigher School ofEconomicsのMaximRyabininを含むロシア、米国、カナダの開発者グループが新しいプラットフォームを作成し、実際のアプリケーションを示しました。

トレーニングの開始時に、プラットフォームはネットワーク内のコンピューターの特性とネットワーク接続のパラメーターを決定します。次に、これらの要因に応じてタスクが特定のコンピューターに分散されます。高速インターネット接続と低遅延の強力なコンピューターは任意のタスクを実行でき、何らかの制限のあるコンピューターは自分の一部しか取りません。タスクの中には、直接トレーニングと損失関数の計算の両方があり、その他のタスクには、たとえば、コンピューターが最急降下法、平均勾配を実行し、トレーニング段階後にモデルの重みを最適化することができます。

参加者の接続は不安定で弱い可能性があるため、開発者はプラットフォームアーキテクチャを最適化して、同期の頻度を減らしました。特に、非常に大きなバッチサイズを使用することにしました(バッチは、トレーニングの1つの段階で使用されるデータセットの一部です)。バッチが処理された後、ネットワーク上のコンピューターは勾配を交換し、最適化に従事しているコンピューターはモデルの重みを調整してネットワーク経由で送信し、コンピューターがトレーニングの新しい反復を開始するようにします。

このプラットフォームでは、学習プロセスでネットワークの参加者を変更できます。新しいコンピューターがネットワークに参加すると、トレーニングが速くなり、古いコンピューターが切断されてデータの一部が転送されない場合、残りの参加者は計算を超えて。以前のアナログのように、この方法はGPT-3のような巨大なモデルのトレーニングには適していないことに注意してください。多くの操作はほとんどすべてのコンピューターに分散できますが、モデル全体を実行できるコンピューターがネットワーク上に存在する必要があります。トレーニングサンプルからデータをスキップして、トレーニングします。

開発者は、実際の問題に対するアプローチの効率をテストしました。彼らは、91台のコンピューターを備えた40人の参加者を集めました。そこには、さまざまな容量のビデオカードがありました。通常のビデオカードから、現時点ではそれほど強力ではないNVIDIA GTX 1060からV100まで、強力なデータセンターを対象としています。参加者の仕事は、ALBERTアーキテクチャに基づくベンガル語処理の言語モデルを事前にトレーニングすることでした。トレーニングサンプルとして、2021年3月現在のベンガル語版ウィキペディアの657メガバイトのスナップショットと、OSCARデータセットの6、2ギガバイトのベンガル語部分を使用しました。参加者が作業を開始する前にそのような量のデータをすぐにダウンロードしないようにするために、開発者はストリーミングサーバーを作成し、トレーニングと並行してデータを部分的にロードできるようにしました。同時に、将来的には、別のサーバーをBitTorrentのようなp2pプロトコルに置き換えることができると彼らは述べています。

実験には9日かかりました。トレーニング結果に基づいて、開発者は2つのメトリックで3つの類似体と比較することにより、モデルの品質を評価しました。それらの最初のものは、着信トークン(単語またはその部分)の分類の品質と、人、組織、場所、または別の4つのタイプのいずれかへの割り当てを示しています。 2番目のメトリックは、モデルがすべてのテキストのタイプをどの程度適切に決定するかを示します。その結果、分散してトレーニングされたモデルの品質は、パラメーターの数がはるかに多いモデルを含め、従来のモデルに匹敵することが判明しました。

Image
Image

2つの指標による他のモデルとの比較

ニューラルネットワークは、通常のコンピューターでの分散学習だけでなく、新しいプラットフォームや新しいタイプのデータ、たとえば、自然ニューラルネットワークのアーキテクチャに近いニューロモルフィックチップや量子データでの作業にも適応しています。

トピックによって人気があります