TensorFlow Liteモデルを使用して、段落を事前定義されたグループに分類します。
始めましょう
TensorFlow Liteを初めて使用し、Androidを使用している場合は、 TensorFLow Liteタスクライブラリのガイドを調べて、わずか数行のコード内にテキスト分類モデルを統合することをお勧めします。 TensorFlow Lite InterpreterJavaAPIを使用してモデルを統合することもできます。
以下のAndroidの例は、両方のメソッドの実装をそれぞれlib_task_apiとlib_interpreterとして示しています。
Android以外のプラットフォームを使用している場合、またはTensorFlow Lite APIに既に精通している場合は、スターターテキスト分類モデルをダウンロードできます。
使い方
テキスト分類は、段落をその内容に基づいて事前定義されたグループに分類します。
この事前トレーニング済みモデルは、段落の感情がポジティブかネガティブかを予測します。これは、MassetalのLargeMovieReview Dataset v1.0でトレーニングされました。これは、ポジティブまたはネガティブのいずれかでラベル付けされたIMDBムービーレビューで構成されています。
モデルを使用して段落を分類する手順は次のとおりです。
- 段落をトークン化し、事前定義された語彙を使用して単語IDのリストに変換します。
- リストをTensorFlowLiteモデルにフィードします。
- モデルの出力から、段落が正または負になる確率を取得します。
ノート
- 英語のみがサポートされています。
- このモデルは映画レビューデータセットでトレーニングされているため、他のドメインのテキストを分類するときに精度が低下する可能性があります。
パフォーマンスベンチマーク
パフォーマンスベンチマークの数値は、ここで説明するツールを使用して生成されます。
モデル名 | モデルサイズ | デバイス | CPU |
---|---|---|---|
テキスト分類 | 0.6 Mb | Pixel 3(Android 10) | 0.05ms * |
Pixel 4(Android 10) | 0.05ms * | ||
iPhone XS(iOS 12.4.1) | 0.025ms ** |
*使用される4つのスレッド。
**最高のパフォーマンス結果を得るためにiPhoneで使用される2つのスレッド。
出力例
文章 | 負(0) | ポジティブ(1) |
---|---|---|
これは私がここ数年見た中で最高の映画です。強くお勧めします! | 25.3% | 74.7% |
なんて時間の無駄だ。 | 72.5% | 27.5% |
トレーニングデータセットを使用する
このチュートリアルに従って、ここで使用したのと同じ手法を適用して、独自のデータセットを使用してテキスト分類モデルをトレーニングします。適切なデータセットを使用すると、ドキュメントの分類や有毒なコメントの検出などのユースケースのモデルを作成できます。