나는 "red fox"
왜 lucene 부스트 쿼리가 동일한 일반 쿼리보다 점수가 낮습니까?
예
- 쿼리 1 이상한 행동을 루씬에 부스트 연산자를 테스트하고 발견 해요
"red^1.2 fox"
나는 텍스트에 대한 쿼리를 테스트
:
"멋진 붉은 여우"
내가 query2보다 낮은 점수를 얻었습니다. 그러나 나는 query2가 이길 것으로 기대합니다.
내가 쿼리가 정상보다 낮은 점수가 밀어 이유를 궁금해 쿼리 1
{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)
}
에 대한 설명 쿼리 1
{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)
}
에 대한 질의
에 대한 설명은 아래설명?
그래서 어떻게하면 원하는 동작을 얻을 수 있습니까? 'query2'가 승자가되어야합니다 ('query2' 점수는'query1'보다 높아야합니다). 저는'DefaultSimilarity.QueryNorm' 메소드를 오버라이드하여 쿼리 규범을 무시하기 위해 항상'1.0'을 리턴했습니다. 그게 무슨 뜻입니까? – user854301
@ user854301 - 물론, queryNorm을 효과적으로 비활성화 할 것입니다.하지만 비교를 통해 달성하고자하는 것은 거의 확실한 나쁜 아이디어입니다. 쿼리의 컨텍스트에서 추출한 점수는 의미가 없습니다. 나는 당신이하려고하는 것이 무엇이든지 다시 생각해 보길 강력히 권합니다. 참조 : [백분율로 표시] (https://wiki.apache.org/lucene-java/ScoresAsPercentages). – femtoRgon