文本表示

原创 2015年11月18日 14:45:27

要使得计算机能高效的处理真实文本,就必须找到一种理想的形式化表示方法,这种表示一方面能真实的反映文档内容(主题、领域或结构等),另一方面也要有对不同文档的区分能力。

 

目前文本表示通常采用向量空间模型(vector space model, VSM) 。VSM是20世纪60年代末期由G. Salton等人提出的,是当前自然语言处理中常用的主流模型。

 

下面首先给出VSM设计的基本概念:

(1) 文档(document): 通常是文章中具有一定规模的字符串。文档通常我们也叫文本。

(2) 特征项 (feature term): 是VSM中最小的不可分的语言单元,可以是字、词、词组、短语等。一个文档内容可以被看成是它含有的特征项的集合。表示为一个向量:D(t1,t2,...,tn),其中tk是特征项。

(3) 特征项权重 (term weight): 对于含有n个特征项的文档D(t1,t2,..,tn),每一个特征项tk都依据一定的原则被赋予了一个权重wk,表示该特征相在文档中的重要程度。这样一个文档D可用它含有的特征项及其特征项所对应的权重所表示: D(t1=w1,t2=w2,...,tn=wn),简记为D(w1,w2,...,wn),其中wk就是特征项tk的权重。

 

一个文档在上述约定下可以看成是n维空间中的一个向量,这就是VSM的由来,下面给出其定义。

定义(向量空间模型VSM)给定一个文档D(t1,w1;t2,w2;...;tn,wn),D符合以下两条约定:

1)各个特征项tk互异(即没有重复);

2)各个特征项tk无先后顺序关系(即不考虑文档的内部结构)。


在以上两个约定下,可以把特征项t1,t2,……tn看成一个n维坐标系,而权重w1,w2,……wn为相应的坐标值,因此,一个文本就表示为N维空间中的一个向量。我们称D=D(w1,w2,...,wn)为文本D的向量表示或向量空间模型。


 

定义(向量的相似性度量simlilarity) 任意两个文档D1和D2之间的相似性系数sim(D1,D2)指两个文档内容的相关程度(degree of relevance)。设文档D1和D2表示VSM中的两个向量:



那么可以借助N维向量空间中两个向量之间的某种距离来表示文档见的相似系数,常用的方法是使用向量之间的内积来计算:



如果考虑向量的归一化,则可以使用两个向量夹角的余弦值来表示相似系数:



采用VSM进行文本表示时,需要经过以下两个主要步骤:

1)根据训练样本集生成文本表示所需要的特征项序列D = {t1,t2,……,td};

2)依据文本特征项序列,对训练样本集和测试样本集中的各个文档进行权值赋值、规范化等处理,将其转化为机器学习算法所需的特征向量。


另外,用VSM表示文档时,首先要对各个文档进行词汇化处理,在英文、法文等西方语言中这项工作相对简单,但在汉语中主要取决于汉语自动分词技术。


除了VSM方法之外,还有例如:词组表示法,概念表示法等。词组表示法对文本分类效果的提高并不十分明显。概念表示法需要额外的语言资源,主要是一些语义词典,例如英文的Wordnet,中文的hownet。相关研究表明,用概念代替单个词可以在一定程度上解决自然语言的歧义性和多样性给特征向量带来的噪声问题,有利于提高文本分类效果。


 

VSM模型为计算机处理文本分类打下了夯实的数学基础,但是一篇文本到底用哪些特征项来表示呢?比如在《【文本分类】 概述 》文章中举的那篇NBA文本的例子,我们可以用所有标蓝的词语作为特征项来表示文本向量:

 

           D = {勒布朗-詹姆斯 ,德维恩-韦德 , 里斯-波什 ,新赛季 ,迈阿密热火 ,总冠军 ,热火 ,球队 ,卫冕冠军,湖人 ,凯尔特人 ,休赛期 ,联盟 }

 

 而且这些特征项在文章中的权重是如何计算的呢? 关于这几个问题,我们都将在后面的特征提取方法和特征权重计算方法中讲到。

 

