基于卷积神经网络的文本分类文献综述

 2022-11-10 12:55:47
{title}{title}

文 献 综 述

一:项目背景

随着计算能力的提升和机器学习领域的蓬勃发展,基于内容的文本管理操作(content-based document management tasks)在最近几年也经历了发展的加速期,并且成为了机器学习领域的重要部分,各种算法相继涌出。其中,文本分类技术(Text Classification)最早可以追溯到上世纪60年代,但是直到上世纪90年代,它才成为机器学习这一信息处理系统领域的一个主要子领域,文本分类的主要任务就是利用一个预定义的数据集(对应数据和分类结果),为文本数据分配一个主题化的标签,从而达到文本分类的目的[1]。

随着互联网技术的发展以及移动终端的普及,信息的传播和观点的表达变得易如反掌;通过使用如微博、贴吧等公众平台,人们可以轻松的将自己的所见所闻所感表达出来。这种语言资源是免费的,在良好的采样原则下,大量的数据将很好的涵盖一般性的语言特征,情感特征。利用机器学习、自然语言处理技术对此类文本进行分析,获得其中的观点倾向性、情感极性,将对许多实际问题的决策提供有价值的参考,也正是因为如此,面向文本的情感分析成为了文本分类领域的一个重要课题[2]:文本情感分析技术主要通过分析文本内容来判断文本所表达的情感倾向。这一技术在产品评价分析、舆情监控等方面具有较广泛的应用。在本文中,文本分类主要讨论的就是关于情感的分类。

二:方法介绍

传统的情感分析技术大体可以分为基于规则的方法和基于统计的方法。基于规则的方法主要从语言学角度出发,由语言专家构建语言知识的词典和语法,对文本中的情感倾向性进行分析[3]。基于统计的方法,则从机器学习的角度出发,仅仅是训练语料是经过人工标注的,在规定特征提取方式和构建好统计模型之后,由机器自动化地实现情感极性的判断[4]。在文本情感分析发展的十余年中,两类方法互相影响,相互渗透,使得情感分析技术不断丰富和发展。在这个过程中,研究人员们积累了大量的资源、工具、算法与模型。

近年来,随着深度学习相关技术的发展,研究人员利用基于深度神经网络的相关技术对文本中的情感进行分析。例如利用构建在句法分析树上的循环神经网络对电影评论文本进行五个级别的情感极性判别[5],以及利用卷积神经网络进行情感分析等。基于深度神经网络的方法是一种自动化的情感分析方法,并且由于其模型参数规模大,对于特征空间的构建与搜索、模型的建立等都更为精细,性能上也体现了相比于以往方法的优越性。

情感分析技术大体可以分为基于规则的方法和基于统计的方法。其中基于情感词典资源的有监督机器学习方法是目前的研究热点。这类方法主要基于有监督的机器学习方法,如支持向量机(SVMs, Support Vector Machines)、朴素贝叶斯(NB, Naiuml;ve Bayes)、最大熵(ME, Max Entropy)。通过结合文本特征,包括一元词特征(uni)、二元词特征(bigram)、词性特征、情感词特征等,将文本映射为特征向量,用于模型的训练和分类预测。Sida Wang[6]等人采用朴素贝叶斯和支持向量机相结合的方法,在多个公开数据集上取得了不错的效果。Bollegala[7]等人利用不同领域情感表达方式的共性来构建领域相关的情感词典,扩充文本特征,以此提高跨领域情感分类的效果。谢丽星[8]等人针对中文微博的文本特征,提出了基于层次结构的多策略中文微博情感分析和特征抽取方法。在自然语言处理领域,词作为文本的基本组成单元,One-hot Representation成为词语最常用的一种表达方式。但是该方法忽略了词与词之间的上下文语义与语法关系,也无法提供词本身所携带的信息。Bengio[9]等在2003年提出用神经网络构建二元语言模型的方法,把词映射到低维实数向量,通过词与词之间的距离来判断它们之间的语义相似度。Andriy Mnih[10]等人提出层次Log-Bilinear模型来训练语言模型。Mikolov[11-12]借鉴Log-Bilinear模型的思想,在word2vec中实现了CBOW和Skip-gram两种语言模型。随后,词嵌入(也称词向量)被应用自然语言处理的多个领域。Socher[13]等人提出基于词向量的递归神经网络,实现对文本的向量表示,并在情感分析方面取得不错的效果。Johnson[14]提出基于One-hot Representation的词表达方式的卷积神经网络模型,显示了词序特征在文本分类上的有效性。上述基于词向量的深度学习模型主要利用了词的上下文语义信息和语法结构特征,而在情感分析任务中,词语极性和词性等词语本身具有特征信息直接影响文本的情感表达。Maas[15]利用训练语料的情感标注信息,提出了有监督学习和无监督学习相结合的语言模型。Tang[16]提出一种嵌入情感信息的语言模型,在Twitter情感分类任务中取得最好成绩。Faruqiu[17]则采用后处理的方式,实现在任意词向量上嵌入具有网络结构的语义词典。

目前的相关工作中,基于人工规则和词典资源的特征抽取方法往往依赖于特定领域或特定语料,而且文本特征维度随人工规则和词典资源的增加而线性增长,不仅增加了模型的训练成本,还降低了模型的泛化能力。

本课题的主要内容就是构建一种基于卷积神经网络的中文文本分类模型,通过一定的数据对其加以训练从而达到可以对微博文本的情感进行分类的目的。

计(论 文)开

  1. 本课题要研究或解决的问题和拟采用的研究手段(途径):

1.数据集

数据来源

本次实验的主要目的是利用卷积神经网络模型对文本的情感进行分类,如上文所提到的,微博作为自媒体平台的代表,各用户都在自己的微博平台上发表文字及图片内容,这些文字内容具有很强的情感内容和语言特征,在经过大量的文本采集和人工分类之后,就可以作为文本分类实验很好的数据集。这些文本数据可以通过网络爬虫程序获得,或者是下载已有的开源数据集。

数据划分

由于数据训练和测试的需要,数据集将分为训练集和测试集,其中训练集也要区分为训练参数的部分和预测试参数,用于减轻模型的过拟合。

分类标注

鉴于微博上的各种文本数据信息繁杂,涵盖的感情内容也是多种多样,在进行分类的时候只能进行较为泛性的分类,参考英文文本分类中MR分类[18]以及SST分类[5],可将数据集中的微博文本分类为强烈的积极情感(如兴奋,高兴等),平和的积极情感(如乐观,开心),中性(客观评价,普通阐释),平和消极(难过,不满),强烈消极(愤怒,悲伤等)。具体的分类标准可能会随着实验的进行发生改变而有所不同,这取决于文本数据来源和分类人对文本的理解和分类的标准,可能由于分类人的不同有所不同。

2.模型构建

卷积神经网络的机器学习模型主要包括卷积层,汇合层(pooling),和连接层,其中,卷积层的作用就是从原数据中获取有价值的特征。经过卷积的数据再根据局部性原理进行汇合(pooling)操作,通常采用的方法是选取最大值操作(max-over-time pooling)[19],选取特征中最具代表性的值,进一步减少数据冗余。

图一:CNN结构示意图

经过采样之后,原数据特征被充分提取出来,当特征的数量降低到使用神经网络进行全连接的分析也可以负载的时候,就开始使用全连接的神经网络进行进一步的学习。

目前针对卷积神经网络的训练算法主要有BP(反向传播)和FeedforwardPass(前向传播,鉴于BP算法较为成熟,应用广泛,可参考实例多,故决定使用BP算法对神经网络模型的参数进行训练,BP算法包括标准BP算法和累积BP算法,两者的区别在于进行数据更新的频率,标准BP算法是在每一次样例输入后都进行一次参数更新,而累积BP算法则是在每一轮学习之后进行参数更新,对于不同大小的训练集,需要采用不同的训练策略,一般来说,为了减少计算压力,在开始训练的时候采用累积BP的方式,在训练达到瓶颈,难以提升的时候开始采用标准BP方式进行训练。

参考Kim有关卷积神经网络文本分类的实验[20],在进行反向传播的时候为了方式各种隐含层参数互相适应,引入dropout操作对部分节点进行屏蔽,在结果传播的时候,使用如下公式:

学习只会在未屏蔽的节点上进行,其中o符号代表元素位置乘法操作符,而risin;则是一个“屏蔽”向量,这是一组有p的概率为1的Bernoulli随机变量,梯度值仅仅在没有被屏蔽的单元反向传播。

3.验证和评估

根据数据集中划分的数据集,测试集负责对模型进行测试,在测试过程中,模型对测试集中的样例进行分类,划分到上文提到的五类标准之中,然而考虑到可能会有这种情况出现,即分类的标准不能很好的涵盖所有的数据特征,或者是分类模型出现了较大的误差,这时候在考虑模型中存在的问题的同时也应该考虑是否是数据集不能很好的表示样本整体的分布特征,是否需要进行重新采样或者采用已有的数据集。

如果实验时间充裕,则可以参考国内外一些其他文本分类的实验进行优化。

  1. 课题整体(或软硬件系统)解决方案及其研究思路
  1. 收集微博文本的数据并进行标记

现阶段在进行文本识别尤其是针对微博的情感分析方面,有很多可以使用的开源数据集,但是一是为了保证实验的可控性,了解数据集的情况,二是研究一下收集信息和信息分类相关的技术,我还是决定采用二者结合的方式,使用开源数据集进行训练的同时,编写爬虫软件对公开的微博信息进行收集,然后手工进行标记。并使用两组数据分别进行数据训练,结果比对也可以对学习模型的泛性进行评估。

  1. 卷积核的选择和汇合(pooling)操作

在参考国内外关于文本分析特别是情感分析方法的相关文献后,可以发现当前比较流行的汇合方法是取最大值的汇合方式,这种方法的特点是简单,速度快,但是不可避免会遗失掉一些特征,这些还只是我的假设,所以对于卷积核的选择我的想法是尽可能多的卷积滤波器(卷积核)以得到不同层次的特征。从而提高模型的深度,也为滤波器作用的比对提供参数。

  1. 神经网络模型的搭建

作为本实验的最重要部分,神经网络分类器的设计可以说关系到实验结果的好坏,训练一个神经网络,需要进行初始化,参数调谐等步骤,但是具体起来,根据数据集的大小又可以细化出很多工作,首先,初始化的过程中,每一个参数要初始化的值是多少,是随机产生还是统一赋值0,显然,统一赋值会有可能是结果陷入局部最优的问题中,然而随机产生也未必就能得到最想要的结果,这些需要经过实验来证明。其次,在调整参数的方式上,我倾向于采用梯度下降反向传播的方式进行参数调整,具体算法参考各种文献,都有翔实的解释。至于采用标准BP算法还是累积BP算法,需要根据数据集大小以及训练情况来定。值得注意的是,在调整结束之后,还需要引入dropout操作来对参数进行适当的降维,减轻过拟合的状况。

在实验过程中有可能会遇到各种各样的情况,数据问题,程序bug,等等,再遇到这些问题的时候,需要冷静思考,结合课堂上的理论知识,寻找创新的方法来解决,或者是寻求老师学长的帮助

参考文献:

[1]Sebastiani F. Machine learning in automated text categorization[J]. Acm Computing Surveys, 2002, 34(1):1-47.

[2] Pang B., Lee L., Vaithyanathan S. Thumbs up?: sentiment classification using machine learning techniques[C]//Proceedings of ACL2002: 79-86.

[3]Xu R.F, Wong K.F,Xia Y. Coarse-Fine opinion mining-WIA in NTCIR-7 MOAT task[C]//Proceedings of NTCIR 2008: 307-313.

[4]Tan S., ZhangJ.An empirical study of sentiment analysis for Chinese documents[J]. Expert Systems with Applications, 2008, 34(4): 2622-2629

[5]Socher R., Perelygin A., Wu J.Y., et al. Recursive deep models for semantic compositionality over a sentiment Treebank[C]//Proceedings of EMNLP 2013: 1631-1642.

[6] Wang S., Manning C.DBaselines and bigrams: Simple, good sentiment and topic classification[C]//Proceedings ofACL, 2012: 90-94.

[7] Bollegala D., Weir D., Carroll J. Using multiple sources to construct a sentiment sensitive thesaurus for cross-domain sentiment classification[C]//Proceedings ofACL, 2011: 132-141.

[8] 谢丽星, 周明, 孙茂松. 基于层次结构的多策略中文微博情感分析和特征抽取[J]. 中文信息学报, 2012, 26(1): 73-83.

[9] Bengio Y., Ducharme R., Vincent P., et al. A neural probabilistic language model[J]. The Journal of Machine Learning Research, 2003, 3: 1137-1155.

[10] Mnih A., Hinton G.E A scalable hierarchical distributed language model[C]//Proceedings ofNIPS2009: 1081-1088.

[11] Mikolov T., Sutskever I., Chen K., et al. Distributed representations of words and phrases and their compositionality[C]// Proceedings of NIPS 2013: 3111-3119.

[12] Mikolov T., Chen K., Corrado G., et al. Efficient estimation of word representations in vector space[J]. Computing Research Repository, 2013: 1301.3781

[13] Socher R., Pennington J., Huang E.H, et al. Semi-supervised recursive autoencoders for predicting sentiment distributions[C]//Proceedings of ACL 2011: 151-161.

[14] Johnson R., Zhang T. Effective use of word order for text categorization with convolutional neural networks[J]. Computing Research Repository, 2014: 1412.1058.

[15] Maas A.L, Daly R.E, Pham P.T, et al. Learning word vectors for sentiment analysis[C]//Proceedings of ACL, 2011: 142-150.

[16] Tang D., Wei F., Yang N., et al. Learning sentiment-specific word embedding for twitter sentiment classification[C]//Proceedings ofACL, 2014: 1555-1565.

[17] Faruqui M., Dodge J., Jauhar S.K, et al. Retrofitting word vectors to semantic lexicons[J]. Computing Research Repository, 2014: 1441.4166.

[18]Pang, L. Lee. 2005. Seeing stars: Exploiting class relationships for sentiment categorization with respect to rating scales. In Proceedings of ACL 2005.

[19]Collobert, J. Weston, L. Bottou, M. Karlen, K. Kavukcuglu, P. Kuksa. 2011. Natural Language Processing (Almost) from Scratch. Journal of Machine Learning Research 12:2493–2537.

[20] Kim Y. Convolutional Neural Networks for Sentence Classification[C]. empirical methods in natural language processing, 2014: 1746-1751.

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版