総合情報サイト / マニュアル / サービス管理 / APIの返り値について(画像の分類)

推論APIの返り値について(画像の分類)

画像ファイルの分類AIを推論サービスで実行した際に得られる値について解説します。
文章や単語などを含むテキスト(自然言語)を解析して分類するAIにzipファイルを投入した場合も同様の出力が得られます。

APIの返り値について(画像)_1.jpg

外部アプリケーションやプログラムからMatrixFlowの推論サービスを実行する方法はいろいろありますが、Windows標準機能のコマンドプロンプトを利用して画像データを用いた推論を行うと、上のような出力がされます。
サービス機能を使った推論を行う手順については「サービスを使って推論を行う」をご覧ください。

この出力値は[推論サービスの詳細画面]の[Responses]タブに指定されている内容に沿っており、学習や予測に使うアルゴリズムによって出力される項目が異なります。
なお、項目の出力は順不同です。
※Responsesの内容は変更できません。

返り値のフォーマットは次の通りです。

形式 :JSON
MIMEタイプ :application/json
文字コード :unicode(UTF-8)
APIの返り値について(画像)_2.jpg

実際にはすべての値は改行されずに出力されますが、ここでは分かりやすくするため
改行して図示します。

APIの返り値について(画像)_3.jpg

1. “action”: “finishInferring”,
  推論の終了を意味します。

2. “inferenceType”: “推論の形式”,
  画像分類AIの場合、”classification”です。

3. “id”: “推論のID”,
  MatrixFlow内部で自動で付与する実行時の識別IDです。

4. “classes”: [“クラス名”],
  複数のクラス(グループ)に分類するときの各グループを示す値をカンマ区切りで出力します。
  例)犬, 猫 の2クラスに分類する場合 [犬, 猫]
  ※全角文字の場合、Unicodeで出力されます。(以降同様)

5. “probability”: true / false,
  次項6.で各クラスの信頼度(”probability”)が算出されるかを出力します。
  信頼度とは「〇と△のデータがある場合、どれだけ〇のデータらしいか」を示す情報で、
  そのデータが〇のクラスに属する確率を表します。

APIの返り値について(画像)_4.jpg

6. “list”: 推論データセットのファイルごとに次の情報が繰り返し出力されます。
  ”filename”: “ファイル名”,
     投入した画像のファイル名を出力します。
     MatrixFlowで推論を行ったときの、推論結果画面のファイル名に該当します。

  ”body”: “ファイルの内容”,
     画像ファイルをBASE64形式で出力します。
     BASE64とは、バイナリデータを規則に沿ってテキストデータに置き換える
     変換方式の一つで、64種類の英数字と一部の記号でデータを表現します。

  ”label”: “予測したクラス名”,
     予測結果は、4. “classes” のどれかです。

  ”probability”: {“クラス名”: クラス名の信頼度}
     予測結果がそのクラスにどれだけ当てはまるかを表し、
     1.0に近いほど当てはまりが良いことを意味します。
     推論結果画面の棒グラフで表示される値に該当します。

※全角文字の文字コードはUnicodeです。