Namazu-users-ja(旧)


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

Re: フレーズ検索のHASH値への変換方法



小舞です。

Komai @home さんは書きました:
>>いろいろと調べていると namazu で 文書の総数 * 2 として扱っている
>>のは、nmz_get_maxhit() * 2 との比較している部分だけでした。
>>(これは、検索で見つかった文書の数の上限チェックです。)
>>それ以外の部分、NMZ.p を扱っているところなども含めて
>>BER圧縮されたデータのバイト数 として扱っていました。
>
>ここだけなら、実質上も、何ら問題なさそうですね。

と自分は書いてしまいましたが、
要するに、余計にHITして表示される可能性がある、、ということでしょうか?
そういう経験、あったようななかったような。。

つまり、単語ID X番の次の単語IDの(X+1)番の
先頭のBER値(本来BERの範囲を表している)までもがHITの
文書IDとなって、その次のBER数値のHITしている文書IDがスコア値
となって、表示される、、と。

ということは、その文書IDの値が大きい場合は、(対象ファイルが多いとそうなりやすい)
スコア値が異常に膨らんだ(127以下とかそういう小さい値でなく)
文書IDのHITとなって表示されるということでしょうか?

#すみません、頭ぼけているかもしれないので、
#どなたかチェックしてください。

=大規模ファイル群があった場合=
BERの範囲 文書ID スコア値 文書ID(差分値) スコア値
[6]     [200]  [1]  [400][1]  ・・共に文書ID(先頭と差分値)、スコア値は小さい値(1)
[3]     [300]  [1]            ・・・共に文書ID(先頭)、スコア値は小さい値(1)

6/2=3、3個のファイルがHIT該当と(間違えて判断)
すると、読み込む3番目のファイルは、
文書IDが3
スコア値が300(デカイ!!)
とか。