“Optimize the parameter in different data source”版本间的差异
来自cslt Wiki
(→boost some specific field) |
(→boost some specific field in lucene) |
||
第14行: | 第14行: | ||
// use query to search documents | // use query to search documents | ||
The score will be proportional to 0.8*score(titleQuery) + 0.2*score(viewsQuery) (to a multiplicative constant). | The score will be proportional to 0.8*score(titleQuery) + 0.2*score(viewsQuery) (to a multiplicative constant). | ||
− | |||
To leverage your views field, you will probably need to use a ValueSourceQuery. | To leverage your views field, you will probably need to use a ValueSourceQuery. |
2014年11月21日 (五) 01:52的版本
method
Definition
- formula
- data source: q:standard question, q-a:standard question and answer, q-e: standard question and extracted question, q-w:standard question with weight.
- lucent result: q: q1 ,q2 ,q3 ,q4,q5, q-a:k1,k2,k3,k4,k5, q-e:m1,m2,m3,m4,m5
boost some specific field in lucene
- Here is how you can do that[1]
Query titleQuery, viewsQuery; titleQuery.setBoost(0.8); viewsQuery.setBoost(0.2); BooleanQuery query = new BooleanQuery(); query.add(titleQuery, Occur.MUST); // or Occur.SHOULD if this clause is optional query.add(viewsQuery, Occur.SHOULD); // or Occur.MUST if this clause is required // use query to search documents
The score will be proportional to 0.8*score(titleQuery) + 0.2*score(viewsQuery) (to a multiplicative constant). To leverage your views field, you will probably need to use a ValueSourceQuery.