全文検索

検索エンジンの歴史的意義と未来

弊社森(オラの上司)が大阪市立大学で発表をしてきました。 発表資料は以下からどぞー。 検索エンジンの歴史的意義と未来 発表の前半は、コミュニケーション技術の歴史を踏まえ、 多対1のコミュニケーション技術として検索エンジンを捉える試みです。 発表…

WEB+DB PRESS Vol.42にSennaの記事が掲載されます。

WEB+DB PRESS Vol.42にSennaの記事を書きました。 WEB+DB PRESS Vol.42|技術評論社 今回の記事は、TritonnやLudiaのような他のDBMSを利用するのではなく、 SennaQLという独自のクエリ言語をPHP経由で利用する場合の サンプルコードが載っています。 という…

PythonでSQLiteのFTS2を使う

いつもおなじみの?「傀儡師の館」にてSQLiteのFTS2をPythonで使う手順が公開されている。 SQLite の全文検索を Python から使ってみる (1) | 傀儡師の館.Python - 楽天ブログ SQLite の全文検索を Python から使ってみる (2) | 傀儡師の館.Python - 楽天ブ…

全文検索エンジン FlexSearch

全文検索エンジン FlexSearchというものがあるようだ。 違いを吸収した検索 | 傀儡師の館.Python - 楽天ブログ 特徴は以下のとおり。 「FlexSearch」は、文字間をラバーバンドで連結して 伸縮させるように類似文字列を検出する、 Rubber Band Matching(RBM -…

WikipediaでのLuceneの項目は浮いている

なんとも言えない浮きっぷり。誰が書いたんだろう。 Apache Lucene - Wikipedia

Lucene 2.2の新機能を調べてみた。

関口宏司さんのLuceneブログによると、 Lucene 2.2がリリースされ、 ペイロードをつけることができるようになったようだ。 Lucene 2.2のリリース | 関口宏司のLuceneブログ 記事から名詞だけを取り出す | 関口宏司のLuceneブログ 人名がヒットしたときはスコ…

MySQL用N-Gram全文検索プラグイン

「MySQL用N-Gram全文検索プラグイン」っていうのがあるのを知った。 http://mysqlbigram.googlepages.com/mysql%E7%94%A8n-gram%E5%85%A8%E6%96%87%E6%A4%9C%E7%B4%A2%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3Senna側から見たmysql-bigramとの違いはこ…

Wikipediaの記事をPlainTextにしたい

Wikipediaの記事検索はデモに使えるので、 MediaWikiの記事をプレインテキストにしたい場合がよくある。 以下のページにパーサ一覧みたいなものがあるんだけど、 どれもHTML出力が多くて… http://meta.wikimedia.org/wiki/Alternative_parsers さらに、日本…

やるぞ!Sennaカンファレンス

前々からやりたいと思っていたSennaカンファレンスですが、 id:yappoさんがこんなページを作ってくれたよ! http://soozy.org/index.cgi?SennaConference1 というわけで、参加希望者はじゃんじゃん登録してください! 会場もプログラムも何も決まってないけ…

全文検索勉強会開きたい!

http://d.hatena.ne.jp/Voluntas/20070219/1171885382 全文検索勉強会! 全文検索勉強会! Hyper Estraierの平林さんとも 「勉強会やりましょう!!」と言ったっきりなんですが、 全文検索勉強会をやったらどのくらい人が集まるんでしょうか。 そして!!! Sen…

WikipediaにHyperEstraierの項目が追加

WikipediaにHyperEstraierの項目ができている。 http://ja.wikipedia.org/wiki/Hyper_Estraier N.M-gram法の詳しい解説を書こうと思ったけど、 眠くなったので中止。 Infobox Softwareを追加したら、ログインし忘れていたよ…

Ludiaリリースおめでとう。

Sennaを使ったPostgreSQL用全文検索エンジンLudiaがリリースされたよ! http://www.nttdata.co.jp/release/2006/101100.html http://www.nttdata.co.jp/services/ludia/index.html

Sedueのサイトに、各種全文検索システムの速度比較が載ってるよ!

Sedueっていう検索システム。 圧縮Suffix Arrayらしい。 http://preferred.jp/sedue/benchmark.htm 圧縮Suffix Arrayについては、 開発メンバーにも入っている岡野原さんがいろんなところで書いているので 参考になります。 上記サイトでの性能比較について…

MySQLのSpatial Data TypesとSenna全文検索の併用

MySQLのSpatial Extensions http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html を使って、 以下のブログで実現していることをMySQL + Sennaで実現できるのかな? http://lucene.jugem.jp/?eid=92

形態素解析か、N-gramか

たまたまWebサーフィン中にこんなページを発見。 N-gramマンセーなページはよく見るけど、 珍しくN-gramに批判的な記事。 http://www.accessup.org/pj/6_B4C9CDFDBFCDA4B5A4F3/20060203.html Sennaは単語ベースの転置インデックスを持ちながらも、 部分一致…

multilingual stemmer

多言語対応のstemmer。 http://snowball.tartarus.org/

こういうツール必要だよねえ。

Luke - Luceneインデックスブラウザ http://lucene.jugem.jp/?eid=69 動作を解析したりするときに便利だにゃー。 Sennaいじめてくんを、 いじめるだけじゃなくて管理が出来るようにもしよう。

IFilterってあるのね。

Microsoft Indexing Service用の文書フィルタみたい。 これ使えばデスクトップ全文検索もできるのね。 http://www.hitachi.co.jp/Prod/comp/soft1/textsearch/faq/yougo/eiji.html ただ、デスクトップの場合はインターフェースとか、 インデキシングの負荷分…

snippet作成なんか

snippet作成のときに必要となる、文字列検索アルゴリズム。 BM法くらいしか覚えていなかったんですが(しかも名前だけ)、 ちょちょいと検索すると面白いページ発見。 http://www-igm.univ-mlv.fr/~lecroq/string/index.html1997って書いてあるのが気になる…

Hyper Estraier 1.06で

Hyper Estraier 1.06+perl binding 0.0.15で どうもDatabase Problemが起きたりすることがある。 qdbmは1.8.33だが、1.8.34でバグが取れたらしいMinGW環境でもないし。1.04+perl binding 0.0.14に戻したらとりあえず壊れなくなった、ように見える。 とりあえ…

Hyper Estraier 1.0.5が落ちる

Hyper Estraier 1.0.5が出てました。パチパチ。 で、使ってみようとしたら落ちる。文書に@dateという属性をつけている。 $cond->set_phrase($parsed_query); $cond->add_attr("\@date NUMGE $from"); $cond->add_attr("\@date NUMLE $to"); $cond->set_order…

おおおおHyper Estraierクンめ

Perlバインディング、 est_db_search(実際はest_mtdb_search)の第4引数がNULL固定!!! つまりest_cond_set_maxしていると全体ヒット件数が取れないのだ。 maxを抜いて取るべし。ひい。あと、ESTCONDUSUALの場合にも、 ひっかかったレコードをちゃんとス…

昨日のお祭りを振り返って

というわけで、 昨日は一人全文検索祭り(Perlで簡単に使えてN-gramイケるやつ)をしていたわけですが、 大規模な文書をインデックスするにはSennaかHyper Estraierしか実用的じゃない印象。 Lucene系は、 Javaで本家Luceneを使う場合を除くと余計な心配事が多…

PLucene つ ポイッ

インデックス中に持っている属性でのソートができないっぽい。 いや、普通にPerlのコードでできるんですが、 インデックスを使ったソートが出来ないということで。

PLucene

Perl版Lucene。 http://search.cpan.org/~tmtm/Plucene-1.24/lib/Plucene.pm C++版LuceneのCLuceneのPerlバインディングを使うという手もあり。で、PLucene、ドキュメントを追加しようとすると激烈にエラーを吐きます。 Bitwise-String-Operatorsを普通のXOR…

CLucene つ ポイッ

インデックス中に持っている属性でのソートはできますが、 Perl wrapperにそのためのインターフェースがない…

Rast.pm

Rast 0.3.1ではDATE型とDATETIME型の両方があります。 Rast.pmでは過去のバージョンのRastを前提としており、 DATE型にDATETIME型の値(ex.2005-11-05T12:31:12)をいれようとします。 よって、Rast.pmとRast.xsを適当に修正すべし。…ひさびさに書くと感覚が分…

Hyper Estraier

Hyper Estraier。 amd64でも問題なく。 perlバインディングも問題なく。 index作成もそれなりに早く。 つか、indexがかなり小さい気がする。zlib効きまくり?さて、そろそろスヤリしないと。

CLucene

CLucene。 debian-amd64だとビルドに失敗する。 i386だと大丈夫だけど、 附属のperl wrapperがビルドに失敗する。 CPANにあるCLuceneモジュールは、 rpmの中にあるclucene_dllp.hがないと ビルドに失敗する。tar.gzの中にはない。とりあえず、rpmの中身を/us…

Hyper Estraier

Hyper Estraier、評価しなくちゃ・・・