AutoNLP 0.2 : 概要 (翻訳/解説)
翻訳 : (株)クラスキャット セールスインフォメーション
作成日時 : 05/04/2021 (0.2.6)
* 本ページは、HuggingFace AutoNLP の以下のドキュメントを翻訳した上で適宜、補足説明したものです:
* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。
スケジュールは弊社 公式 Web サイト でご確認頂けます。
- お住まいの地域に関係なく Web ブラウザからご参加頂けます。事前登録 が必要ですのでご注意ください。
- ウェビナー運用には弊社製品「ClassCat® Webinar」を利用しています。
人工知能研究開発支援 | 人工知能研修サービス | テレワーク & オンライン授業を支援 |
PoC(概念実証)を失敗させないための支援 (本支援はセミナーに参加しアンケートに回答した方を対象としています。) |
◆ お問合せ : 本件に関するお問い合わせ先は下記までお願いいたします。
株式会社クラスキャット セールス・マーケティング本部 セールス・インフォメーション |
E-Mail:sales-info@classcat.com ; WebSite: https://www.classcat.com/ ; Facebook |
AutoNLP 0.2 : 概要
AutoNLP: SOTA NLP モデルのより高速で容易な訓練と配備。
インストール
PIP を通して AutoNLP python パッケージをインストールできます。AutoNLP が正しく動作するためには python >= 3.7 が必要であることに注意してください。
pip install autonlp
git lfs がインストールされていることを確実にしてください。こちらの手順を確認してください : https://github.com/git-lfs/git-lfs/wiki/Installation
クイックスタート – 端末内
サポートされるタスクと言語のリストについては AutoNLP ドキュメント を見てください。
Note : AutoNLP は現在ベータリリースにあります。ベータに参加するには、単に https://huggingface.co/autonlp に進んで を適用してください (訳注: 原文ママ)。
最初に、プロジェクトを作成します :
autonlp login --api-key YOUR_HUGGING_FACE_API_TOKEN
autonlp create_project --name sentiment_detection --language en --task binary_classification
ファイルをアップロードして訓練を開始します。訓練と検証分割が必要です。現在 CSV ファイルだけがサポートされます。
# Train split
autonlp upload --project sentiment_detection --split train \
--col_mapping review:text,sentiment:target \
--files ~/datasets/train.csv
# Validation split
autonlp upload --project sentiment_detection --split valid \
--col_mapping review:text,sentiment:target \
--files ~/datasets/valid.csv
ひとたびファイルがアップロードされれば、モデルの訓練を開始できます :
autonlp train --project sentiment_detection
プロジェクトの進捗をモニタリングします。
# Project progress
autonlp project_info --name sentiment_detection
# Model metrics
autonlp metrics --project PROJECT_ID
クイックスタート – Python API
セットアップします :
from autonlp import AutoNLP
client = AutoNLP()
client.login(token="YOUR_HUGGING_FACE_API_TOKEN")
プロジェクトを作成してそれにファイルをアップロードします :
project = client.create_project(name="sentiment_detection", task="binary_classification", language="en")
project.upload(
filepaths=["/path/to/train.csv"],
split="train",
col_mapping={
"review": "text",
"sentiment": "target",
})
# also upload a validation with split="valid"
モデルの訓練を開始します :
project.train()
訓練の進捗をモニタリングするには :
project.refresh()
print(project)
モデルの訓練が成功した後、各モデルのためのメトリクスを取得してそれらを 推論 API でテストできます :
client.predict(project="sentiment_detection", model_id=42, input_text="i love autonlp")
あるいはコマンドラインを使用します :
autonlp predict --project sentiment_detection --model_id 42 --sentence "i love autonlp"
幾ら払わなければなりませんか?
この質問に正確な回答を提供することは難しいですけれども、役立つかもしれない estimator (見積もり器) を持っています。単にサンプル数と言語を入力してください、そして貴方は見積もりを得るでしょう。これは単なる見積もりであり、過大に見積もったり過小に見積もることがあり得ることを念頭に置いてください (私達はこれについて積極的に作業しています)。
autonlp estimate --num_train_samples 10000 --project_name sentiment_detection
以上