前回まで3回にわたり、GCPの学習済みモデル(AI)と、ユーザーが追加学習できる学習済みモデルを取り上げた。いずれのサービスも容易に利用できるが、用途は画像認識や文章分類など典型的なものに限られる。

 GCPで独自(カスタム)の機械学習モデルを作るには、学習と予測(推論)の実行サービス「Cloud Machine Learning Engine(Cloud ML Engine)」や「BigQuery ML」を使う(図1)。本連載第8回で取り上げた、データ分析や機械学習のインタラクティブな支援ツールである「Cloud Datalab」は、カスタムの機械学習モデルの開発に使えるが、大規模な計算リソースを利用できないという制約がある。

図1 GCPの機械学習サービス
[画像のクリックで拡大表示]

 今回は、これらのうちCloud ML Engineを中心に取り上げる。BigQuery MLについては最後に簡潔に紹介する。まずは、Cloud ML Engineの説明から始める。

 Cloud ML Engineは、機械学習モデルの学習と予測を実行するためのサービスである。機械学習ライブラリーとして、「TensorFlow」(およびその上位レベルAPIである「Keras」)を利用するタイプと、「scikit-learn」および「XGBoost」を利用するタイプを選べる。これらのなかでもTensorFlowは、米Googleが開発して自社サービスにフル活用しているライブラリーである。そこで最初にTensorFlowについて簡単に説明しよう。

 TensorFlowは、オープンソース化されていることもあり、世界的に主要な機械学習ソフトウエアライブラリーの一つとなっている。オンプレミス(自社所有)環境のサーバーやPCにインストールして使うこともできる。

 TensorFlowは、前出のデータ分析および機械学習サービスCloud Datalabにもインストールされている。Cloud Datalabでも、機械学習モデルの開発・実行を簡単に試せる。ただし利用できる計算リソースが限られるので、大規模な機械学習タスクを伴うケースには不向きだ。

 Cloud ML Engineであれば、GPU搭載の計算ノードや大規模クラスターによる並列処理を、煩雑な作業を伴わず容易に利用できる。ユーザーは、データの準備、モデルの作成や評価、モデルによる予測に注力できる。

Cloud ML Engineの二つの機能

 Cloud ML Engineは、大きく分けて二つの機能を持っている(図2)。

図2 Cloud ML Engine の基本概念
[画像のクリックで拡大表示]

 一つは、GCP上で学習用リソースを作成して、モデルの学習を実行する機能。もう一つは、学習済みモデルをAPI化して未知データに対する予測を実行する機能だ。

 これらの機能を使った、モデル開発と予測実行の流れを以下で解説する。

この先は有料会員の登録が必要です。有料会員(月額プラン)は初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら