APP下载

深度学习在文本表示及分类中的应用研究

2019-08-12崔莹

电脑知识与技术 2019年16期
关键词:文本分类自然语言处理深度学习

崔莹

摘要:近年来,随着深度学习的快速发展,其已在多个应用领域开花结果,尤其在语音识别和图像处理领域接连取得重大突破,然而仍在某些领域处于起步阶段,如自然语言处理(NLP)领域,特别是对文本的表示及分类相关问题上的应用。自然语言处理任务中的文本分类技术是实现人机自由交互的关键技术,如何对文本内容进行提取和分类,从众多非结构化的文本中提取出有效的信息,成为了解决文本信息管理中的关键手段。本文首先从深度学习基本概念开始,对首要任务及主要模型等方面进行介绍;其次分析讨论深度学习在文本表示中的研究进展及应用策略;进而对基于深度学习的文本分类技术进行进一步介绍;最后,对深度学习在文本表示及分类中的应用难点进行展望。

关键词:深度学习;自然语言处理;文本分类;文本表示

中图分类号:TP18        文献标识码:A

文章编号:1009-3044(2019)16-0174-04

开放科学(资源服务)标识码(OSID):

Abstract: In recent years, deep learning has made a significant breakthrough in speech recognition and image processing. And it is still in the initial stage in the field of natural language processing (NLP), which belongs to the category of human cognition, especially for the application of text representation and classification. The text categorization technology in natural language processing task is the key technology to achieve man-machine interaction. How to extract effective information from many unstructured texts and extract and classify text contents become the key means to solve text information management. This paper first introduces the main task and the main model of deep learning basic concepts; secondly discussed that deep learning research progress and application of strategies in the text; then further introduction of text classification technology based on deep learning; finally, the prospect of the application of deep learning difficulties in the text representation and classification.

Key words: deep learning, NLP, classification, text representation.

1  前言

近年来,随着深度学习的快速发展,其已在多个应用领域开花结果,尤其在语音识别和图像处理领域接连取得重大突破,然而仍在某些领域处于起步阶段,如自然语言处理(NLP)领域,特别是对文本的表示及分类相关问题上的应用。从 2006 年开始,研究者们便开始基于大规模无标注的语料上,利用深层神经网络进行无监督学习,为每个词学到一个分布式表示,并在形式上把每个单词用一个固定维数的向量表示,将该向量作为词的底层特征。在此特征基础上,Collobert & Weston完成了词性标注、命名实体识别和语义角色标注等多个任务[32],RichardSocher等人利用递归神经网络在句法分析、句子表示和情感分析等多个任务中开展应用,这也为文本的表示提供了新的思路[3][4][5][6][7]。

本文對当前基于深度学习的文本的表示和分类的研究进展重点展开分析,并对深度学习在自然语言处理领域未来可能的发展空间进行探讨。 本文首先对深度学习的基本概念进行描述;其次再围绕文本表示和文本分类两个方面,对当前深度学习的研究现状及应用策略进行重点分析讨论;最后是结束语,对有待深入研究的难点进行展望。

2  深度学习概述

深度学习是新兴的一个机器学习研究领域,它起源于对人工神经网络的研究,是基于深度神经网络(deep neural network,DNN)一类学习方法的统称。其首要任务是通过特征来对待处理问题中的对象进行表示,主要动机是对怎样从数据中自动地提取多层的特征表示进行研究,通过数据驱动的方式,并采用一系列非线性的处理,提取原始数据中从低层到高层、从具体到抽象、从一般到特定语义的特征是其核心思想。传统的机器学习方法由于对人工选取特征或表示过于依赖,且不具备自动抽取和组织信息的能力,因此具备无特征监督学习特点的深度学习得到了前所有为的进展。

近年来,在自然语言处理领域深度学习模型的应用已经取得了一定成果,并成为研究热点之一,其研究主要是在对词语、句子和断章的学习表示及相关应用上。目前在深度学习研究领域有些使用比较主流的模型包括:卷积神经网络、深度信念网络、长短期记忆模型、自动编码器、深度玻尔兹曼机以及循环神经网络等。

