精华内容
下载资源
问答
  • 向量空间模型(vector space model)
    万次阅读 多人点赞
    2017-10-17 20:30:08

    向量空间模型(vector space model)

    向量空间模型概念简单,把对文本内容的处理简化为向量空间中的向量运算,并且它以空间上的相似度表达语义的相似度,直观易懂。当文档被表示为文档空间的向量,就可以通过计算向量之间的相似性来度量文档间的相似性。文本处理中最常用的相似性度量方式是余弦距离。

    VSM基本概念:

    (1) 文档(Document):泛指一般的文本或者文本中的片断(段落、句群或句子),一般指一篇文章,尽管文档可以是多媒体对象,但是以下讨论中我们只认为是文本对象,本文对文本与文档不加以区别"。

    (2) (Term):文本的内容特征常常用它所含有的基本语言单位(字、词、词组或短语等)来表示,这些基本的语言单位被统称为文本的项,即文本可以用项集(Term List)表示为D(T1,T2,,,,Tn)其中是项,1≤k≤n"

    (3) 项的权重(TermWeight):对于含有n个项的文本D(,………,,项常常被赋予一定的权重表示他们在文本D中的重要程度,即D=(,,,,······,)。这时我们说项的权重为(1≤k≤n)。

    (4) 向量空间模型(VSM):给定一文本D=D(,………,)由于在文本中既可以重复出现又应该有先后次序的关系,分析起来有一定困难。为了简化分析,暂时不考虑的顺序,并要求互异,这时可以把,………,看作是一个n维的坐标,而就是n维坐标所对应的值,所以文档D()就可以被看作一个n维的向量了。

    (5) 相似度(Similarity)两个文本D,和DZ之间的(内容)相关程度(Degree of Relevance)常常用他们之间的相似度Sim(,)来度量,当文本被表示为向量空间模型时,我们可以借助与向量之间的某种距离来表示文本间的相似度"常用向量之间的内积进行计算:
                   Sim(,)=*
    或者用夹角的余弦值表示:
                   Sim(,)=

    可以看出,对向量空间模型来说,有两个基本问题:即特征项的选择项的权重计算

    特征项选择

    用来表示文档内容的项可以是各种类别,对汉语来说,有字、词、短语,甚至是句子或句群等更高层次的单位。项也可以是相应词或短语的语义概念类。

    项的选择必须由处理速度、精度、存储空间等方面的具体要求来决定。特征项选取有几个原则:一是应当选取包含语义信息较多,对文本的表示能力较强的语言单位作为特征项;二是文本在这些特征项上的分布应当有较为明显的统计规律性,这样将适用于信息检索、文档分类等应用系统;三是特征选取过程应该容易实现,其时间和空间复杂度都不太大。实际应用中常常采用字、词或短语作为特征项。

    由于词汇是文本最基本的表示项,在文本中的出现频度较高,呈现一定的统计规律,在考虑到处理大规模真实文本所面临的困难,一般选择词汇或短语作为特征项,但是直接选用文本中的词或词组作为文本特征项也会存在以下问题:
    (1) 文本中存在一些没有实在意义但使用频率很高的虚词和功能词,如中文中“的”、“把”、“了”等,常常把一些真正有分类作用的实词淹没掉了。解决这个问题的方法是把这些词组织成一个禁用词表,或者进行权重计算时,使它们的权重很低,通过取阀值将它们丢弃。采用禁用词表时,词表的选择很关键,很难全面地包括所有的禁用词,并且语言是不断发展的,禁用词表也是随着训练文本集合的不同而不同,某个词在这里不是禁用词,到另外一类文本中可能就成了禁用词。另一方面考虑到,最能代表一篇文章实际意义的词,往往是那些实词,如形容词、动词、名词,而且同一个词,当处于不同词性时,可能分别属于和不属于禁用词表。例如:“他高兴地走了”(副词“地”应是禁用词),“地很不平”(名词“地”不应作为禁用词)"针对这个现象,提出了只提取形容词、动词和名词作为特征项,并尝试着取代禁用词表方法.
    (2) 采用词语作为特征项时还会出现所谓的同义现象,同义现象是指:对于同一个事物不同的人会根据个人的需要、所处的环境、知识水平以及语言习惯有着不同的表达方式,因此所采用的词汇也有很大的不同。所以经常出现两个文本所用的词汇有所不同,但实际上两者是相似的,这就是词的同义现象造成的。例如电脑和计算机是同一个概念,应该属于同一个特征项,目前最常用的解决方案是采用概念词典来解决这个问题。

    分词

    确定了特征项单位以后,接下来要做的就是把文本分割成特征项的表示。我们知道,词是最小的能够独立活动的有意义的语言成分。然而,汉语是以字为基本的书写单位,文本中词与词之间没有明确的分隔标记,而是连续的汉字串,显而易见,自动识别词边界,将汉字串分为正确的词串的汉语分词问题无疑是实现中文信息处理各项任务的基础与关键。中文词语分析一般包括3个过程:预处理过程的词语粗切分、切分排歧与未登陆词识别、词性标注。目前中文词语分析采取的主要步骤是:先采取最大匹配、最短路径、概率统计、全切分等方法,得到一个相对最好的粗分结果,然后进行排歧、未登陆词识别,最后标注词性。在实际系统中,这三个过程可能相互交叉、反复融合,也可能不存在明显的先后次序。可以将现在的分词算法分为3大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。

    1)基于字符串匹配的分词方法
    这种方法又叫机械分词法,它按照一定的策略将待分析的汉字串与机器字典中的词条进行匹配,若在字典中可以找到某个字符串,则匹配成功(识别出一个词)。按照扫描方向的不同可以分为正向匹配和逆向匹配;按照不同长度优先匹配的情况,又可以分为最大(最长)匹配和最小(最短)匹配;按照是否与词性标注过程相结合,又可分为单纯分词法和分词与标注相结合的一体化方法。具体的方法主要有以下几种:
      (a)最大匹配法(maximum matching method, MM)

    在计算机中存放一个已知的词表,这个词表叫底表,从被切分的语料中,按给定的顺序截取一个定长的字符串,通常为6-8个汉字,这个字符串的长度叫做最大词长,把这个具有最大词长的字符串与底表中的词相匹配,如匹配成功,则可确定这个字符串为词,然后指针向给定的方向移动与已经识别出的词长相应个数的汉字,继续进行匹配,否则,则把该字符串逐次减一,再与底表中的词长进行匹配,直到成功为止。MM的原理简单,易于在计算机上实现,实现复杂度比较低。缺点是最大词长难以确定,如果定得过长,则算法复杂度显著提高,如果定得太短,则不能切分长度大于它的词,导致切分正确率降低。

    b)逆向最大匹配法(reverse maximum matching method, RMM)

    这种方法的原理与MM相同,不同的是切词的扫描方向,如果MM的方向是从左到右取字符串进行匹配,则RMM的切词方向就是从右到左取字符串进行匹配。试验证明RMM的切词正确率较MM更高一些。但是,RMM要求配置逆序的切词字典,这种词典与人们的语言习惯不同。

    c)逐词遍历匹配法

    这种方法把辞典中的词按由长到短的顺序,逐个与待切词的语料进行匹配,直到把语料中所有的词都切分出来为止。由于这种方法要把辞典中的每个词都匹配一遍,需要花费很多时间,算法的时间复杂度相应增加,效率不高。

    d)双向扫描法

    这种方法是分别用MM和RMM进行正向和逆向扫描完成初步的切分,并将用MM初步切分的结果与用RMM初步切分结果进行比较,如果两种结果一致,则判定正确,否则定为疑点,此时或者结合上下文信息,或进行人工干预,选取一种切分为正确结果,由于要进行双向扫描,时间复杂度增加,而且为了使切分词典能同时支持正向与逆向两种顺序的匹配和搜索,词典的结构比一般的切词词典复杂。

    e)最佳匹配法(optimum matching method,0M)

    这是在切词词典中按词出现频率的大小排列词条,高频词在前,低频词在后,从而缩短了查询切词词典的时间,加快切词的速度,使切词达到最佳的效率。这种切词方法对于分词算法没有什么改进,只是改变了分词词典的排列顺序,它虽然降低了切词的时间复杂度,却没有提高分词的正确率。

    f)设立切分标记法

    在书面语中,存在的切分标记有两种:一种是自然的切分标志,如标点符号,词不能跨越标点符号而存在,标点符号则是词的边界之所在;另一种是非自然的切分标志,如只能在词首出现的词首字,只能在词尾出现的词尾字,没有构词能力的单音节单纯词、多音节单纯词、拟声词等,词显然也不能跨越这些标志而存在,它们也必然是词的边界。如果收集了大量的这种切分标志,切词时,先找到切分标志,就可以把句子切分成一些较短的字段,然后再用MM或RMM进行进一步切分。使用这种方法切词,要额外消耗时间,并扫描切分标志,还要花费存储空间来存储非自然的切分标志,使切词算法的时间复杂度和空间复杂度都大大增加了,而切词的正确率却提高的有限,所以采用这种方法的自动切词系统不多。

    g)有穷多级列举法

    这种方法把现代汉语中的全部词分为两大类:一类是开放词,如名词、动词、形容词等,它们的成员几乎是无穷的,另一类是闭锁词,如连词、助词、叹词等,它们的成员是可以一一枚举的。切词时,先切出词的特殊标志的字符串,如阿拉伯数字、拉丁字母等,再切出可枚举的闭锁词,最后在逐级切出开放词。这是完全立足于语言学的切词方法,在计算机上实现起来还是很有困难。
      

    由于汉语很少单字成词的特点,正向最小匹配和逆向最小匹配一般很少使用。一般说来,逆向匹配的切分精度略高于正向匹配,遇到的歧义现象也很少。统计结果表明,单纯使用正向最大匹配的错误率为1/169,单纯使用逆向最大匹配的错误率为1/245(这可能是因为汉语的中心语靠后的特点)。但这种精度还远远不能满足实际的需要。由于分词是一个智能决策过程,机械分词方法无法解决分词阶段的两大基本问题:歧义切分问题未登陆词识别问题。实际使用的分词系统,都是把机械分词作为一种切分手段,还需通过利用各种其他的语言信息来进一步提高切分的正确率。

    对于机械分词方法,可以建立一个通用模型,形式化地表示为ASM(d,a,m)即Automatic Segmentation Model"其中:

    d:匹配方向,+1表示正向,一1表示逆向。

    a:每次匹配失败后增加/减少字符串长度(字符数),+1为增字,一1为减字。

    m:最大/最小匹配标志,+1为最大匹配,一1为最小匹配。

    例如,ASM(+,-,+)就是正向减字最大匹配法(即MM),ASM(-,-,

    +)就是逆向减字最大匹配法(即RMM),等等。对于现代汉语来说,只有m=+1是实用的方法。

    2)基于理解的分词方法

    通常的分词系统,都力图在分词阶段消除所有歧义切分现象,有些系统则在后续过程中来处理歧义切分问题,其分词过程只是整个语言理解过程的一个小部分。其基本思想就是在分词的同时进行句法、语义分析,利用句法信息和语义信息来处理歧义现象。它通常包括3个部分:分词子系统、句法语义子系统、总控部分。在总控部分的协调下,分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。这种分词方法需要使用大量的语言知识和信息。由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此,目前基于理解的分词系统还处于试验阶段,联想回溯法就是其中的一种。

    联想-回溯法(association-backtracking method ,AB):要求建立知识库-特征词词库、实词词库和规则库。首先将待切分的汉字字符串序列分割为若干子串,子串可以是词,也可以是由几个词组合成的词群,然后就利用实词词库和规则库将词群细分为词。切词时,要利用一定的语法知识,建立联想机制和回溯机制。联想机制由联想网络和联想推理构成,联想网络描述每个虚词的构词能力,联想推理利用相应的联想网络来判定所描述的虚词究竟是单独的词还是作为其他词中的构成成分。回溯机制主要用于处理歧义句子的切分。联想回溯算法虽然增加了算法的时间复杂度和空间复杂度,但是这种方法的切词正确率得到了提高,是一种行之有效的方法。

    3)基于统计的分词方法

    从形式上看,词是稳定的字的组合,因此在上下文中,相邻的词同时出现的次数越多,就越有可能构成一个词"因此字与字相邻共现的频率或概率能够较好地反映成词的可信度。可以对语料中相邻共现的各个字的组合的频度进行统计,计算它们的互现信息。定义两个字的互现信息为:
                  M(X,Y)=log(P(X,Y)/P(X)*P(Y))

    其中P(X,Y)是汉字X,Y的相邻共现频率,P(X)、P(Y)分别是X、Y在语料中出现的概率。互现信息体现了汉字之间结合关系的紧密程度。当紧密程度高于某一个阐值时,便可认为此字组可能构成一个词。这种方法只需要对语料中字组频度进行统计,不需要切分词典,因而又称为无词典分词法或统计取词方法。但这种方法也有一定的局限性,会经常抽出一些共现频度高,但并不是词的常用字组,例如“这一”、“之一”、“有的”、“我的”、“许多的”等,并且对常用词的识别精度差,时空开销大。实际应用的统计分词系统都要使用一部基本分词词典(常用词词典)进行串匹配分词,同时使用统计方法识别一些新词,即将串频统计和串匹配结合起来,既发挥匹配分词切分速度快、效率高的特点,又利用了无词典分词结合上下文识别生词、自动消除歧义的优点。常用的有基于词频统计的切词法基于期望的切词法
      a)基于词频统计的切词法

    这种方法利用词频统计的结果帮助在切词过程中处理歧义切分字段.这种方法的缺点是:由于只考虑词频,出现频率较低的词总是被错误地切分.

    (b) 基于期望的切词法

    这种方法认为一个词的出现,它后面紧随的词就有一种期望,据这种期望,在词典中找到所有的词从而完成切分.这种方法增加了切词的空间复杂度,但在一定程度上提高了切词的正确率。

    中文文本自动分词技术一般以词典作为分词依据,使用专门的分词算法将文本中出现于词典中的词识别出来。通过这种方法获得的文本特征只能是词典中出现的词汇,但是自然语言领域相关性和随时间变化的特性,词典中不可能包含文本中所有词汇,因此,对不同类型文本进行分类时,就需要不断修整和扩充词典并改进分词技术,才能获得良好的分类性能。

    针对基于词典分词的分类系统存在的弊端,人们提出了一种基于n-gram信息的文本特征提取技术,使文本自动分类系统摆脱了对复杂分词处理程序对庞大词库的依赖,实现了中文文本自动分类的领域无关性和时间无关性。N-gram信息的概念是信息论创始人C.E.Shannon在研究信源编码时提出来的,常被用来表示信源输出的连续n个字符所组成的字符串。Shannon曾用它来研究英文文本中字符或字符串的统计特性,即信息嫡,随后,n一gram信息被广泛应用于文本压缩、字符识别与纠错等领域,是一种直接面向代码的技术。采用n-gram信息作为文本特征具有以下特点:第一:无需任何词典支持;第二:对输入文本所需的先验知识少;第三:无需进行分词处理;但是n-gram信息获取技术的领域无关性和时间无关性的实现是有代价的.首先,n-gram信息的提取对系统资源的要求比较高,因为进行任何n-gram信息提取时,都会产生大量的数据冗余,占用很大的内存空间。相比较于词典的分词技术,其实现效率低,获取n一gram信息将花费较长的时间。

    特征值抽取
    一篇文章在经过了分词处理之后,会产生很多词条。如果一个文档所有词条都被作为其特征,将会使特征项异常庞大,而且这样的特征项会使得每个特征项所含信息非常平滑,有用信息反而不会突出。因此我们需要进行特征项选取,把词条中最能代表某类文本信息的词条挑选出来,作为文本的特征项。实验结果表明简化特征项不但不会使分类结果准确率降低,而且还会使结果更加准确。特征项选择一般使用统计方法,利用各种计算公式,计算词代表的信息含量,确定一个阀值,将低于阀值的词语过滤掉。或者确定一个特征项数目n,保留处于信息含量在前n位的词条。

    特征抽取算法是文本自动分类中的一项关键技术和瓶颈技术,如何从原始文本特征集合中选择最能表示文本主题内容的特征子集,是文本特征抽取算法的研究目标。目前,有多种特征抽取算法被用于文本自动分类的研究中,但这些算法都有其优点和缺点,没有公认的最优方法,需要针对具体系统进行对比来确定最优方法。

    特征选择可以从两个方面提高系统性能一是分类速度,通过特征选择,可以大大减少特征集合中的特征数,降低文本向量的维数,简化计算,防止过度拟合,提高系统运行速度。二是准确率,通过适当的特征选择,不但不会降低系统准确性,反而会使系统精度提高。

    在文本处理中,一些常用特征提取评估函数有文档频数(document frequency)、信息增益(information gain)、期望交叉熵(expected cross entropy)、互信息(mutual information)、统计(CHI)、文本证据权(the weight of evidence for text)等。

    (1) 文档频数DF

    它是最简单的评估函数,值为训练集合中该单词发生的文本数。DF评估函数的理论假设稀有单词可能不包含有用信息,也可能太少而不足以对分类产生影响,也可能是噪音,因此可以删去。显然它在计算量上比其他评估函数小很多,但是实践运用中它的效果却很好.DF的缺点是稀有单词可能在某一类文本中并不稀有,也可能包含着重要的判断信息,错误的舍弃,可能影响分类器的精度。因此,在实际运用中一般并不直接使用DF。

     

    (2) 信息增益(information Gain)

    信息增益表示文档中包含某一特征值时文档类的平均信息量。它定义为某一特征在文档中出现前后的信息熵之差。假定c为文档类变量,C为文档类的集合,d为文档,f为特征(以下各节同此)。对于特征f,其信息增量记为IG(f),计算公式如下:
           IG(f)=H(C)-H(C|f)

                =

     

    特征项赋权

    为了兼顾查全率和查准率,检索系统在对特征项进行赋权时,应同时包含提高查全率查准率的赋权因子。特征项赋权因子由频率因子(TF)、文档集因子(DF)和规格化因子三部分组成。

    1)在文档中频繁出现的特征项具有较高的权重,因此检索系统常使用频率因子TF(Term Frequency)进行特征项赋权,使用高频特征项进行查询可以提高系统的查全率。

    2)仅使用频率因子并不能保证系统的查询性能,提高查全率时会影响检索系统的查准率。因此需要引入一个与文档集合有关的因子,加大文档之间的区分度。如果特征项在集合中较少的文档中出现,则相应的文档集因子IDF(Inverse Document Frequency)较大。在文档总数为N的集合中,如果包含某特征项的文档数为n,则文档集因子是idf=。

    3)当文档较长时,查询式与文档进行匹配的可能性更大,所以长文档比短文档更有可能被提取出来,因此引入规格化因子来消除文档长度对匹配结果的影响。假定代表特征项的权重,最后的规格化因子定义为:

     OR

    向量空间模型

    TF-IDF 权重
    特征项的权重计算是文本相似度计算中的一个非常重要的环节。一篇文本中的特征项数目众多,要想得到比较准确的对文本内容的数学化表示,我们需要对能显著体现文本内容特征的特征项赋予高权重,而对不能可以体现文本内容特征的特征项赋予低权重。从效率方面来说,特征项权重的计算是文本相似度计算中的主要工作,它的效率也直接影响文本相似度计算的整体效率。
    经典的 TF-IDF 权重是向量空间模型中应用最多的一种权重计算方法,它以词语作为文本的特征项,每个特征项的权重由 TF 权值和 IDF 权值两个部分构成。对于文本 中的第 k 个特征项,其对应权重计算方法为:

                  =*

    其中

    (1) TF (Term Frequency)权值:特征项在文本中出现的次数,即如果在文本中出现次,那么

                       

    (2) 在实际应用中,通常需要对 TF 值进行标准化处理,以避免文本太长所导致的的统计偏差:
                        =

    (3)IDF(Inverse Document Frequency)权值:特征项在全局文本集 D 中的出现频率,即:
                  log

    假设全局文本集共有M 篇文本,特征项共在篇文章中出现过,那么
                      =log(M/())

    其中为经验常数,一般取 0.01。

    TF 权值反映了特征项在给定的文本中的概念重要程度(freq importance),体现了信息论中频度的思想。某特征项在文本中的出现次数越多,表示它对于该文本的重要程度越高。IDF 权值则反映了特征项的信息度(informativeness),用于体现一个特征项的“文义甄别能力”。如果一个特征项只出现在一个或少数文本中,那么它很可能是能体现文本内容特征的语义中心词,会被赋予大的 IDF 值以提高权重。而如果一个特征项在很多的文本中出现过,表示它代表文本的“个性特征”的能力很低,IDF 值也就相应地小。

    TF-IDF 权重综合考虑了不同的词在文本中的出现频率(TF 值)和这个词对不同文本的分辨能力(IDF 值),在所有文本中出现次数很少的特征项被赋予高权重,因为它们被认为是文本内容特征的辨别器。例如,在汉语中“是”的出现频率非常高,但由于它在很多文本中都出现,会被赋予一个很低的 IDF 值,以此体现它对于我们分辨文本的特征并没有太大的帮助。而像“偏微分”这种专业词汇由于只会在相关专业文本中才会出现,会被赋予高 IDF 值以体现它的文本特征鉴别能力。

    TF-IDF 是基于统计的权重计算方式,在全局文本集包含的语料特征足够的情况下,这种基于统计学的方法经过实践检验是一种有效的特征项权重衡量方法。其局限性在于它的准确度受全局文本集的影响较大:全局文本集越大,语料越完备,所得的权重也就越准确,但相应地计算效率也会随着全局文本集的增大而降低。

    更多相关内容
  • 向量空间模型(VSM)的JAVA实现,从文档表示到相似度计算,使用两种相似度计算方式:cos和tf-idf算法
  • 利用倒排索引和向量空间模型实现的信息检索系统。 完成工作: 带位置信息的倒排索引 转化空间模型 TOP K查询 BOOL查询 初步查询 拼写矫正 名词查询 拼写矫正(以下) 运行 环境要求:python3 在初次运行程序前请下载...
  • 向量空间模型的Java代码
  • self complement of Sentence Similarity compute based on cilin, hownet, simhash, wordvector,vsm models,基于同义词词林,知网,指纹,字词向量,向量空间模型的句子相似度计算。
  • 提出一种基于左归词频向量空间模型的抄袭检测算法.通过左归处理将抄袭文本的指代还原,借助同义词链对所有同义词统一左对齐于同义词链首词,然后以直接统计词频构造文本词频特征,抛弃词频统计抄袭检测算法中以TF-IDF...
  • vsm向量空间模型java实现(源码) 已经测试了,可以直接导入eclipse使用。
  • 主要介绍了用Python给文本创立向量空间模型的教程,比如文中举例将文本中的词频转为量化的矩阵,需要的朋友可以参考下
  • 基于跨语言广义向量空间模型的跨语言文档聚类方法.pdf
  • 分析了文本自动分类的关键理论及技术,给出一个已实现的基于向量空间模型(VSM)的文本自动分类系统的框架模型,重点描述此系统的实现算法。此算法在训练阶段通过部分训练集确定向量的特征提取维数,并提出一种...
  • 在传统向量空间模型的基础上,提出一种新的信息检索算法模型——N层向量模型。此模型应用在Web信息检索上,能较好地适应文档集合的动态扩充。
  • 基于语义相似度向量空间模型的改进型聚焦爬虫
  • 文章目录向量空间模型(Vector Space Model)0. 概述1. TF(Term frequency ,TF)2. IDF(Inverse document frequency,IDF)3. TF-IDF(Term Frequency-Inverse Document Frequency)4. Similarity Function 相似性函数...

    向量空间模型(Vector Space Model)

    参考文献:

    tf-idf原理以及应用

    coursera:Vector Space Model

    Tf-idf and Cosine Similarity

    向量空间模型

    0. 概述

    向量空间模型(Vector Space Model)概念简单,把对文本内容的处理简化为向量空间中的向量运算,并且它以空间上的相似度表达语义的相似度,直观易懂。当文档被表示为文档空间的向量,就可以通过计算向量之间的相似性来度量文档间的相似性。文本处理中最常用的相似性度量方式是余弦距离。

    我们在对文本内容操作分析之前,我们先要明确几个概念(参考连接

    1. 文档(Document):泛指一般的文本或者文本中的片断(段落、句群或句子)。一般指一篇文章,尽管文档可以是多媒体对象,但是以下讨论中我们只认为是文本对象,本文对文本与文档不加以区别。(最后的章节会有拓展
    2. 项(Term):文本的内容特征常常用它所含有的基本语言单位(字、词、词组或短语等)来表示,这些基本的语言单位被统称为文本的项,即文本可以用项集(Term List)表示为D(T1,T2,...,Tn)其中是Tn是项,1≤k≤n
    3. 项的权重(Term Weight):对于含有n个项的文本D(T1,T2,...,Tn),项常常被赋予一定的权重表示他们在文本D中的重要程度,即 D=D(T1,W1;…;Tn, Wn)。这时我们说项的权重Wk(1≤k≤n)。
    4. 向量空间模型(VSM):给定一文本D=D(T)由于在文本中既可以重复出现又应该有先后次序的关系,分析起来有一定困难。为了简化分析,暂时不考虑的顺序,并要求互异,这时可以把,D看作是一个n维的坐标(向量),而Wn就是n维坐标所对应的值,所以文档D就可以被看作一个n维的向量了。
    5. 相似度(Similarity):两个文本D、Z。D、Z之间的(内容)相关程度(Degree of Relevance)常常用他们之间的相似度Sim(D,Z)来度量,当文本被表示为向量空间模型时,我们可以借助与向量之间的某种距离来表示文本间的相似度常用向量之间的内积进行计算,或者用夹角的余弦值表示:

    可以看出,对向量空间模型来说,有两个基本问题:即特征项的选择项的权重计算。(关于特征项的选择,前面给出的参考博客中给出了比较详尽的描述,这里不做重点讨论,有时间再作为补充补上,我们重点讨论项的权重计算)

    下面就用一个例子,来对项的权重计算进行描述。我们手里有三个文档,分别是d1、d2、d3,内容如下所示,我们希望通过某种方法来描述三个文档之间的关系和相似性,我们便可以进行以下的操作。
    在这里插入图片描述

    1. TF(Term frequency ,TF)

    词频 (term frequency, TF) 指的是某一个给定的词语(项)在该文件中出现的次数。这个数字通常会被归一化(一般是词频除以文章总词数), 以防止它偏向长的文件。(同一个词语在长文件里可能会比短文件有更高的词频,而不管该词语重要与否。)

    但是, 需要注意, 一些通用的词语对于主题并没有太大的作用, 反倒是一些出现频率较少的词才能够表达文章的主题, 所以单纯使用是TF不合适的。权重的设计必须满足:**一个词预测主题的能力越强,权重越大,反之,权重越小。**所有统计的文章中,一些词只是在其中很少几篇文章中出现,那么这样的词对文章的主题的作用很大,这些词的权重应该设计的较大。IDF就是在完成这样的工作.

    • 计算该词条在文件集中出现的次数
      在这里插入图片描述

    2. IDF(Inverse document frequency,IDF)

    逆向文件频率 (inverse document frequency, IDF) IDF的主要思想是:如果包含词条t的文档越少, IDF越大,则说明词条具有很好的类别区分能力。某一特定词语的IDF,可以由总文件数目除以包含该词语之文件的数目,再将得到的商取对数得到。

    计算公式如下:
    I D F = l o g 2 ( n / t e r m c o u n t ) IDF=log_2(n/termcount) IDF=log2(n/termcount)
    其中n表述所有文件集文档的数目(这里指的3),termcount 是词条在所有文件中出现的次数(即tf),特别的,一说分母为termcount+1,以其可能造成分母为0 的情况
    在这里插入图片描述

    • **NOTE:**为什么这里使用2做底数呢?实际上没有可论证的理由,一种比较有道理的说法是,在计算机领域很多数字都与2的次方有关系。而且IDF的数值与log的底数没有直接的关系,因为log_2(x)=lg(x)*lg2,而显然的,lg2是一个常数,所以对于我们的分析没有较大的差别

    3. TF-IDF(Term Frequency-Inverse Document Frequency)

    • 我们为什么要TF-IDF?
      一个例子:假设100篇文档有10000个词,研究某篇500词文章,“机器学习”出现了20次,“而且”出现了20次,那么他们的TF都是20/500=0.04。再来看IDF,对于语料库的100篇文章,每篇都出现了“而且”,因此它的IDF就是log1=0,他的TFIDF=0。而“机器学习”出现了10篇,那么它的IDF就是log10=1,他的TF-IDF=0.04>0,显然“机器学习”比“而且”更加重要。
      上述例子其实也在告诉我们,我们应该构建一种比较公平的权重,来更加均衡的反映Term的状况。TF-IDF出现的原因也正是如此。

    某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,可以产生出高权重的TF-IDF。因此,TF-IDF倾向于过滤掉常见的词语,保留重要的词语

    综合以上,我们使用TF-IDF来对核心词进行评估,计算方法为:
    T F − I D F = T F ∗ I D F TF-IDF=TF*IDF TFIDF=TFIDF
    在这里插入图片描述
    (这里也给出了直接计算距离Length的方法来描述两个文件的相似程度,相似程度函数有很多,我们一般使用的是余弦函数,下面我们将介绍这种相似性函数)

    4. Similarity Function 相似性函数

    From each document we derive a vector.The set of documents in a collection then is viewed as a set of vectors in a vector space. Each term will have its own axis. Using the formula given below we can find out the similarity between any two documents.

    • 使用Cosine函数,计算公式如下:
      S i m i l a r i t y = c o s ( θ ) = A ∗ B ∣ ∣ A ∣ ∣ ∗ ∣ ∣ B ∣ ∣ = ∑ i = 1 n A i B i ( ∑ i = 1 n A i 2 ) ( ∑ i = 1 n B i 2 ) Similarity=cos(\theta)=\frac{A*B}{||A||*||B||}=\frac{\sum_{i=1}^{n}{A_iB_i}}{\sqrt(\sum_{i=1}^{n}{A_i^2})\sqrt(\sum_{i=1}^{n}{B_i^2})} Similarity=cos(θ)=ABAB=( i=1nAi2)( i=1nBi2)i=1nAiBi
      在这里插入图片描述

    5. 举例

    举例1:文献中的tf-idf

    在这里插入图片描述

    举例2:完整的代码以及谷歌搜索攥取分析

    举例3:在图像领域的使用

    目前常用向量空间模型对图像进行相似度搜索。人们可以从图像中计算未来。一个常见的特征是散点直方图。考虑一下这里的图像。可以创建红、绿、蓝通道的直方图,其中直方图是具有一定密度值的像素数。这张图片大部分是亮的,所以暗像素的数量相对较小。现在我们可以把直方图看作一个向量。通常,像素值在创建矢量之前会发生弯曲。表中显示的是一个特征向量,其中每一行的数字都与图像的大小进行了标准化,使行和等于1。类似的向量可以计算图像纹理、物体形状和任何其他属性。因此,向量空间模型对非结构化数据具有重要意义。

    一行的数字都与图像的大小进行了标准化,使行和等于1。类似的向量可以计算图像纹理、物体形状和任何其他属性。因此,向量空间模型对非结构化数据具有重要意义。

    在这里插入图片描述

    展开全文
  • 该模型在传统的向量空间模型(VSM)中引入了关键词语的加权因子,并在训练文档过程中对文档类型特征向量进行动态优化。这在一定程度上恢复了关键词语实际应具有的权值,方便了阈值的选取,使分类更加准确和高效。实验...
  • VSM向量空间模型.doc

    2016-06-22 08:50:53
    VSM向量空间模型.doc
  • 弹性搜索 向量空间模型,使用ES作为索引器的语言模型
  • 使用向量空间模型以最快速度计算文本之间的相似度,JAVA源码+数据
  • 针对VSM不能揭示隐藏在不同特征词后面的相同概念语义、反映文档中的潜在语义关系、在相似度计算中精度较低的问题, 提出一种基于领域本体的文档向量空间模型DOBVSM(domain ontology-based vector space model)。...
  • 基于结构化向量空间模型的中文信息检索系统研究与实现
  • 6.4向量空间模型,余弦相似度计算

    千次阅读 2021-11-28 15:43:30
    信息检索:文档评分-词项权重计算-向量空间模型  第四部分:向量空间模型 文章目录向量空间模型关联矩阵文档表示成向量Queries表示成向量向量相似度计算欧式距离?利用夹角代替距离文档长度归一化余弦相似度...

    提示:
    信息检索:文档评分-词项权重计算-向量空间模型
     第四部分:向量空间模型
    在这里插入图片描述


    在这里插入图片描述

    向量空间模型

    关联矩阵

    二值关联矩阵:词项-文档
    在这里插入图片描述
    词频矩阵:词频-文档
    在这里插入图片描述
    在这里插入图片描述
    权重是前面的tf-idf权重
    在这里插入图片描述

    文档表示成向量

    在这里插入图片描述

    |V|维向量空间,每一维都对应词项,文档是空间的点或向量。
    维度相当大,对于互联网来说,甚至达到千万维或更高。
    向量空间非常稀疏,几乎都是0.

    Queries表示成向量

    ■关键思路1:对于查询做同样的处理,即将查询表示成同一高维空间的向量
    ■关键思路2:在向量空间内根据queries与文档向量间的距离来排序

    向量相似度计算

    欧式距离?

    在这里插入图片描述
    计算两个向量终点之间的距离:
    不能采用欧氏距离,从上图分析,欧氏空间对距离十分敏感,q与d2欧氏距离很远,但它们实际分布很接近。

    利用夹角代替距离

    在这里插入图片描述

    文档长度归一化

    就是把文档向量,变成单位向量呗,长度就不会影响相关性比较了,上面的文档d和d‘就相等了。同一个向量表示就可以了

    L2范数:在这里插入图片描述

    向量除以L2范数就是长度归一化。
    文档长度差异就不会影响到相关性的比较了。

    余弦相似度(query,document)

    观点等价于夹角递减排序
    在这里插入图片描述
    [0,180]区间内,cosine是单调递减函数。
    在这里插入图片描述
    在这里插入图片描述
    cos(q,d) q,d的余弦相关性等价于q,d夹角余弦值。

    长度归一化后:
    在这里插入图片描述
    在这里插入图片描述

    ※余弦相似度计算举例

    词项频率tf—>词项频率tf取对数—>长度归一化—>计算

    文档-词项频率tf关联表如下:文档(sas,pap,wh)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    把query表加入上述表之中,分别计算query和其他文档的cosine值,那么就能得出,其他文档与query的相关度

    在这里插入图片描述

    展开全文
  • 向量空间模型算法(Vector Space Model)

    千次阅读 2019-07-20 12:12:44
    向量空间模型(VSM:Vector Space Model)由Salton等人于20世纪70年代提出,并成功地应用于文本检索系统。 VSM概念简单,把对文本内容的处理简化为向量空间中的向量运算,并且它以空间上的相似度表达语义的相似度,...

    概念介绍

    向量空间模型(VSM:Vector Space Model)由Salton等人于20世纪70年代提出,并成功地应用于文本检索系统。
    VSM概念简单,把对文本内容的处理简化为向量空间中的向量运算,并且它以空间上的相似度表达语义的相似度,直观易懂。当文档被表示为文档空间的向量,就可以通过计算向量之间 的相似性来度量文档间的相似性。文本处理中最常用的相似性度量方式是余弦距离。
    M个无序特征项ti,词根/词/短语/其他每个文档dj可以用特征项向量来表示(a1j,a2j,…, aMj)权重计算,N个训练文档AM*N= (aij) 文档相似度比较

    向量空间模型 (或词组向量模型) 是一个应用于信息过滤,信息撷取,索引以及评估相关性的代数模型。

    算法原理

    1.计算权重(Term weight)的过程。

    影响一个词(Term)在一篇文档中的重要性主要有两个因素:

    Term Frequency (tf):即此Term在此文档中出现了多少次。tf 越大说明越重要。

    Document Frequency (df):即有多少文档包含次Term。df 越大说明越不重要。

    词(Term)在文档中出现的次数越多,说明此词(Term)对该文档越重要,如“搜索”这个词,在本文档中出现的次数很多,说明本文档主要就是讲这方面的事的。然而在一篇英语文档中, this出现的次数更多,就说明越重要吗?不是的,这是由第二个因素进行调整,第二个因素说

    明,有越多的文档包含此词(Term), 说明此词(Term)太普通,不足以区分这些文档,因而重要性越低。

    我们来看一下模型公式:

    在这里插入图片描述
    说明:
    在这里插入图片描述

    这仅仅只term weight计算公式的简单典型实现。实现全文检索系统的人会有自己的实现, Lucene就与此稍有不同。

    2.判断Term之间的关系从而得到文档相关性的过程,也即向量空间模型的算法(VSM)。

    我们把文档看作一系列词(Term),每一个词(Term)都有一个权重(Term weight),不同的词(Term)根据自己在文档中的权重来影响文档相关性的打分计算。
    于是我们把所有此文档中词(term)的权重(term weight) 看作一个向量。

    Document = {term1, term2, …… ,term N}

    Document Vector = {weight1, weight2, …… ,weight N}

    同样我们把查询语句看作一个简单的文档,也用向量来表示。

    Query = {term1, term 2, …… , term N}

    Query Vector = {weight1, weight2, …… , weight N}

    我们把所有搜索出的文档向量及查询向量放到一个N维空间中,每个词(term)是一维。

    如图:
    在这里插入图片描述

    我们认为两个向量之间的夹角越小,相关性越大。

    所以我们计算夹角的余弦值作为相关性的打分,夹角越小,余弦值越大,打分越高,相关性越大。

    相关性打分公式如下
    在这里插入图片描述
    在这里插入图片描述

    举个例子,查询语句有11个Term,共有三篇文档搜索出来。其中各自的权重(Term weight), 如下表格。

    在这里插入图片描述

    于是计算,三篇文档同查询语句的相关性打分分别为:

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    于是文档二相关性最高,先返回,其次是文档一,最后是文档三。

    到此为止,我们可以找到我们最想要的文档了。

    展开全文
  • 大多文本分类方法是基于向量空间模型的,基于这一模型的文本向量维数较高,导致分类器效率难以提高。针对这一不足,该文提出基于词向量空间模型的文本分类方法。其主要思想是把文本的特征词表示成空间向量,通过训练...
  • 在深入分析向量空间模型基础上,对其进行扩展,设计了一种隐含语义索引模型LSI。LSI通过奇异值分解,将词向量和文档向量投影到一个低维空间,消减了词和文档之间的语义模糊度。理论分析证明,隐含语义索引模型具有更...
  • 基于向量空间模型的层次聚类算法在文本挖掘中的应用.pdf
  • 为了实现面向特定领域网站的网络资源搜索,提出了一种描述网站主题特征的混合向量空间模型。利用链接文本信息来描述同类主题网站的内容和组织结构所具有的相似特点,而不是由网站链接的树或图结构反映。在向量空间...
  • 简单向量空间模型VSM算法的实现

    热门讨论 2012-07-22 20:41:11
    简单向量空间模型可用于文档相似度的计算,也可以用于检索信息,配有详细的注释
  • VSM-FR方法首先利用模糊本体中的模糊关系构建向量空间模型;然后将模糊概念表示成此向量空间模型中的向量,这样模糊概念之间的相似度就可以通过向量运算的方法来获得;最后为相似度大于给定阈值的模糊概念对建立映射...
  • 笔者在课后作业中遇到了向量空间模型的概念题,对课堂重温后有了一些简单的理解,在此分享。 向量空间模型(VSM) 向量空间模型(Vector Space Model,VSM),是基于代数的一种常用模型。向量空间模型试图克服布尔...
  • 针对语种识别中大规模数据库的训练问题,提出一种基于局部多样性建模的向量空间模型。首先将训练数据库分成若干个小数据库,然后利用每个小数据库来训练不同的向量空间模型,最后对不同的模型进行加权组合。为了有效...
  • 基于向量空间模型的文本分类 在向量空间模型中文档以由 n 个词组成的向量表示这些词从文档集中选取得到 词也可以由 m 篇文档组成的向量表示在实际使用中用文档向量矩阵 X 能最好的代 表这种对偶的信息表示其中一列 X...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 154,459
精华内容 61,783
关键字:

向量空间模型

友情链接: unueyflow-xuard.zip