Confuse about the tie and qf in edismax

和自甴很熟 提交于 2020-01-03 04:59:09

问题


I am confused about the qf and tie parameters in eDisMax

According to the document:

The qf is used to specify which field to search, while tie is use to specify all other field(except the highest score field)'s affect to the total score.

My confusion is since we already specify which field(suppose we only specify only one field) to search, why we still be able to get other fields to affect the total results(I guess this must be my misunderstanding to how edismax works, but this is also my confuse.)?

Or does that mean each time, edismax will calculate all the score across all fields and apply them with tie to the final score(even we only specify one field)?


回答1:


No, tie parameter is not about fields. Let me explain basic stuff that eDisMax doing - when it works against multiple fields it didn't sum score across fields (as boolean query did, for example), instead it choose maximum.

E.g. if we have fields A and B and score for field A is 3.0, and for B - 5.0, then eDisMax will get score 5.0, completely ignoring other score.

The "tie" param let's you configure how much the final score of the query will be influenced by the scores of the lower scoring fields compared to the highest scoring field.

So, if tie = 0.1, then final score of previous example will be 5.0 + 0.1 * 3.0 = 5.3

More information about tie param: https://wiki.apache.org/solr/ExtendedDisMax#tie_.28Tie_breaker.29



来源:https://stackoverflow.com/questions/29502831/confuse-about-the-tie-and-qf-in-edismax

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!