ML ボードヘルプ

ML Board Help

ML ボードヘルプ

はじめに

これは、ML ボードおよびそのトレーニングに関する各画面について解説しているヘルプドキュメントです。各画面に「ヘルプ」と書かれたリンクがあり、そのリンク先がこのドキュメントです。

ML ボードの使い方については、以下のドキュメントを参考にしてください。

ML ボードとは何か

ML ボードは、機械学習を誰にでも簡単に扱えるようにする MAGELLAN BLOCKS の機能です。

BLOCKS の機械学習は、「学習」と「予測」の 2 つのステップからなります。

  1. まず、学習ステップで過去・既知のデータから学習を行い、学習結果(モデル)を出力します。

    ML ボードは、このステップをサポートするボードです。

  2. 次に、予測ステップでモデルを使って未来・未知のデータから予測(分類や回帰など)を行います。

    このステップは、Big Data ボードの機械学習カテゴリーの[]・[ML ボード予測(バッチ)]ブロックなどでサポートしています。

ML ボードでは、この学習のステップを「トレーニング」と呼びます。トレーニングでは、訓練データと検証データを使って学習し、最適な学習結果(トレーニング結果/モデル)を導き出します。

訓練データと検証データは、トレーニング用に用意する過去のデータを適切に分けたものです。

ML ボードは、Google Cloud Machine Learning Engine (Cloud ML Engine) を活用して機械学習の機能を実現しています。

ML ボードの種類

ML ボードは、用途別にボードの種類が分かれています。ここでは、ML ボードの種類とその用途について紹介します。

数値分類タイプ

数値分類タイプは、特徴的なデータから以下のような分類ができます。

  • キャンペーンなどの実施により「会員登録する (0) / 会員登録しない (1)」に分類
  • ウェブサイトで表示される広告を「クリックしない (0) / クリックする (1)」に分類
  • ユーザーの趣向性を数値化して「地域特性など数パターン (0 から n)」に分類
  • クレジットカードや ATM の利用特性から「正当利用 (0) / 不正利用 (1)」に分類

数値回帰タイプ

数値回帰タイプは、何らかの事象(天候や曜日など)から以下のような数値予測ができます。

  • 来場者数を予測
  • 販売数を予測
  • 交通機関の利用者数を予測

画像分類タイプ

画像分類タイプは、画像から以下のようにその画像が何であるかの識別(分類)ができます。

  • 犬の画像から、ブルドッグ・プードル・ダックスフンドなどに画像一枚ごとに分類
  • 猫の画像から、ペルシャ・シャム・アビシニアンなどに画像一枚ごとに分類
  • 寿司の画像から、トロ・いくら・サーモンなどに画像一枚ごとに分類

画像物体検出タイプ[手動設定]

error このタイプはアルファ版として限定公開しています。

画像物体検出タイプ[手動設定]は、画像からその画像のどこに何があるかの識別(検出)ができます。複数物体の検出も一度にできます。

画像物体検出の例

手動設定タイプは、自動設定タイプとは違い、自身で用意した画像データを使ってトレーニングし、任意の物体検出が可能です。

画像物体検出タイプ[自動設定]

画像物体検出タイプ[自動設定]は、画像からその画像のどこに何があるかの識別(検出)ができます。複数物体の検出も一度にできます。

自動設定タイプは、手動設定タイプとは違い、COCO (Common Objects in Context) のデータセットを使ってトレーニングした結果(モデル)を提供します(トレーニング不要)。

