Lucene
前回書いたエントリの、タイトルをひっくり返したものです。Hibernate Search+Infinispanでクラスタを構成した時の、インデックスの更新について http://d.hatena.ne.jp/Kazuhira/20150807/1438966241今回は、 Infinispanの検索機能を使うにあたって、Hiber…
以前、少し動かしては「なんかダメっぽい」程度の印象で止めていた、このテーマをもう少し見てみることにしました。内容としては、Hibernate Searchで使うLuceneのインデックスの保存先をInfinispanにして、なおかつクラスタを構成した時のインデックスの更…
ちょっと前に見ていたこちらのエントリ。Solr + kuromoji で単語の切れ方がおかしかったのでガッツリ調べてみた、理由と調べ方その方法を公開します! http://blog.yoslab.com/entry/2014/09/12/005207kuromoji のサイトに行くと、トークナイズの処理を分析…
mecab-ipadic-NEologdが、Unicode絵文字に試験的に対応したと聞いて。(Beer Mug)の読み方を考える(mecab-ipadic-NEologdのUnicode 絵文字対応) http://www.slideshare.net/overlast/mecab-ipadicneologdpydatatokyo05pub-48560060これをLucene Kuromojiの辞…
久々に、書いてみたくなっただけのエントリ。Infinispanが持つLucene Directory実装を使って、遊びます。Infinispanはインメモリ・データグリッドと呼ばれる製品の一種で、複数のJava VM間でクラスタを構成し、比較的簡単にデータを共有することができます。…
追記) LuceneにIssueとパッチを出してみましたが、取り込まれたようです。次のバージョンで解消されるでしょう。ここ最近、LuceneのKuromojiにmecab-ipadic-neologdの辞書を組み込んでみているのですが、3/19を境にneologdの辞書を組み込むとエラーになるよ…
ここ2〜3日、ず〜っとmecab-ipadic-neologdの辞書をLucene Kuromojiに適用するという作業を延々と繰り替えしていました。修正されたmecab-ipadic-neologdの辞書を、Lucene Kuromojiに適用してみる http://d.hatena.ne.jp/Kazuhira/20150316/1426520209が、け…
先日、このようなエントリを書きました。mecab-ipadic-neologdの辞書を、Lucene Kuromojiに適用してみる http://d.hatena.ne.jp/Kazuhira/20150315/1426391366mecab-ipadic-neologd自体については、こちら。MeCab 用の新語辞書 mecab-ipadic-neologd を公開…
注意) このエントリでは、mecab-ipadic-neologdをLucene Kuromojiに適用するにあたり、2つほど問題が発生したのですが、作者の@overlastさんにそのうちのひとつを対応いただきました。修正版mecab-ipadic-neologdを使ってLucene Kuromojiに適用するエントリ…
個人的に続けていたHibernate Searchネタですが、ちょっと間が空きましたけど今回で一区切りです。お題は、インデックスの手動メンテナンス。Hibernate Searchを使っていると、通常JPAのEntityManagerに対して永続化すると勝手にインデキシングされるため、…
Luceneを使ったアプリケーションで、(見る気になるかどうかはなんともですが)どうしてDocumentがヒットしたのか、スコアなどを見るにはExplationを利用します。Hibernate Searchでも取得できるのかなと思ったら、こちらに記載がありました。Understanding …
Luceneでドキュメントに数値を保存する時、数値向けのフィールドとしてIntFieldやLongField、DoubleFieldなどを使うことができます。ですが、これらはTermとしてはちょっと別物になるので、普通のクエリでは検索できずNumericRangeQueryを使うことになります…
先ほど、Hibernate Searchを使ったファセットの基本的な使い方について書きました。その続きになります。Hibernate Searchでファセットを使う - 単一Entity編 http://d.hatena.ne.jp/Kazuhira/20150125/1422187821このうち、Discreteを書籍のタグの例で示し…
検索でよく使われそうな機能の中に、ファセットというものがあります。ファセットがどういうものかは、見た方が早いですね。下記は、Amazonで「カテゴリ」に「本」を選び、キーワード「java」で検索した時に左ナビに表示されるものです。 また、こういう範囲…
Luceneのインデックスを見るツールとして、「Luke」というインデックスブラウザがあります。Luke - Lucene Index Toolbox https://code.google.com/p/luke/しかし、オリジナルのLukeはLucene 4系には対応しておらず、ここからforkされたものが存在するようで…
Hibernate Searchを使って、シノニム(類義語)を使ってみます。シノニムは、類義語や同義語を意味するもので、Luceneで使う場合ではシノニムとして定義した類似の単語を使って見かけは違う単語でも検索でヒットさせることができるようになります。先ほどはK…
Hibernate Searchを使った日本語検索を少し前に書きましたが、せっかくなのでもう少しHibernate Searchネタを続けてみようと思います。マイペースで。Luceneで形態素解析といえばKuromojiが導入が簡単ですが、辞書にない単語については結果が変なことになる…
先ほど、Hibernate Searchを使って日本語検索を形態素解析、N-gramでそれぞれ試してみました。Hibernate Searchで試す、日本語検索 - 形態素解析編 http://d.hatena.ne.jp/Kazuhira/20150110/1420889429Hibernate Searchで試す、日本語検索 - N-gram編 http:…
先ほど、Hibernate Searchを使った日本語検索ということで、Kuromojiを使った形態素解析を試したこんなエントリを書きました。Hibernate Searchで試す、日本語検索 - 形態素解析編 http://d.hatena.ne.jp/Kazuhira/20150110/1420889429※続きも書きました Hib…
ここ最近、Luceneネタをそれほど扱っていませんでしたが、Hibernate Searchをちょっとずつ見始めているので、これを機にHibernate Searchを使って日本語検索を試してみようと思いまして。Hibernate Searchを使うと、JPA(というかHibernate)とLuceneを統合…
最近、Hibernate Searchの5.0.0.Finalがリリースされました。Hibernate Search http://hibernate.org/search/Hibernate Search 5系から使用するLuceneが4.10系になったので、試してみようと思い、どうせならとSpring Bootを使って遊んでみました。こんなもの…
こちらのエントリの続きです。Spring BootとHibernate Searchで遊ぶ http://d.hatena.ne.jp/Kazuhira/20141223/1419330401ここで作成したアプリケーションで持つLuceneのインデックスを、複数Nodeとして起動したアプリケーションで共有してみます。Luceneの…
最近読んでいたSolrやElasticsearch関連の本で、ちょっと気になっていたクエリで遊んでみました。Luceneで。気になっていたクエリとは、 FuzzyQuery MoreLikeThisQuery です。FuzzyQueryはあいまい検索、MoreLikeThisは似たドキュメントを取得するためのクエ…
SolrとかElasticsearchを見ていて、multi-valuedなフィールドを時々見かけていたのですが、そういえばLuceneでは触れたことがありません。使うにあたり、何か特別な考慮がいるのかなぁ?とか思ったのですが、意外とそんなことはありませんでした。このあたり…
最近、Elasticsearchの本を読みまして。高速スケーラブル検索エンジン ElasticSearch Server (アスキー書籍)作者: Rafal Kuc (lにストローク符号、cにアクサン・テギュ付く),Marek Rogozinski (nにアクサン・テギュ付く)出版…
先のエントリで、Hazelcast 3.2で追加された、MapReduce Frameworkの簡単な紹介をしました。Hazelcast 3.2の新機能、MapReduce Framework http://d.hatena.ne.jp/Kazuhira/20140329/1396079530ここでは、もうちょっと具体的なサンプルとして、Word Countをや…
過去のエントリを、リライトしたエントリです。以前、こちらのエントリを見てClojure/kuromojiでテキストマイニング入門 〜形態素解析からワードカウントまで〜 http://antibayesian.hateblo.jp/entry/2013/09/10/231334素のKuromojiを使って形態素解析をし…
だいぶ前に、InfinispanのQueryモジュールを使ってなんとなくの検索を行ったことがありますが(Query DSLではありません)、その時は「とりあえず動かしてみました」的な感じで流していたので、ちょっとマジメに設定してみたいと思います。参照するのは、こ…
Luceneのコードを書いていて、いつも同じようなコードの変形パターンみたいな書き方をしていましたが、基本パターン的なものを書いていなかったのでいつもあちこちを確認しながら書いている感じでした…。なので、ちょっとまとめておきます。完全に個人的メモ…
Luceneに同梱されている形態素解析のKuromojiですが、以下の3種類の辞書を取ることができます。 IPA辞書 NAIST辞書 UniDic IPA辞書はこちら。 http://mecab.googlecode.com/files/mecab-ipadic-2.7.0-20070801.tar.gzNAIST辞書はこちら。 http://sourceforge…