ブロックリファレンス

BLOCKS Reference

Watson

自然言語分類器の作成とトレーニング

概要

このブロックはベータ版です。正式版リリース後、本ブロックは利用できなくなります。ご注意ください。
※正式版リリース後は、正式版のブロックをご利用ください。

また、ベータ版での提供となるため、一部の機能が正常に動作しない可能性があります。機能改善や不具合などのフィードバックは、フォーラムやお問い合わせで情報提供をお願いします。フィードバックの内容は MAGELLAN BLOCKS の品質向上のために利用いたします。

このブロックの利用にあたっては、お客さまの IBM Cloud 環境上で、 Natural Language Classifier サービス が利用可能となっている必要があります。また、Natural Language Classifier の資格情報も必要です。

このブロックは、IBM Watson Natural Language Classifier API の Create classifier を BLOCKS から利用できるようにしたものです。

このブロックを実行すると、自然言語分類器(分類器)の作成とトレーニングが行えます。下図は、このブロックの位置づけを表したものです。

自然言語分類器の作成とトレーニングブロックの概略図
  1. 自然言語分類器の作成とトレーニングブロック

    分類器は、テキスト形式のトレーニングデータから学習(トレーニング)を行います。

  2. テキストの分類ブロック

    トレーニング済みの分類器は、トレーニングされていないテキストデータから、そのテキストの意図を解釈し分類します。分類は、トレーニング時に定められた分類の中から最も適切なもが選択されます。

トレーニングデータの形式は、以下の 3 種類の中から選べます。

以下、各トレーニングデータの形式と、そのデータを BLOCKS(フローデザイナー)でどう扱うかの簡単な解説です。

Natural Language Classifier 独自のテキスト形式(CSV)

Natural Language Classifier 独自のテキスト形式については、IBM Cloud 資料 open_in_new を参照願います。

ここでは、Natural Language Classifier 独自のデータをフローデザイナーでどう扱うかを解説します。

BLOCKS では、[GCS から変数へロード]ブロックを使うと、Google Cloud Storage(GCS)上のファイルを読み取ってくれます。あとは、このブロックと、[自然言語分類器の作成とトレーニング]ブロックを組み合わせるだけです。

まず、データを GCS へアップロードします。ここでは、weather_data_train.csv というファイルを my-blocks-bucket という GCS 上にバケットにアップロードしたとします(GCS URL: gs://my-blocks-bucket/weather_data_train.csv)。

info_outline BLOCKS の機能 GCS Explorer を使うと簡単にローカル PC のファイルを GCS へアップロードできます。

フローを以下のように作成すると、分類器の作成とトレーニングができます。

サンプルフローと各ブロックのプロパティ値の例

GCS から変数へロード]ブロックと[自然言語分類器の作成とトレーニング]ブロックのファイル形式は、いずれも none にしなければなりません。

Google スプレッドシート(BLOCKS 独自機能)

Google スプレッドシートのデータがトレーニングデータとして使えます(BLOCKS 独自機能)。形式は、以下のとおりです。

自然言語分類器の作成とトレーニングブロックの Google スプレッドシートによるトレーニングデータのサンプル

スプレッドシートの準備ができたら、フローを以下のように作成すると、分類器の作成とトレーニングができます。

サンプルフローと各ブロックのプロパティ値の例

スプレッドシートには、GCP サービスのアカウントのメールアドレスを共有者として登録しておいてください。また、[自然言語分類器の作成とトレーニング]ブロックのファイル形式は、JSON としてください。

配列形式(BLOCKS 独自機能)

オブジェクトの各メンバーの値が配列値のデータもトレーニングデータとして扱えます(BLOCKS 独自機能)。

以下は、[オブジェクト生成]ブロックでトレーニングデータを設定した例です。データの内容は、前述の Google スプレッドシートと同じものです。

オブジェクト生成ブロックの使用例

(画像をクリックすると拡大表示されます。)

  • 1 つの Object 型を用意(この例の場合、Key 名 data
  • その子要素として Array 型のメンバーを用意
  • Array 型の Key が分類値(この例の場合、「気温」と「天候」)
  • Array 型の子要素が分類するテキスト(型は String)

オブジェクト生成]ブロックの準備ができたら、フローを以下のように作成すると、分類器の作成とトレーニングができます。

サンプルフローと各ブロックのプロパティ値の例

自然言語分類器の作成とトレーニング]ブロックのファイル形式は、None としてください。

プロパティ

プロパティ名 説明
ブロック名

ブロックの名前を指定します。ブロックに表示されます。

ユーザー名

Natural Language Classifier サービスの以下のような資格情報の username の値を指定します。

補足説明図:ユーザー名入力時の資格情報の例

(画像をクリックすると拡大表示されます。)

パスワード

Natural Language Classifier サービスの以下のような資格情報の password の値を指定します。

補足説明図:パスワード入力時の資格情報の例

(画像をクリックすると拡大表示されます。)

トレーニングデータが格納された変数

トレーニングデータが格納されている変数を指定します。

ファイル形式

トレーニングデータのデータ形式を指定します。

  • None:Natural Language Classifier 独自のテキスト形式(CSV)および配列形式(BLOCKS 独自機能)の場合は、None を選択
  • JSON:Google スプレッドシート(BLOCKS 独自機能)の場合は、JSON を選択
分類器名

分類器を識別するための一意な名前を指定します。

ブロックメモ

ブロックに対するコメントを指定します。

言語

トレーニングデータの言語を選択します。