解説
形態素解析は、文章を意味を持つ最小単位(形態素)に分割し、各形態素に品詞や読み、原形などの情報を付与する処理です。英語は単語の間がスペースで区切られていますが、日本語には区切りがありません。そのため、日本語の文章を検索や分析に使うには、形態素解析によって単語の区切りを機械的に決める必要があります。
例:「支払い方法を変更する」→ 支払い/方法/を/変更/する
なお、文章を形態素に区切ることを分かち書きと呼びます。分かち書きは分割の処理だけを指し、品詞の判定までを含む形態素解析とは範囲が異なります。
仕組み
形態素解析は、辞書を参照しながら、主に次の2段階で処理を進めます。
- 文章を形態素に分割する
- 各形態素の品詞や活用形を特定する
代表的な形態素解析器には、MeCab、Sudachi、Kuromoji、JUMAN++などがあります。ただし、分割の結果は、使う解析器や辞書によって異なります。
実務での使われ方
FAQ検索やチャットボットが期待どおりに当たらないとき、形態素解析の結果を確認すると、原因にたどり着けることがあります。形態素解析は検索機能の内部で自動的に行われるため、運用者が結果を直接見るのは、設定画面に表示される場面などに限られます。
さらに、製品名や業界用語は、標準の辞書にないため不自然に分割されることがあります。たとえば、「ヘルプドッグ」が「ヘルプ/ドッグ」に分かれる場合があります。そのため、ユーザー辞書に自社の固有名詞を登録し、検索精度を高めます。
注意点
形態素解析と、文字を一定の長さで区切るN-gram方式には、異なる弱点があります。たとえば、N-gram方式では、「京都」で検索すると「東京都美術館」を含む文書までヒットする検索ノイズが起きます。一方で、形態素解析では、「外国人参政権」を「外国/人参/政権」と誤って分割すると、「参政権」で検索してもヒットしない検索漏れが起きます。そのため、両方の方式を併用する検索システムもあります。
該当する用語がありません