セマンティック検索
関連性の高いものを検索して該当させる。
テキストデータを解析:n-gram
例えば、「私は朝食を食べた。」という文章を、文字N-gramで分割すると以下のようになる。
1-gram: 「私」「は」「朝」「食」「を」「食」「べ」「た」「。」
2-gram: 「私は」「は朝」「朝食」「食を」「を食べ」「べた」「た。」
3-gram: 「私は朝」「は朝食」「朝食を」「食を食べ」「を食べた」「べた。」
メリット:
単純なアルゴリズムで実装が容易である.
検索漏れが発生しにくい.
多くの言語に適用可能.
デメリット:
ノイズが多くなる場合がある.
必要なデータ量が多くなる場合がある.
単語の意味を考慮しないため、誤った検索結果が表示される可能性がある。
形態素解析エンジン
品詞毎に区分け
・MeCab
・JPHP-TinySegmenter
・Youaoi/php-mecab
・miyasan/php-kuromoji
辞書
基本 mecab-ipadic-utf8
流行 mecab-ipadic-neologd