このモデルで、検出可能な物体(ラベル/キャプション)は以下のとおりです。

  • airplane (5)
  • apple (53)
  • backpack (27)
  • banana (52)
  • baseball bat (39)
  • baseball glove (40)
  • bear (23)
  • bed (65)
  • bench (15)
  • bicycle (2)
  • bird (16)
  • boat (9)
  • book (84)
  • bottle (44)
  • bowl (51)
  • broccoli (56)
  • bus (6)
  • cake (61)
  • car (3)
  • carrot (57)
  • cat (17)
  • cell phone (77)
  • chair (62)
  • clock (85)
  • couch (63)
  • cow (21)
  • cup (47)
  • dining table (67)
  • dog (18)
  • donut (60)
  • elephant (22)
  • fire hydrant (11)
  • fork (48)
  • frisbee (34)
  • giraffe (25)
  • hair drier (89)
  • handbag (31)
  • horse (19)
  • hot dog (58)
  • keyboard (76)
  • kite (38)
  • knife (49)
  • laptop (73)
  • microwave (78)
  • motorcycle (4)
  • mouse (74)
  • orange (55)
  • oven (79)
  • parking meter (14)
  • person (1)
  • pizza (59)
  • potted plant (64)
  • refrigerator (82)
  • remote (75)
  • sandwich (54)
  • scissors (87)
  • sheep (20)
  • sink (81)
  • skateboard (41)
  • skis (35)
  • snowboard (36)
  • spoon (50)
  • sports ball (37)
  • stop sign (13)
  • suitcase (33)
  • surfboard (42)
  • teddy bear (88)
  • tennis racket (43)
  • tie (32)
  • toaster (80)
  • toilet (70)
  • toothbrush (90)
  • traffic light (10)
  • train (7)
  • truck (8)
  • tv (72)
  • umbrella (28)
  • vase (86)
  • wine glass (46)
  • zebra (24)

括弧内の数字は検出物体の ID です。Big Data ボードの[ML ボード予測(バッチ)]ブロックの出力結果では、この ID が出力されます([ML ボード予測(オンライン)]ブロックの場合は、ラベルです)。

GCP サービスアカウント設定

セルフサービスプランのみの機能です。

この画面では、GCP のサービスアカウントキーファイルの設定と Google Cloud Machine Learning を利用するための API を有効にします。

GCP サービスアカウント設定画面

GCP サービスアカウント選択

ML ボードは、お客さまの GCP プロジェクトに、環境を構築し運用します。これには、MAGELLAN BLOCKS がお客さまの GCP プロジェクトを使用する権限が必要です。これを可能にするのが、GCP サービスアカウントです。

API の有効化

「確認」ボタンの前にチェックマークが付いていない API がある場合は、以下の操作を行います。

  1. チェックマークが付いていない API のリンクをクリックします。
  2. 「Google API Console」画面上部の「有効にする」ボタンをクリックします。
  3. 「有効にする」ボタンが「無効にする」ボタンに切り替わったら、Google API Console の画面を閉じて、BLOCKS の画面に戻ります。

すべての API について、上記操作が終わったら、「確認」ボタンをクリックします。「確認」ボタンの前にチェックマークが付くことを確認してください。

もし、チェックマークが付かない場合は、しばらく時間をおいてから「確認」ボタンをクリックしてください。状況によっては、なかなかチェックが付かない場合もあります。その場合は、チェックマークが付くまで、しばらく時間をおく→「確認」ボタンをクリックする操作を繰り返してください。

が表示される原因としては、以下のことが考えられます。

  • 対象となる API が有効化されていない。
    API 名横の をクリックして、表示されるページで確認します。もし、有効となっていない場合は、有効にします。
  • GCP サービスアカウントの役割が「編集者」となっていない。
    GCP コンソール メニュー(GCP コンソール左上の )の「IAM と管理」をクリックし、「IAM」で確認します。もし、役割が「 編集者」となっていない場合は、「編集者」を選択します。
  • 対象となる GCP プロジェクトの課金が有効になっていない。
    GCP コンソール メニュー(GCP コンソール左上の )の「お支払い」で確認します。もし、課金が有効になっていない場合は、課金を有効にします。

ストレージ設定

セルフサービスプランのみの機能です。

この画面では、トレーニング結果を格納するための Google Cloud Storage (GCS) のバケットを設定します。

ストレージ設定画面

GCS バケットを選択する

バケットは、ML ボード専用のバケットを用意して、そのバケットを選択してください。用意するバケットは、ML ボードを最適な状態で使用するために、以下の設定で作成してください。

