基于词袋模型和TF-IDF的短文本分类研究

2020-03-20 03:42黄春梅王松磊
软件工程 2020年3期
关键词:自然语言处理

黄春梅 王松磊

摘  要:自然语言处理是人工智能领域中的一个热门方向,而文本分类作为自然語言处理中的关键技术受到专家学者的广泛关注。随着计算机网络的发展,海量的文本踊跃出来。文本越来越多,通过人工对文本进行分类的成本越来越高。本文针对短文本分类问题,使用词袋模型从词向量中提取词频矩阵,删除停止词与低频词。再使用TF-IDF算法提取文本特征,进行文本分类研究,最终可以使短文本以较高的正确率归类。

关键词:自然语言处理;短文本分类;词袋模型;TF-IDF

中图分类号:TP391.1     文献标识码:A

Abstract:Natural language processing (NLP) is a hot field in the field of artificial intelligence.Text categorization,as a key technology in NLP,has attracted extensive attention from experts and scholars.With the development of computer networks,massive texts have come out enthusiastically.As there are more and more texts,it becomes more and more expensive to classify them manually.In this paper,we use the bag of words model to extract the word frequency matrix from the word vectors and delete the stop words and low-frequency words.Then TF-IDF algorithm is used to extract text features and conduct text classification research so that the short text can be classified with high accuracy.

Keywords:natural language processing;short text classification;bag of words;TF-IDF

1   引言(Introduction)

近年来,受到计算机技术高速发展,以及大量文本在互联网领域出现的影响,网络文本资源呈指数级增长。面对这些规模甚为庞大,并且类型极为多样的文本数据,如何精准划分文本类型,已直接关系到信息检索系统的性能,其发挥着关键性影响。

文本分类技术在自然语言处理中所占比重成分越来越高,许多研究人员对文本分类技术的研究变得尤为重视。文本分类任务可以拆分为特征工程和分类器,完成数据到信息和信息到知识的过程[1]。词袋模型不考虑文本内各词间的上下文关系,只考虑所有词所占的权重,权重则与文本内词的出现频率相关[2]。文本特征选择方法较多,其中TF-IDF可以有效评估特定字词对于一个文本集或一个语料库中的重要程度[3,4]。

本文研究基于句子的词频特性和tf-idf特征,使用一种基于词袋模型和TF-IDF的短文本分类方法。该方法使用词袋模型从词向量中提取词频矩阵,将tf-idf特征作为短文本分类的一个重要特征,用以解决现有短文本分类问题。

2   词袋模型(Bag of words)

Bag of Words,也称作“词袋”。它用于描述文本的一个简单数学模型,也是常用的一种文本特征提取方式[5]。在信息检索中,词袋模型假定对于一个文本,忽略其次序和语法,仅仅当作是该文本中若干个词汇的集合。该文本中,每个词汇都是互不相关的,每个词汇的出现都不依赖于其他词汇。也就是说,文本中任意一个单词不管出现在任意哪个位置,都不会受到其他因素的影响[6]。

文本分析的主要目标之一是将文本转换成数值形式,这样就可以在上面使用机器学习算法进行训练。机器学习算法需要处理数值形式的数据,以便它们能够分析数据并且提取有用的信息。词袋模型从文档的所有单词中提取特征单词,并且用这些特征项矩阵建模。这就使得每一份文档可以描述成一个词袋。而且只需要记录单词的数量,语法和单词的顺序都可以忽略。

一个文档的单词矩阵是一个记录出现在文档中的所有单词的次数。因此,一份文档能被描述成各种单词权重的组合体。通过设置条件,可以筛选出更有意义的单词。顺带,还可以构建出现在文档中所有单词的频率直方图,这就是一个特征向量。这个特征向量被用于文本分类[7]。

3   TF-IDF模型(TF-IDF models)

TF-IDF模型是一类应用广泛的加权技术,经常被用来进行信息检索和数据挖掘。TF(Term Frequency)是词频的简称,可理解为文本内词汇出现的频率,逆文本频率的缩写为IDF,即一个词语普遍关键性的度量[8]。

此模型的核心思想为:若某短语(或词)于一篇文章内多次出现,即TF较高,同时甚少出现于其他文章内,那么判定该短语(或词)具备良好类别区分性能,在分类方面具备适用性。实际上,TF-IDF为TF*IDF。其中,TF代表文档内词条出现的频率。后者IDF的核心思想为:若包含词条t的文档愈少,即n愈小,IDF则愈大,那么表示,词条t在分类区分方面能力突出。若某一类文档C内有m个文档均内含词条t,而非此类文档内所含t的文档量合计是k,很明显,n(包含t的全部文档量)为上述m、k之和。当m大的时候,n也大,按照IDF公式得到的IDF的值会小,就说明该词条t类别区分能力不强。然而客观情况是,若一个词条频繁出现于一个类的文档内,那么表示此词条可很好体现这个类的文本属性,对于此类词条,应赋予其较高权重,同时可将其当作此类文本的特征词,用来和其他类文档作鉴别[9]。

在某指定文件内,可将TF理解为某给定词语于此文件内出现的频率。此数值为词数归一化处理的结果,即对向量长度实施缩放处理,全部元素的合计值等于1,由此避免它偏向长文件(相较短文件,同一词语在长文件内的词数可能更高,而与此词语是否重要无关)。就在某一特定文件内的词语ti而言,可通过下式来体现其重要性:

在式(1)内,符号ni,j代表ti此词在dj此文件内出现的次数,那么上式分母表示dj内全部字词出现次数的合计值[10]。

IDF为逆文本频率的简称,将其作为度量来评估一个词语是否具有普遍重要性。计算词频时,假定所有的单词都是同等重要的。但是不能只依赖每个单词出现的频率,因为像and和the这样的词出现很多次。为了平衡这些常见词语的频率,需要减少他们的权重并衡量这些罕见词汇。这有助于识别出对每个文档都独一无二的单词,从而制定一个独特的特征向量。某一特定词语IDF的求解途径为,总文件数量÷包含此词语的文件数量,然后把两者相除所得值取对数即为IDF,具体公式为:

式(2)中:|D|代表语料库内文件总量;|{j:ti∈dj}|代表包含ti此词语的文件数量(也可理解为ni,不等于零的文件数量)。若此词语ti未在语料库内,就会出现除数等于零的结果,所以,通常使用1+|{j:ti∈dj}|。

最后,TF-IDF的值是这两个值的乘积值:

某特定文件中的高词语频率,结合此词语于文件集合内的低文件频率,能够生成高权重的TF-IDF[11]。故而,TF-IDF倾向于将常用的词语过滤掉,将重要词语保留下来。

4   实验分析(Experiment analysis)

4.1   实验数据集

本文基于词袋模型和TF-IDF的短文本分类研究使用20newsgroups数据集当作训练数据集。此数据集是用来进行信息检索研究、文本挖掘与文本分类的国际标准数据集的其中之一,其所含的新闻组文档数量大约为20 000,被均匀划分成20个主题各异的新闻组集合,部分集合如表1所示。

表1中的key值对应Scikit-learn库中数据集的名字,value为分类名称。

测试数据集如表2所示。

4.2   实验过程

本文实验使用基于Python的机器学习库Scikit-learn,采用20newsgroups数据集作为训练集,具体过程如图1所示。

(1)首先导入20newsgroups數据集作为训练使用,对其进行分词处理。

(2)使用词袋模型对词向量进行计数处理,将其转为词频矩阵。

(3)删除停止词(不携带任何主题信息的高频词)与低频词(出现次数极低的词汇,通常是一些不常用的专有名词)。

(4)统计词频,得到词频特征。

(5)计算tf-idf特征。

4.3   实验结果

本文中的实验,先用20newsgroups训练数据集对分类器进行训练,通过对训练数据集使用词袋模型和TF-IDF模型,得到训练后的分类器。接着用测试数据集对此分类器进行实验,得出的实验结果如表3所示。

通过表3可以看出,经过训练的分类器对于每个用于测试的句子都做出了正确的分类。

5   结论(Conclusion)

随着计算机硬件、大数据和人工智能的不断发展,海量的文本数据会越来越多,对于文本分类的研究也就越来越重要。使用词袋模型和TF-IDF算法模型能够精确地对短文本进行分类,极大地简化了人力劳动。因此可为文本的分类提供更为可靠的数据和方法支持。

下一步工作将在改进的TF-IDF算法基础上建立一个效率更高的文本分类预测模型。

参考文献(References)

[1] Bicalho P,Pita M,Pedrosa G,et al.A general framework to expand short text for topic modeling[J].Information Sciences,2017(393):66-81.

[2] Yan DF,Ke N,Gu C,et al.Multi-label text classification model based on semantic embedding[J].The Journal of China Universities of Posts and Telecommunications,2019,2(1):95-104.

[3] Ma H,Zhou R,Liu F,et al.Effectively classifying short texts via improved lexical category and semantic features[C].Proc of International Conference on Intelligent Computing,2016:163-174.

[4] 钱爱兵,江岚.基于改进TF-IDF的中文网页关键词抽取——以新闻网页为例[J].情报理论与实践,2008,31(6):945-950.

[5] 胡学钢.基于词汇链的中文新闻网页关键词抽取方法[J].模式识别与人工智能,2010,123(1):45-51.

[6] 赵鹏.一种基于复杂网络特征的中文文档关键词抽取算法[J].模式识别与人工智能,2007,20(6):827-831.

[7] 郭诗瑶.融合上下文信息的文本分类算法的研究及应用[D].北京邮电大学,2019:21-43.

[8] 施聪莺.TFIDF算法研究综述[J].计算机应用,2009,29(6):167-180.

[9] Purda L,Skillicorn D.Accounting variables,deception,and a bag of words: Assessing the tools of fraud detection[J].Contemporary Accounting Research,2015,32(3):1193-1223.

[10] 刘娇.基于深度学习的多语种短文本分类方法研究[D].延边大学,2018:23-44.

[11] 孟涛,王诚.基于扩展短文本词特征向量的分类研究[J].计算机技术与发展,2019,29(4):57-62.

作者简介:

黄春梅(1973-),女,硕士,副教授.研究领域:云存储,智能教育.

王松磊(1992-),男,硕士生.研究领域:自然语言处理.

猜你喜欢
自然语言处理
基于LSTM自动编码机的短文本聚类方法
自然语言处理与司法案例
国外基于知识库的问答系统相关研究进展及其启示
基于依存句法的实体关系抽取
基于组合分类算法的源代码注释质量评估方法
面向机器人导航的汉语路径自然语言组块分析方法研究
词向量的语义学规范化
汉哈机器翻译中的文字转换技术研究
HowNet在自然语言处理领域的研究现状与分析