namazu-ml(avocado)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: pnamazu-98.04.21
- From: Rei FURUKAWA <furukawa@xxxxxxxxxxxxxxxx>
- Date: Wed, 22 Apr 1998 12:21:34 +0900
- X-ml-name: namazu
- X-mail-count: 00538
古川です。
>> On Wed, 22 Apr 1998 02:32:03 +0900, Satoru Takabayashi <ccsatoru@xxxxxxxxxxxxxxxxxx> said:
> | 参考ヒット数: [ *大学: 22 ]
> (参考ヒット数より上の部分は私が手を加えて表示させています)
どんな語に展開されたかを「参考『参考ヒット数』」のような形で表示する仕
様にした方が、使う側から見れば便利かもしれないですね。
(あんまりたくさんだと困りますが)
> 一瞬です。すごい! で、さらに
> % perl namazu.pl "*ネット*"
> のように該当するものがかなり多い場合でも 4.5秒ほとで検索できました。
そうですね。ヒット数が多くても、語の「種類」が多くなければ、時間は普通
の検索と、それほど変わらない、と考えられます。
> ただし、単語中に使われる文字の頻度によっては非常に時間のかかるもの
> もあります。たとえばひらがなを除外しないでインデックスを作った場合
> はひらがなの頻度が異常に高くなってしまいます。
> という具合になります。この数字はちょっと苦しいものがありますね。古
> 川さんの最初の実装のように 2文字づつ記録する形ならこの点はもっと効
> 率的なんですが、記憶容量に限界があるし、とちょっと悩むところです。
送り仮名までサポートしようとすると、結局全空間をスキャンするのに近くな
ってしまいますね。
「カタカナ中間一致」も、「カタカナ語はひとまとまりで登録される」という
前堤に頼っていて、kakasi の辞書にある、「漢字 + カタカナ」の語は検索か
ら漏れています。(12万語中 400 語くらいあります)
ただ、実際に送り仮名も検索したくなる頻度は?というと、それほど高くない
ような気がします。
とすれば、今のカタカナ中間一致と同様の「ひらがな『だけ』の語の中間一致」
を用意して、
「送り仮名も検索したい人は時間がかかるけど我慢してね。
ひらがなだけの単語を検索したいときは '?ひらがな?' とすると速いよ」
という仕様でも、「アリ」だと私は思います。
もっと本格的にやるには、単純な [\xa1-\xfe] のマトリクスではなくて、番号
の振りかたを工夫してやればできそうではあります。(そのうち実験します)
> % perl namazu.pl "*あいうえお"
> のように実行したら
> | 参考ヒット数: [ *あい: 4 ] [ う: 56 ]
> のようにおかしな結果になりました。これは『あ』と『い』を通過して
> 『う』の時点で該当するものがなくなって、意図しない動作になってしまっ
> たものと思われます。今日はもう眠いのでまた明日調べます。
これはバグのようですね。私の意図では
参考ヒット数: [ *あい: 4 ] [ う: 56 ] [ えお: xx ]
参考ヒット数: [ *あい: 4 ] [ う: 56 ] [ え: xx ] [ お: xx ]
などと出て欲しいところです。すみませんが、正規版で「え」「お」「えお」
がどのくらいヒットするか調べてみていただけますか?
それと、'perl namazu.pl "*橋技術科学大学" ' とすると、どうなりますでし
ょうか?
--
ヤマハ(株)ピアノプレーヤ設計課
古川 令
furukawa@xxxxxxxxxxxxxxxx