オプション
デフォルトのストレージクラス Regional
Regional のロケーション us-central1

GCS バケット内のディレクトリを指定する

ディレクトリは、複数の ML ボードで共有することを想定し、ML ボードごとにディレクトリを分けて使用します。ディレクトリは、事前に準備する必要はありません。ここに指定したディレクトリ名でディレクトリが作成されます。

トレーニングデータ設定

この画面では、トレーニングに使用するデータの情報を設定します。

トレーニングデータ設定画面

トレーニングに使用するデータは、コンマ区切りの CSV ファイル(BOM なし、UTF-8)として準備してください。

  • データは、学習のために必要となる1つ以上の「因子データ」と、その「結果となる値」をセットにします。「結果となる値」とは、因子データの因果関係から導き出されるであろう値で、数値分類の場合は「回答値」、数値回帰の場合は「実績値」です。
  • 1 行ごとに「因子データ」と、「結果となる値」をセットにして並べます。
  • 1 行のデータの並び順は、「因子データ」、「結果となる値」の順です。
  • 「結果となる値」の型は、数値分類が文字列で、数値回帰が数値となります。
  • データを訓練データと検証データに分ける場合は、両方とも同一形式にします。
  • データを訓練データと検証データに分けない場合は、BLOCKS 内部で自動的に訓練データと検証データに分割します。分割時の訓練データと検証データの比率は、おおよそ 8:2 です。

因子データの設定

「因子データ」の設定は、[項目を追加する]ボタンをクリックして、項目数分の項目名と型に関する情報を設定していきます。

設定項目 説明
順番

項目の順番を入れ替えることが出来ます。 をクリックすると、当該項目がひとつ上へ移動します。 をクリックすると、当該項目がひとつ下へ移動します。

項目名 項目を内容を示す名称を入力します。英数字と _ が使用できます。
項目のデータの種類を指定します。数値 / / 曜日 / フラグ / 文字列列挙 / 時系列の 6 種類の型をサポートしています。型について詳しくは、下表の型の種類を参照してください。
型別設定

型によってはさらに設定を必要とする項目があります。ここでは、その設定が行えます。

  • 数値型:次元数
  • 文字列列挙型:キーワードリスト・おおよその件数を指定
  • 時系列型:時系列の数・種類の数

詳しくは、下表の型の種類を参照してください。

削除

項目の削除ができます。 ボタンをクリックすると当該項目を削除します。

型の種類:

説明
数値 整数や小数です。型が数値の場合は、さらに次元数が指定できます。1 つの項目に、複数の数値が列挙される場合は、列挙される数値の数を指定します。例えば、98,1.3,0,"A" というデータのうち、98,1.3 を 1 つの項目として扱いたい場合は、2 と指定します。次元数の例を示した図
月を表す数値です。数値の範囲は、0 から 11 もしくは、1 から 12 です。
曜日 曜日を表す数値です。数値の範囲は、0 から 6 です。
フラグ型

2 種類のパターンから選択するケースを表す数値です。数値には、01 が指定できます。

