【发布时间】:2011-06-16 05:36:18
【问题描述】:
我正在使用 LETOR 制作信息检索系统。他们使用 TF 和 IDF。 我确信 TF 是依赖于查询的。但是IDF应该是,但是:
"请注意,IDF 是独立于文档的,因此查询下的所有文档都有 相同的 IDF 值。”
但这没有意义,因为 IDF 是功能列表的一部分。如何计算每个文档的 IDF?
【问题讨论】:
标签: information-retrieval tf-idf
我正在使用 LETOR 制作信息检索系统。他们使用 TF 和 IDF。 我确信 TF 是依赖于查询的。但是IDF应该是,但是:
"请注意,IDF 是独立于文档的,因此查询下的所有文档都有 相同的 IDF 值。”
但这没有意义,因为 IDF 是功能列表的一部分。如何计算每个文档的 IDF?
【问题讨论】:
标签: information-retrieval tf-idf
IDF 是特定于术语的。任何给定术语的 IDF 都与文档无关,但 TF 是文档特定的。
换个说法。 假设我们有 3 个文档。
文档 ID 1 “敏捷的棕狐跳过懒惰的狗”
文档 ID 2 “Sly Fox Pub Annapolis 位于教堂圈”
文档 ID 3 “位于教堂圈,在历史街区的中心”
现在如果 IDF 是(文档数)/(包含术语 t 的文档数) 那么无论搜索是什么或文档是什么,术语 fox 的 IDF 都是 3/2。所以 IDF 是 t 的函数。
另一方面,TF 是 t 和 d 上的函数。所以 doc id 1 的 'the' 的 TF 是 2。
【讨论】:
补充一下jshen所说的:
IDF 衡量任何特定单词或语法在您正在搜索的给定语料库中的常见程度。它是对这个词的罕见程度以及它可能的重要性的估计。因此,如果查询包含一个不常见的单词,那么包含该稀有单词的文档应该被判断为更重要。
【讨论】: