質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Elasticsearch

Elasticsearchは、クラウド向けに構築された、RESTful な API を提供する分散型のサーチエンジンアプリケーションです。

Q&A

解決済

1回答

566閲覧

ElasticSearch6.2でkuromojiを使いたい

nnahito

総合スコア2004

Elasticsearch

Elasticsearchは、クラウド向けに構築された、RESTful な API を提供する分散型のサーチエンジンアプリケーションです。

0グッド

0クリップ

投稿2019/05/08 07:23

はじめに

まだあまりElasticSearchを理解しておりません。

環境

ElasticSearch6.2
Kibanaを使った操作

やりたいこと

トークナイズ?にkuromojiを使ってみたい。

やったこと

kuromojiが入っていることを確認。

GET /_analyze { "tokenizer": "kuromoji_tokenizer", "text": "今日はとてもいい天気ですね" }

Indexの作成

PUT /kuromoji { "index":{ "analysis":{ "tokenizer" : { "kuromoji" : { "type" : "kuromoji_tokenizer" } }, "analyzer" : { "analyzer" : { "type" : "custom", "tokenizer" : "kuromoji" } } } } }

適当にデータを入れてみる。
データを入れると、解析機がuni-gramではなく、
kuromojiを使った分かち書きになる…という認識ですが間違っていますでしょうか?

POST kuromoji/sentence { "text": "あるところに、かわいそうな乞食の子がありました。" } POST kuromoji/sentence { "text": "さびしい村の方から、毎日、町の方へ、ものをもらいに追い出されました。けれど、小さな足には、なにもはくものがなかったのです。子供は跣足で、長い石ころの多い道を、とぼとぼと歩かなければならなかったのでした。" } POST kuromoji/sentence { "text": "夏の暑い日のことであります。地の面は乾いて、石は、熱く焼けていました。しかし子供は、足になにもはくものがなかったので、その上を跣足で歩いていました。通りすがりの人たちは、このかわいそうな乞食の子を見ましても、やさしい声ひとつ、かけてくれるものはありませんでした。" }

※青空文庫より、長ぐつの話


検索してみる。

以下の文章は、3つ目に投入した文章の一部です。
しかしなぜか2つ目に投入した文章の類似度が一番高でて、3つ目の文章は最下位の類似度でした。
これはkuromojiが正常に反映されているのでしょうか。

GET kuromoji/sentence/_search { "query": { "match": { "text": "足になにもはくものがなかったので" } } }

質問まとめ/聞きたいこと

  1. 上記設定を行ったElasticSearchにデータを投入した際、投入されたデータはkuromojiで解析されている認識でよろしいでしょうか?
  2. 検索時に、クエリで投げた文章とすでにElasticSearchに入っている情報共に、kuromojiで解析されている認識でよろしいでしょうか?
  3. 現在の検索でkuromojiが使われているかを確認する方法はあるのでしょうか?
  4. 既存のIndexの解析機をkuromojiに変更することはできるのでしょうか?

ご存知のかたがいらっしゃいましたら、ご教示いただけますと幸いです。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

取り急ぎ、mapping定義をしないといけないのではないでしょうか。
http://pppurple.hatenablog.com/entry/2017/05/28/141143

投稿2019/05/08 09:48

iwamot

総合スコア1154

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2019/05/09 02:15

ありがとうございます! マッピングで設定しないといけないんですね… INDEX作ったときの "tokenizer" : { "kuromoji" : { "type" : "kuromoji_tokenizer" } } の「tokenizer」の設定は何だったのか…… 一応やったことまとめました。 https://nnahito.com/articles/26
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問