我将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。