TuesdayFSTとGraphVizLuceneのFSTというクラスを見ていたら、同じパッケージのUtilクラスにtoDot()というメソッドがあったので、FSTオブジェクトをGraphVizで表示してみた。そのプログラムと手順を紹介しよう。Transducer(有限状態変換器)の略でそのままの名称のクラスがLuceneで提供されている。FSAと異なり受理した言語(バイトシーケンス)を任意の出力にマップする。Lucene/Solrでは単語辞書をさまざまなメタ情報にマップしたり、類義語辞書を持ったりするので、FSTがいろいろなところで活用できる。FSTを構築するのにすぐれたアルゴリズムがあり、こちらの論文で紹介されている方法を使ってFSTクラスが実装されている。この方法では入力単語はあらかじめソートされている必要があるが、Luceneの単語辞書はUnicode順でソートされており、また類義語辞書などソートされていないものについてはソートした上でadd()すればよい。FSTを使った簡単なプログラムを次に示す。}}このプログラムを実行すると、out.dotというファイルができるので、GraphVizのdotコマンドを次のように実行する。out.dotすると、out.pngという次のような画像ファイルが出力される。このアルゴリズムではプレフィックスだけでなくサフィックスも文字列が共有されており、非常にメモリ効率が高いことがわかる。決算期の今は実は受講の大チャンス!あなたの部署の余った予算を有効活用しましょう。Vol.59の「大規模データ分析」の記事は具体的で大変面白かった。その中第2章ではHadoopを使って大量の日本語テキストの処理を行い単語の共起分析を行う方法が書かれている。そこで私は早速「Solr本のサンプルデータ(技術評論社のWebサイトをクロールして集めた書籍データ)」を使ってやってみた。それだけでは芸がないので、Luceneのインデックスから共起分析を行い、それと比較してみる。エリテーブルリレーショナルフォーム抽出アプリケーション蓄積データ件数が少ない(千数百件程度)わりに、どちらもそれなりの出力がされていてなかなか面白い。Action」が執筆中らしい。LiteのZIPファイルをダウンロードして解凍する。Relicに作成したユーザアカウントの画面にSolrの稼働状況が表示される。Saturdaysearch-lucene.comLucene/SolrのコミッターのOtisさんのSematext社制作によるsearch-lucene.comは、Lucene/Solr/Nutchなどのメーリングリストや、ソースコード/Javadocなどが検索できる。auto-completion機能付きなので、メソッド名などの最初の数文字を入力するとGoogleサジェストのように検索窓の下に検索文字列候補がドロップダウン表示されるのでなかなか便利。-XGETで検索している様子をビデオデモで見られる。Tuesday(メモ)Antiwordhttp://www.winfield.demon.nl/Wordファイルからテキストデータを抽出するツール。対応プラットフォームが充実しており、VMS、Zaurus、BeOSまでをもサポートしている。比較のポイント商用検索エンジンを購入した企業担当者は読まないでください。McCandlessFastVectorHighlighterについて解説記事を寄稿しました。