Mikolo[8]等人通过利用神经网络模型学习提出了一种名为词向量或词嵌入的新向量表示,其中包含了字词的语法信息和语义信息,同词袋表示相比,词向量表示具有稠密、低维、连续的特点。Socher 等人[23]利用递归自动编码的改进模型处理情感分析中的语义合成问题。Collobert 等人[24]利用词向量方法处理自然语言处理任务,如命名实体识别、词性标注、语义角色标注、短语识别等。Li 等人[26]在知识库基础上,将多柱卷积神经网(MUTI-COLUMN)应用于问答系统中来解决问题的分类。Cui 等人[27]将深度学习的方法用于解决学习主题表达问题和处理统计机器翻译消歧问题。另外,Zhang 等人[25]则用深度卷积信念网来学习词汇与句子层面的特征,并处理解决句子中词之间的相关分类问题。自然语言处理领域范围较广,覆盖了不同层次、不同性质的各种问题,这就要求我们在处理不同类型问题时,需要针对各类型问题特点,设计相应的深度学习模型,才能更好地解决处理到任务。

2.1卷积神经网络模型(CNN)

卷积神经网络可以看成是一个BP网络的扩展,由多层的神经元通过有规律的连接而形成的,同时融合了共享权值和局部感受野、时间域或空间域上的三种结构性次采用的方法。卷积神经网络能够通过对大量的输入与输出来学习两者之间的映射关系。图 1为卷积神经网络模型,模型有两个隐藏层(c1、c2),每层是由多个神经元组成的二维平面(特征 map)组成,S1、S2为池化层。通过三个卷积核的卷积操作,将输入X 映射为含有与卷积核相同数量的特征 map,池化后得到S1,再将S1作为输入,经过卷积核的卷积、池化操作生成S2层的特征map,最后所有神经元通过全连接层连接成一个向量输入到分类器中。在BP神经网络、卷积神经网络的权重调整中都采用了梯度下降方法,这样做的目的是可使得权值从朝着梯度下降最快的方向进行调整,进而使网络收敛速度加快。由于在同一特征映射面上具有相同的神经元权值,因此网络可以并行学习,这也是相对于普通的神经元网络来讲卷积网络的一大优势。

2.2长短时记忆神经网络模型(LSTM)

在传统的神经网络中,假设所有的输入、输出之间的映射关系是相互独立的。但对于许多任务来说,需要其先前输入的计算信息。比如预测句子中的下一个单词,应最好知道在它之前有哪些单词出现。递归神经网络(RNN)(如图 2)主要用于序列的模型预测,可以充分对上下文信息加以利用,对当前单词进行记忆,并对这个时刻之前的所有单词信息进行实时更新,基于序列从而更好的预测。正因为RNN基于序列的优点,使其在许多NLP任务中显示出巨大的成功,比如不分段连续手写识别、自主语音识别。特别是,递归神经网络(RNN)最常用的类型是长短时记忆神经网络(LSTM)(如图 3)。LSTM 是 RNN一种特殊的类型,其本质思想和基本架构与RNN相同,但LSTM可以学习长期依赖信息,要比RNN捕获更长时间的有效性特征。

3  文本表示

在对文本数据进行分类之前,首先要将文本数据转换成模型可以处理的定量化形式。因此,文本表示是文本分类的基础,由于文本文档是由大量字符组成的集合,其内部包含了非结构化或半结构化的信息,所以在被分类器所识别之前,必须要将其转换为一种计算机可以理解的语言。在实际研究分析中,将文本的内容转换成为机器可以理解的结构是有多种样式的,可以用字、词、短语、n-gram等不同形式分别形成向量或者树的结构。在面向自然语言处理的深度学习中,目前常见的文本表示模型有One-hot representation、词向量、词袋模型、向量空间模型等。

3.1 One-hot representation

One-hot representation表示方法基础思想:通过使用一个很长的向量来对每个词进行表示;其中值为1的维度只有一个,该向量代表了当前的词;其他绝大多数的元素值都为0;向量的维度表示词表的大小。其纯粹的向量表示形式只能对每个单词进行独立的表示,词与词之间的相关性无法得到表达,具有高维、稀疏性等缺点。

3.2 词向量表示

Firth 提出了一种利用相近邻的词来表示当前的词,其主要思想是:通过对不同范围的上下文相近邻词进行计算,从而可以计算得到当前表示词的多种不同表达值。例如当前中心词的前后词都可以通过计算来得到对当前中心词的表达值。在这种思想基础之上,所产生的词表达方式被称为Distributional similarity。这个思想也被誉为在现代统计自然语言处理中最成功的思想之一。

