- リリース ノート
- はじめる前に
- 基本情報
- プロジェクト
- データセット
- ML パッケージ
- ML パッケージについて
- ML パッケージを構築する
- すぐに使えるパッケージ
- English Text Classification (英語テキスト分類)
- TPOT AutoML Classification (TPOT AutoML分類)
- UiPath Document Understanding
- AI Computer Vision
- ML パッケージのオフライン インストール
- パイプライン
- ML スキル
- ML ログ
- AI Center での Document Understanding
- ライセンス
- 使い方
- 基本的なトラブルシューティング ガイド
English Text Classification (英語テキスト分類)
[OS パッケージ] > [言語分析] > [EnglishTextClassification]
これは、英語分類のための一般的で再トレーニング可能なモデルです。この ML パッケージは再トレーニングする必要があります。デプロイに先立ってトレーニングしていないと、モデルがトレーニングされていないことを示すエラーが表示され、デプロイが失敗します。
このモデルは、言語分類のためのディープ ラーニング アーキテクチャです。自然言語処理システムを事前にトレーニングするための自己教師あり学習の手法である RoBERTa に基づいています。サービング時とトレーニング時の両方で GPU を使用できます。GPU によって、速度が 5 倍から 10 倍程度向上します。このモデルは、Facebook AI Research によってオープン ソース化されています。
予測されたクラス名を伴う JSON、そのクラス予測に対する関連付けられた信頼度 (0~1)。
例:
{
"class": "Positive",
"confidence": 0.9422031841278076
}
{
"class": "Positive",
"confidence": 0.9422031841278076
}
パイプライン
このパッケージでは、3 つの種類のパイプラインすべて (フル トレーニング、トレーニング、評価) がサポートされています。
ほとんどのユース ケースでは、パラメーターを指定する必要がなく、モデルは高度な手法を使用して高性能なモデルを検出します。2 回目以降のトレーニングでは、モデルは増分学習を使用します (トレーニングの実行の最後で、その前にトレーニングされたモデルが使用されます。
複数のファイルを読み取る
このモデルでは既定で、指定されたディレクトリにある .csv および .json の拡張子を持つファイルをすべて再帰的に読み取ります。
CSV ファイル形式:
各 csv ファイルには複数の列が含まれると想定されますが、モデルで使用されるのは、そのうちの 2 列のみです。モデルで使用する列は、input_column パラメーターと target_column パラメーターで指定します。これらのパラメーターを設定しない場合は、それぞれの既定値である「input」と「target」になります。
たとえば、1 つの csv ファイルは以下のようになります。
input,target
I like this movie,positive
I hated the acting,negative
input,target
I like this movie,positive
I hated the acting,negative
上記のファイル例では、外部パラメーターを追加せずに任意の種類のパイプラインをトリガーできます。以下の例では、列を明示的に指定する必要があります。
review,sentiment
I like this movie,positive
I hated the acting,negative
review,sentiment
I like this movie,positive
I hated the acting,negative
input_column および target_column で指定した列のないファイルは無視されます。さらに、csv_delimiter パラメーターを設定することによって、ファイルの解析に使用する区切り文字を設定できます。たとえば、値が実際にはタブ区切りになっているファイルは、拡張子 .csv で保存し、パラメーター csv_delimiter を \t に設定します。
JSON ファイル形式:
各 json ファイルは、単一のデータ ポイントまたはデータ ポイントのリストとすることができます。つまり、各 JSON ファイルは 2 つの形式のいずれかとすることができます。次は、単一のデータ ポイントを記述した 1 つの json ファイルの例です。
{
"input": "I like this movie",
"target": "positive"
}
{
"input": "I like this movie",
"target": "positive"
}
次は、複数のデータ ポイントを記述した 1 つの json ファイルの例です。
[
{
"input": "I like this movie",
"target": "positive"
},
{
"input": "I hated the acting",
"target": "negative"
}
]
[
{
"input": "I like this movie",
"target": "positive"
},
{
"input": "I hated the acting",
"target": "negative"
}
]
csv ファイルの場合、input_column パラメーターと target_column パラメーターを設定していると、フォーマット処理によって「input」が input_column、「target」が target_column にそれぞれ置き換えられます。
すべての有効なファイル (上記のフォーマットに準拠するすべての csv ファイルおよび json ファイル) が集められます。
単一のファイルを読み取る
ディレクトリに多くのファイルがある場合でも、使用するファイルを 1 つのみとすると効果的なことがあります。この場合は、パラメーター csv_name を使用できます。このパラメーターを設定すると、パイプラインのみでファイルが読み取られます。また、さらに次の 2 つのパラメーターが有効化されます。
- csv_start_index: 読み取りを開始する行を指定できます。
- csv_end_index: 読み取りを終了する行を指定できます。
たとえば、20,000 行の大きなファイルがあり、そのデータの一部に対してどのようなトレーニングが実施されるか簡単に確認する必要があるとします。そのためには、ファイル名を指定し、csv_end_index の値を 20,000 よりはるかに小さい値に設定します。
- input_column: データセットの入力列の名前 (既定では input) に合わせて、この値を変更します。
- target_column: データセットの入力列の名前 (既定では target) に合わせて、この値を変更します。
- evaluation_metric: この値を設定することで、評価関数から返されて UI に表示されるメトリックを変更します。このパラメーターは「accuracy」(既定値)、「auroc」(ROC 曲線の下の領域)、「precision」、「recall」、「matthews correlation」(マシューズ相関係数)、「fscore」のいずれかの値に設定できます。
- csv_name: データセットから読み取る固有の csv ファイルを指定する場合に、この変数を使用します。
- csv_start_index: 読み取りを開始する行を指定できます。csv_name と組み合わせて使用します。
- csv_end_index: 読み取りを終了する行を指定できます。csv_name と組み合わせて使用します。
トレーニング関数によって次の 3 つの成果物が生成されます。
- train.csv - モデルのトレーニングに使用されたデータ。ガバナンスと追跡を目的として、ここで保存されます。
- validation.csv - モデルの検証に使用されたデータ。
learning-rate-finder.png
- ほとんどのユーザーは、これに配慮する必要はありません。上級ユーザーには有用なことがあります (詳細セクションを参照)。 - train-report.pdf - この実行の概要情報を記載したレポート。最初のセクションには、ユーザーが指定したパラメーターがすべて記述されています。その次のセクションには、データに関する統計が記述されています (ファイルごとのトレーニング、検証、チェックサム用のデータ ポイントの数)。最後のセクションには、次の 2 つのプロットが記述されています。
- 損失プロット – トレーニングと評価の損失がエポック数の関数としてプロットされています。出力される ML パッケージは、必ず検証された損失が最少のものです (最後のエポックにおけるモデルではありません)。
- メトリック プロット – 各エポックの最後で検証セットによって計算された多くのメトリックがプロットされています。
評価関数によって、次の 2 つの成果物が生成されます。
- evaluation.csv - モデルの評価に使用されたデータ。
- evaluation-report.pdf - この実行の概要情報を記載したレポート。最初のセクションには、ユーザーが指定したパラメーターがすべて記述されています。2 番目のセクションには、データに関する統計が記述されています (評価およびファイルのチェックサム用のデータ ポイントの数)。3 番目のセクションには、その評価に関する統計が記述されています (マルチクラスの場合、メトリックは重み付けされます)。最後のセクションには、混同行列のプロット、およびクラスごとの accuracy、precision、recall、support の計算値とその平均値が記述されています。
Paper
「RoBERTa: A Robustly Optimized BERT Pretraining Approach (RoBERTa: 堅固に最適化された BERT 事前トレーニング アプローチ)」Yinhan Liu、Myle Ott 他