📜  网络信息检索|向量空间模型

📅  最后修改于: 2021-09-10 02:15:38             🧑  作者: Mango

不言而喻,通常搜索引擎用相关文档的排序列表来响应给定查询。本文的目的是描述针对给定查询查找相关文档的第一种方法。在向量空间模型 (VSM) 中,每个文档或查询都是一个 N 维向量,其中 N 是所有文档和查询中不同术语的数量。向量的第 i 个索引包含第 i 个该向量的术语。

主要的评分函数基于:Term-Frequency (tf) 和 Inverse-Document-Frequency(idf)。

词频和逆文档频率 –
词频( tf_{ij} ) 是针对第 i 个术语和第 j 个文档计算的:

     $$ tf_{i, j} = \frac{n_{i, j}}{\sum_k n_{k, j}} $$

在哪里 $ n_{i, j} $ 是第 j 个文档中第 i 个术语的出现次数。

这个想法是,如果一个文档有多个给定术语的接收,它可能会处理该参数。
逆文档频率 ( idf_{i} ) 考虑第 i 个术语和集合中的所有文档:

    $$ idf_i = \mbox{log} \frac{|D|}{|{d : t_i \in d}|} $$

直觉是,稀有术语比常见术语更重要:如果一个术语仅出现在文档中,则可能意味着该术语表征了该文档。
最终成绩w_{i, j}因为第 j 个文档中的第 i 个项由一个简单的乘法组成: tf_{ij}*idf_{i} .由于文档/查询仅包含集合中所有不同术语的子集,因此大量术语的术语频率可以为零:这意味着需要稀疏向量表示来优化空间需求。

余弦相似度 –
为了计算两个向量之间的相似度:a,b(文档/查询,还有文档/文档),使用余弦相似度:

(1)    \begin{equation*} \cos ({\bf a}, {\bf b})= {{\bf a} {\bf b} \over \|{\bf a}\| \|{\bf b}\|} = \frac{ \sum_{i=1}^{n}{{\bf a}_i{\bf b}_i} }{ \sqrt{\sum_{i=1}^{n}{({\bf a}_i)^2}} \sqrt{\sum_{i=1}^{n}{({\bf b}_i)^2}} } \end{equation*}

该公式计算两个归一化向量所描述的角度的余弦值:如果向量接近,则角度小,相关性高。
可以看出,在向量归一化的假设下,余弦相似度与欧几里德距离相同。

改进 –
向量归一化有一个微妙的问题:讨论单个主题的短文档可能会受到青睐,但代价是处理更多主题的长文档,因为归一化不考虑文档的长度。

枢轴归一化的想法是使文档短于经验值(枢轴长度: l_{p} ) 不太相关,文档更长更相关,如下图所示:Pivoted Normalization

在 VSM 中没有考虑的一个大问题是同义词:术语之间没有语义相关性,因为它既没有被术语频率也没有被逆文档频率捕获。为了解决这个问题,引入了广义向量空间模型(GVSM)。