朱鷺の杜(IBIS)ブログ

情報論的学習理論(IBIS)に関する管理人の独断と偏見に満ちた意見

高速文字列解析の世界

岩波の「確率と情報と科学」の4冊目が出版されました.
岡野原さんによる 「高速文字列解析の世界」です.

実は12月に発刊され,ほどなく献本をいただきましたが,なかなか腰を据えて読む時間が取れず,ゴールデンウィークまでずれこんでしまいました.この場をお借りして献本いただいたことに感謝し,感想の投稿が遅れたことをお詫びいたします.

Amazonとかで見ると,猛烈な勢いで売れているようですね.久保本星野本も売れ行き好調なようなのでカーネル本もそれに引っ張られてぼちぼち売れているようです.

岡野原さんはいろいろなところでお見かけする程度で直接の面識はありませんが,巻末や Amazon ページに載っている著者紹介を見ると輝かしい経歴を持ち,現在は PFI という企業の経営に参画されているというすごい方です.

さて感想です.あくまで専門外の一素人としての感想なので専門家の方からすると的外れなことを書いてあるかもしれませんがご容赦ください.

Google などの検索システムに代表されるように,文字列解析はネット時代の花形です.Google で,検索語を入れるとほとんど瞬時と言っていい時間内に結果が返ってきます.これってちょっとプログラムをかじったことのある人にとっては驚異的だと思います.

文書の中の文字列を検索したり文字列数を数えたりするという課題自体は,素朴な方法ならプログラムもそれほど大変ではなく私のような素人でもなんとか作れるレベルでしょう.でも,そのようなプログラムでは決して Google のような早い検索結果を返すことはできません.あのような高速な検索を実現しているコアの技術が本書で紹介されている「高速文字列解析」の技術です.(もちろん Google の検索システム全体はいろいろな要素から成っているのでそれだけではないと思いますが).

全体の構成は1章でまず文字列解析の現状,2章で基本的な準備をし,3~5章で本書で取り上げる3つのデータ構造である「BW変換・簡潔データ構造・ウェーブレット木」について説明し,最後の6~8章で副題にある3つの応用「データ圧縮・全文検索・テキストマイニング」についての解説があります.

個人的にはカーネル法で文字列カーネルの計算に接尾辞木が使われていたりするので,そのあたりの周辺技術に興味があって前から勉強したいと思っていた内容でした.
(ちなみに接尾辞木については8章のテキストマイニングの章で説明されています)

私の場合は1章,2章までは岡野原さんの歯切れの良い文体に感心しながらすいすいと読んでいけました.つまづいたのは3.3の BWT の構築のところでした.親切にも「この節は高度な内容を含むので,読み飛ばしてもらっても構わない」と注意書きが書いてあるにも関わらずついつい無駄にチャレンジ精神を発揮して丁寧に読んでいったのですが,アルゴリズムの説明を文章で書いてあるところの理解が怪しくなりました.

本についていた帯を見ると「基礎から最新の実装技術まで」と書いてあります.この本の第一の特色は「実装技術」の部分にあります.日々文字列解析と格闘されている方が基本的なアルゴリズムをこの本を読んだだけで実装できるような形で記述されています.
ただ,逆に実装に慣れていないと書いてある説明を理解するのが難しいかなという気がしました(単に注意書きを守らなかった身の程知らずなのがいけないんですが).

ちなみに サポートページ には実装例へのリンクも張られているので,そこにあるコードを読んだりしながら本を読めば理解も早いのではないかと思います.
スポンサーサイト

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://ibisforest.blog4.fc2.com/tb.php/131-c4005340
この記事にトラックバックする(FC2ブログユーザー)

FC2Ad