GoogleがAIトレーニングを高速化する新手法を提案、GPUのアイドル時間を圧縮して3倍以上高速化

GoogleがAIトレーニングを高速化する新手法を提案、GPUのアイドル時間を圧縮して3倍以上高速化

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。

汎用コンピューティング チップではニューラル ネットワークのコンピューティング ニーズを満たすことができないため、ニューラル ネットワークのトレーニングを高速化するために、GPU や TPU などの専用のハードウェア アクセラレータを使用する人が増えています。

しかし、より高速な GPU と TPU を使用すると、トレーニングが確実に高速化されるのでしょうか?

トレーニング パイプライン内のすべての操作がアクセラレータ上で実行されるわけではありません。アップストリーム データ処理 (ディスク I/O やデータ前処理など) はアクセラレータ上で実行できません。

GPU などのアクセラレータがどんどん高速化し、CPU やディスクがデータを処理できる速度を超えるようになると、アップストリームが徐々にトレーニングのボトルネックになってきました。

場合によっては、GPU の上流のコードが GPU 自体よりも実行に数倍の時間がかかります。上流の作業が完了していない場合、下流はただ待つことしかできず、多くの時間を無駄にします。

このため、Google AI チームはこの問題を解決するためのシンプルなデータエコー方式を提案しました。この方法は、モデルの精度に大きな影響を与えることなく、トレーニング速度を最大 3 倍以上高速化できます。

ジェフ・ディーンもTwitterでリツイートし、いいねした。

重複データによりGPUがアイドル状態にならない

多くの場合、アップストリームはアクセラレータよりも時間がかかり、より高速な GPU または TPU を使用してもトレーニング速度はまったく向上しません。多くのエンジニアリング作業と追加のコンピューティング リソースを投入すれば、パイプラインを実際に高速化できます。

非常に小さいデータセットの場合、拡張データセットをオフラインで事前計算し、事前処理されたデータセット全体をメモリに読み込むことができます。

ただし、このアプローチはほとんどの機械学習トレーニング シナリオには適しておらず、時間がかかり、推論パフォーマンスの向上という主な目標から逸脱してしまいます。

さらなるデータを待つのではなく、すでに持っているデータを使用してアクセラレータを稼働状態に保つことができます。

アクセラレータが 50% でアイドル状態の前処理済みバッチの最初の最適化ステップの後、そのバッチを別のトレーニング実行に再利用できます。

重複データが新規データと同じくらい有用であれば、トレーニングの効率は 2 倍になります。

実際には、繰り返しデータは新しいデータほど有用ではないため、データ エコーによるスピードアップは小さくなりますが、アクセラレータがアイドル状態のときに比べると大幅なスピードアップが得られます。

一般に、特定のニューラル ネットワーク トレーニング パイプラインでデータ エコーを実装する方法はいくつかあります。

Google が提案した技術は、トレーニング パイプラインのどこかにあるランダム バッファにデータをコピーするというものです。どの段階でボトルネックが発生しても、キャッシュされたデータを任意の位置に挿入できます。

データ エコーはサンプル レベルでデータをシャッフルしますが、バッチ エコーは繰り返されるバッチのシーケンスをシャッフルします。あるいは、データ拡張の前にバッファを挿入して、繰り返されるデータの各コピーがわずかに異なるようにし、単純な機械的な繰り返しよりも新しいサンプルに近くなるようにすることもできます。

精度を損なうことなく3倍以上の速度を実現

では、データエコーはどれほど役に立つのでしょうか?

Google は、画像分類、言語モデル化、オブジェクト検出という 3 つの異なるタスクをカバーする 5 つのニューラル ネットワーク トレーニング パイプラインでデータ エコーを試し、特定のパフォーマンス目標を達成するために必要な新しいサンプルの数を測定しました。

Google は、データ エコーにより、新しいサンプルを少なくして目標のパフォーマンスを達成できることを発見しました。これは、データの再利用がディスク I/O の削減に役立つことを示唆しています。場合によっては、重複データは新しいデータとほぼ同じくらい役に立つことがあります。

ImageNet の ResNet-50 トレーニング タスクでは、データ エコーによりトレーニング速度が大幅に向上し、3 倍以上高速化されます。

クラウド ストレージからトレーニング データのバッチを読み取るには、各データのバッチを使用してトレーニング ステップを実行する場合よりも 6 倍の時間がかかります。したがって、データは最大 5 回繰り返すことができます。

エコー係数は、各データ項目が繰り返される回数として定義されます。上記のタスクの場合、最大エコー係数は 5 です。重複したサンプルが新しいサンプルと同じくらい有用であれば、6 倍のスピードアップが得られるはずですが、実際には 3.25 倍のスピードアップしか得られませんでした。それでも、かなり印象的です。

データの再利用によってモデルの最終的なパフォーマンスが低下するのではないかと心配する人もいるかもしれませんが、実験では、テストされたどのワークロードでも、データエコーによって最終的なモデルの品質が低下しないことがわかっています。

GPU と TPU のパフォーマンスが向上し、汎用プロセッサを上回るようになるにつれて、データエコーや同様の戦略がニューラルネットワークトレーニングツールキットのますます重要な部分になると Google は予想しています。

どうですか?Google AI のこの最新の研究は、ニューラル ネットワークのトレーニングにも新たなインスピレーションを与えてくれますか?

<<:  「モノのインターネット +」の考え方は、産業のアップグレードにどのように役立つのでしょうか?

>>:  ヘルスケアがビッグデータの恩恵を受ける6つの方法

ブログ    
ブログ    
ブログ    
ブログ    
ブログ    

推薦する

AI導入において、テクノロジーは最大の課題ではないが、人材は

[[427056]]写真: ゲッティ従来型企業の経営幹部が人工知能 (AI) や機械学習 (ML) ...

Googleは人工知能を使って人間の認知の欠陥を浮き彫りにする

今日では、驚くほど人間らしい文章の一部は、実際には大量の人間の文章でトレーニングされた AI システ...

ビッグデータと人工知能を活用して英語教育の問題を解決する

1. 英語教育と学習の現状現在、我が国の英語教育は大きな進歩を遂げていますが、依然として我が国の発展...

RPAにより業務効率が大幅に向上、40%の企業が効果を確認

効率性、俊敏性、生産性に対する需要が高まるにつれ、新しいテクノロジーとアプリケーションが、企業と企業...

強化学習は、抽象的思考を行うときに脳がどのように機能するかを明らかにする

[[418206]] 「すべての芸術はある程度抽象的である。」 20 世紀の世界的に有名な彫刻家ヘン...

クラウド管理と運用にAIを適用する方法

AI は、クラウドの管理と運用に大変革をもたらすものとして台頭しています。しかし、AI とクラウド ...

畳み込みニューラルネットワークによる画像認識の仕組み

[[202854]]画像認識とは何ですか? なぜ必要なのですか?マシンビジョンの概念では、画像認識と...

2024年に人工知能はどこへ向かうのでしょうか?

2023年はテクノロジー分野にとって波乱に富んだ年であり、言語学習モデルが爆発的に増加し、人工知能...

...

ショアのアルゴリズム: RSA 暗号解読の「不滅の神話」

RSA 暗号化は、かつては最も信頼性の高い暗号化アルゴリズムと考えられていましたが、Shor のア...

スマートホーム技術における感情AIの役割

スマートホーム テクノロジーの登場により、私たちが生活空間と関わる方法は大きく変わりました。音声制御...

...

人工知能のコミュニケーション:コンテキストは業界マネージャーにとって成功への道

SymphonyAI のマーケティング責任者として、私は企業における人工知能 (AI) のあらゆるア...

エッジ AI IoT ソリューションはビジネス パフォーマンスをどのように向上できるのでしょうか?

現代のビジネス エコシステムにおける AI と IoT の影響を拡大します。人工知能 (AI) とモ...

8年が経ちました。Googleが中国に戻るという噂は本当でしょうか?

[51CTO.com オリジナル記事] Google の中国復帰について新たな声が上がっている。最...