さあ、機械学習を箱に詰め込みませんか?Google Cloud Platformのサービスがベータ版に登場

Table of Contents

さあ、機械学習を箱に詰め込みませんか?Google Cloud Platformのサービスがベータ版に登場

Google の Cloud Platform チームによると、Deep Learning Containers (DLC) はベータ段階に入ったとのことです。

このサービスを使用すると、ユーザーは TensorFlow や PyTorch などの一般的なフレームワーク向けに事前構成された、ローカルまたはリモートの即時機械学習環境を実行できます。

DLCは、Googleの既存のDeep Learning VM(機械学習フレームワークを実行するためのNVIDIA GPUへのアクセスを含むDebianベースのディスクイメージセット)と一緒に販売されます。現在、TensorFlow、PyTorch(Python用機械学習ライブラリ)、R 3.5、CUDA対応Intel MKL(数学カーネルライブラリ)など、14種類のVMイメージが用意されています。ただし、提供されているイメージの半分は試験段階であることにご注意ください。

本稿執筆時点では、TensorFlow、PyTorch、Rを含む20種類のディープラーニングコンテナイメージがCPUとGPUの両方のオプションで提供されています。今後、さらに追加される予定です。

Google の宣伝文句には、「私たちは、すべての種類のディープラーニング VM と同等の機能を実現できるよう取り組んでいます」と記載されています。

現在提供されているディープラーニングコンテナイメージのリスト

現在提供されているディープラーニングコンテナイメージのリスト

これらのイメージの良い点は、ローカルで実行するためにすぐにお金を支払う必要がないことです。各イメージには、Python3環境、厳選されたMLライブラリ、そして自動で実行されるJupyterサーバーがセットアップされています。CPUとGPUの両方のオプションがあります。NVIDIAのCUDA並列コンピューティングプラットフォームによるアクセラレーションを利用したいのであれば、nvidia-dockerとCUDA 10 GPUを備えたDocker環境さえあれば大丈夫です。gcloud SDKをインストールし、必要なコンテナイメージをプルして実行します。これらのイメージは比較的大きく、TensorFlowイメージは約6GB、PyTorchは約8GBです。

Docker を使って Windows 上でディープラーニング コンテナを起動して実行する

Docker を使って Windows 上でディープラーニング コンテナを起動して実行する

Jupyter は、コード、方程式、視覚化、テキストを操作および共有するためのオープンソースのインタラクティブ ツールであり、データ サイエンス コミュニティの標準となっています。

Googleは、ユーザーが「ローカルマシンよりも強力なマシン」を使いたくなることを期待しています。コンテナは必要に応じてカスタマイズでき、例えば独自のPythonパッケージを組み込んでGCPコンテナレジストリにアップロードできます。その後、Google Kubernetes Engine(GKE)、Cloud Run(サーバーレスオプション)、Docker Swarmなど、コンテナ実行のための複数のオプションのいずれかを使用してGCPにデプロイできます。また、AI Platform Notebookインスタンスにデプロイすることも可能です。AI PlatformはマネージドJupyter Notebookサービスです。

ご想像のとおり、BigQuery、Apache HadoopおよびApache Spark向けのCloud DataProc、Apache Beamを使用したバッチ処理とデータストリーミングを実現するCloud Dataflowなど、他のGoogleサービスとの統合も実現しています。コンテナベースのアプローチとローカルでの実行から始められるという点から、Deep Learning ContainersはGCPへの容易な導入方法となり、ユーザーが他のクラウドサービスの利用を希望すれば、Googleはすぐに利益を得るでしょう。MLサービスは大量の処理を必要とするため、様々なクラウドプロバイダーにとって魅力的な選択肢となっています。

Amazon Web Services (AWS) は、機械学習用の AWS Marketplace で事前に構築された Jupyter ノートブックやさまざまなモデルを含む Amazon SageMaker などの成熟した ML サービスのセットを提供しています。

同様に、Microsoft は Azure でしばらくこの取り組みを行っており、Azure Machine Learning Workspaces は、Docker イメージの構築、モデルのデプロイ、パイプラインの作成についてユーザーをガイドします。

さらに、時々必要な場合以上の場合には、独自のキットで実行するほうが大幅に安価になる可能性があることを意味します。

Google は、コンテナ オーケストレーションにおける Kubernetes との親和性が、大規模プロジェクト®のユーザーを引き付けるのに役立つと確信しています。

Discover More