以下のような何々かどうかというケースの因子で使えます。

  • 休日かどうか(休日なら 1、違うなら 0
  • イベントがあるかどうか(イベントがあるなら 1、ないなら 0
  • 独身かどうか(独身なら 1, 違うなら 0

数値(01)の使い方はあくまでも例です。01 の使い方を逆にしても構いません。

文字列列挙

文字列です。文字列では、さらに「キーワードリスト」か「おおよその件数を指定」かを選択します。

文字列列挙のオプション 説明
キーワードリスト 項目に出現する文字列のパターンが明確な場合に選択します。また、そのパターンをカンマ区切りで列挙します。
おおよその件数を指定 項目に出現する文字列のパターンが不明瞭な場合に選択します。また、項目に出現するであろうおおよそのパターン数を指定します。
時系列

数値データの並び順に意味があるときに使用します。

時系列は 1 つのトレーニングデータに 1 つのみ指定できます。

下図のように過去 1 週間分の気象データ(最低気温・最高気温・降水量)のパターンを使って何かを学習・予測させたいとします。

時系列型の概念図

このとき、7 日前の気象データ・6 日前の気象データ・...・1 日前の気象データという並び順に意味がある場合に、この時系列型を使用します。

時系列型の場合は、「時系列の数」と「種類の数」を指定します。

「時系列の数」とは、並び順に意味があるデータの個数です。この例の場合は、1 週間分の気象データがそれに該当するため、時系列の数は 7 個です。

時系列の数の例

「種類の数」とは、「時系列の数」でカウントした各データ内のデータの個数です。この例の場合は、気象データ内のデータの個数がそれに該当するため、種類の数は 3 個です。

種類の数の例

この例では、時系列の名称どおりの時間経過に沿った並びのデータとなっていますが、必ずしもその必要はありません。時間経過にかかわらず、データの並び順に意味があるときに使用します。

この時系列型のデータを CSV で表現するときは、下図のようにそのままコンマ区切りでデータを並べます。

CSV の例

分類するラベルの設定

数値分類タイプの場合は、[結果となる値]の[分類するラベル]に結果となる値(回答値)のパターンを設定します。

分類するラベルの設定は、入力フィールドにラベルを入力し、[追加]ボタンをクリックします。

複数のラベルをまとめて設定したい場合は、ラベル入力時に、カンマ区切りでラベルを列挙します。(例:Iris-setosa, Iris-versicolor, Iris-virginica

ラベルを削除したい場合は、ラベル横の をクリックします。

出力次元数の設定

数値回帰タイプの場合は、[結果となる値]の[出力次元数]に結果となる値(実績値)の次元数(値の個数)を設定します。

例えば、実績値が地球上の位置を表す緯度、経度および高さを持つような場合は、3 と設定します。

JSON テキストを使ったトレーニングデータ情報の設定

トレーニングデータの情報は、JSON テキストでも設定できます。

データ項目」の「JSONを直接編集する」をクリックすると、JSON テキストを編集する領域が表示されます。この領域に、JSON テキストを指定します。

フォームで編集」をクリックすると、GUI でデータ項目を設定する表示に切り替わります。

トレーニングデータの情報を指定する JSON テキストの仕様は、以下のとおりです。

  • トレーニングデータの情報は、配列値([項目1, 項目2, ..., 項目n])で指定します。
    項目の並びは、トレーニングデータ(CSV ファイル)の項目(カラム)の並びに合わせます。
  • 各項目は、オブジェクト値({...})で指定します。オブジェクト値の各メンバーの規則は、以下のとおりです。
    • 項目名は、"name": "項目名" と指定します。
    • 型は、"type": "型" と指定します。"型" の部分は、以下のいずれかを指定します。
      "型"に指定する値 型ごとの追加情報
      数値型

      "number"

      次元数を "count": 次元数 で指定します。

      "month"

      なし。

      曜日

      "weekday"

      なし。

      フラグ型

      "boolean"

      なし。

      文字列列挙型

      "enum"

      キーワードリストの場合は、"keys": "キーワードリスト" を指定します。

      おおよその件数を指定の場合は、"size": おおよその件数 を指定します。

      時系列型

      "conv1d"

      "length": 時系列の数"channel": 種類の数 を指定します。

以下は、JSON テキストの指定例です。

[
  {
    "type": "number",
    "name": "item1",
    "count": 1
  },
  {
    "type": "month",
    "name": "item2"
  },
  {
    "type": "weekday",
    "name": "item3"
  },
  {
    "type": "boolean",
    "name": "item4"
  },
  {
    "type": "enum",
    "name": "item5",
    "keys": "A, B, O, AB"
  },
  {
    "type": "enum",
    "name": "item6",
    "size": 100
  },
  {
    "type": "conv1d",
    "name": "item7",
    "length": 3,
    "channel": 1
  }
]

ラベル設定

画像物体検出タイプでは、トレーニングの前にトレーニング対象の画像に対して、ラベル付けを行います。

下図は、犬と猫にそれぞれ、「dog」・「cat」とラベル付けしている例です。

補足説明図:ラベル付けの例

ここでは、このラベル付けで使用するラベルの登録を行います。この例の場合は、「dog」・「cat」をラベル登録します。

ラベルの登録は、ラベル一覧のテキスト入力フィールドにラベルを入力し、[]ボタンをクリックします。ラベル入力時に、カンマ区切りでラベルを列挙(例:dog, cat)し、[]ボタンをクリックすると複数のラベルをまとめて設定できます。

ラベルの規則は、以下のとおりです。

  • 半角英数字とアンダースコア(_)が使用可能
  • 64 文字以内

ラベルを削除したい場合は、削除したいラベル右端のゴミ箱アイコン()をクリックします。

ラベルの登録・削除は、ボード作成後の変更はできません。

モデル設定

トレーニング済みモデルを以下の中から設定します。

モデル モデルサイズ 予測速度 予測精度
スピード優先 小さめ 速め 低め
精度優先 大きめ 遅め 高め

info_outline 表中の各値は、モデル間での相対的な表現です。

トレーニング詳細

この画面では、以下のことができます。

トレーニング詳細

画像のラベル管理

画像物体検出タイプ[手動設定]のみの機能です(アルファ版限定公開)。

画像物体検出タイプでは、トレーニングの前にトレーニング対象の画像に対して、ラベル付けの作業が必要です。

ラベル付けとは、画像中の物体に対してその物体を囲む矩形範囲を明示し、そこに名前(ラベル)を付けます。1 つの画像中の複数の物体に対して、同時にラベルが付けられます。

補足説明図:ラベル付けの例

ラベル付けするトレーニング画像は、あらかじめ GCS 上の 1 つのフォルダー内にフラットな状態で集約してください(フォルダー分けによる階層化は不可)。

error_outline ラベル付けするトレーニング画像は、100 枚程度は必要です。枚数が少ないと、トレーニングで失敗する可能性があります。

ラベルの付け方
  1. ラベルをつける]ボタンをクリックします。
  2. GCS 上の画像フォルダーを選択し、[選択]ボタンをクリックします。

    補足説明図:GCS 上の画像フォルダーを選択する手順例
  3. ラベル付けの画面になります。

    image_anotator_ja
  4. ラベル付けの画面で、画像とラベルを選択し、ラベル付けする物体の範囲をマウスのドラッグ操作でマーキングします。

    補足説明図:ラベルの付け方
    • 範囲右上の×ボタンをクリックすると、範囲選択を解除します。
    • 範囲右下の四角いマーカーをドラッグすると、範囲のサイズが変更できます。
    • 範囲内をドラッグすると、範囲の位置を調整できます。

    info_outline ラベルの選択では、ラベルの追加もできます。ラベルを追加したい場合は、[]ボタンをクリックしてください。ラベルを追加するフィールドが表示されます。追加するラベルを入力し、[追加]ボタンをクリックしてください。

    補足説明図:ラベルの編集方法
  5. 保存]ボタンをクリックして、ラベル付けの情報を保存します。

    ラベル付け済みのファイルには、画面左端のファイル一覧にチェックマーク(check_circle)が付きます。

  6. ファイル一覧のすべての画像に対して、この操作を繰り返します。

  7. 終わったら、画面右上の[閉じる]ボタンをクリックします。

トレーニングを開始する

[トレーニング開始] ボタンをクリックすると「トレーニング開始」画面が表示されます。

トレーニング開始画面で、トレーニングに必要な情報を項目を設定して、トレーニングを開始します。

トレーニングを一覧する

トレーニングが 1 つ以上あるとトレーニングが一覧表示されます。トレーニングの一覧では、トレーニングごとに以下の情報が確認できます。

情報 説明
トレーニング名 トレーニング開始」で設定したトレーニング名です。
トレーニング開始日時 - 終了日時 トレーニングを開始した日時と、トレーニングが終了した日時です。
ステータス トレーニングの状況です。トレーニングの状況に応じて、準備中 / トレーニング中 / 中断済み / 成功 / 失敗のいずれかが表示されます。
正確率 / 誤差 トレーニングの評価結果です。分類の場合は正確率、数値回帰の場合は誤差で表します。
詳細 トレーニングの詳細な情報が確認できます。
アクション トレーニングの中断とトレーニング結果の適用ができます。トレーニング結果は 1 つのみ適用できます。適用するとトレーニング結果を使った予測ができます。

各トレーニング右端の をクリックするとメニューが表示されます。

トレーニング一覧でのメニュー表示

各メニューをクリックすることで、以下のことができます。

  • 同じ設定で新規トレーニングを開始

    当該トレニーング開始時の各種設定を引き継いで新しいトレーニングの開始ができます(引き継がれた設定内容は変更可能)。

  • トレーニング時間を延長する

    当該トレーニングの状態(最良のトレーニング結果)を引き継いでトレーニングの再開ができます。

    このトレーニングの再開では、当該トレーニングを複製し、新しいトレーニングとして実施します。このとき、[トレーニングの最大試行回数]以外の設定が変更可能です(最大試行回数は 1 固定で実施)。

    info_outline この機能が利用できるのは、トレーニングの経過制限時間か早期打ち切り判定などで、トレーニングが打ち切られたトレーニングです。この機能が利用できない(打ち切られた)トレーニングでは、このメニュー項目のクリックはできません。

  • トレーニングを削除

    当該トレーニングを削除します。

トレーニングの詳細を確認する

トレーニングの[詳細を見る]リンクをクリックすると、そのトレーニングの詳細な情報が確認できます。

項目 説明
トレーニング結果

トレーニングの開始日時・終了日時・ステータス・正確率もしくは誤差が確認できます。

画像分類の場合は、[分類に失敗した画像]が表示されることがあります。

画像分類では、画像フォルダーのデータをおよそ 8:2 の割合で訓練用のデータと検証用のデータに自動的に仕分けして、トレーニングを行います。

トレーニングでは、訓練用のデータで学習を行い、その学習の成果を検証用のデータで検証します。この検証で、分類結果が想定と異なっていると[分類に失敗した画像]が表示されます。

分類に失敗した画像]が表示された場合は提示された各画像を確認してください。画像に誤りがあったときは、適切なフォルダーに配置しなおすか、削除してから再度トレーニングを行ってください(画像に誤りがなければ、その画像はそのままで構いません)。

設定内容

トレーニングデータ開始」で設定した内容が確認できます。

エラーログ トレーニング失敗時のエラーメッセージが確認できます。失敗の原因を調べる際の参考にしてください。

ML ボードの情報を確認する

「設定内容」の項目で ML ボードの情報が確認できます。

項目 説明
ボード名 ML ボード作成」で設定した ML ボードのボード名です。
タイプ ML ボード作成」で設定した ML ボードのタイプです。
GCP サービスアカウント ML ボードが使用する GCP プロジェクト ID です。
モデル名 トレーニングのモデル名(トレーニング結果)です。
トレーニングデータ設定 トレーニングデータ設定」で設定した内容です。

ボードを削除する

「ボード削除」項目の「ボードを削除する」をクリックすると ML ボードが削除できます。

トレーニング開始

この画面では、トレーニングに必要な項目を設定して、トレーニングを開始します。

数値分類タイプ・数値回帰タイプ

トレーニング開始

設定項目は以下のとおりです。

設定項目 説明
トレーニング名 トレーニングに名前をつけます。
トレーニングデータアップロード

トレーニングデータのアップロード先に使用する Google Cloud Storage (GCS) の場所が「gs://バケット名」の形式で表示されます。

リンクをクリックすると、ウェブブラウザーの別タブで Google Cloud Console が開き、この GCS にアクセスできます(プロジェクト設定の GCP アクセスで登録した Google アカウントによるログインが必要)。

フルサービスプランのときのみ表示されます。

トレーニングデータのアップロード方法

トレーニングデータをどのように指定するかを指定します。

  • 訓練データと検証データとをそれぞれ 1 ファイルずつ準備する

    トレーニングデータとして、訓練データと検証データの 2 つの CSV ファイルを準備した場合は、こちらを選択します。

  • 1 つのファイルから訓練データと検証データとを自動分割する

    トレーニングデータとして、1 つの CSV ファイルのみを準備した場合は、こちらを選択します。この場合は、BLOCKS 内部で自動的に訓練データと検証データに分割してトレーニングを実施します。分割時の訓練データと検証データの比率は、おおよそ 8:2 です。

訓練データ/トレーニングデータ URL

GCS 上の訓練データもしくはトレーニングデータファイルのパス(gs://バケット名/ファイル名.csv のような URL)を指定します。

パスに指定できる文字は、英数字・アンダースコア(_)・ハイフン(-)・スラッシュ(/)などのアスキー(ASCII)文字のみです。

アイコンをクリックして表示される GCS ファイルセレクターを使ってファイルを選択すると、この形式でパスが展開されます。

検証データ URL

GCS 上の検証データファイルのパス(gs://バケット名/ファイル名.csv のような URL)を指定します。

パスに指定できる文字は、英数字・アンダースコア(_)・ハイフン(-)・スラッシュ(/)などのアスキー(ASCII)文字のみです。

アイコンをクリックして表示される GCS ファイルセレクターを使ってファイルを選択すると、この形式でパスが展開されます。

CSV データの読み飛ばすヘッダー行

トレーニングで使用する CSV ファイル中のヘッダー行を無視する機能です。CSV ファイル中にヘッダー行がある場合は、ヘッダー行の行数を指定します。ヘッダーがない場合は 0 を指定します。

トレーニングの経過制限時間

ML ボードのトレーニングでは、最良のトレーニング結果を導き出すために、試行を繰り返します。

トレーニングの経過制限時間は、1 回の試行にかける最大の時間を指定します。

1 回の試行に時間制限をかけない場合は、0 を設定します。

試行の途中でトレーニング結果(正確率や誤差)が悪化する(トレーニングの過剰状態になる)と、「トレーニングの経過制限時間」を待たずに試行を止めます。

トレーニングの最大試行回数

トレーニングの試行回数は、試行の回数を 1 以上の値で指定します。

「トレーニングの経過制限時間 × トレーニングの最大試行回数」が、トレーニングにかかるおおよその時間です。実際には、付加的・間接的な処理による時間もあるため、もう少し時間がかかる可能性もあります。

早期打ち切り判定を利用する

早期打ち切り判定を[利用する]か[利用しない]かを選択します。

早期打ち切り判定とは、トレーニング中にこれ以上の精度向上が見込めないと判断した場合に、トレーニングの経過制限時間に達していなくてもトレーニングを打ち切る機能です。ただし、精度向上の見込み判断の正確性を保証するのものではありません。ご利用は、ご自身の判断でお願いします。

マシンタイプ

トレーニングに使用するマシンの種類を選択します。

  • 単一ノード

    標準的なマシンを使ってトレーニングを行います。

  • 単一ノード(GPU)

    GPU (Graphic Processing Unit) を使ってトレーニングを行います。GCP の料金が[単一ノード]に比べて 3 倍ほどかかりますが、[単一ノード]に比べて高速なトレーニングが望めます。

    ただし、トレーニングデータの内容によっては、思ったほど高速にならないことや[単一ノード]より遅くなることもあります。

トレーニングの説明 トレーニングの説明を記入します。

画像分類タイプ

画像分類タイプのトレーニング開始画面

設定項目は以下のとおりです。

設定項目 説明
トレーニング名 トレーニングに名前をつけます。
トレーニングデータアップロード

トレーニングデータのアップロード先に使用する Google Cloud Storage (GCS) の場所が「gs://バケット名」の形式で表示されます。

リンクをクリックすると、ウェブブラウザーの別タブで Google Cloud Console が開き、この GCS にアクセスできます(プロジェクト設定の GCP アクセスで登録した Google アカウントによるログインが必要)。

フルサービスプランのときのみ表示されます。

画像フォルダー

トレーニングに使用する GCS 上の画像フォルダーへのパス(gs://バケット名/フォルダー/ のような URL)を指定します。パスの末尾は必ず / とします。

アイコンをクリックして表示される GCS ファイルセレクターを使ってフォルダーを選択すると、この形式でパスが展開されます。

画像フォルダーの仕様は、以下のとおりです。

画像フォルダーの形式
  • トレーニング用画像ファイルをまとめるためのフォルダーを GCS 上に用意します。これを画像フォルダーと呼びます。
  • 画像フォルダーの直下に、分類する種類ごとのフォルダーを用意します。このフォルダー名が分類名として扱われます。
  • 画像ファイルは、分類ごとのフォルダー内に配置します。
  • 対応する画像ファイルの形式は、JPEG のみです。
  • 極端な縦横比の画像は、正しく分類できない可能性があります。
  • 分類ごとのフォルダー内には、画像ファイルのみを配置します(更にフォルダーを作って整理しないでください)。

たとえば、犬と猫の画像を分類する場合は、犬用のフォルダーと猫用のフォルダーを分けてそれぞれに犬と猫の画像ファイルを配置します。

トレーニングタイプ

トレーニングの種類を選択します。

  • スピード優先学習

    「精度優先学習」との比較において、トレーニングの時間が短い代わりに、予測精度が低くなる傾向にあります。

  • 精度優先学習

    「スピード優先学習」との比較において、トレーニングの時間が長い代わりに、予測精度が高くなる傾向にあります。

トレーニングの経過制限時間

トレーニングにかける最大の時間を指定します。

トレーニングの最大試行回数

トレーニングの試行回数は、試行の回数を 1 以上の値で指定します。

「トレーニングの経過制限時間 × トレーニングの最大試行回数」が、トレーニングにかかるおおよその時間です。実際には、付加的・間接的な処理による時間もあるため、もう少し時間がかかる可能性もあります。

早期打ち切り判定を利用する

早期打ち切り判定を[利用する]か[利用しない]かを選択します。

早期打ち切り判定とは、トレーニング中にこれ以上の精度向上が見込めないと判断した場合に、トレーニングの経過制限時間に達していなくてもトレーニングを打ち切る機能です。ただし、精度向上の見込み判断の正確性を保証するのものではありません。ご利用は、ご自身の判断でお願いします。

このオプションは、[トレーニングタイプ]で[精度優先学習]を選択したときのみ表示されます。

マシンタイプ

トレーニングに使用するマシンの種類を選択します。

  • 単一ノード(GPU)

    単一のマシンで GPU (Graphic Processing Unit) を使ってトレーニングを行います。

  • 分散ノード(GPU)

    複数のマシンで GPU を使ってトレーニングを行います。[単一ノード(GPU)]のマシンタイプに比べて GCP の料金が割高になりますが、[単一ノード(GPU)]に比べて高速なトレーニングが望めます。

    分散ノード(GPU)]は、[トレーニングタイプ]で[精度優先学習]選択したときのみ表示されます。

トレーニングの説明 トレーニングの説明を記入します。

画像物体検出タイプ[手動設定]

error このタイプはアルファ版として限定公開しています。

画像物体検出タイプのトレーニング開始画面

設定項目は以下のとおりです。

設定項目 説明
トレーニング名 トレーニングに名前をつけます。
画像フォルダー

ラベル付けを行ったトレーニング画像のフォルダーへの GCS URL を指定します。

error_outline ラベル付けしたトレーニング画像は、100 枚程度は必要です。枚数が少ないと、トレーニングで失敗する可能性があります。

トレーニングの説明 トレーニングの説明を記入します。

GCP サービスの利用料金

ML ボードは、お客さまの GCP プロジェクトに各種 GCP サービスを利用した環境を構築します。

このため、MAGELLAN BLOCKS の料金とは別に GCP の料金が発生します。適用される料金は、サービスごとに異なります。詳しくは、ML ボードで使用する各サービスごとの料金ページを参照してください。