namazu-ml(avocado)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: pnamazu-98.04.21



古川です。

>> 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