APP下载

基于词向量的向量空间模型的改进

2019-01-23殷功俊

现代计算机 2018年36期
关键词:特征词质心语义

殷功俊

(四川大学计算机学院,成都 610065)

0 引言

在文本分类的领域中,需要处理大量的文本数据,由于数据规模的庞大,通常用计算机来学习与处理文本数据。与视频、图像等数据的不同,文字是人类认知过程中产生的高层认知抽象实体,计算机难以获取其文本特征,不能准确地表达文本语义。文本表示是文本分类中非常重要的一个环节,通过文本表示可以将大量的非结构化或半结构化的字符集合信息转换成为一个简洁的、统一的、能够被计算机所识别的结构化形式,使计算机能够在接下来的任务中得到更好地效果。文本表示的好坏能很大程度上影响到整个文本分类任务的性能。

Saltont等人[1]于1975年提出的向量空间模型(Vector Space Model,VSM)是目前使用最普通的一种文本表示模型,它将文本表征为一组特征项的集合,每一个特征项都有权值信息,表征该特征项对于文本的重要程度。特征项的权值通过TF-IDF(Term Frequency-Inverse Document Frequency)[2]来计算。TF-IDF 是一种统计方法,是用来评估一个特征词对于一个文本集或一个语料库中的其中一份文本的重要程度,它随着在文件中出现的次数增加而增加,随着它在语料库中出现的次数增加而减少。

虽然基于TF-IDF的向量空间模型在传统的分类器上有着不错的分类效果,依然存在以下几个缺陷[3]:①文本向量的维度较高,文本向量的维度取决于文本的特征词个数,极容易造成“维数灾难”的问题,不仅会消耗更多的计算资源、降低文本分类的精确度,而且容易引起过拟合的问题;②不能准确表示文本的语义,向量空间模型的前提是假设特征词之间相互独立的,但在实际中词与词之间会有一定的关联;③不能准确辨别自然语义模糊性,它是基于TF-IDF来计算权值,即主要依靠词频信息,导致文档的相似度也主要依赖于共同词汇的数量。针对以上几个不足,很多研究人员也做了很多研究进行改进且都取得了不错的效果。邓晓衡[4]等人提出了提出一种多义词判别优化的同义词聚类方法来优化向量空间模型,该方法大大降低了文本向量的维度,提高了文章特征提取的准确性;Konstantinos等[5]提出用无向图来表示文本特征词之前的关联,通过结点中心性来替换TF-IDF中的TF,产生更多的判别性特征权重;George Forman等[6]用双正态分离(Bi-Normal Separation,BNS)来代替 TF-IDF 中的 IDF,提高了分类的准确性。上述的研究都是在优化特征项权值的计算方法,通过特征项对文本的重要性来表达文本,却无法将文本特征词的上下文语义与句法信息考虑到模型之中。

词向量是用向量来描述一个词,最常见的是独热表示(One-Hot Representation),它将词用一个很长向量来表示,向量的维度代表词的个数,向量中只有一个维度是1,其他全是0。独热表示有两个明显的缺点,一是词与词之间是孤立的,会造成“语义鸿沟”现象;二是如果词的个数较多,很容易产生维数灾难问题。而本文提到的词向量并不是独热表示,而是神经网络在自然语言处理领域中的一种应用——词的分布式表示(Distributed Representation),这种方法常被称为词向量。词向量有很多优秀的特性,如维度低、包含词语语义信息、包含上下文信息[7]等。这些特性在一定程序上能弥补VSM的缺陷。近年来,有很多研究都在尝试词向量在文本分类中的应用,并取得了很好的效果。像唐明、朱磊[8]等提出了一种基于词向量的TF-IDF加权计算文本向量算法;周顺先等[9]使用词向量优化TFIDF算法;郭宏运[10]将词向量与主题向量结合;Piotr Sembereck[11]等将词向量与卷积神经网络结合应用在文本分类中。

本文在唐明和周顺先的研究基础上改进了向量空间模型:①将特征词词向量聚类,聚类质心代表该类的其他特征词,求聚类质心的TF-IDF权值;②将聚类质心的TF-IDF与其词向量相结合来生成文本表示向量。

1 相关工作

1.1 向里空间模型

向量空间模型假设词与词之间是相互独立的,忽略其出现的次序,将文本表示为一个向量,其中向量的每一维代表着文本特征集中的一个特征,每一维的值代表着这个特征项在文本的权重,因此可以通过文本向量的相似度可以衡量文本之间的相似度。在VSM中,文本d可以由二元特征组组成的特征向量来表达,如d={(t1,w1),(t2,w3),…,(tn,wn)},其中 ti表示特征项,wi表示ti特征项在文本中的权重,文档可简化的表示为d={w1,w2,…,wn}。权重一般通过 TF-IDF 公式计算,特征t在文档d中的权重计算公式如公式(1)所示:

其中,tf(t,d)表示特征项t在文档中出现的频次,计算公式如下:

nt,d表示特征项t在文档中出现的频次代表文档d中所有特征项出现次数的总和。公式(1)中idf(t)计算公式如下:

其中,N为训练集的文本数量,nt为训练集中出现特征t的文本数量。

虽然向量空间模型表示文本简单高效,但依然有着维度较高、无法有效表达词语语义等缺点。

1.2 词向量

本文研究的词向量默认为基于神经网络的分布式表示(Distributed Representation)。Mikolov[12]在 2013 年提出了Word2Vec,该方法能方便、高效地获取词义的向量化特征且包含词语之间相似度的优良特性,引起了业界的巨大关注。Word2Vec是一个神经网络模型,是神经网络在自然语言领域突破性的应用。它提供了两种模型来训练词向量,即连续词袋模型(Continuous Bag-Of-Words,CBOW)和Skip-Gram模型。由于篇幅有限,CBOW和Skip-Gram算法的原理本文不在详细阐述,可参考来斯惟博士论文[13]。通过Word2Vec训练学习出的词向量可把对文本内容的处理简化为向量空间中的向量运算,而向量空间上的相似度可以用来表示词语或者文本语上的相似度,因此本文尝试通过词向量优化向量空间模型。

