• [IR课程笔记]向量空间模型(Vector Space Model)


    VSM思想

        把文档表示成R|v|上的向量,从而可以计算文档与文档之间的相似度(根据欧氏距离或者余弦夹角)

         那么,如何将文档将文档表示为向量呢?

         首先,需要选取基向量/dimensions,基向量须是线性独立的或者正交的向量。

         在IR系统中,有两种方式决定基向量:

         1.核心概念的思想(core concept):把词语的类型分类,按照其在不同分类上的“倾斜程度”决定向量的值。but,很难决定基向量。

         2.把出现过的term(词语)都当作是一个基向量,假定所有的基向量都是相互正交相互独立的。以下我们采用这一种方式。

       

          一个文档的向量表示就是:所有出现在文档中的term的向量之和。

        

         如何决定权重?

         1.在文档中,某个term出现记为1,不出现记为0.

         2.tf方法(term frequency):在某个文档中,记下term出现的频率(次数)。

         3.tf-idf方法(inverse document frequency):原始的词项频率会面临这样一个严重的问题:即在和查询进行相关度计算时,所有词项都被认为是同等重要的。实际上,某些词项对于相关度计算来说几乎没有或很少有区分能力。一个很直接的想法就是给文档集频率较高的词项赋予较低的权重。

             dft表示的是词项t出现在所有文档的数目

             idft = log(N/dft)  N表示的是所有文档数目。

             tf-idft,d = tft,d x idft

         

           如何计算相似度?

           1.欧式距离

           2.余弦夹角

           ....

     LSI(潜层语义分析)

        SVM 语言模型是将文档集中所有出现过的每个词语都算成一个维度,这样就出现了一个问题,若出现同义词时,它们将会被算成不同的维度,这样,检索性能将会降低。解决这个问题 的一个方法是将SVM做SVD分解,得到新的矩阵。

       如何做SVD分解?

       词项-文档矩阵C可以被表示为C=UΣVT C为MxN的矩阵,U为MxM的矩阵,Σ为MxN的矩阵,VT为NxN的矩阵

       1.假设词项-文档矩阵为C,首先求出CCT

       2.求出CCT的特征值,对这些特征值求均方差,从大到小排序,得到Σ矩阵

        3. 求出Σ的逆阵

       4. 求出Σ对应的特征向量V,然后对V求转置VT

        5. U = CVΣ-1

        求出C的SVD分解后,我们在看其中的Σ矩阵,人工决定将最后r列的值置为0,最后求出新的矩阵C。然后我们用这个新的矩阵进行相似度的计算。

      问题:这是一个静态的过程,当不断有新的文档加入进文档集中时,LSI的效果持续下降,所以,我们需要定期的计算新的矩阵。

    排序

       1. 对每个相关文档进行相似度计算,返回前k个相关度最大的文档,这个时候可以使用堆排序

       2. 索引去除技术。对于一个文档中,不需要计算它所有的词项与查询的相似度,首先人工确定一个r值,r值一般大于k。然后计算文档中词项的tf值,保留前r个tf值最高的词项。然后将这r个词项与查询做并集,然后在这个并集下,计算相关度。

       3.以上我们计算的都是相关度,另外还有一个重要度的计算。相关度+重要度,决定了哪些文档应该排在前面。

          

  • 相关阅读:
    Httpd服务入门知识-Httpd服务常见配置案例之虚拟主机
    Httpd服务入门知识-Httpd服务常见配置案例之Apache的工作做状态status页面
    Httpd服务入门知识-Httpd服务常见配置案例之ServerSignature指令选项
    Httpd服务入门知识-Httpd服务常见配置案例之实现用户家目录的http共享
    Httpd服务入门知识-Httpd服务常见配置案例之定义路径别名
    Httpd服务入门知识-Httpd服务常见配置案例之设定默认字符集
    Httpd服务入门知识-Httpd服务常见配置案例之日志设定
    Httpd服务入门知识-Httpd服务常见配置案例之基于客户端来源地址实现访问控制
    瞠目结舌的一幕即将出现,朝韩:明修栈道暗度陈仓
    Flex+blazeds实现与mySQL数据库的连接(已成功实现此文的例子)
  • 原文地址:https://www.cnblogs.com/leeshum/p/4889515.html
Copyright © 2020-2023  润新知