【问题标题】:How are "related" questions selected?如何选择“相关”问题?
【发布时间】:2009-03-05 06:50:40
【问题描述】:

对于几乎每个问题,右侧都有一个“相关”问题列表。

这些问题是如何选择的?它仅基于标签吗?如果我在列表中看到一个确实不相关的问题以防止它被错误列出,我可以做些什么吗?

【问题讨论】:

标签: support faq-proposed related-questions


【解决方案1】:

自 2009 年以来,情况发生了一些变化 :-) 这些天来,我们严重依赖 Elasticsearch。 “相关”问题现在来自Elasticsearch "More Like This" query

Elastic 在大多数情况下使用tf-idf,这是一种标准搜索算法。他们的具体实现是documented here

【讨论】:

  • 太糟糕了,结果不是很令人印象深刻。
  • 我只是想问一个新问题,即“为什么相关问题几乎与所问的 C 或 C++ 或 shell 问题无关?”当“相关问题”实际上与手头的问题相关时,这确实是例外,而不是规则。我们可以为此获得更好的人工智能吗?在过去 7 年多的时间里,我发现“相关问题”列表基本上毫无价值。
【解决方案2】:

Jeff 和 Joel 在 Stack Overflow 播客的 Episode #32 上讨论了这个问题。

本质上,这是一种词汇搜索——其他帖子的词汇与这篇文章相同。

当然,这涉及到很多调整——前 10k 最常用的英语单词被排除在外,标签被包括在内,加上(可能)一些他们没有透露的魔法酱。

据我所知,如果列表中的问题真的不相关,您将无能为力,因为匹配是完全自动化的,实时完成(无需预处理,意味着无需调整)。

【讨论】:

    【解决方案3】:

    你可以收听Podcast #32,也可以对Stack Overflow Search - Now 51% Less Crappy的文章感兴趣。

    【讨论】:

      【解决方案4】:

      他们在最近的播客中描述了他们的过程。如果我没记错的话,他们使用了三件事:标题、问题正文和标签。对于问题的正文和标题,他们去掉了大约 10,000 个停用词来获得主题。除了编辑标签、标题或问题之外,我认为您无法选择显示哪些相关帖子。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-02-17
        • 1970-01-01
        • 1970-01-01
        • 2011-10-12
        • 2014-07-10
        • 2013-12-22
        • 2011-07-27
        相关资源
        最近更新 更多