2 基于词向量的向量空间模型的改进

本文提出的模型从两方面改进了传统的向量空间模型:①将特征词的词向量聚类,用TF-IDF计算聚类之后质心的权值;②生成文本表示向量时将聚类质心的权值与其词向量结合。具体流程如图1(b)所示:

图1 传统向量空间模型和新模型文本表示流程图

2.1 词向量与TF-IDF结合

传统求解TF-IDF权值是在文本预处理、文本分词得到特征集后直接计算。而在我们提出的模型中,得到特征集后先训练特征词获取其对应词向量,再对得到的词向量进行聚类,用聚类质心代表该类其他的特征词,最后对聚类质心进行TF-IDF计算,这种改进的优点:①能解决求TF-IDF权值时一词多义和同义词的问题;②能够一定程度上缓解维度过高和表达稀疏的问题。本文训练词向量的方法是采用Google开源了Mikolov提出的词向量训练方法Word2Vec[14]。具体的步骤如下:

(1)对文本进行文本预处理、文本分词,得到词语集合G。

(2)将集合G中词语通过Word2Vec训练得到对应的词向量,得到词向量集合W。

(3)对词向量集合W用K-means方法聚类,根据最终的聚类结果将词向量所属聚类划分的质心S代替表聚类划分内的词语,即将一个类别内所有特征词语义特征跟质心语义特征一致。

(4)与求特征项的TF-IDF不同的是,这里是求聚类质心的TF-IDF。计算公式与公式(1)一样,但代表含义稍许变化,其中tf(s,d)代表“质心s所代表的词语”在文档d中出现的频率;idf(d)为质心s的逆向文件频率。

2.2 文本特征化表示

根据基于TF-IDF的向量空间模型,此时可以把文档向量 d 初步表示为 {s1,s2,…,sm},其中 si代表着第 i个聚类质心的TF-IDF权值,m代表着聚类后的类别数量。通过第一节我们知道向量空间模型虽然应用比较广泛,但也有不少的缺陷,例如表示的文本向量维度过高、文本表示稀疏和无法有效提取语义信息等。维度过高和文本表示稀疏的问题在上一节中在得到一定程度的缓解。而不能有效提取语义信息这一问题不能得到很好的解决,这主要来源于向量空间模型自身的局限,因为它假设词与词之间是独立的,没有考虑词与词之间的联系。而词向量却能很好地表示特征词的语义信息,并可以通过常见的距离或相似度度量操作衡量它们之间的语义相似度,因此本小节尝试将词向量与向量空间模型融合,得到最终的文本表示向量:

其中,S为质心的集合,Ws为质心s的词向量,m为聚类后类别的个数,tfidf(s,d)是上一小节中求的质心s的权值。

3 实验

为了验证本文报出的模型的有效性,在搜狗语料库基础上进行实验,选取了语料库中7种类别进行实验,相关类别及包含的数量如表1所示:

表1 实验数据类别及数量

需要对语料库进行预处理:①去除停用词、标点符号、助词等;②分词,用清华大学的THULAC分词工具对语料库文本进行分词。

设计实验将本文提出的模型与基于TF-IDF的向量空间模型,Doc2Vec模型和LDA主题模型进行对比。词向量训练采用Google开源的Word2Vec工具,Doc2Vec采用gensim工具。聚类采用K-means方法。分类器采用NB(朴素贝叶斯算法)、KNN(K最近邻算法,K=20)、SVM(支持向量机算法)。采用的评估分类效果指标为准确率(Precision)、召回率(Recall)和F1-measure。计算公式如下:

其中,e是错误地划分到该类别的文本个数,r是分类正确的文本个数,u是属于该类别但未被区分出来的文本个数。

为了保证实验可靠性,每个实验采用10折交叉验证,最后取平均值作为最终结果。具体实验结果如下:

表2 实验分类结果(%)

从表2可以看出,本文提出的新模型在NB、SVM和KNN三种分类器下分类效果皆好于传统的向量空间模型,例如在NB分类器上准确率从79.33%增加到82.52%,召回率从 72.42%增加到 75.07%,F1值从73.04%增加到75.84%,这说明本文提出的模型比传统的向量空间模型具体更好地表达文本的效果。同时该模型与Doc2Vec和LDA模型在准确率、召回率和F1值上差别不是很大,这也证明了本文提出的模型的有效性。

4 结语

针对传统的向量模型表达文本有维度较高、文本表示稀疏和无法有效表示特征词语义等缺点,本文提出一个新模型——借助词向量优化TF-IDF求解方法并在生成文本表示向量时将VSM与词向量融合,该模型在一定程度上优化了传统向量空间模型的缺陷。通过实验证明本文提出的文本表示模型较传统的向量空间模型有着更好的分类效果。今后将进一步优化特征向量的生成,考虑引入注意力机制用于文本表示。

猜你喜欢

特征词质心语义
真实场景水下语义分割方法及数据集
基于Simhash改进的文本去重算法
重型半挂汽车质量与质心位置估计
基于GNSS测量的天宫二号质心确定
基于类信息的TF-IDF权重分析与改进①
一种面向财务文本分类的TF-IDF改进算法
巧求匀质圆弧的质心
汽车质心高度计算及误差分析方法研究
“吃+NP”的语义生成机制研究
情感形容词‘うっとうしい’、‘わずらわしい’、‘めんどうくさい’的语义分析