好的,让我试着解释一下我做了什么,然后希望我的要求会更清楚。尽管在整个索引中并不常见,但我正在分析文档并尝试根据某些文档中经常出现的单词对它们进行评分。到目前为止,我已经得到了一些非常有趣的结果,并且能够看到给定文档中每个术语的 tf 和 idf。
为了对整个文档进行评分,我想做一些与 tf-idf 相关的事情,但我不想使用文档中的每个术语。现在,我已经对一些过滤器进行了硬编码,以去除过于常见的单词(idf 对我来说太低的单词)和过于不常见的单词(idf 分数非常高的单词;根据我的经验,它们通常是拼写错误)。
有没有一种动态过滤 idf 异常值的好方法?
代替:
if (idf > x && idf < y)
include the word
我想做类似的事情:
if (idf is in the 60th percentile of idfs for the index)
include it
也许这是最好的方法,但我想听听您可能提出的任何其他解决方案,谢谢!