我将lucene索引中的ngram存储到第3级。当我读取索引并计算项和ngram的得分时,我将获得如下结果

TERM              FREQUENCY....      TFIDF
minority           25           16.512926
minority report 24           16.179296
report           27           13.559037
cruise           12           11.440491
tom cruise        7            8.737819


因此,如果我们看一下“汤姆·克鲁斯”(tom cruise)的例子,它与二字形一起出现7次。由此可见,“巡航”仅发生了5次。因此,我不希望重复这种频率,因为仅“巡航”比“汤姆·克鲁斯”得分要高,这是不正确的,因为它包含在内部。

抱歉,如果我解释不好,我不知道该如何称呼这种评分方式,如果有人知道可以解释这种技术用语,请进行编辑。

谢谢

最佳答案

我相信我回答了您刚才问过的类似问题。
IIUC,您希望更重要的术语脱颖而出,并且您认为“汤姆·克鲁斯”比“巡航”更为重要。

这看起来像是您的数据模型中的问题。 TFIDF似乎对您想要的是错误的。
您可以尝试构建语言模型,如Peter Norvig's "Beautiful Data" chapter中所述。

要点是:


计算每个字母,二元组和三元组的概率(您将需要进行平滑或补偿,如本文中所述)。
按概率而不是TFIDF选择条件。


A Language Model Approach to Keyphrase Extraction似乎做类似的事情。某些替代方法是Kea(将TFIDF作为其中的一项功能)和Peter Turney's Keyphrase extraction work

10-06 06:06