テキスト分類

TensorFlow Liteモデルを使用して、段落を事前定義されたグループに分類します。

始めましょう

TensorFlow Liteを初めて使用し、Androidを使用している場合は、 TensorFLow Liteタスクライブラリのガイドを調べて、わずか数行のコード内にテキスト分類モデルを統合することをお勧めします。 TensorFlow Lite Interpreter JavaAPIを使用してモデルを統合することもできます

以下のAndroidの例は、両方のメソッドの実装をそれぞれlib_task_apilib_interpreterとして示しています。

Androidの例

Android以外のプラットフォームを使用している場合、またはTensorFlow Lite APIに既に精通している場合は、スターターテキスト分類モデルをダウンロードできます。

スターターモデルをダウンロードする

使い方

テキスト分類は、段落をその内容に基づいて事前定義されたグループに分類します。

この事前トレーニング済みモデルは、段落の感情がポジティブかネガティブかを予測します。 Mass etalのLargeMovie Review Dataset v1.0でトレーニングされました。これは、ポジティブまたはネガティブのいずれかでラベル付けされたIMDB映画レビューで構成されています。

モデルを使用して段落を分類する手順は次のとおりです。

  1. 段落をトークン化し、事前定義された語彙を使用して単語IDのリストに変換します。
  2. リストをTensorFlowLiteモデルにフィードします。
  3. モデルの出力から、段落が正または負になる確率を取得します。

注意

  • 英語のみがサポートされています。
  • このモデルは映画レビューデータセットでトレーニングされているため、他のドメインのテキストを分類するときに精度が低下する可能性があります。

パフォーマンスベンチマーク

パフォーマンスベンチマークの数値は、ここで説明するツールを使用して生成されます

モデル名モデルサイズ端末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%

トレーニングデータセットを使用する

このチュートリアルに従って、ここで使用したのと同じ手法を適用して、独自のデータセットを使用してテキスト分類モデルをトレーニングします。適切なデータセットを使用すると、ドキュメントの分類や有毒なコメントの検出などのユースケースのモデルを作成できます。

テキスト分類についてもっと読む