【问题标题】:Combining TF-IDF (cosine similarity) with pagerank?将 TF-IDF(余弦相似度)与 pagerank 相结合?
【发布时间】:2013-02-03 03:15:10
【问题描述】:

给定一个查询,我有一个文档的余弦分数。我也有文件pagerank。有没有将两者结合起来的标准好方法?

我想把它们相乘

 Total_Score = cosine-score * pagerank

因为如果您的 pagerank 或 cosine-score 得分较低,那么该文档就没有意义了。

或者最好有一个加权和?

Total_Score = weight1 * cosine-score + weight2 * pagerank

这样更好吗?那么你的余弦分数可能为零,但页面排名很高,并且该页面将显示在结果中。

【问题讨论】:

  • 加权总和在正确的轨道上,但您想将帽子设为 wlog(PageRank) 吗?还是 wlog(1+PageRank)?所有这些都将是一个线性组合,你不想考虑一个非线性组合来代替具有 sigmoid 特征的组合吗?

标签: search search-engine tf-idf cosine-similarity


【解决方案1】:

我无法想象这会有什么用处。 Pagrank 计算文档作为与其他重要文档的连接来衡量的“重要性”程度(我假设这就是您的意思。边缘是基于术语共现的文档到文档的链接。如果您指的是其他内容,请指定)。

余弦分数是两个文档之间的相似性度量。所以你的想法是将成对度量与节点度量结合起来,只找到与另一个文档相似的重要文档?为什么不在另一个文档的自我网络上运行 pagerank?

【讨论】:

  • 余弦分数是查询和文档之间的余弦相似度。
【解决方案2】:

我了解您在相对性和重要性之间进行权衡。这是Multi-objective optimization的问题。

我认为您的第二个解决方案会奏效。这就是所谓的线性标量。您一定想知道如何优化权重。但是可以通过不同的哲学找到执行此操作的方法,并且根据每个变量的首要地位逐案主观。实际上,在这样的问题中如何优化权重是a research area of mathematics。因此,很难指出哪种模型或方法最适合您的情况。您可能想继续使用上面的 wiki 链接,并尝试在此类问题上找到一些原则,然后按照它们来解决您自己的案例。

【讨论】:

    【解决方案3】:

    加权和作为排名规则可能更好。

    它有助于将问题分解为检索/过滤步骤和排名步骤。用加权和方法概述的问题不再成立。

    Sergey Brin 和 Lawrence Page 在this 论文中概述的过程使用向量/余弦模型的变体进行检索,并且似乎是某种加权和,其中权重由用户活动确定(参见第4.5.1)。使用这种方法,具有零余弦的文档将无法通过检索/过滤步骤,因此不会被考虑进行排名。

    【讨论】:

    • 实际上他们提到IR 是type-weights 和count-weights 的加权和,由hit lists 计算得出。他们没有提及他们如何将 IR 与 PR “结合”。
    【解决方案4】:

    您可以考虑使用harmonic mean。使用调和平均值,这 2 个分数基本上是平均的,但是,低分数会比常规平均值更拖累平均值。

    你可以使用:

    Total_Score = 2*(cosine-score * pagerank) / (cosine-score + pagerank)
    

    假设 pagerank 得分为 0.1,余弦为 0.9,这两个数字的正常平均值为:(0.1 + 0.9)/2 = 0.5,调和平均值为:2*(0.9*0.1)/(0.9 + 0.1) = 0.18。

    【讨论】:

    • 当分数出现差异时,必须将平均值拉低
    • 然而这个函数给了太多的惩罚。示例:1) cos:0.5, pr:0.5 给出 total:1,但是 2) cos:0.95, pr:0.25 给出 total:0.395 ~ 感觉不对
    猜你喜欢
    • 1970-01-01
    • 2012-11-20
    • 1970-01-01
    • 2017-02-03
    • 2018-06-30
    • 2013-10-16
    • 1970-01-01
    • 2013-04-18
    • 2017-09-05
    相关资源
    最近更新 更多