词向量的表示方式是上述类似思想的延续和扩展,为了使相关或者相似的词,能够在距离上更接近(可以使用传统的欧氏距离来对向量的距离进行衡量),Hinton提出了一种使用Distributed representation来表示词的方式,通常称为词向量。词向量本质是一种低维实数向量。用这种方式表示的向量,例如“话筒”和“麦克”的距离会远远小于“天气”和“麦克”的距离。在目前自然语言处理中,词向量的方式是深度学习得以应用的首选表示方式。

词向量一般是依赖对语言模型的训练来获得。其中,常见的方式是在对训练语言模型的过程中,同步训练得到词向量。通过使用大规模的无监督的文本语料数据集训练得到的分布式词向量中包含有更多的语义和语法的信息,并可以为模型提供一个较好的初始值[21]。在2008年Collobert 和 Weston首次提出了一种特殊的词向量的计算方法[17],文中对他们基于词向量完成的众多项自然语言处理任务进行了系统而详细的总结,如短语识别、词性标注、语义角色标注、命名实体识别等工作。

3.3 词袋模型

词袋模型是用一组无序的单词来表达一个文档或一段文字,忽略文本的语法和语序,文档中的每個单词都是独立出现的,并不依赖于其他单词是否出现。同时,文档或文字段仅仅被看作是由若干个词汇组成的集合。词袋模型最典型的应用便是文档分类。定义一个文档集合D,其中共包含有M个文档,通过提取文档里所有单词,构成一个由N个单词组成的词典。词袋模型本质上可以认为是一种统计直方图。基于词袋模型表示,每个文档都可以用一个N维向量来表示,进一步利用计算机便可以完成对海量文档进行分类的任务。

3.4  向量空間模型

向量空间模型(Vector space model,VSM)由Salton于20世纪70年代提出,并将其成功应用于著名的SMART(System for the mechanical analysis and retrieval of text)文本检索系统中。该方法主要思想是:将对文本内容的处理转换为对向量空间中的向量运算,并用空间上的相似度来对语义相似度进行表示。当文本被表示为文档空间向量时,便可通过计算向量之间余弦的距离来对文本间的相似性进行度量。

4 文本分类

文本分类是自然语言处理领域重要的研究方向。文本分类是指通过对文档的特征(主题、内容或属性)进行分析,将大量的文本自动地划归到一个或多个类别的过程,详见图 4。在文本分类方法中,主要分为两类:一类分类方法是基于知识工程的,另一类方法是基于机器学习的。基于知识工程的分类方法中需要大量的领域专家知识和知识库作为分类过程的支撑,其对人力资源的要求较高且其规则不能穷举,显然不足以应对当今如此丰富的信息世界。正因如此,基于机器学习的文本分类技术得到不断发展,如支持向量机(Support vector machine,SVM)、K近邻算法(K Nearest Neighbor,KNN)、神经网络(Neural Nets)、决策树和最小二乘等。SVM的应用是文本分类中近几年来最重要的进展之一。以上方法已经可以解决很多应用问题,但要求数据量较小、分布均匀、标注较准确。在大规模的应用中,文本分类技术在很多问题上仍存在挑战。例如文本表示、非线性问题、数据集偏斜、多层分类、标注瓶颈、Web 页面分类、算法的可扩展性等。

国内的文本分类的研究出现比较晚,但是其发展却是非常的快。其早期主要是将外国的文本分类方法应用于中文的分类中,然而由于英文文本和中文文本存在着很大的差异,中文的文本分类算法在已有算法基础上上进行了调整和修改,使得其更加符合中文的文本特点。同时,国内也对文本分类领域加大了基础研究力度,产生了大量高效的算法,并且其中的一些算法已经被成功的运用到实际应用领域中,促进了中文文本分类技术的发展。如李荣陆等人的最大熵模型,王强等人提出的类别噪声裁剪算法。由姜鹤等人提出的一种减少特征向量空间维数的特征提取的方法,大大提升了进行文本分类时对系统资源的利用率[28]。晋幼丽、周明全等人将 SVM 和 K-means两种算法进行了很好地结合,并将其应用于文本中,首先利用 K-means 算法对文本进行聚类,然后在聚类的结果上选取训练样本,并在选取后的样本上对 SVM 分类器进行训练,并将训练好的分类器用于进行文本分类[26]。刘少辉等人将改进的向量空间模型很好的应用于文本分类中,并使用了一种基于向量空间模型的特征项权重计算的方法[29]。张培颖等人在文本分类中通过使用词语的语义相关性,大大降低了词语的稀疏性对文本分类的影响[27]。许增福等人提出了一种基于神经网络的文本分类方法,该方法中结合模糊理论,利用模糊理论自身的特点来构建神经网络[30]。戚孝铭,施亮等人提出了一种特征选择算法,该算法基于模拟退火算法结合蜂群算法,能够快速地寻找最优解,并且避免陷入局部的最优,可以很好地得到最优特征。朱颢东等人提出了一种特征选择方法,该方法解决了特征空间稀疏性,利用了类别的相关性和交叉熵来降低特征空间的稀疏性[31]。