因为统计学习方法的理论基础(即文档的内容与其中所包含的词有着必然的联系,同一类文档之间总存在多个共同的词,而不同类的文档所包含的词之间差异很大。进一步的,不光是包含哪些词很重要,这些词出现的次数对分类也很重要)。使得

VSM成了适合文本分类问题的文档表示模型。在这种模型中,一篇文章被看作特征项集合来看,利用加权特征项构成向量进行文本表示,利用词频信息对文本特征进行加权。它实现起来比较简单,并且分类准确度也高,能够满足一般应用的要求。


而实际上,文本是一种信息载体,其所携带的信息由几部分组成:如组成元素本身的信息(词的信息)、组成元素之间顺序关系带来的信息以及上下文信息(更严格的说,还包括阅读者本身的背景和理解)而VSM这种文档表示模型,基本上完全忽略了除词的信息以外所有的部分,这使得它能表达的信息量存在上限,也直接导致了基于这种模型构建的文本分类系统(虽然这是目前绝对主流的做法),几乎永远也不可能达到人类的分类能力。后面我们也会谈到,相比于所谓的分类算法,对特征的选择,也就是使用哪些特征来代表一篇文档,往往更能影响分类的效果。


对于扩充文档表示模型所包含的信息量,人们也做过有益的尝试,例如被称为LSI(Latent Semantic Index潜在语义索引)的方法,就被实验证明保留了一定的语义信息(之所以说被实验证明了,是因为人们还无法在形式上严格地证明它确实保留了语义信息,而且这种语义信息并非以人可以理解的方式被保留下来),此为后话。

实际上:统计学习方法其实就是一个两阶段的解决方案,(1)训练阶段,由计算机来总结分类的规则;(2)分类阶段,给计算机一些它从来没见过的文档,让它分类 。


相关文章推荐

文本特征提取

文本挖掘模型结构示意图 1. 分词 分词实例:        提高人民生活水平:提高、高人、人民、民生、生活、活水、水平 分词基本方法:         最大匹配法、最大概率法分词、最短路径分词...

数据挖掘之中文本的表示模型

为了使计算机能够真正处理文本特征,必须对文本特征进行特征加权,将文本表示成计算机可以处理的数学向量。 (1)布尔模型     布尔模型是基于特征项的严格匹配模型,它可以看作是向量模型的一种特例,根据特...

文本表示方法

在NLP诸多问题(如:文本分类等)中,文本表示不可或缺。这里博主枚举一些主流的文本表示方法。 这里主要说的是基于文本内容的表示,顺带先扯扯基于行为的表示:不同的业务有不同的表示,基于行为的文本表示如S...
  • cht5600
  • cht5600
  • 2016年11月28日 17:55
  • 1448

如何雇一个产品经理

在一个初创公司干招聘有段时间了,在初创公司招人跟在大公司是相当不一样的。在Yahoo!Search,感觉好像我们总是在招人。我每周要做5-8个面试。像是有永无止境的简历,面试和录用协议。现在我不总在做...

安卓开发 安装Visual Studio Emulator for Android安卓虚拟机

公司电脑很渣了,As的自带虚拟机各种问题,然后被北京的老同学推了微软的Visual Studio Emulator for Android 虚拟机给我,速度真是很快哦~ 首先这个虚拟机非常依赖H...

html中表示引用文本的标签:<q>,<blockquote>

html中和的作用

文本向量表示及TFIDF词汇权值

文本相似计算是进行文本聚类的基础,和传统结构化数值数据的聚类方法类似,文本聚类是通过计算文本之间"距离"来表示文本之间的相似度并产生聚类。文本相似度的常用计算方法有余弦定理和Jaccard系数。但是文...

(文本表示及挖掘)Representing and Mining Text

主要内容:1. Text data 2. Bag of words 3. N-gram sequence 4. Text mining 案例 (一) text data文本数据(Text data ...

[Algorithm & NLP] 文本深度表示模型——word2vec&doc2vec词向量模型

转自:[Algorithm & NLP] 文本深度表示模型——word2vec&doc2vec词向量模型 阅读目录 1. 词向量 2.Distributed ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:文本表示
举报原因:
原因补充:

(最多只允许输入30个字)