Next: 蛇足
Up: 2 日本語文書における検索
Previous: 2.4 Namazu の紹介
Namazu が上の二つの問題をクリアしている仕組みを簡単に説明する。
- Namazu が (1)『形態素の区切りの問題』をクリアしているのは、
内部で KAKASI または ChaSen (いずれも、すぐ後で説明) を呼び出すことにより、
文書を形態素に分解しているためである。
- Namazu が (2)『複数の文字コードの問題』をクリアしているのは、
内部で nkf (これは既に何度か登場した) を呼び出すことにより、
文字コードを自動判別&変換しているためである。
KAKASI (http://kakasi.namazu.org/) は元々、
普通の日本語の文書 (仮名と漢字が混在している) を入力として受取り、
それを仮名、またはローマ字の文書に変換するためのソフトウェアであるが、
内部で文章を形態素に分解する (ことに相当する) 操作をしていることに注目され、
「分かち書き」をするように拡張され、それが Namazu でも利用されるようになった。
これも試せるはずだったのだけど‥ |
isc-xas06% source ~re00018/syori2rc
|
← 既に一度してあったら省略可能。 |
isc-xas06% cat ファイル名 | hiragana |
← 平仮名への変換 (結果省略) |
isc-xas06% cat ファイル名 | romaji |
← ローマ字への変換 (結果省略) |
isc-xas06% cat ファイル名 | kakasi -w |
← 分かち書き (結果省略)
|
|
(~re00018/syori2/bin/romaji,
~re00018/syori2/bin/hiragana
はシェルスクリプトである。cat 等で中身を見ると、
kakasi を呼び出していることが分かる。)
最近では茶筌
(http://cactus.aist-nara.ac.jp/lab/nlt/chasen.html)
という「日本語形態素解析器」を使うこともある。
Next: 蛇足
Up: 2 日本語文書における検索
Previous: 2.4 Namazu の紹介
Masashi Katsurada
平成20年10月18日