AutoNLP 0.2 : エンティティ抽出

AutoNLP 0.2 : エンティティ抽出 (翻訳/解説)
翻訳 : (株)クラスキャット セールスインフォメーション
作成日時 : 05/05/2021 (0.2.6)

* 本ページは、HuggingFace AutoNLP の以下のドキュメントを翻訳した上で適宜、補足説明したものです:

* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。

 

無料 Web セミナー開催中 クラスキャット主催 人工知能 & ビジネス Web セミナー

人工知能とビジネスをテーマに WEB セミナーを定期的に開催しています。
スケジュールは弊社 公式 Web サイト でご確認頂けます。
  • お住まいの地域に関係なく Web ブラウザからご参加頂けます。事前登録 が必要ですのでご注意ください。
  • ウェビナー運用には弊社製品「ClassCat® Webinar」を利用しています。
クラスキャットは人工知能・テレワークに関する各種サービスを提供しております :

人工知能研究開発支援 人工知能研修サービス テレワーク & オンライン授業を支援
PoC(概念実証)を失敗させないための支援 (本支援はセミナーに参加しアンケートに回答した方を対象としています。)

お問合せ : 本件に関するお問い合わせ先は下記までお願いいたします。

株式会社クラスキャット セールス・マーケティング本部 セールス・インフォメーション
E-Mail:sales-info@classcat.com  ;  WebSite: https://www.classcat.com/  ;  Facebook

 

AutoNLP 0.2 : エンティティ抽出

エンティティ抽出 aka トークン分類は NLP の最もポピュラーなタスクの一つで AutoNLP で完全にサポートされます!

エンティティ抽出モデルを訓練するには、データを JSONL 形式にフォーマットする必要があります。それは以下のように見えるはずです :

{"tokens": ["I", "love", "AutoNLP", "!"], "labels": ["PRON", "VERB", "OBJ", "PUNCT"]}
{"tokens": ["Hello", "there", "!"], "labels": ["EXPR", "LOC", "PUNCT"]}

訓練と検証ファイルの両者は上で指定された形式を持つべきであることに注意してください。“tokens” と “labels” の代わりに、カラムのために貴方が望むどのような名前でも選択できます。

ひとたび上で指定された形式のデータを持てば、AutoNLP を使用してモデルを訓練する準備ができています。そうです、それほどに簡単です。

最初のステップは AutoNLP へのログインです :

$ autonlp login --api-key YOUR_HUGGING_FACE_API_TOKEN

貴方の Hugging Face API トークンを知らない場合、huggingface.co 上でアカウントを作成してください、すると設定で貴方の api キーを見つけるでしょう。貴方の api キーを誰とも共有しないでください!

ログインしたならば、新しいプロジェクトを作成できます :

$ autonlp create_project --name entity_model --language en --task entity_extraction

プロジェクトの作成の際、“–language” パラメータを使用して言語を選択できます。

次のステップはファイルをアップロードすることです。ここで、カラムマッピングは非常に重要です。元のデータのカラムは AutoNLP カラム名にマップされます。上のデータでは、元のカラムは “tokens” と “labels” です。エンティティ抽出問題に対してはそれ以上のカラムは必要ありません。

エンティティ抽出タスクのための AutoNLP カラムは :

  • tokens

  • tags

元のカラムは従って、tokens と tags にマップされる必要があります。これは upload コマンドで成されます。AutoNLP にアップロードしている分割の種類を知らせる必要もあります : train or valid です。

autonlp upload --project entity_model --split train \
            --col_mapping tokens:tokens,labels:tags \
            --files ~/datasets/train.csv

同様に、検証ファイルをアップロードします :

autonlp upload --project entity_model --split valid \
            --col_mapping tokens:tokens,labels:tags \
            --files ~/datasets/valid.csv

カンマでパスを区切ることにより複数のファイルをアップロードできますけれども、カラム名は各ファイルで同じでなければならないことに注意してください。

ファイルを成功的にアップロードしたら、train コマンドを使用して訓練を開始できます :

$ autonlp train --project entity_model

And that’s it!

貴方のモデルは訓練を開始して望めば訓練をモニタリングすることができます。

 

以上