カテゴリ:

こんにちは、先進ソリューション推進部の山口です。

東京はお盆が過ぎてから一時期に比べて暑さが和らいできました。

さて、先月、Googleから「Cloud AutoML Natural Language」というAI構築サービスがβ版として公開されました。(以下、AutoML)

このAutoMLはすでにリリースされている「Cloud Natural Language」と何が違うのかというと、

AutoMLは文書に対してラベリングができる

とのことです。文に対するラベリングというとWatsonのNatural Language Classifier(以下、NLC)が近いサービスになるけど、まずは試してみました。

素材集め

まず、トレーニングデータとなる素材を集めなくてはいけません。ドキュメントによると

  • 最低20以上のトレーニングデータ(テキストファイル)が必要
  • ラベル数は2個以上100個以下とする
  • 各ラベルは最低10件の文書を適用させる

となっていますので、これに見合った素材を探す必要があります。今回は、厚生労働省の職場のあんぜんサイトからヒヤリハットのデータを使用することにしました。

このサイトには墜落や転倒といった分類で事例をカテゴライズしています。この各カテゴリに記載の1事例を1テキストデータとして保存し、ラベル数は7個、各ラベルに12個のテキストファイルを用意しました。

AutoMLではトレーニングデータのうち、コンテンツドキュメントとして80%、検証用10%、テスト用に10%を使用します。トレーニングデータ一覧のCSVファイルの先頭列に目的(コンテンツ用、検証用、テスト用)を明記することで、テスト用のデータを指定するといったことができますが、今回は指定しませんでした。

また、1テキストデータに複数のラベルを付与することができますが、今回は1テキストデータに対して1ラベルとしました。

AutoMLへデータの登録

データが用意できれば、次はAutoMLへのデータ登録(データセットの作成)です。

データ登録方法は、ローカルコンピュータからアップする方法とGoogle Storage経由があり、今回はGoogle Storage経由で行いました。

注意する点としては、AutoMLを開始した時に「プロジェクト名_-lcm」というバケットが自動的に作成されるので、トレーニングデータ一覧(*.csv)はこのバケットにアップロードしなくてはいけません。

今回は、トレーニングデータ一覧はバケット直下に、training-data.csvとしてアップロードし、トレーニングデータはtraining-dataフォルダを作成し、そのフォルダの下にアップロードしました。

ファイルの準備が終われば、「CREATE DATASET」ボタンをクリックして、データセットの作成を開始します。

今回は、1つのテキストファイルに複数のラベルを付けないので、multi-labelのチェックは外しました。

データ件数が80件ほどの場合、5分ほどで作成が完了しました。

どうやら1件ほど取りこまれなかったようですが、これはデータが重複していたためでした。(重複の場合、自動的に削ってくれるみたいです)

テキストデータにコピーしているときは気が付かなかったのですが、確かに1事例が2つのカテゴリに記載されていました。

取込時にWarning発生

重複分は無視してそのまま取り込みます。

トレーニング

TRAINタブから「START TRAINING」をクリックすることで開始します。
(データ件数は各ラベルごとに少なくとも100ファイル用意すべきとのメッセージが出ていますが、今回は無視します。)

トレーニング開始

トレーニングが終了するまで、時間がかかます。

次回、トレーニング結果とテストした結果を記載したいと思います。

<関連記事>

Cloud AutoML Natural Languageを試してみた(2)

こちらの記事も人気です

    この課題を解決するソリューション