Cloud TPU ベータ版 提供開始
Google Cloud Japan Team
* この投稿は米国時間 2 月 12 日、Google Cloud の Product Manager for Cloud TPUs である John Barrus と、Google Brain Team の Product Manager for TensorFlow and Cloud TPUs である Zak Stone によって投稿されたもの(投稿はこちら)の抄訳です。速報として Google Cloud Japan Blog に文章の一部が掲載されていますが、こちらは全文の抄訳です。
Google はこのたび、機械学習モデルをより高速にトレーニング、実行できるよう支援する Cloud TPU のベータ版を Google Cloud Platform(GCP)で公開しました。
Cloud TPU(Tensor Processing Unit)は、TensorFlow で実装された特定の機械学習ワークロードの高速化およびスケールアップのために、Google が一からデザイン、開発した機械学習用のアクセラレータです。4 つのカスタム ASIC で構成されており、1 つのユニットあたり最大 180 TFlops の浮動小数点演算と 64 GB の超高帯域幅メモリを搭載しています。
ユニットは単体または複数のユニットと接続できるように設計されており、独自の超高速ネットワークを介して複数ユニットを接続し、ペタフロップス級の機械学習向けスーパーコンピューター「TPU pods」としても利用できます。TPU pods は年内に GCP のプロダクトとして提供される予定です。
Cloud TPU は、対象となる TensorFlow ワークロードに応じて優れた価格性能比を提供するとともに、機械学習のエンジニアや研究者がより高速にイテレーションを実行できるように設計されました。たとえば次のとおりです。
- 共有コンピュート クラスタ上でのジョブのスケジュールを待つのではなく、制御とカスタマイズが可能な Google Compute Engine VM を通じて、ネットワーク接続された Cloud TPU にインタラクティブかつ排他的にアクセスできます。
- ビジネスクリティカルな機械学習モデルのトレーニングを数日や数週間かけて行うのではなく、多数の Cloud TPU を用いて同じモデルのいくつかのバリエーションを一晩でトレーニングし、極めて精度の高いトレーニング済みモデルを翌日に本番環境にデプロイできます。
- 1 つの Cloud TPU とこちらのチュートリアルを使用して、期待される精度で ImageNet ベンチマークを記録できるように ResNet-50 モデルを 1 日以内でトレーニングでき、そのコストは 200 ドルを優に下回ります。
機械学習モデルのトレーニングが簡単に
カスタム ASIC やスーパーコンピューターのプログラムを作成するには、従来は深い専門知識やノウハウが必要でした。これに対して Cloud TPU は、高レベルの TensorFlow API によるプログラミングが可能です。また、Cloud TPU をすぐに使い始めることができるように、高パフォーマンスのCloud TPU リファレンス モデル実装がオープンソース化されています。- ResNet-50 や他の人気のあるモデル(画像分析)
- Transformer(機械翻訳や言語モデリング)
- RetinaNet(オブジェクト検知)
時間や労力の節約を図っていただくため、私たちはこうしたモデル実装の標準データセットにおけるパフォーマンスや期待精度への収束を継続的にテストしています。
また、モデル実装のオープンソース化を今後も進めていきます。冒険心旺盛な機械学習の専門家であれば、Google が提供するドキュメントやツールを活用して、他の TensorFlow モデルを Cloud TPU に独自に最適化できるでしょう。
今から Cloud TPU を使い始めれば、今年後半の TPU pods のリリース時に、目標精度の達成にかかる時間の大幅な短縮という恩恵を受けられます。NIPS 2017 での発表にあったように、TPU pods をフルに活用することで、ResNet-50 と Transformer のトレーニング時間は、いずれも 1 日の大半から 30 分未満へと劇的に減少しました。コードの変更はまったく不要です。
大手投資顧問会社の Two Sigma は、Cloud TPU のパフォーマンスと使いやすさに強い印象を受けたと述べています。
弊社はさまざまな理由からディープ ラーニングの研究をクラウドで行うことを決めましたが、理由の最たるものは、最新の機械学習インフラにアクセスできることにあります。ディープ ラーニングをサポートする Google Cloud TPU は、急速に進化する革新的な技術の一例です。TensorFlow ワークロードを TPU に移行したところ、新しいモデルのプログラミングの複雑さと、そのトレーニングに要する時間の両方が大幅に軽減され、生産性が向上しました。他のアクセラレータの代わりに Cloud TPU を使うことで、クラスタ通信のパターンの複雑さを管理する必要性に悩むことなく、モデル構築に集中できています。
Alfred Spector 氏、Two Sigma の CTO
スケーラブルな機械学習プラットフォーム
Cloud TPU は以下のように、機械学習のコンピューティング リソースに対する計画と管理も容易にします。- 最先端の機械学習アクセラレーション機能をチームに提供し、ニーズの変化に応じてキャパシティを動的に調整できます。
- 特殊な電力、冷却、ネットワーキング、ストレージの要件を持つオンサイトの機械学習コンピューティング クラスタについて、その設計、インストール、メンテナンスに必要な資金、時間、専門ノウハウをコミットする代わりに、Google によって強力な最適化が施され、緊密に統合された大規模な機械学習インフラの恩恵を受けられます。
- 大量のワークステーションおよびサーバー群全体にわたってドライバを最新に保つ苦労から解放されます。Cloud TPU は事前に設定されており、ドライバのインストールは不要です。
- すべての Google Cloud サービスの安全を支えているのと同じ高度なセキュリティ メカニズムとプラクティスによって保護されます。
Google Cloud TPU を使用するようになって以来、そのスピードに感嘆しています。普通なら数日はかかりそうなトレーニングが数時間でできてしまうからです。ディープ ラーニングは自動運転車を動かすソフトウェアの基盤に急速になりつつあります。データが増えるにつれて精度も高くなり、アルゴリズムの大きなブレークスルーが毎週のように起こっています。そうした中、膨大な車両からナビゲーション関連の最新データを取り込み、研究コミュニティにおけるアルゴリズムの最新の進化を反映させる取り組みを急ピッチで進めるうえで、Cloud TPU はとても役に立ちます。
Anantha Kancherla 氏、Lyft の自動運転レベル 5 担当ソフトウェア責任者
私たち Google Cloud は、あらゆる機械学習ワークロードに最適なクラウド環境をお客様に提供したいと考えており、さまざまな高パフォーマンス CPU(Intel Skylake を含む)や GPU(NVIDIA Tesla V100 を含む)を Cloud TPU とともに提案していきます。
Cloud TPU をお試しください
Cloud TPU は現時点では限定の形で提供されており、課金方法は秒単位(米ドル 6.50 / Cloud TPU / 時間)です。Cloud TPU がお客様から高い関心をいただいていることを私たちはうれしく思います。多くのご要望にお応えするためにも、ご興味のあるお客様は、用途を添えてこちら(英語)からお申し込みください。できるだけ早く Cloud TPU をご利用いただけるように最善を尽くします。
Cloud TPU についてもっと知りたい方は、2018 年 2 月 27 日(米国時間)に実施される Cloud TPU webinar(英語)にご参加ください。
- By John Barrus, Product Manager for Cloud TPUs, Google Cloud and Zak Stone, Product Manager for TensorFlow and Cloud TPUs, Google Brain Team