モデル ビルダーにトレーニング データを読み込む

ML.NET 用のモデル ビルダー シナリオのいずれかで使用するために、ファイルまたは SQL Server データベースからご利用のトレーニング データセットを読み込む方法について説明します。 モデル ビルダーのシナリオでは、SQL Server データベース、イメージ ファイル、CSV または TSV ファイル形式をトレーニング データとして使用できます。

Model Builder では、コンマ、タブ、およびセミコロン区切り記号と PNG および JPG 画像を含む TSV、CSV、TXT ファイルのみが受け入れられます。

モデル ビルダーのシナリオ

モデル ビルダーは、次の機械学習シナリオ用のモデルを作成するのに役立ちます。

  • データ分類 (二項分類と多クラス分類): テキスト データを 2 つ以上のカテゴリに分類します。
  • 値の予測 (回帰): 数値を予測します。
  • 画像分類 (ディープ ラーニング): 画像を 2 つ以上のカテゴリに分類します。
  • レコメンデーション (レコメンデーション): 特定のユーザーに推奨される項目の一覧を生成します。
  • 物体検出 (ディープ ラーニング): 画像内の物体を検出して識別します。 これにより、1 つ以上の物体を検索し、適切にラベルを付けることができます。

この記事では、テキストまたは数値データを含む分類と回帰、画像分類、および物体検出シナリオについて説明します。

ファイルからのテキスト データまたは数値データの読み込み

ファイルからモデル ビルダーにテキスト データまたは数値データを読み込むことができます。 コンマ区切り (CSV) またはタブ区切り (TSV) のファイル形式が受け入れられます。

  1. Model Builder のデータ ステップで、データ ソースの種類として [ファイル] を選択します。

  2. テキスト ボックスの横にある [参照] ボタンを選択し、エクスプローラーを使用してデータ ファイルを参照して選択します。

  3. [予測する列 (ラベル)] ドロップダウンでカテゴリを選択します。

    Note

    (省略可能) データ分類シナリオ: ラベル列のデータ型 ([予測する列 (ラベル)] ドロップダウンの値) をブール値 (True または False) に設定すると、モデル トレーニング パイプラインで二項分類アルゴリズムが使用されます。 それ以外の場合は、多クラス分類トレーナーが使用されます。 [Advanced data options](詳細データ オプション) を使用してラベル列のデータ型を変更し、データに使用するトレーナーの種類を Model Builder に通知します。

  4. [Advanced data options](詳細データ オプション) リンクのデータを更新して、列の設定を行うか、データの書式設定を更新します。

モデル ビルダーで使用するデータ ソース ファイルの設定が完了しました。 [次のステップ] ボタンをクリックして、Model Builder での次のステップに進みます。

SQL Server データベースからデータを読み込む

モデル ビルダーでは、ローカルおよびリモートの SQL Server データベースからのデータの読み込みがサポートされています。

ローカル データベース ファイル

SQL Server データベース ファイルから Model Builder にデータを読み込むには、次のようにします。

  1. Model Builder のデータ ステップで、データ ソースの種類として [SQL Server] を選択します。

  2. [データ ソースの選択] ボタンを選択します。

    1. [データ ソースの選択] ダイアログで、 [Microsoft SQL Server データベース ファイル] を選択します。
    2. [常にこれを選択する] チェックボックスをオフにして、 [続行] を選択します。
    3. [接続プロパティ] ダイアログで、[参照] を選択し、ダウンロードした .MDF ファイルを選択します。
    4. [OK] を選択します。
  3. [テーブル名] ドロップダウンからデータセット名を選択します。

  4. [予測する列 (ラベル)] ドロップダウンで、予測を作成するデータ カテゴリを選択します。

    Note

    (省略可能) データ分類シナリオ: ラベル列のデータ型 ([予測する列 (ラベル)] ドロップダウンの値) をブール値 (True または False) に設定すると、モデル トレーニング パイプラインで二項分類アルゴリズムが使用されます。 それ以外の場合は、多クラス分類トレーナーが使用されます。 [Advanced data options](詳細データ オプション) を使用してラベル列のデータ型を変更し、データに使用するトレーナーの種類を Model Builder に通知します。

  5. [Advanced data options](詳細データ オプション) リンクのデータを更新して、列の設定を行うか、データの書式設定を更新します。

リモート データベース

