Google Machine Learning Engine 拡張機能

現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください
情報

バージョン 1.2.1

Cloud Machine Learning Engine から予測をリクエストします。predict アクションを使用すると、既存のトレーニング済みモデルに対して予測をリクエストして提供できます。

Google Cloud プロジェクト ID と認証情報でこの拡張機能を設定したら、ExtensionCallout ポリシーを使用して API プロキシから呼び出します。ポリシー構成では、使用するモデルとモデル バージョンのほか、モデルで予測に使用するインスタンス データを指定します。

Cloud ML Engine の使用を開始するには、Cloud ML Engine の概要をご覧ください。

前提条件

ここでは、この拡張機能の構成と使用について説明します。ExtensionCallout ポリシーで API プロキシから拡張機能を使用する前に、次のことを行う必要があります。

  1. モデルを用意します。

    Cloud ML Engine モデルとその他のコンセプトの詳細については、プロジェクト、モデル、バージョン、ジョブをご覧ください。

  2. GCP Console を使用してサービス アカウント キーを生成します

  3. 構成リファレンスを使用して拡張機能を追加および構成するときは、生成されたキー JSON ファイルの内容を使用します。

Google Cloud Machine Learning Engine について

Cloud Machine Learning Engine を使用すると、Google Cloud Platform のリソースを使用して機械学習モデルをトレーニングできます。トレーニング済みのモデルを Cloud ML Engine でホストすると、それらのモデルに予測リクエストを送信したり、GCP サービスを使用してモデルとジョブを管理したりできます。

アクション

predict

指定されたモデルを使用して、指定されたインスタンス データに対して予測を行います。

構文

<Action>predict</Action>
<Input><![CDATA[{
  "model" : model-for-prediction,
  "version" : model-version,
  "instances" : data-to-use-for-making-prediction
}]]></Input>

<Action>predict</Action>
<Input><![CDATA[{
  "model" : mymodel,
  "version" : version4,
  "instances" : {"instances": ["the quick brown fox", "la bruja le dio"]}
}]]></Input>

リクエスト パラメータ

パラメータ 説明 種類 デフォルト 必須
model 予測に使用するモデル。 文字列 なし。 はい、できます。
バージョン 予測に使用する ML ソリューションのバージョン。 文字列 なし。 はい、できます。
インスタンス 予測を取得するインスタンス。この値に含まれるアイテムの形状は、予測に使用するモデルに期待される内容によって異なります。詳細については、予測リクエストの詳細をご覧ください。 配列 なし。 はい、できます。

レスポンス

ExtensionCallout ポリシー構成で指定されたモデルから返される予測データを含む predictions 配列。

{
  "predictions": [
    {
      "probabilities": [
        0.9435398578643799,
        0.05646015331149101
      ],
      "logits": [
        -2.816103458404541
      ],
      "classes": [
        "0"
      ],
      "class_ids": [
        0
      ],
      "logistic": [
        0.056460149586200714
      ]
    },
    {
      "probabilities": [
        0.9271764755249023,
        0.07282354682683945
      ],
      "logits": [
        -2.54410457611084
      ],
      "classes": [
        "0"
      ],
      "class_ids": [
        0
      ],
      "logistic": [
        0.07282353937625885
      ]
    }
  ]
}

構成リファレンス

API プロキシで使用するためにこの拡張機能を構成およびデプロイする場合は、以下を使用します。Apigee コンソールを使用して拡張機能を構成する手順については、拡張機能の追加と構成をご覧ください。

共通の拡張プロパティ

すべての拡張機能には次のプロパティがあります。

プロパティ 説明 デフォルト 必須
name この拡張機能に付ける名前。 なし
packageName Apigee Edge から提供された拡張機能パッケージの名前。 なし
version 拡張機能を構成する拡張機能パッケージのバージョン番号。 なし
configuration 追加する拡張機能に固有の構成値。この拡張機能パッケージのプロパティをご覧ください。 なし

この拡張機能パッケージのプロパティ

この拡張機能に固有の次の構成プロパティの値を指定します。

プロパティ 説明 デフォルト 必須
projectId この拡張機能で使用されるトレーニング済みモデルを含む GCP プロジェクトの ID。 なし。 はい、できます。
証明書 これは、Apigee Edge コンソールで入力する場合、サービス アカウント キー ファイルの内容です。Management API 経由で送信される場合は、サービス アカウント キー ファイルから生成された、Base64 エンコードの値です。 なし。 はい、できます。