LoginSignup
19
17

More than 5 years have passed since last update.

Elasticsearchで日本語全文検索をするときの最低限の設定(形態素解析のみ)

Last updated at Posted at 2017-03-10

前提知識

Analyzer(分析の流れ)

テキスト -> char filter -> tokenizer -> token filter -> トークン化されたテキスト

char filter

テキストになにかしらの処理をする。例、HTMLタグを削除する。

tokenizer

char filterで処理されたテキストをトークン化する。例、形態素解析、N-gram

token filter

tokenizerでトークン化された単語(トークン)になにかしらの処理をする。例、「飲み」を「飲む」に変換する。

設定するモジュール

Char filter

  • icu_normalizer

文字の正規化、大文字を小文字に統一したり、①を1にしたりする。設定はデフォルのまま。
ICU Analysis Pluginを入れる必要があります。
また、char filterで正規化をするため、filterでcjk_width、lowercaseを使用しません。

  • html_strip

HTMLタグを削除する。

Tokenizer

  • kuromoji_tokenizer

日本語形態素解析器

Token filter

  • kuromoji_baseform

動詞、形容詞を原型に戻す。インデックス、クエリともに適応される。例、「美しく」を「美しい」に変換する。

  • kuromoji_part_of_speech

特定の品詞を削除する。インデックス、クエリともに適応される。設定はデフォルのまま。

  • kuromoji_stemmer

カタカナの末尾の伸ばし棒を削除する。インデックスからもクエリされる。例、「コンピューター」を「コンピュータ」に変換する。

参考

19
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
17