基于深度学习的实时文本情感分析方法、装置及设备与流程

文档序号:18870086发布日期:2019-10-14 19:20阅读:244来源:国知局
基于深度学习的实时文本情感分析方法、装置及设备与流程

本申请涉及自然语言处理领域,特别涉及一种基于深度学习的实时文本情感分析方法、装置、设备及可读存储介质。



背景技术:

随着社交网络的兴起,人们越来越倾向于在网络上发表意见和表达情感,对这些含有情感倾向的文本数据进行分析,可以帮助理解不同人对相同事物的不同看法和情感倾向,如何通过自然语言处理(naturallanguageprocessing,nlp)的方法对这些数据进行快速有效地情感分析,已经成为研究热点。

目前,情感分析已经应用到多种领域,如:电子商务平台、电影推荐、舆情分析。近年来,随着深度学习的快速发展,文本情感分析也有了很大的进步。循环神经网络可以联系上下文记忆并存储更加久远的全局信息,从而实现对文本的情感分析。

然而,循环神经网络由于存在时序依赖的关系无法充分利用gpu的并行性,导致计算时间过长,无法达到实时性的要求。与循环神经网络相比cnn(convolutionalneuralnetworks)训练时间较短,但cnn只是通过获取卷积窗口内的局部特征信息(regionalinformation)来构建文本特征表示,不能像循环神经网络那样联系上下文信息,难以满足实时情感分析对性能的要求。

综上所述,如何提升文本情感分析的速率,保证分析实时性,是亟待本领域技术人员解决的技术问题。



技术实现要素:

本申请的目的是提供一种基于深度学习的实时文本情感分析方法、装置、设备及可读存储介质,用以解决传统的实时文本情感分析方案耗时较长,难以保证分析过程的实时性的问题。具体方案如下:

第一方面,本申请提供了一种基于深度学习的实时文本情感分析方法,包括:

将文本转换为向量表示;

利用双向多重卷积层提取所述向量表示中的初始特征;

利用注意力机制层对所述文本特征进行加权融合,得到目标特征;

根据所述目标特征,确定所述文本的情感分析结果。

优选的,所述利用双向多重卷积层提取所述向量表示中的初始特征,包括:

利用不同大小的卷积核对所述向量表示分别进行正向和逆向的特征提取操作;对正向提取结果和逆向提取结果进行拼接,得到所述特征向量表示中的初始特征。

优选的,所述根据所述目标特征,确定所述文本的情感分析结果,包括:

利用全连接层和softmax函数对所述目标特征进行文本情感分类,得到所述文本的情感分析结果。

优选的,在所述将文本转换为向量表示之前,包括:

采集当前用户在目标平台上的文本。

优选的,所述将文本转换为向量表示,包括:

对文本进行分词处理,得到词序列;

确定所述词序列中各个词的索引;

根据所述索引,确定所述词序列中各个词的向量表示,得到所述文本的向量表示。

优选的,在所述根据所述目标特征,确定所述文本的情感分析结果之后,还包括:

根据所述情感分析结果,确定推荐信息,并将所述推荐信息推送至所述当前用户的所述目标平台。

第二方面,本申请提供了一种基于深度学习的实时文本情感分析装置,包括:

表示模块:用于将文本转换为向量表示;

特征提取模块:用于利用双向多重卷积层提取所述向量表示中的初始特征;

特征融合模块:用于利用注意力机制层对所述文本特征进行加权融合,得到目标特征;

情感分析模块:用于根据所述目标特征,确定所述文本的情感分析结果。

优选的,所述特征提取模块用于:

利用不同大小的卷积核对所述向量表示分别进行正向和逆向的特征提取操作;对正向提取结果和逆向提取结果进行拼接,得到所述特征向量表示中的初始特征。

第三方面,本申请提供了一种基于深度学习的实时文本情感分析设备,包括:

存储器:用于存储计算机程序;

处理器:用于执行所述计算机程序,以实现如上所述的一种基于深度学习的实时文本情感分析方法的步骤。

第四方面,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的一种基于深度学习的实时文本情感分析方法的步骤。

本申请所提供的一种基于深度学习的实时文本情感分析方法、装置、设备及可读存储介质,方案包括:将文本转换为向量表示;利用双向多重卷积层提取向量表示中的初始特征;利用注意力机制层对文本特征进行加权融合,得到目标特征;根据目标特征,确定文本的情感分析结果。

可见,该方案利用双向多重卷积层对文本的向量表示分别进行正向和反向进行特征提取,有效地利用gpu的并行计算能力,提升分析效率,且通过不同大小的卷积核进行特征提取操作,因此能够更加充分的捕捉到文本中的语言依赖关系。此外,该方案使用注意力机制层对双向多重卷积层提取出的初始特征进行加权融合,提升了文本中关键词的权重并且降低非关键词的权重。因此,该方案显著提升了文本情感分析的效率和实时性。

附图说明

为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请所提供的一种基于深度学习的实时文本情感分析方法实施例一的实现流程图;

图2为本申请所提供的一种基于深度学习的实时文本情感分析方法实施例二的实现流程图;

图3为本申请所提供的一种基于深度学习的实时文本情感分析方法实施例二中深度神经网络模型的结构示意图;

图4为本申请所提供的一种基于深度学习的实时文本情感分析方法实施例二中预处理流程示意图;

图5为本申请所提供的一种基于深度学习的实时文本情感分析方法实施例二中双向多重卷积层的结构示意图;

图6为本申请所提供的一种基于深度学习的实时文本情感分析方法实施例二中注意力机制层的结构示意图;

图7为本申请所提供的一种基于深度学习的实时文本情感分析装置实施例的功能框图;

图8为本申请所提供的一种基于深度学习的实时文本情感分析设备实施例的结构示意图。

具体实施方式

本申请的核心是提供一种基于深度学习的实时文本情感分析方法、装置、设备及可读存储介质,显著提升了文本情感分析的分析效率和实时性。

为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面对本申请提供的一种基于深度学习的实时文本情感分析方法实施例一进行介绍,参见图1,实施例一包括:

s101、将文本转换为向量表示;

上述文本是指待进行情感分析的文本,具体可以预先利用爬虫从目标平台上实时采集文本数据。针对不同的应用场景,上述文本可以为不同内容的数据,例如,从电影线上销售平台或者电子商城上爬取大规模的评论文本,电影又可以细分为武侠类,悬疑类,惊悚类,爱情类等;还可以从电子商城爬取用户的消费记录数据,具体可以分为通信产品(如手机、计算机等)、食品(如大米、零食等)、服饰(衣服、装饰品等)、办公用品、厨房用具、软件产品(如办公软件)等。

具体的,在将文本转换为向量表示之前,可以先对文本进行规范化、去停用词等预处理操作。然后对文本进行分词操作,得到词序列。最终,将词序列中各个词转换为向量表示,得到整个文本的向量表示。

如上所述,在提取文本的特征之前,需要将文本中的每个词表示为词向量,词向量是基于大量语料库利用算法学习得到的词语低维表示形式,能充分体现上下文的相关特征和词语之间的相似性。具体的,可以利用词嵌入层将词序列中各个词转换为词向量,目前常用的词嵌入方法有word2vec、glove、elmo,本实施例不限定选取何种词嵌入方法。值得一提的是,当训练语料足够多的时候,可以随机初始化嵌入向量,也就是随机生成词的嵌入向量,得到一个嵌入向量查询表。在后续需要将一个文本句中的词“翻译”为嵌入向量时,可以通过查询该嵌入向量查询表获取该字的嵌入向量。

s102、利用双向多重卷积层提取所述向量表示中的初始特征;

双向多重卷积(bidirectionalmultipleconvolutionandattentionmechanism,bimc)能够从不同的角度提取出文本特征,有利于提升模型的稳定性。具体的,双向多重卷积以一维卷积(one-dimensionalconvolution,1dconv)为基础,有两个输入的序列,一个正向序列,一个逆向序列,通过不同大小的卷积核分别对正向和逆向的序列进行特征提取,最终,对从这两个序列提取出的特征进行连接,得到的结果即为上述初始特征。

s103、利用注意力机制层对所述文本特征进行加权融合,得到目标特征;

注意力机制层具有与池化层相似的数据降维功能,其优势在于具备随着时间推移整合信息的能力,本实施例中,利用注意力机制层对初始特征进行加权融合,通过注意力机制层可以给各时序信号特征赋予权值,提升关键词的权值,降低非关键词的权值,从而提升对文本的情感倾向的把握能力。

s104、根据所述目标特征,确定所述文本的情感分析结果。

具体的,利用全连接层和softmax函数对目标特征进行文本情感分类,得到文本的情感分析结果。

本实施例可应用于多个领域,例如通过对电子商务平台的用户商品评价数据进行情感分析,有利于建立用户与商品关系的模型,为用户提供个性化的推荐,同时可以帮助商家及时更新货架商品;通过对电影评论数据进行情感分析,有利于为观众推荐符合个人偏好的电影,同时可以帮助电影制作商把握当下大众的电影偏好,从而制作出符合大众价值观的优秀电影。

本实施例所提供一种基于深度学习的实时文本情感分析方法,将文本转换为向量表示;利用双向多重卷积层提取向量表示中的初始特征;利用注意力机制层对文本特征进行加权融合,得到目标特征;根据目标特征,确定文本的情感分析结果。可见,与传统文本情感分析方案相比,本实施例至少具备以下三个优点:

第一,利用双向的卷积操作对文本的向量表示分别进行正向和反向提取特征,与传统的卷积相比,双向卷积能很好地捕获双向的语言依赖关系;

第二,对相同的文本向量表示,利用具有不同卷积窗口大小的双向卷积层进行特征提取,能够更加充分的提取文本特征;

第三,使用注意力机制层替换掉池化层,通过注意力机制层对双向卷积提取得到的特征进行加权融合,从而提升整个文本中关键字的权重并且降低非关键词的权重,以把握整个文本的情感倾向。

综上,本实施例能够更加充分的捕捉到文本中的语言依赖关系,有效利用了gpu的并行计算能力,显著提升了文本情感分析的效率和实时性。

下面开始详细介绍本申请提供的一种基于深度学习的实时文本情感分析方法实施例二,实施例二基于上述实施例一实现,并在实施例一的基础上进行了一定程度上的拓展。

参见图2和图3,图2为实施例二的实现流程图,图3为实施例二的深度神经网络模型结构示意图,本实施例基于如图3所示的深度神经网络模型实现。如图2所示,实施例二具体包括以下步骤:

s201、采集含有情感倾向的文本;

具体的,预先设置一个稳定可靠的网络爬虫,以获取大量含有情感倾向(积极、中性、消极)的文本信息,并对部分文本进行情感倾向标注作为上述深度神经网络模型的训练集。

s202、对采集到的文本进行预处理;

图4示出了本实施例中文本预处理流程图,预处理是对数据分析前的一些预先处理,目的是将原始文本规范化以及适当降低噪声的处理,便于后续实时文本情感分析的实现。本实施例中预处理主要包括以下内容:

加载文本数据:将文本数据从数据库或者csv等存储格式中加载进内存;

文本规范化处理:对文本进行规范化处理,防止由于文本的格式错误而对后续的处理造成影响;

去除停用词:将文本中常出现但是意义不大的词过滤掉,如:中文的“的”、“地”、“得”,英文的“a”,“for”,“the”等。另外还需要将标点符号和表情符号去除;

分词:中文文本通过常用的中文分词方法,英文采用空格对文本进行分词;

文本索引表示:将文本的每个词都以索引的形式表示。如:文本为“我超级喜欢战狼2”,假设其中“我”的索引为1,“超级”的索引为3,“喜欢”的索引为6,“战狼”的索引为5,“2”的索引为4,那么文本可以表示为[1,3,6,5,4]。

s203、利用词嵌入层,将文本中的各个词转换为词向量;

词嵌入层即embeding层,将文本信息转成二维矩阵的形式。目前常用的词嵌入方法有word2vec、glove、elmo,作为一种具体的实施方式,本实施例采用的是glove的词向量化方法。假设文本中含有n个词,且嵌入层的输出为k维特征,则双向多重卷积层的输入为n×k的二维矩阵。

s204、利用双向多重卷积层提取文本的向量表示的初始特征;

双向多重卷积能够从不同的角度提取出文本特征,最后将各种不同的特征连接起来,以提升模型的稳定性。

双向多重卷积层以一维卷积为基础,下面介绍一维卷积的具体做法:设xi∈rk其中k代表的是嵌入层输出维度,而i代表该词在文档或者句子中的位置,经过嵌入层后一个包含n个词的文档或句子可以用以下形式表示:

x1:n=concatenate(x1,x2,...,xn)(1)

其中,符号concatenate表示连接操作,向量xi:i+j表示一系列词向量xi,xi+1,...,xi+j。每个卷积操作都包含一个过滤器w∈rh×k,它可以通过一个包含l个词的窗口来产生一个新的特征。例如:一个特征ci可由窗口xi:i+l-1产生:

ci=f(w·xi:i+l-1+b)(2)

这里b∈r是一个偏置项,f是一个类似双曲正切的非线性函数。最后文档或句子可以表示为:

c=[c1,c2,...,cn-l+1](3)

双向的卷积能够提供能多的额外特征,使得学习更加充分,bimc层的结构如图5所示。双向多重卷积有两个输入的序列,一个正序,一个逆序。本实施例通过不同大小的卷积核对正序和逆序的序列进行特征提取,最后从这两个顺序提取出的特征会进行连接。假设表示前向卷积在时刻t的输出,表示反向卷积在时刻t的输出。的结合方式如下:

s205、利用注意力机制层对初始特征进行加权融合,得到目标特征;

因为注意力机制层可以对特征进行加权融合,所以具有与池化层相似的数据降维功能。注意力机制层的优势是其随着时间推移而整合信息的能力,可以用来表示文本或句子中的词与输出结果之间的相关性。通过注意力机制层,可以给各时序信号特征赋予权值,提升重要词的权值,从而提升把握全文的能力。

假设ht由第t个卷积时间步产生的特征,那么注意力机制层的过程可以用以下式表示:

ut=tanh(htww+bw)(5)

s=∑tαtht(7)

其中ww与bw为注意力机制层的权重和偏置项,式(6)为对所有的结果计算softmax值,式(7)将计算出的αt作为各个时序特征的输出权值,对特征进行加权求和表示为一个向量。注意力机制层的网络结构如图6所示,其中表示相加操作,表示相乘操作。

s206、利用全连接层和softmax函数对目标特征进行文本情感分类,得到文本的情感分析结果。

综上,为了解决当前深度学习算法难以快速有效地实现实时情感分析的问题,本实施例提出一种基于深度学习的实时文本情感分析方法。方案具体包括:获得含有情感倾向的文本数据,对文本进行预处理操作,通过glove算法对预处理后的文本进行向量化;采用不同大小的卷积窗口对向量化的文本序列进行双向的特征提取;通过注意力机制层对提取到的特征进行加权融合,得到目标特征;最终利用全连接层和sofamax函数根据目标特征进行文本情感分类。与循环神经网络相比,本实施例能够有效地利用gpu的并行计算,提升实时情感分析能力,还能有效提升模型的联系上下文的能力,提高情感分析的性能和实时性。

本实施例提供的基于深度学习的实时文本情感分析方法可应用于诸多应用场景,下面就两个实施案例进行举例说明:

实施案例1:为电子商城的用户评论或者电影影评做实时的情感分析,并且根据用户的情绪倾向为用户提供符合个人偏好的商品或者电影。预测过程主要包括以下步骤:

将训练过程得到的情感分析模型部署进传统的web架构中,当接收到实时传来的评论文本数据时,将评论文本经过预处理操作后,输进训练好的模型。模型会返回情感分析的结果。web平台可以根据用户评论信息的情感分析结果,为用户推荐符合用户偏好的推荐。如用户在观看一部武侠电影后,给出了积极的评价信息,那么系统可以根据情感分析结果,为该用户推荐一些和该电影类型一致的其他电影,从而刺激用户消费。

实施案例2:本实施例适用于实时的社会舆情监督,通过舆情监督可以知道公众对特定话题所持的观点,可以反映公众对热点话题的一种社会评价和社会心理。政府和企业可以根据舆情监督的结果,采取相应的措施。

实时情感分析模型的训练过程和前述实施例相似,但是为了增强系统的吞吐量,提升情感分析的实时性,在将模型应用至实时舆论监督时,可以采用现在流行的分布式架构。在数据存储方面,采用分布式的文件存储系统hdfs(hadoopdistributedfilesystem)。通过kafka进行文本消息传递,并且在storm中对文本消息进行预处理,最后将模型加载至spark中进行实时的舆论监督。

下面对本申请实施例提供的一种基于深度学习的实时文本情感分析装置进行介绍,下文描述的一种基于深度学习的实时文本情感分析装置与上文描述的一种基于深度学习的实时文本情感分析方法可相互对应参照。

如图7所示,该装置包括:

表示模块701:用于将文本转换为向量表示;

特征提取模块702:用于利用双向多重卷积层提取所述向量表示中的初始特征;

特征融合模块703:用于利用注意力机制层对所述文本特征进行加权融合,得到目标特征;

情感分析模块704:用于根据所述目标特征,确定所述文本的情感分析结果。

在一些具体的实施例中,所述特征提取模块702用于:

利用不同大小的卷积核对所述向量表示分别进行正向和逆向的特征提取操作;对正向提取结果和逆向提取结果进行拼接,得到所述特征向量表示中的初始特征。

本实施例的基于深度学习的实时文本情感分析装置用于实现前述的基于深度学习的实时文本情感分析方法,因此该装置中的具体实施方式可见前文中的基于深度学习的实时文本情感分析方法的实施例部分,例如,表示模块701、特征提取模块702、特征融合模块703、情感分析模块704,分别用于实现上述基于深度学习的实时文本情感分析方法中步骤s101,s102,s103,s104。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。

另外,由于本实施例的基于深度学习的实时文本情感分析装置用于实现前述的基于深度学习的实时文本情感分析方法,因此其作用与上述方法的作用相对应,这里不再赘述。

此外,本申请还提供了一种基于深度学习的实时文本情感分析设备,如图8所示,包括:

存储器100:用于存储计算机程序;

处理器200:用于执行所述计算机程序,以实现如上所述的一种基于深度学习的实时文本情感分析方法的步骤。

最后,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的一种基于深度学习的实时文本情感分析方法的步骤。

本实施例的基于深度学习的实时文本情感分析设备、可读存储介质用于实现前述的基于深度学习的实时文本情感分析方法,因此该设备、可读存储介质的具体实施方式可见前文中的基于深度学习的实时文本情感分析方法的实施例部分,且二者的作用与前述方法实施例的作用相对应,在此不再赘述。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1