首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >狮身人面像搜索相关性问题

问狮身人面像搜索相关性问题
EN

Stack Overflow用户
提问于 2013-07-11 08:24:56
回答 2查看 605关注 0票数 1

我从电影表中索引了以下列:movie_name,languages (作为文本)。我还将popularity列作为属性,因此基本上有一个示例记录如下:

代码语言:javascript
复制
movie_name: "The French Kiss"
languages: "English French"

我想做的是搜索有法语和英语语言的电影,根据相关性对它们进行排序(这样包含两种语言的电影就会排得更高),然后再受欢迎。我正在使用Thinking Sphinx,但基本上我的查询如下:

代码语言:javascript
复制
'@languages "French English"', order: "@relevance DESC, popularity DESC"

现在的问题是,在语言和电影名称上都有法语的电影排名较高,尽管它们的受欢迎程度较低。现在我明白了,这是因为电影文档中出现了两个“法语”,一个是movie_name,另一个是语言。

我尝试过将排序算法更改为bm25 (不考虑关键字的出现),但它仍然返回相同的结果。

如何更改查询,使其首先返回符合“法语和英语”语言的电影,然后根据受欢迎程度排序,然后只返回法语和英语。任何帮助都将不胜感激。谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-25 23:28:53

最后,我使用了一些黑客:现在我不再使用语言名称,而是使用作为字符串索引的语言ids。例如,“英语法语”将变成"10000001 10000002“,其中10000001是英文的id,10000002是法语的id。

如果有人有更好的解决方案,我很乐意。

票数 0
EN

Stack Overflow用户

发布于 2013-07-12 09:48:13

了解狮身人面像排名更精细点的人可能会有更多的帮助,但值得尝试的一件事是,在这两个领域中都有字段权重,而且语言或电影名称都排得很高吗?但我不确定这会不会让你得到你想要的东西。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17588519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档