は私が"red fox"
lucene boostedクエリーが同じ通常のクエリーよりもスコアが低いのはなぜですか?
例
- Query1という奇妙な行動をLuceneのでブースト演算子をテストしたんだ
"red^1.2 fox"
私はテキストに対してクエリをテスト
:
「すてきな赤い狐」
私はquery1よりもquery2のスコアが低いです。しかし、私はquery2が勝つはずだと思います。
クエリの説明以下
{0,4339554 = (MATCH) sum of:
0,2169777 = (MATCH) weight(content:fox in 0), product of:
0,7071068 = queryWeight(content:fox), product of:
0,3068528 = idf(docFreq=1, maxDocs=1)
2,304384 = queryNorm
0,3068528 = (MATCH) fieldWeight(content:fox in 0), product of:
1 = tf(termFreq(content:fox)=1)
0,3068528 = idf(docFreq=1, maxDocs=1)
1 = fieldNorm(field=content, doc=0)
0,2169777 = (MATCH) weight(content:red in 0), product of:
0,7071068 = queryWeight(content:red), product of:
0,3068528 = idf(docFreq=1, maxDocs=1)
2,304384 = queryNorm
0,3068528 = (MATCH) fieldWeight(content:red in 0), product of:
1 = tf(termFreq(content:red)=1)
0,3068528 = idf(docFreq=1, maxDocs=1)
1 = fieldNorm(field=content, doc=0)
}
Query1をのために説明クエリは、通常のものよりも低いスコアを持って後押しなぜかしらQUERY2ため
{0,4313012 = (MATCH) sum of:
0,2396118 = (MATCH) weight(content:fox^1.25 in 0), product of:
0,7808688 = queryWeight(content:fox^1.25), product of:
1,25 = boost
0,3068528 = idf(docFreq=1, maxDocs=1)
2,035813 = queryNorm
0,3068528 = (MATCH) fieldWeight(content:fox in 0), product of:
1 = tf(termFreq(content:fox)=1)
0,3068528 = idf(docFreq=1, maxDocs=1)
1 = fieldNorm(field=content, doc=0)
0,1916894 = (MATCH) weight(content:red in 0), product of:
0,6246951 = queryWeight(content:red), product of:
0,3068528 = idf(docFreq=1, maxDocs=1)
2,035813 = queryNorm
0,3068528 = (MATCH) fieldWeight(content:red in 0), product of:
1 = tf(termFreq(content:red)=1)
0,3068528 = idf(docFreq=1, maxDocs=1)
1 = fieldNorm(field=content, doc=0)
}
を説明しますか?
私はどのようにして希望の行動を起こすことができますか?私は 'query2'が勝者(' query2'スコアは 'query1'よりも高くなければなりません)である必要があります。 'DefaultSimilarity.QueryNorm'メソッドをオーバーライドして、常にクエリのノルムを無視するために' 1.0'を返しました。それは意味を作っていますか? – user854301
@ user854301 - 確かに、それは効果的にqueryNormを無効にしますが、あなたがそれらを比較して達成しようとしていることは、ほぼ確実に悪い考えです。スコアはクエリのコンテキストから取り除かれても意味がありません。私は強くあなたが何をしようとしているのか考え直すことをお勧めします。参照:[スコアとしてのスコア](https://wiki.apache.org/lucene-java/ScoresAsPercentages)。 – femtoRgon