NLTK トークナイズ: 単語と文のトークナイザーと例
トークン化とは何ですか?
トークン化 大量のテキストをトークンと呼ばれる小さな部分に分割するプロセスです。 これらのトークンはパターンを見つけるのに非常に役立ち、ステミングと見出し語化の基本ステップとして考慮されます。 トークン化は、機密データ要素を非機密データ要素に置き換えるのにも役立ちます。
自然言語処理は、テキスト分類、 インテリジェントなチャットボット、感情分析、言語翻訳など。上記の目的を達成するには、テキスト内のパターンを理解することが重要になります。
今のところ、ステミングとレマタイズについては気にせず、NLP(自然言語処理)を使用したテキストデータのクリーニングのステップとして扱ってください。ステミングとレマタイズについては、チュートリアルの後半で説明します。 テキスト分類またはスパムフィルタリング Keras や Keras などの深層学習ライブラリとともに NLP を利用します。 テンソルフロー.
自然言語ツールキットには非常に重要なモジュール NLTK があります トークン化する さらにサブモジュールで構成される文
- 単語のトークン化
- 文のトークン化
単語のトークン化
私たちはこの方法を使用します word_tokenize() 文を単語に分割すること。 単語のトークン化の出力は、機械学習アプリケーションでのテキストの理解を向上させるためにデータ フレームに変換できます。 また、句読点の削除、数字の削除、ステミングなどのさらなるテキスト クリーニング ステップの入力として提供することもできます。 機械学習モデルには、トレーニングと予測を行うための数値データが必要です。 Word のトークン化は、テキスト (文字列) から数値データへの変換の重要な部分になります。 についてお読みください Bag of Word または CountVectorizer。 理論をよりよく理解するには、以下の単語トークン化 NLTK の例を参照してください。
from nltk.tokenize import word_tokenize text = "God is Great! I won a lottery." print(word_tokenize(text)) Output: ['God', 'is', 'Great', '!', 'I', 'won', 'a', 'lottery', '.']
コードの説明
- word_tokenize モジュールは NLTK ライブラリからインポートされます。
- 変数「text」は XNUMX つの文で初期化されます。
- テキスト変数は word_tokenize モジュールに渡され、結果が出力されます。 このモジュールは、出力で確認できるように、各単語を句読点で区切ります。
文のトークン化
上記に使用できるサブモジュールは send_tokenize です。 あなたの頭の中で次のような疑問が浮かぶでしょう。 単語のトークン化のオプションがあるのに、なぜ文のトークン化が必要なのか。 文ごとの平均単語を数える必要があると想像してください。どのように計算しますか? このようなタスクを実行するには、比率を計算するために NLTK 文トークナイザーと NLTK 単語トークナイザーの両方が必要です。 このような出力は、答えが数値になるため、機械トレーニングの重要な機能として機能します。
以下の NLTK トークナイザーの例を確認して、文のトークン化が単語のトークン化とどのように異なるかを確認してください。
from nltk.tokenize import sent_tokenize text = "God is Great! I won a lottery." print(sent_tokenize(text)) Output: ['God is Great!', 'I won a lottery ']
私たちは 12 言葉と XNUMX文 同じ入力に対して。
プログラムの説明
- 前のプログラムと同様の行で、sent_tokenize モジュールをインポートしました。
- 私たちも同じ文を取り上げました。 NLTK モジュールのさらに文トークナイザーがその文を解析し、出力を表示します。 この関数が各文を分割していることは明らかです。
単語トークナイザーの上 Python これらの例は、単語と文のトークン化の仕組みを理解するための良い設定資料となります。
まとめ
- でのトークン化 NLP 大量のテキストをトークンと呼ばれる小さな部分に分割するプロセスです。
- 自然言語処理は、テキスト分類、インテリジェント チャットボット、感情分析、言語翻訳などのアプリケーションの構築に使用されます。
- 自然言語ツールキットには、さらにサブモジュールで構成される非常に重要なモジュール NLTK トークン化文が含まれています
- word_tokenize() メソッドを使用して、文を単語に分割します。 NLTK の単語トークナイザーの出力は、機械学習アプリケーションでのテキストの理解を向上させるためにデータ フレームに変換できます。
- 上記に使用できるサブモジュールはsent_tokenizeです。 Python NLTK は機械学習にとって重要な機能です。