由于传统的机器学习方法主要是线性和浅层非线性的方法,因此对于复杂词句的语义内容会带来许多误差。通过深度学习的技术学习文本深度特征,解决文本分类的方法,已有许多学者在探索。针对文本稀疏性和模糊性问题,Wang 等人提出语义聚类和卷积神经网络对数据建模,增强上下文的语义相关性。Johnson 等人提出一个半监督卷积神经网络学习框架,更有效的利用无标记数据。特别是,Zhou 等人提出的c-lstm模型,利用 CNN 提取文本句子特征,并被送入短期记忆递归神经网络(LSTM)获得的句子表征,在情绪分类和文本分类有较好的表现。借助大量数据,深度学习模型可自主学习词句内在的句法特征和语义特征,较好的理解表示文本,有效填补人工提取特征的缺陷,具有较好的鲁棒性和普适性。

5  结语

在现阶段以深度学习方法为主要方法的特征学习研究中,还存在着许多问题有待被进一步探索解决。例如在一个特征表示优于另一个特征表示时的主要因素是什么?假设给定一个表示对象,我们应该如何学习好的特征来表示?诸如此类的基本问题, 都有待被深入研究解决。在已有的深度学习模型研究中,存在着另一方面的难点,即在模型构建过程中如何对参数进行优化调整。主要参数例如深度网络的层数、网络的学习速率以及正则化等问题。当然也有一些可能的解决方案,如:采用多核机来提升网络的训练速度;在不同的应用场合中,选择合适的具有针对性的优化算法等。在未来可能会被进一步研究的方向有:更多的利用深度学习的方法,自动地从原始文本中获取特征,从而减少模型对标注数据的依赖,尽量少的从标注信息中学习特征;通过对神经网络复杂度进行优化,在能够完成任务的同时尽量降低模型的复杂度。

面向自然语言处理的深度学习研究工作中,尽已经有的深度学习算法模型如递归神经网络、循环神经网络和卷积神经网络等均已经得到较为显著的应用,但仍需要对其进行不断深入研究和探索。在自然语言处理领域中,围绕何时的深度学习模型的构建等研究工作仍有着非常广阔的空间。

参考文献:

[1] Bengio, Yoshua, Rejean Ducharme, Pascal Vincent. A neural probabilistic language model. Advances in NIPS . 2001.

[2] G.E.Hinton, S.Osindero, Y.Teh. A fast learning algorithm for deep belief nets. Neural Computation . 2006.

[3] Richard Socher,Brody Huval,Christopher D.Manning,Andrew Y.Ng. Semantic Compositionality through Recursive Matrix-Vector Spaces. Proc.ACL2010 . 2010.

[4] Richard Socher,Jeffrey Pennington,Eric H. Huang,Andrew Y. Ng,Christopher D. "Semi-Supervised Recursive Autoencoders for Predicting Sentiment Distributions". Manning. Proceedings of the 2011 Conference on Empirical Methods in Natural Language Processing . 2011.

[5] Socher, R,C.D.Manning, A.Y.Ng. Learning continuous phrase representations and syntactic parsing with recursive neural networks. Proceedings of the NIPS-2010Deep Learning and Unsupervised Feature Learning Workshop . 2010.

[6] Richard Socher,Cliff Lin,Andrew Y Ng,Christopher Manning. Parsing naturalscenes and natural language with recursive neural networks. Proceedings of theTwenty-Eighth International Conference on Machine Learning . 2011.

[7] Mikolov, T., Chen, K., Corrado, G., & Dean, J. (2013, January 17). Efficient Estimation of Word Representations in Vector Space. arXiv.org.

[8] Mikolov, T., Sutskever, I., Chen, K., Corrado, G., & Dean, J. (2013, October 17). Distributed Representations of Words and Phrases and their Compositionality. arXiv.org. //Proceedings  of  the  27th Advances  in  Neural  Information  Processing  Systems  (NIPS 2013).South Lake Tahoe, Nevada, USA, 2013: 3111-3119.