SQL Server データベース接続から Model Builder にデータを読み込むには、次のようにします。

  1. Model Builder のデータ ステップで、データ ソースの種類として [SQL Server] を選択します。

  2. [データ ソースの選択] ボタンを選択します。

    1. [データ ソースの選択] ダイアログで、 [Microsoft SQL Server] を選択します。
  3. [接続のプロパティ] ダイアログで、Microsoft SQL データベースのプロパティを入力します。

    1. 接続するテーブルを含むサーバー名を指定します。
    2. サーバーへの認証を設定します。 [SQL Server 認証] が選択されている場合は、サーバーのユーザー名とパスワードを入力します。
    3. [データベース名の選択または入力] ドロップダウンで、接続するデータベースを選択します。 サーバー名とログイン情報が正しい場合は、自動的に設定されるはずです。
    4. [OK] を選択します。
  4. [テーブル名] ドロップダウンからデータセット名を選択します。

  5. [予測する列 (ラベル)] ドロップダウンで、予測を作成するデータ カテゴリを選択します。

    Note

    (省略可能) データ分類シナリオ: ラベル列のデータ型 ([予測する列 (ラベル)] ドロップダウンの値) をブール値 (True または False) に設定すると、モデル トレーニング パイプラインで二項分類アルゴリズムが使用されます。 それ以外の場合は、多クラス分類トレーナーが使用されます。 [Advanced data options](詳細データ オプション) を使用してラベル列のデータ型を変更し、データに使用するトレーナーの種類を Model Builder に通知します。

  6. [Advanced data options](詳細データ オプション) リンクのデータを更新して、列の設定を行うか、データの書式設定を更新します。

モデル ビルダーで使用するデータ ソース ファイルの設定が完了しました。 [次のステップ] ボタン リンクをクリックして、Model Builder での次のステップに進みます。

画像分類データ ファイルを設定する

Model Builder では、画像分類データが、分類のカテゴリに対応するフォルダーに整理された JPG または PNG ファイルである必要があります。

モデル ビルダーにイメージを読み込むには、単一の最上位ディレクトリへのパスを指定します。

  • この最上位ディレクトリには、予測するカテゴリごとにサブフォルダーが 1 つ含まれています。
  • 各サブフォルダーには、そのカテゴリに属するイメージ ファイルが含まれています。

次に示すフォルダー構造で、最上位ディレクトリは flower_photos です。 予測するカテゴリに対応したサブディレクトリとして、daisy、dandelion、roses、sunflowers、および tulips の 5 つがあります。 これらの各サブディレクトリには、それぞれのカテゴリに属するイメージが含まれています。

\---flower_photos
    +---daisy
    |       100080576_f52e8ee070_n.jpg
    |       102841525_bd6628ae3c.jpg
    |       105806915_a9c13e2106_n.jpg
    |
    +---dandelion
    |       10443973_aeb97513fc_m.jpg
    |       10683189_bd6e371b97.jpg
    |       10919961_0af657c4e8.jpg
    |
    +---roses
    |       102501987_3cdb8e5394_n.jpg
    |       110472418_87b6a3aa98_m.jpg
    |       118974357_0faa23cce9_n.jpg
    |
    +---sunflowers
    |       127192624_afa3d9cb84.jpg
    |       145303599_2627e23815_n.jpg
    |       147804446_ef9244c8ce_m.jpg
    |
    \---tulips
            100930342_92e8746431_n.jpg
            107693873_86021ac4ea_n.jpg
            10791227_7168491604.jpg

物体検出画像データ ファイルを設定する

Model Builder では、物体検出画像データが、VoTT から生成された JSON 形式である必要があります。 JSON ファイルは、プロジェクト設定で指定されている [ターゲットの場所]vott-json-export フォルダーにあります。

JSON ファイルは、VoTT から生成された次の情報で構成されます。

  • 作成されたすべてのタグ
  • 画像ファイルの場所
  • 画像境界ボックスの情報
  • 画像に関連付けられているタグ

物体検出用のデータの準備について詳しくは、「VoTT から物体検出データを生成する」を参照してください。

次のステップ

次のチュートリアルに従って、モデル ビルダーを使用した機械学習アプリの作成を行います。

コードを使用してモデルをトレーニングする場合は、ML.NET API を使用したデータ読み込みの方法に関するページを参照してください。