自然言語処理 (nlp) の対象となるほとんどすべてのテキストのソースは,そのまま自然言語処理にフィードするわけにはいかない.適切な「前処理」を施して入力に相応しい形に整えた上でフィードすることが求められる.典型的な前処理としては,Vajjala (52ff) によれば次のようなものがある.それぞれタスクとして難易度の差があり,テキストソースの特徴や施したい処理の目的に応じて,必要なタスクと不要なタスクがあることに注意したい.
・ 文の分割
・ 単語への分割
・ ストップワード (stop word) の除去
・ ステミング
・ 見出し語化
・ 数字・句読点の除去
・ 小文字化
・ テキストの正規化 (text normalization)
・ 言語検出
・ コードミキシング
・ 翻字 (transliteration)
・ 品詞タグ付け
・ 構文解析
・ 共参照解決 (coreference resolution)
・ 関係抽出 (relation extraction)
・ 固有表現認識 (named entity recognition)
昨今は,多くの前処理タスクが,簡単なスクリプトにより,かなりの程度自動化できるようになってきているのでありがたい.ただし,既製の自動化スクリプトの利用はブラックボックスとなりがちなので,例えばコーパスの自作や編纂などをしようと思うのであれば,前処理の基本的な考え方は知っているほうがよいだろう.
・ Vajjala, Sowmya, Bodhisattwa Majumder, Anuj Gupta, Harshit Surana (著),中山 光樹(訳) 『実践 自然言語処理 --- 実世界 NLP アプリケーション開発のベストプラクティス』 オライリー・ジャパン,2022年.
Powered by WinChalow1.0rc4 based on chalow