プロジェクト、モデル、バージョン、ジョブ

機械学習(ML)における用語の多くは、文脈によって意味が異なります。このセクションでは、このドキュメントで使用されている用語をいくつか定義します。

プロジェクト、モデル、バージョン、ジョブ

プロジェクト
「プロジェクト」とは Google Cloud プロジェクトであり、デプロイ済みモデルやジョブの論理コンテナです。AI Platform Prediction ソリューションの開発に使用する各プロジェクトでは、AI Platform Prediction を有効にする必要があります。Google アカウントで複数の Google Cloud プロジェクトにアクセスできます。
モデル
ML において、「モデル」は解決しようとしている問題のソリューションです。言い換えれば、データから値を予測するためのレシピです。AI Platform において、モデルとはソリューションの各バージョンの論理コンテナです。たとえば、解決したい問題が、以前の販売データに基づいて住宅販売価格を予測することだとしましょう。AI Platform Prediction で housing_prices というモデルを作成し、問題を解決するために複数の機械学習テクニックを試してみます。各段階で、そのモデルのバージョンをデプロイできます。バージョンはそれぞれ他のバージョンと完全に異なることもありますが、ワークフローに適していると思われる場合は、同じモデルの下にそれらを編成することもできます。
トレーニング済みモデル
「トレーニング済みモデル」には、トレーニング後の計算モデルの状態とその設定が含まれます。
保存済みモデル
ほとんどの機械学習フレームワークでは、トレーニング済みモデルを表す情報をシリアル化し、「保存済みモデル」としてファイルを作成できます。これは、クラウド内で予測としてデプロイできます。
モデル バージョン
「モデル バージョン」(単に「バージョン」とも呼ばれます)は、AI Platform Prediction モデルサービスに格納された機械学習ソリューションのインスタンスです。シリアル化されたトレーニング済みモデルを保存済みモデルとしてサービスに渡して、バージョンを作成します。バージョンを作成するときに、予測を処理するためのカスタムコード(ベータ版)を指定することもできます。
ジョブ
「リクエスト」と「ジョブ」を開始することで、AI Platform Prediction のサービスと対話します。リクエストとは、レスポンスをできるだけ早く返す通常のウェブ API リクエストです。ジョブは、非同期に処理される長時間実行オペレーションです。AI Platform Prediction には、トレーニング ジョブとバッチ予測ジョブがあります。ジョブを開始するリクエストを送信し、ジョブのステータスを確認する迅速なレスポンスを受け取ります。その後、ジョブの進捗状況を追跡するために、ステータスを定期的にリクエストできます。

モデルのパッケージング、ステージング、エクスポート、デプロイ

モデルやデータは、特にローカル環境と Cloud Storage 間、Cloud Storage と AI Platform Prediction サービス間で移動されます。このドキュメントでは、プロセスの特定のオペレーションを指す用語として以下を使用します。

パッケージ
トレーニング アプリケーションをパッケージ化し、AI Platform Prediction トレーニング サービスで、各トレーニング インスタンスにそれをインストールできるようにします。アプリケーションをパッケージ化することで、標準の Python 配布パッケージにすることができます。予測用のカスタムコード(ベータ版)をデプロイする場合は、予測を処理するためのコードもパッケージ化します。
ステージング
プロジェクトがアクセス権を持つ Cloud Storage バケット内で、トレーニング アプリケーション パッケージを「ステージング」します。これにより、トレーニング サービスはパッケージにアクセスし、パッケージをすべてのトレーニング インスタンスにコピーできます。また、プロジェクトがアクセス権を持つ Cloud Storage バケット内の他の場所でトレーニングされた保存済みモデルをステージングします。これにより、オンライン予測サービスはモデルにアクセスしてデプロイできます。予測用のカスタムコード(ベータ版)をデプロイする場合は、カスタムコードのパッケージも Cloud Storage にステージングして、オンライン予測サービスがデプロイ中にアクセスできるようにします。
エクスポート
このドキュメントでは、機械学習モデルで計算モデルと設定をファイルにシリアル化するプロセスを表すため「エクスポート」という用語を使用しています。エクスポートには、保存済みモデルとオブジェクトを使用します。
デプロイ
バージョン リソースを作成する場合、モデル バージョンを「デプロイ」します。エクスポートしたモデル(保存済みモデル ディレクトリ)とモデルリソースを指定してバージョンを割り当てると、AI Platform Prediction によってバージョンがホストされ、予測を送信できるようになります。予測用のカスタムコード(ベータ版)をデプロイする場合は、デプロイ時にカスタムコードのパッケージも提供します。

次のステップ