读书笔记:数学之美-如何确定网页和查询的相关性

2017年08月13日 shenbowei

keywordTF-IDF查询相关性

之前的几章分别讲了自动下载网页、建立索引和度量网页质量。本章主要讲如何确定一个网页和某个查询的相关性的方法。

例如,查找关于原子能的应用的网页:

  1. 在索引中找到包含这三个词的网页(数量很多)

  2. 使用PageRank算法对网页质量进行排序

接下来我们就需要继续度量网页和关键词的相关度,然后结合PageRank的网页质量,综合计算出排序结果。

搜索关键词权重的科学度量TF-IDF

对于原子能应用这三个词,我们可以找到在每个索引到的网页中的出现次数,这个次数可以在一定程度上反映相关性。 但是,为了避免篇幅长的网页“占便宜”。需要进一步对关键词的次数进行归一化,出现了“单文本词频”(Term Frequency)这个概念,即

TF = 关键词的次数/网页的总次数

例如在1000个词的网页中,原子能应用这三个词分别出现了2次、35次和5次。那么他们的词频分别是0.002、0.035和0.005。

这三个词对于搜索相关性的贡献是不同的。明显的权重最小,原子能的权重最大。 那么我们接下来需要定量地来衡量每个关键词对于搜索结果相关性的权重,在信息检索中,使用最多的权重是“逆文本频率指数”(Inverse Document Frequency,缩写为IDF):

其中,$D$为全部的网页数量,$D_w$表示关键词$w$在$D_w$个网页中出现过。$D_w$越大,权重$IDF_w$越小。

例如,假设中文网页数量$D=10亿$,关键词在所有网页都出现过,即$D_w=10亿$。那么它的$IDF=log(1)=0$。 原子能在200万个网页出现过,即即$D_w=200万$。那么它的$IDF=log(500)=8.96$。 应用在5亿个网页出现过,即即$D_w=5亿$。那么它的$IDF=log(2)=1$。

综合IDF,上述相关性的计算公式为词频的加权求和:

如果结合网页排名(PageRank)算法,给定一个查询,有关网页的综合排名大致由相关性和网页排名的乘积决定。

TF-IDF的信息论依据

这里省略,有兴趣的朋友可以查阅《数学之美 第二版》第11章。


评论