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つの方法

ブログ    
ブログ    

推薦する

国境を越えた大企業よ、安易に「自社開発チップ」を主張しないでほしい

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...

AIは教育業界にどのような影響を与えるのでしょうか?これら6つの側面について学ぶ

人工知能は、SFの世界のものから、私たちの日常生活に影響を与える重要な技術へと変化しました。現在、多...

資本から絶大な支持を受ける人工知能が、なぜ金融分野で壁にぶつかっているのか。

マーフィー著昨年のAlphaGo、今年のLibratusと、さまざまな業界で「人工知能」のトレンドが...

人工知能が普及すると、家事労働者はロボットに置き換えられるのでしょうか?

リチャード・マーティンの家族は執事としてロボットを購入しました。そのロボットはアンドリューと名付けら...

...

超音波脳読み取りはマスクの脳コンピューターインターフェースよりも正確で侵襲性が低い

脳コンピューターインターフェース分野で新たなニュースがあります。 IEEE Spectrum による...

プラットフォームの後は、モジュラーシャーシが主流になるのでしょうか?

自動車プラットフォームはどれほど重要ですか?この質問に答える必要はありません。市場で主流の自動車モデ...

隠れた表現を視覚化することでニューラルネットワークをより深く理解する

この記事では、隠し表現の視覚化を使用して、ニューラル ネットワークのトレーニング プロセスをより直感...

自動運転は本当に実現します!最初の発砲は全国7か所で行われた。

自動車市場の発展に伴い、さまざまないわゆる「ブラックテクノロジー」が自動車所有者の敏感な神経をますま...

...

人工知能の未来を見据えて、いつかは遊ぶだけになる日が来るでしょう!

[[216218]]人工知能スピーカー2017年は人工知能が爆発的に発展した年であり、「人工知能元...

チップ大手は、写真を撮ることよりも面白くないこれらの新しいAI技術を秘密裏に開発している

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

WiFiベースの電子タグ位置決めアルゴリズム

無線通信の急速な発展に伴い、屋内測位のための無線ネットワークと RFID 技術の組み合わせがますます...

26億のパラメータ、智源と清華が中国の大規模事前トレーニングモデルをオープンソース化

最近、北京人工知能研究院と清華大学の研究チームは共同で、中国語を中核とした大規模な事前学習済み言語モ...

マイア:人間を模倣するが、人間を超えることはないチェスAI

[[378769]]海外メディアの報道によると、AIは長年にわたり、あらゆる古典的なボードゲームで...