[9] Bengio, Y., Ducharme, R., Vincent, P., & Janvin, C. (2003). A neural probabilistic language model. The Journal of Machine Learning Research, 3, 1137–1155.

[10] Turney, P. D., & Pantel, P. (2010). From frequency to meaning: vector space models of semantics. Journal of Artificial Intelligence Research, 37(1).

[11] Morin, F., & Bengio, Y. (2005). Hierarchical Probabilistic Neural Network Language Model. Aistats.

[12] Mnih, A., & Kavukcuoglu, K. (2013). Learning word embeddings efficiently with noise-contrastive estimation, 2265–2273.

[13] Mikolov, T., Karafiát, M., Burget, L., & Cernock?, J. (2010). Recurrent neural network based language model. Interspeech.

[14] Mikolov, T., Yih, W., & Zweig, G. (2013). Linguistic Regularities in Continuous Space Word Representations. Hlt-Naacl.

[15] Mikolov, T., Le, Q. V., & Sutskever, I. (2013, September 17). Exploiting Similarities among Languages for Machine Translation. arXiv.org.

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

[17] Barkan, O., & Koenigstein, N. (2016, March 14). Item2Vec: Neural Item Embedding for Collaborative Filtering. arXiv.org.

[18] Le, Q. V., & Mikolov, T. (2014, May 16). Distributed Representations of Sentences and Documents. arXiv.org.

[19] LECUN Y, BENGIO Y, HINTON G. Deep learning[J]. Nature, 2015, 521(7553): 436-444.

[20] SOCHER  R,  PERELYGIN  A,  WU  J,  et  al.  Recursive  deep  models  forsemantic  compositionality  over  a sentiment  treebank[C]//Proceedings  ofthe  2013  Conference  on  Empirical  Methods  in  Natural Language Processing (EMNLP 2013). Seattle, Washington, USA, 2013: 1642.

[21] Socher  R,  Pennington  J,  Huang  E  H,  et  al.  Semi-supervised  recursive  autoencoders  for predicting  sentiment  distributions[C]//Proceedings  of  the  Conference  on  Empirical  Methods  in Natural Language Processing. Association for Computational Linguistics, 2011: 151-161.

[22] Collobert  R,  Weston  J.  A  unified  architecture  for  natural  language  processing:  Deep  neural networks  with  multitask  learning[C]//Proceedings  of  the  25th  international  conference  on Machine learning. ACM, 2008: 160-167.

[23] Zhang D,  Wang D. Relation  Classification  via  Recurrent  Neural  Network[J].  ar Xiv  preprint ar Xiv:1508.01006, 2015.

[24] Dong  L,  Wei  F,  Zhou  M,  et  al.  Question  answering  over  freebase  with  multi-column convolutional neural networks[C]//Proceedings of the 53rd Annual Meeting of the Association for Computational  Linguistics  and  the  7th  International  Joint  Conference  on  Natural  Language Processing. 2015, 1: 260-269.

[25] Cui L, Zhang D, Liu S, et al.  Learning  topic  representation  for  smt  with  neural networks[C]//Proceedings  of  the  52nd  Annual  Meeting  of  the  Association  for  Computational Linguistics. 2014, 1: 133-143.

[26] 晉幼丽, 周明全, 王学松. SVM 和 K-means 结合的文本分类方法研究[J]. 计算机技术与发展, 2009, 19(11): 35-37.

[27] 张培颖, 王雷全. 基于语义距离的文本分类方法[J]. 计算机技术与发展, 2013, 23(1):128-130.

[28] 姜鹤.SVM 文本分类中基于法向量的特征选择算法研究:硕士学位论文[D].上海:上海交通大学.

[29] 刘少辉, 董明楷, 张海俊, 等. 一种基于向量空间模型的多层次文本分类方法[J]. 中文信息学报, 2002, 16(3): 9-15, 27.

[30] 许增福, 梁静国, 田晓宇. 基于加权模糊推理网络的文本自动分类方法[J]. 哈尔滨工程大学学报, 2004, 25(4): 504-508.

[31] 朱颢东, 钟勇. 基于类别相关性和交叉熵的特征选择方法[J]. 郑州大学学报: 理学版,2010, 42(2): 61-65.

[32] 奚雪峰,周国栋. 面向自然语言处理的深度学习研究[J]. 自动化学报,2016,42(10):1445-1465.

【通联编辑:唐一东】

猜你喜欢

文本分类自然语言处理深度学习
基于组合分类算法的源代码注释质量评估方法
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望