TensorFlowのテキスト処理ツール
import tensorflow as tf import tensorflow_text as tf_text def preprocess(vocab_lookup_table, example_text): # Normalize text tf_text.normalize_utf8(example_text) # Tokenize into words word_tokenizer = tf_text.WhitespaceTokenizer() tokens = word_tokenizer.tokenize(example_text) # Tokenize into subwords subword_tokenizer = tf_text.WordpieceTokenizer( vocab_lookup_table, token_out_type=tf.int64) subtokens = subword_tokenizer.tokenize(tokens).merge_dims(1, -1) # Apply padding padded_inputs = tf_text.pad_model_inputs(subtokens, max_seq_length=16) return padded_inputsノートブックで実行
TensorFlow は、未加工のテキスト文字列やドキュメントなどのテキスト形式の入力を操作するのに役立つ ops とライブラリの豊富なコレクションを提供します。これらのライブラリは、テキストベースのモデルに必要な定期的な前処理を実行でき、シーケンス モデリングに役立つその他の機能を備えています。
ニューラル ネットワークへの入力として、TensorFlow グラフ内から強力な構文およびセマンティック テキスト機能を抽出できます。
前処理を TensorFlow グラフと統合すると、次の利点が得られます。
- テキストを操作するための大きなツールキットを容易にします
- Tensorflow ツールの大規模なスイートとの統合を可能にして、問題の定義からトレーニング、評価、立ち上げまでプロジェクトをサポートします
- サービス提供時の複雑さを軽減し、トレーニングとサービスの偏りを防ぎます
上記に加えて、トレーニングでのトークン化が推論でのトークン化と異なることや、前処理スクリプトの管理について心配する必要はありません。
