CN114358201A - 基于文本的情感分类方法和装置、计算机设备、存储介质 - Google Patents

基于文本的情感分类方法和装置、计算机设备、存储介质 Download PDF

Info

Publication number
CN114358201A
CN114358201A CN202210028278.4A CN202210028278A CN114358201A CN 114358201 A CN114358201 A CN 114358201A CN 202210028278 A CN202210028278 A CN 202210028278A CN 114358201 A CN114358201 A CN 114358201A
Authority
CN
China
Prior art keywords
emotion
text data
word segmentation
data
vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210028278.4A
Other languages
English (en)
Inventor
舒畅
陈又新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202210028278.4A priority Critical patent/CN114358201A/zh
Publication of CN114358201A publication Critical patent/CN114358201A/zh
Priority to PCT/CN2022/090673 priority patent/WO2023134083A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本实施例提供一种基于文本的情感分类方法和装置、计算机设备、存储介质,属于人工智能技术领域。该基于文本的情感分类方法包括:获取待分类的原始文本数据,对原始文本数据进行分词处理,得到多个分词文本数据;对分词文本数据进行数据增强处理,得到分词文本数据对应的情感正例对;通过预先训练的对比学习模型对情感正例对进行对比学习,得到包含情感特征的情感嵌入向量;之后根据情感嵌入向量进行情感分类处理,得到对应情感特征的目标情感类别。通过结合对比学习模型对情感正例对进行对比学习,得到情感嵌入向量之后再进行情感分类处理,能够解决训练数据分布不均衡的问题,从而提高情感分类的准确率。

Description

基于文本的情感分类方法和装置、计算机设备、存储介质
技术领域
本申请涉及人工智能技术领域,尤其涉及一种基于文本的情感分类方法和装置、计算机设备、存储介质。
背景技术
随着计算机技术的发展,许多业务需要使用计算机技术进行自然语言处理。其中,情感分析是一种常见的自然语言处理方法的应用。目前,通常利用循环神经网络RNN或者BERT模型来进行文本情感分类,由于这两种模型在训练过程的不同种类的训练数据分布不均衡,从而影响情感分类的准确率。因此,如何提供一种文本的情感分类方法,来提高文本情感分类的准确率,成为了亟待解决的技术问题。
发明内容
本申请实施例的主要目的在于提出一种基于文本的情感分类方法和装置、计算机设备、存储介质,旨在提高文本情感分类的准确率。
为实现上述目的,本申请实施例的第一方面提出了一种基于文本的情感分类方法,包括:
获取待分类的原始文本数据;
对所述原始文本数据进行分词处理,得到分词文本数据;其中,所述分词文本数据包括用于表征情感类别的情感特征;
对所述分词文本数据进行数据增强处理,得到所述分词文本数据对应的情感正例对;其中,每一所述情感正例对包括所述情感特征;
通过预先训练的对比学习模型对所述情感正例对进行对比学习,得到情感嵌入向量;
根据所述情感嵌入向量进行情感分类处理,得到对应所述情感特征的目标情感类别。
在一些实施例,所述对所述分词文本数据进行数据增强处理,得到所述分词文本数据对应的情感正例对,包括:
对所述分词文本数据进行复制,得到复制文本数据;
对所述分词文本数据进行第一数据增强处理,得到第一编码向量;
对所述复制文本数据进行第二数据增强处理,得到第二编码向量;
根据所述第一编码向量和所述第二编码向量,得到所述情感正例对。
在一些实施例,所述根据所述第一编码向量和所述第二编码向量,得到所述情感正例对,包括:
通过第一多层感知机对所述第一编码向量进行映射处理,得到第一映射数据;
通过第二多层感知机对所述第二编码向量进行映射处理,得到第二映射数据;
根据所述第一映射数据和所述第二映射数据构建所述情感正例对。
在一些实施例,在所述通过预先训练的对比学习模型对所述情感正例对进行对比学习,得到情感嵌入向量之前,所述方法还包括:构建所述对比学习模型,具体包括:
获取训练样本;所述训练样本包括样本正例对和样本负例对;
将所述样本正例对和所述样本负例对输入到原始学习模型;
根据所述样本正例对和所述样本负例对,对所述原始学习模型的损失函数进行计算,得到损失值;
根据所述损失值更新所述原始学习模型,得到所述对比学习模型。
在一些实施例,所述根据所述损失值更新所述原始学习模型,得到所述对比学习模型,包括:
将所述损失值作为反向传播量,调整所述原始学习模型的模型参数,以更新所述原始学习模型,得到所述对比学习模型。
在一些实施例,所述根据所述情感嵌入向量进行情感分类处理,得到对应所述情感特征的目标情感类别,包括:
获取预设的神经网络模型;其中,所述神经网络模型包括卷积层、池化层、全连接层和分类器;
通过所述卷积层对所述情感嵌入向量进行特征提取处理,得到多个卷积特征向量;
通过所述池化层对每一所述卷积特征向量进行最大池化处理,得到多个池化特征向量;
通过所述全连接层对多个所述池化特征向量进行拼接处理,得到拼接特征向量;
通过所述分类器对所述拼接特征向量进行分类处理,得到对应所述情感特征的目标情感类别。
在一些实施例,所述通过所述分类器对所述拼接特征向量进行分类处理,得到对应所述情感特征的目标情感类别,包括:
通过所述分类器对所述拼接特征向量进行分类处理,得到多个候选情感类别以及每一所述候选情感类别对应的情感概率值;
获取情感概率值最高的候选情感类别,作为所述目标情感类别。
本公开实施例的第二方面提出了一种基于文本的情感分类装置,包括:
获取模块:用于获取待分类的原始文本数据;
分词模块:用于对所述原始文本数据进行分词处理,得到分词文本数据;其中,所述分词文本数据包括用于表征情感类别的情感特征;
增强模块:用于对所述分词文本数据进行数据增强处理,得到所述分词文本数据对应的情感正例对;其中,每一所述情感正例对包括所述情感特征;
学习模块:用于通过预先训练的对比学习模型对所述情感正例对进行对比学习,得到情感嵌入向量;
分类模块:用于根据所述情感嵌入向量进行情感分类处理,得到对应所述情感特征的目标情感类别。
本公开实施例的第三方面提出了一种计算机设备,所述计算机设备包括存储器和处理器,其中,所述存储器中存储有程序,所述程序被所述处理器执行时所述处理器用于执行如本申请第一方面实施例任一项所述的方法。
本公开实施例的第四方面提出了一种存储介质,该存储介质为计算机可读存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如本申请第一方面实施例任一项所述的方法。
本公开实施例提出的基于文本的情感分类方法和装置、计算机设备、存储介质,通过获取待分类的原始文本数据,对原始文本数据进行分词处理,得到多个分词文本数据,其中分词文本数据包括用于表征情感类别的情感特征;对分词文本数据进行数据增强处理,得到分词文本数据对应的情感正例对,其中每一情感正例对同样包括情感特征;通过预先训练的对比学习模型对情感正例对进行对比学习,得到包含情感特征的情感嵌入向量;之后根据情感嵌入向量进行情感分类处理,得到对应情感特征的目标情感类别。本申请实施例通过结合对比学习模型对情感正例对进行对比学习,得到情感嵌入向量之后再进行情感分类处理,能够解决训练数据分布不均衡的问题,从而提高情感分类的准确率。
附图说明
图1是本公开实施例提供的基于文本的情感分类方法的第一流程图;
图2是图1中的步骤S300的流程图;
图3是图2中的步骤S340的流程图;
图4是本公开实施例提供的基于文本的情感分类方法的第二流程图;
图5是图1中的步骤S500的流程图;
图6是图5中的步骤S550的流程图;
图7是本公开实施例提供的基于文本的情感分类装置的模块结构框图;
图8是本公开实施例提供的计算机设备的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
首先,对本申请中涉及的若干名词进行解析:
人工智能(artificial intelligence,AI):是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
自然语言处理(natural language processing,NLP):NLP用计算机来处理、理解以及运用人类语言(如中文、英文等),NLP属于人工智能的一个分支,是计算机科学与语言学的交叉学科,又常被称为计算语言学。自然语言处理包括语法分析、语义分析、篇章理解等。自然语言处理常用于机器翻译、手写体和印刷体字符识别、语音识别及文语转换、信息检索、信息抽取与过滤、文本分类与聚类、舆情分析和观点挖掘等技术领域,它涉及与语言处理相关的数据挖掘、机器学习、知识获取、知识工程、人工智能研究和与语言计算相关的语言学研究等。
文本情感分析(Text sentiment analysis):又称意见挖掘、倾向性分析等。简单而言,是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。互联网(如博客和论坛以及社会服务网络如大众点评)上产生了大量的用户参与的、对于诸如人物、事件、产品等有价值的评论信息。这些评论信息表达了人们的各种情感色彩和情感倾向性,如喜、怒、哀、乐和批评、赞扬等。基于此,潜在的用户就可以通过浏览这些主观色彩的评论来了解大众舆论对于某一事件或产品的看法。
循环神经网络(Recurrent Neural Network,RNN)是一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网络(recursive neural network),其中双向循环神经网络(Bidirectional RNN,Bi-RNN)和长短期记忆网络(Long Short-Term Memory networks,LSTM)是常见的循环神经网络。循环神经网络具有记忆性、参数共享并且图灵完备(Turing completeness),因此在对序列的非线性特征进行学习时具有一定优势。循环神经网络在自然语言处理(NaturalLanguage Processing,NLP),例如语音识别、语言建模、机器翻译等领域有应用,也被用于各类时间序列预报。引入了卷积神经网络(Convolutional Neural Network,CNN)构筑的循环神经网络可以处理包含序列输入的计算机视觉问题。
BERT(Bidirectional Encoder Representations from Transformers)模型:是一个自编码语言模型,并且其设计了两个任务来预训练该模型。第一个任务是采用预训练语言模型(Mask Language Model,MaskLM)的方式来训练语言模型,就是在输入一句话的时候,随机地选一些要预测的词,然后用一个特殊的符号来代替它们,之后让模型根据所给的标签去学习这些地方该填的词。第二个任务在双向语言模型的基础上额外增加了一个句子级别的连续性预测任务,即预测输入BERT的两段文本是否为连续的文本,引入这个任务可以更好地让模型学到连续的文本片段之间的关系。
对比学习(Contrastive Learning)是自监督学习的一种,不需要依赖人工标注的类别标签信息,直接利用数据本身作为监督信息。对比学习是一种为深度学习模型描述相似和不同事物的任务的方法。利用对比学习方法,可以训练机器学习模型来区分相似和不同的图像。在图像领域的自监督学习分为两种类型:生成式自监督学习、判别式自监督学习。对比学习应用的是典型的判别式自监督学习。对比学习的核心要点是:通过自动构造相似实例和不相似实例,也就是正样本和负样本,学习将正样本和负样本在特征空间进行对比,使得相似的实例在特征空间中距离拉近,而不相似的实例在特征空间中的距离拉远,差异性变大,通过这样的学习过程得到的模型表征就可以去执行下游任务,在较小的标记数据集上进行微调,从而实现无监督的模型学习过程。对比学习的指导原则是:通过自动构造相似实例和不相似实例,通过学习得到一个学习模型,利用这个模型,使得相似的实例在投影空间中比较接近,而可不相似的实例在投影空间中距离比较远。
batch(批量):batch大小(即批量大小)是一个超参数,用于定义在更新内部模型参数之前要处理的样本数,也就是在模型的内部参数更新之前控制训练样本的数量。训练数据集可以分为一个或多个batch,其中,当所有训练样本用于创建一个batch时,学习算法称为批量梯度下降;当批量是一个样本的大小时,学习算法称为随机梯度下降;当批量大小超过一个样本且小于训练数据集的大小时,学习算法称为小批量梯度下降。batch大小是在更新模型之前处理的多个样本。
数据增强:数据增强主要用来防止过拟合,用于dataset(数据集)较小时对数据集进行优化,通过数据增强,可以增加训练的数据量,提高模型的泛化能力,增加噪声数据,提升模型的鲁棒性。数据增强可以分为两类,离线增强和在线增强;其中,离线增强是直接对数据集进行处理,数据的数目会变成增强因子x原数据集的数目,离线增强常常用于数据集很小时;在线增强,主要用于获得batch数据之后,对这个batch的数据进行增强,如旋转、平移、翻折等相应的变化,由于有些数据集不能接受线性级别的增长,在线增强常用于较大数据集,很多机器学习框架已经支持了在线增强方式,并且可以使用GPU优化计算。
多层感知器(MLP,Multilayer Perceptron)是一种前馈人工神经网络模型,其将输入的多个数据集映射到单一的输出的数据集上。
dropout:dropout即丢弃,是一种防止模型过拟合的技术,是指在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃,从而可以让模型更鲁棒,因为它不会太依赖某些局部的特征(因为局部特征有可能被丢弃)。
运行时刻(Runtime):是指一个程序在运行(cc或者在被执行)的状态。也就是说,当你打开一个程序使它在电脑上运行的时候,那个程序就是处于运行时刻。在一些编程语言中,把某些可以重用的程序或者实例打包或者重建成为“运行库"。这些实例可以在它们运行的时候被链接或者被任何程序调用。Runtime类封装了运行时的环境,每个Java应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接。一般不能实例化一个Runtime对象,应用程序也不能创建自己的Runtime类实例,但可以通过getRuntime方法获取当前Runtime运行时对象的引用。一旦得到了一个当前的Runtime对象的引用,就可以调用Runtime对象的方法去控制Java虚拟机的状态和行为。
嵌入(embedding):embedding是一种向量表征,是指用一个低维的向量表示一个物体,该物体可以是一个词,或是一个商品,或是一个电影等等;这个embedding向量的性质是能使距离相近的向量对应的物体有相近的含义,比如embedding(复仇者联盟)和embedding(钢铁侠)之间的距离就会很接近,但embedding(复仇者联盟)和embedding(乱世佳人)的距离就会远一些。embedding实质是一种映射,从语义空间到向量空间的映射,同时尽可能在向量空间保持原样本在语义空间的关系,如语义接近的两个词汇在向量空间中的位置也比较接近。embedding能够用低维向量对物体进行编码还能保留其含义,常应用于机器学习,在机器学习模型构建过程中,通过把物体编码为一个低维稠密向量再传给DNN,以提高效率。
词嵌入模型(word embedding model):能够将请求文本的内容转换成向量表示。
encoder:编码,就是将输入序列转化成一个固定长度的向量;解码(decoder),就是将之前生成的固定向量再转化成输出序列;其中,输入序列可以是文字、语音、图像、视频;输出序列可以是文字、图像。
jieba分词器:jieba分词器也叫结巴分词器,是一种开源分词器;中文分词是中文文本处理的一个基础步骤,也是中文人机自然语言交互的基础模块,在进行中文自然语言处理时,通常需要先进行分词,其中,常用jieba分词器进行分词;jieba分词算法使用了基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能生成词情况所构成的有向无环图(DAG),再采用了动态规划查找最大概率路径,找出基于词频的最大切分组合,对于未登录词,采用了基于汉字成词能力的HMM模型,使用了Viterbi算法。jieba分词支持三种分词模式:第一种是精确模式,该精确模式试图将句子最精确地切开,适合文本分析:第二种是全模式,该全模式是把句子中所有的可以成词的词语都扫描出来,速度非常快,但是不能解决歧义;第三种是搜索引擎模式,该搜索引擎模式是在精确模式的基础上,对长词再词切分,提高召回率,适合用于搜索引擎分词。
Analyzer分词器:Analyzer分词器是专门处理分词的组件,一般包括三部分:Character Filters、Tokenizer(按照规则切分为单词)、Token Filters;其中,CharacterFilters主要用于处理原始文本,例如去除html、特殊字符;Tokenizer用于按照规则切分为单词;Token Filters用于将切分的单词加工,包括小写、删除stopwords(停用词),增加同义词等。
TextCNN模型:将卷积神经网络应用于文本分类任务。CNN核心点在于可以捕捉局部相关性,具体到文本分类任务中可以利用CNN来提取句子中类似n-gram的关键信息。TextCNN利用多个不同size的卷积核提取句子中的关键信息(类似于多窗口的N-gram模型),使用Max-Pooling选择出最具影响力的高维分类特征,再使用带有Dropout的全连接层提取文本深度特征,最后接softmax进行分类。
Softmax分类器:为逻辑回归分类器面对多个分类的一般化归纳,输出的是属于不同类别的概率值。
反向传播:反向传播的大致原理为,将训练集数据输入到神经网络的输入层,经过神经网络的隐藏层,最后达到神经网络的输出层并输出结果;由于神经网络的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层;在反向传播的过程中,根据误差调整各种参数的值;不断迭代上述过程,直至收敛。
NCE损失(Noise-Constrastive Estimation Loss):假设X是从真实的数据(或语料库)中抽取的样本,其服从一个相对可参考的概率密度函数P(d),噪音样本Y服从概率密度函数为P(n),噪音对比估计(NCE)就是通过学习一个分类器把这两类样本区别开来,并能从模型中学到数据的属性。
梯度下降(Gradient Descent):是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。反过来,如果需要求解损失函数的最大值,这时就需要用梯度上升法来迭代。在机器学习中,基于基本的梯度下降法发展了两种梯度下降方法,分别为随机梯度下降法和批量梯度下降法。
最大池化(max-pooling):即取局部接受域中值最大的点。常用的池化方法有最大池化(max-pooling)和均值池化(mean-pooling)。根据相关理论,特征提取的误差主要来自两个方面,一方面是邻域大小受限造成的估计值方差增大;另一方面是卷积层参数误差造成估计均值的偏移。一般来说,mean-pooling能减小第一种误差,更多的保留图像的背景信息,max-pooling能减小第二种误差,更多的保留纹理信息。与mean-pooling近似,在局部意义上,则服从max-pooling的准则。max-pooling卷积核的大小一般是2×2,非常大的输入量可能需要4x4。但是,选择较大的形状会显着降低信号的尺寸,并可能导致信息过度丢失。通常,不重叠的池化窗口表现最好。
随着计算机技术的发展,许多业务需要使用计算机技术进行自然语言处理。其中,情感分析是一种常见的自然语言处理方法的应用。目前,通常利用循环神经网络RNN或者BERT模型来进行文本情感分类,由于这两种模型在训练过程的不同种类的训练数据分布不均衡,从而导致情感分类的准确率低。
基于此,本公开实施例提供一种基于文本的情感分类方法和装置、计算机设备、存储介质,能够提高文本情感分类的准确率。
本公开实施例提供基于文本的情感分类方法和装置、计算机设备、存储介质,具体通过如下实施例进行说明,首先描述本公开实施例中的基于文本的情感分类方法。
本公开实施例提供的基于文本的情感分类方法,涉及人工智能领域。本公开实施例提供的基于文本的情感分类方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机或者智能手表等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现基于文本的情感分类方法的应用等,但并不局限于以上形式。
本公开实施例可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
参照图1,根据本公开实施例第一方面实施例的基于文本的情感分类方法,包括但不限于包括步骤S100至步骤S500。
步骤S100,获取待分类的原始文本数据;
步骤S200,对原始文本数据进行分词处理,得到分词文本数据;
步骤S300,对分词文本数据进行数据增强处理,得到分词文本数据对应的情感正例对;
步骤S400,通过预先训练的对比学习模型对情感正例对进行对比学习,得到情感嵌入向量;
步骤S500,根据情感嵌入向量进行情感分类处理,得到对应情感特征的目标情感类别。
在一些实施例的步骤S100中,可以根据实际的业务需求获取待分类的原始文本数据。例如,在电商领域,一般将用户在电商平台的评论信息作为是否消费的参考标准,此时就需要对用户的评论信息进行情感分类以及分析,通过挖掘用户情感为产品选购、平台运营的优化提供实际的数据支撑。具体地,可以通过爬取多个电商平台的用户评论数据(例如购买手机的评论数据)得到电商领域的原始文本数据,其中,采集到的原始文本数据可以为:“运行非常流畅,拍照效果一流,这款刚出来的紫色非常喜欢,外形很漂亮”、“快速充电、一级棒,质量很好,小巧方便,运行很快”、“外观简洁大方,方便收纳”、“物流很强大,当天订货第二天就能收到手机”和“刚开始拿在手上比较轻,习惯了觉得很轻巧,大小刚刚好”等。
在一些实施例的步骤S200中,在对文本数据进行处理的时候,为了判断句子中是否存在情感词典中相应的词语,需要把句子准确切割为一个个词语,即句子的自动分词,在实际应用中,可以利用Analyzer分词器和jieba分词器等分词工具给原始文本数据进行分词。具体地,利用jieba分词器对原始文本数据进行分词的原理为:首先,加载预先存储的字典,生成trie树。接着,给定待分词的句子(原始文本数据中的每个句子),使用正则表达式获取连续的中文字符和英文字符,切分成短语列表,对每个短语使用DAG(查字典)和动态规划,得到最大概率路径,对DAG中那些没有在字典中查到的字,组合成一个新的片段短语,使用HMM模型(隐马尔科夫模型)进行分词,即识别字典外的新词。例如,对“运行非常流畅,拍照效果一流,这款刚出来的紫色非常喜欢,外形很漂亮”进行分词而得到的分词文本数据,可以为“运行/非常/流畅,拍照/效果/一流,这款/刚出来/的/紫色/非常喜欢,外形/很漂亮”。
在对原始文本数据进行分词,得到分词文本数据之后,可以载入预先设置好的情感特征词典,一般来说,情感特征词典是文本挖掘最核心的部分,情感特征词典包括多个词语,以及词语所对应的情感特征,其中情感特征用于表征情感类别,在实际应用中,通常将情感类别划分为积极、消极和中性,例如在电商领域中,用于表征积极的情感特征有:喜欢、很好、方便等,能够提高后续情感分类的准确度。
在一些实施例的步骤S300中,对分词文本数据进行数据增强处理,得到分词文本数据对应的情感正例对,其中情感正例对指的与分词文本数据的情感特征相同的数据,但是情感正例对与分词文本数据所对应的文字信息并不相同,本申请实施例通过构建情感正例对来扩大该情感特征下用于模型训练的数据量,从而使训练结果更为准确。情感负例对指的是与分词文本数据的情感特征不同的数据,此外,数据增强可以简单理解为由少量数据生成大量数据的过程,一般比较成功的神经网络拥有大量参数,使这些参数正确工作需要用大量的数据进行训练,但实际情况中数据并没有那么多,因此需要做数据增强。在实际应用中,可通过以下两种方式对分词文本数据进行数据增强处理。第一种方式:主要是对原始文本的特征表示进行处理,比如在表示层注入随机噪音等方法,来获得增强后的文本表示,增强后的表示可以再进行解码获得增强文本或者直接用于训练模型。第二种方式:主要是通过对原始文本中的词进行同义词替换或者删除等操作来进行增强,其中大部分研究都通过引入各种外部资源来提升增强效果。通过对分词文本数据进行增强处理,能够增加训练的数据量,提高模型的泛化能力、增加噪声数据,提升模型的鲁棒性,并且能够解决数据不足或数据不均衡问题。
在一些实施例的步骤S400中,通过预先训练的对比学习模型对情感正例对进行对比学习,得到情感嵌入向量。具体地,将情感正例对输入至对比学习模型中,由对比学习模型计算情感正例对的相似度,根据情感正例对的相似度以及情感负例对的相似度,来计算对比学习模型的损失函数,得到一个损失值,接着使用梯度下降的方法,将损失值反向传播给对比学习模型中用于构建词向量的词嵌入矩阵,以修改词嵌入矩阵中的矩阵参数,从而得到情感嵌入向量。其中,情感嵌入向量由对比学习模型获得,之后通过情感嵌入向量进行情感分类。但是,使用通常的模型对情感进行分类,难以区分中性与积极、中性与消极的区别,主要原因是因为大部分训练数据都是中性的,积极和消极的数据偏少。针对以上问题,采用对比学习模型对情感正例对以及情感负例对进行对比学习的方式,能够解决数据分布不均衡的问题,也能解决模型坍塌的问题,其中模型坍塌指的是模型的多样性低。
在一些实施例的步骤S500中,根据情感嵌入向量进行情感分类处理,得到对应情感特征的目标情感类别,在实际应用中,可以将情感嵌入向量输入至TextCNN模型中,通过获取TextCNN模型的输出结果来得到对应情感特征的目标情感类别。
在一些实施例中,如图2所示,步骤S300具体包括但不限于步骤S310至步骤S340。
步骤S310,对分词文本数据进行复制,得到复制文本数据;
步骤S320,对分词文本数据进行第一数据增强处理,得到第一编码向量;
步骤S330,对复制文本数据进行第二数据增强处理,得到第二编码向量;
步骤S340,根据第一编码向量和第二编码向量,得到情感正例对。
在一些实施例的步骤S310中,假设某一分词文本数据为x,对x进行复制,得到复制文本数据x’,其中,分词文本数据x和复制文本数据x’,分词文本数据x的情感特征和复制文本数据x’的情感特征相同。
在一些实施例的步骤S320和步骤S330中,对比学习模型包括嵌入层,具体地,将分词文本数据x输入至嵌入层,通过嵌入层的dropout编码器对分词文本数据进行数据增强处理,以生成第一编码向量h(x1)。将复制文本数据x’输入至嵌入层,通过嵌入层的dropout编码器对复制文本数据进行数据增强处理,得到第二编码向量h(x2),需要说明的是,第一数据增强处理和第二数据增强处理都表示对数据进行增强处理的操作,“第一”和“第二”仅仅只是用于区分,分词文本数据和复制文本数据分别进行数据增强处理的操作,并不用于限制增强处理的顺序。
需要说明的是,在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预测准确率较高,但是在测试数据上损失函数比较大,预测准确率较低。为了避免过拟合,可以对训练数据也即分词文本数据进行增强,通过添加dropout编码器,可以有效的缓解过拟合的发生,在一定程度上达到正则化的效果。dropout编码器可以作为训练深度神经网络的一种trick供选择。在每个训练批次中,通过忽略一半的特征检测器(让一半的隐层节点值为0),可以明显地减少过拟合现象,这种方式可以减少特征检测器(隐层节点)间的相互作用,检测器相互作用是指某些检测器依赖其他检测器才能发挥作用。简单地说,也即在前向传播的时候,让某个神经元的激活值以一定的概率p停止工作,由于它太会依赖某些局部的特征,所以能使模型泛化行更强。
在实际应用中,可采用SimCSE(Simple Contrastive Learning of SentenceEmbeddings)模型对分词文本数据进行数据增强处理。其中,SimCSE利用自监督学习来提升句子的表示能力,由于SimCSE没有标签数据,所以SimCSE把每个句子本身视为相似句子。换句话说,SimCSE本质上就是以(自己,自己)作为正例对,(自己,别人)作为负例来训练对比学习模型,但是这样会导致泛化效果大打折扣,在本申请实施例中,可以在SimCSE的基础上,使用一些数据扩增手段,即直接利用dropout编码器当做数据扩增。具体地说,就是将每一分词文本数据x经过带dropout编码器的encoder进行数据增强处理,得到第一编码向量h(x1),然后在将与分词文本数据x相同的复制文本数据x’再重新经过带dropout编码器的encoder进行数据增强处理(这时候是另一个随机的dropout),得到第二编码向量h(x2)。这样做的目的是让正例情感对的两个样本有所差异,以此达到利用dropout实现数据扩增的效果。此外,在进行对比学习的阶段,还可以采用batch内的对比学习方法,在batch内部进行数据增强处理,让情感正例对的两个样本(分词文本数据和复制文本数据)有所差异。
在一些实施例的步骤S340中,根据第一编码向量h(x1)和第二编码向量h(x2),得到情感正例对z(x1)和z(x2)。
在一些实施例中,如图3所示,步骤S340具体包括但不限于步骤S341至步骤S343。
步骤S341,通过第一多层感知机对第一编码向量进行映射处理,得到第一映射数据;
步骤S342,通过第二多层感知机对第二编码向量进行映射处理,得到第二映射数据;
步骤S343,根据第一映射数据和第二映射数据构建情感正例对。
在一些实施例的步骤S341和步骤S342中,分别对第一编码向量h(x1)和第二编码向量h(x2)进行映射处理,具体地,通过使用对比学习模型中固定的第一多层感知机对第一编码向量进行映射处理,得到第一映射数据z(x1),通过使用对比学习模型中固定的第二多层感知机对第二编码向量进行映射处理,得到第二映射数据z(x2)。
在一些实施例的步骤S343中,将第一映射数据z(x1)和第二映射数据z(x2),作为情感正例对。
此外,在一些实施例中,还需要构建情感负例对,其具体的构建方式可参考步骤S310至步骤S340,以及步骤S341至步骤S343中构建情感正例对的方式。需要说明的是,情感负例对于情感正例对所不同的是,情感负例对需要选取与分词文本数据x的情感特征不一致的数据,作为文本源数据xother。接着将分词文本数据x输入至嵌入层,通过嵌入层的dropout编码器对分词文本数据进行数据增强处理,以生成第三编码向量h(x3)。将文本源数据xother输入至嵌入层,通过嵌入层的dropout编码器对文本源数据xother进行数据增强处理,得到第四编码向量h(x4)。接着,通过第一多层感知机对三编码向量h(x3)进行映射处理,得到第三映射数据z(x3),通过第二多层感知机对第四编码向量h(x4)进行映射处理,得到第四映射数据z(x4),其中第三映射数据z(x3)和第四映射数据z(x4)为情感负例对数据。
在一些实施例中,如图4所示,在步骤S400之前,本申请实施例提到的基于文本的情感分类方法还包括:构建对比学习模型,具体包括但不限于步骤S410至步骤S440。
步骤S410,获取训练样本;
步骤S420,将样本正例对和样本负例对输入到原始学习模型;
步骤S430,根据样本正例对和样本负例对,对原始学习模型的损失函数进行计算,得到损失值;
步骤S440,根据损失值更新原始学习模型,得到对比学习模型。
在一些实施例的步骤S410中,获取用于构建对比学习模型的训练样本,其中训练样本包括样本正例对和样本负例对,其中,样本正例对和样本负例对与上述情感正例对和情感负例对的具体构建过程相同,此处不再一一赘述。
在一些实施例的步骤S430和步骤S440中,根据样本正例对和样本负例对,对原始学习模型的损失函数进行计算,得到损失值,具体地,在本申请实施例中可采用NCE损失函数,具体的损失函数为公式(1)所示,需要说明的是,损失函数的分子为样本正例对所对应的第一相似度,损失函数的分母是第一相似度以及所有样本负例对的第二相似度,其中,第一相似度和第二相似度可通过公式(2)至公式(4)计算得到。
Figure BDA0003465396890000111
其中,f(x)T是f(x)的转置,f(x)是原样本(分词文本数据),f(x+)样本正例对,f(xj)是样本负例对,分母项包括一个样本正例对,和N-1个样本负例对。
在一些实施例中,步骤S440包括但不限于步骤:将损失值作为反向传播量,调整原始学习模型的模型参数,以更新原始学习模型,得到对比学习模型。在本申请实施例中,可以根据损失函数对输入向量进行偏导计算,将得到的偏导数值作为反向传播量以调整原始学习模型的模型参数。其中,在计算原始学习模型对应的损失值之后,还需要使损失值最小化,以达到更优的训练效果。具体地,通过最大化第一相似度和最小化第二相似度,能够使损失函数的损失值达到最小,通过计算NCE损失函数,并使用梯度下降的方法更新原始学习模型的模型参数,从而得到对比学习模型。
具体地,在构建样本正例对和样本负例对之后,需要最大化样本正例对之间的相似度,换句话说样本正例对之间的相似度如果相似即为1,不相似即为0,对比学习训练的目的是使样本正例对之间的相似度尽可能靠近1。此外,还需要最小化样本负例对之间的相似度,在对比学习模型的训练过程中,需要使样本负例对之间的相似度尽可能靠近0。通过调整第一相似度和第二相似度,最小化损失函数的损失值,根据该损失值,利用梯度下降的方法进行反向传播,即沿着梯度不断地更新原始学习模型中的模型参数,最后达到一定的收敛条件后得到优化后的模型参数,以更新原始学习模型,得到对比学习模型。
需要说明的是,样本正例对的第一相似度与样本负例对的第二相似度需要满足公式(2)的条件:
Score(f(x),f(x+))>>Score(f(x),f(x-)) 公式(2)
其中,样本正例对的相似度需要远大于样本负例对的相似度,里x+指的是与分词文本数据x相似的数据,即样本正例对数据;这里x-指的是与x不相似的数据,即样本负例对数据,f(x+)是样本正例样本,f(x-)是样本负例样本。
进一步地,用于评价两个特征之间的相似度的度量函数Score如公式(3)和公式(4)所示,其中,Score为使用点积作为分数函数的函数。
Score(f(x),f(x+))=f(x)Tf(x+) 公式(3)
Score(f(x),f(x-))=f(x)Tf(x-) 公式(4)
在一些实施例中,如图5所示,步骤S500具体包括但不限于步骤S510至步骤S550。
步骤S510,获取预设的神经网络模型;
步骤S520,通过卷积层对情感嵌入向量进行特征提取处理,得到多个卷积特征向量;
步骤S530,通过池化层对每一卷积特征向量进行最大池化处理,得到多个池化特征向量;
步骤S540,通过全连接层对多个池化特征向量进行拼接处理,得到拼接特征向量;
步骤S550,通过分类器对拼接特征向量进行分类处理,得到对应情感特征的目标情感类别。
在一些实施例的步骤S510中,获取预设的神经网络模型,在本申请实施例中,可采用TextCNN模型,其中TextCNN模型包括卷积层、池化层、全连接层和分类器。
在一些实施例的步骤S520中,TextCNN模型的卷积层包括多个卷积块,通过多个卷积块对情感嵌入向量进行特征提取处理,得到多个卷积特征向量。
在一些实施例的步骤S530中,通过TextCNN模型的池化层对每一个卷积特征向量进行最大池化处理,得到多个池化特征向量。需要说明的是,不同尺寸的卷积核得到的特征(feature map)大小也是不一样的,因此对每个feature map使用池化函数,使它们的维度相同。最常用的就是最大池化,这样每一个卷积核得到特征就是一个值,对所有卷积核使用最大池化,得到多个池化特性向量。
在一些实施例的步骤S540中,通过TextCNN模型的全连接层对多个池化特征向量进行拼接处理,得到拼接特征向量。具体地,将步骤S530得到的多个池化特征向量级联起来,可以得到最终的特征向量,即拼接特征向量,将拼接特征向量再输入分类器进行进一步的分类。在此过程中,可以使用dropout防止过拟合。
在一些实施例的步骤S550中,通过TextCNN模型的分类器,例如softmax分类器对拼接特征向量进行分类处理,得到对应情感特征的目标情感类别。
在一些实施例中,如图6所示,步骤S550具体包括但不限于步骤S551和步骤S552。
步骤S551,通过分类器对拼接特征向量进行分类处理,得到多个候选情感类别以及每一候选情感类别对应的情感概率值;
步骤S552,获取情感概率值最高的候选情感类别,作为目标情感类别。
在一些实施例的步骤S551和步骤S552中,通过softmax分类器对拼接特征向量进行分类处理,得到多个候选情感类别以及每一候选情感类别对应的情感概率值,具体地,softmax分类器得到的候选情感类别,y=0时表示消极、y=1时表示中性,y=2时表示积极,以及不同情感类别对应的情感概率值,获取情感概率值最高的候选情感类别,作为目标情感类别,由此完成了基于文本的情感分类过程。
本公开实施例提出的基于文本的情感分类方法,通过获取待分类的原始文本数据,对原始文本数据进行分词处理,得到多个分词文本数据,其中分词文本数据包括用于表征情感类别的情感特征;对分词文本数据进行数据增强处理,得到分词文本数据对应的情感正例对,其中每一情感正例对同样包括情感特征;通过预先训练的对比学习模型对情感正例对进行对比学习,得到包含情感特征的情感嵌入向量;之后根据情感嵌入向量进行情感分类处理,得到对应情感特征的目标情感类别。本申请实施例通过结合对比学习模型对情感正例对进行对比学习,得到情感嵌入向量之后再进行情感分类处理,能够解决训练数据分布不均衡的问题,并且能够避免模型坍塌问题,从而提高情感分类的准确率。
本公开实施例还提供一种基于文本的情感分类装置,如图7所示,可以实现上述基于文本的情感分类方法,该基于文本的情感分类装置包括:获取模块610、分词模块620、增强模块630、学习模块640和分类模块650。具体地,获取模块610用于获取待分类的原始文本数据;分词模块620用于对原始文本数据进行分词处理,得到分词文本数据;其中,分词文本数据包括用于表征情感类别的情感特征;增强模块630用于对分词文本数据进行数据增强处理,得到分词文本数据对应的情感正例对;其中,每一情感正例对包括情感特征;学习模块640用于通过预先训练的对比学习模型对情感正例对进行对比学习,得到情感嵌入向量;分类模块650用于根据情感嵌入向量进行情感分类处理,得到对应情感特征的目标情感类别。本申请实施例通过结合对比学习模型对情感正例对进行对比学习,得到情感嵌入向量之后再进行情感分类处理,能够解决训练数据分布不均衡的问题,并且能够避免模型坍塌问题,从而提高情感分类的准确率。
本公开实施例的基于文本的情感分类装置用于执行上述实施例中的基于文本的情感分类方法,其具体处理过程与上述实施例中的基于文本的情感分类方法相同,此处不再一一赘述。
本公开实施例还提供了一种计算机设备,包括:
至少一个处理器,以及,
与至少一个处理器通信连接的存储器;其中,
存储器存储有指令,指令被至少一个处理器执行,以使至少一个处理器执行指令时实现如本申请第一方面实施例中任一项的方法。
下面结合图8对计算机设备的硬件结构进行详细说明。该计算机设备包括:处理器710、存储器720、输入/输出接口730、通信接口740和总线750。
处理器710,可以采用通用的中央处理器(Central Processin Unit,CPU)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本公开实施例所提供的技术方案;
存储器720,可以采用只读存储器(Read Only Memory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(Random Access Memory,RAM)等形式实现。存储器720可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器720中,并由处理器710来调用执行本公开实施例的基于文本的情感分类方法;
输入/输出接口730,用于实现信息输入及输出;
通信接口740,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;和
总线750,在设备的各个组件(例如处理器710、存储器720、输入/输出接口730和通信接口740)之间传输信息;
其中处理器710、存储器720、输入/输出接口730和通信接口740通过总线750实现彼此之间在设备内部的通信连接。
本公开实施例还提供一种存储介质,该存储介质是计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使计算机执行本公开实施例的基于文本的情感分类方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本公开实施例描述的实施例是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图1至图6中示出的技术方案并不构成对本公开实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本公开实施例的优选实施例,并非因此局限本公开实施例的权利范围。本领域技术人员不脱离本公开实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本公开实施例的权利范围之内。

Claims (10)

1.一种基于文本的情感分类方法,其特征在于,包括:
获取待分类的原始文本数据;
对所述原始文本数据进行分词处理,得到分词文本数据;其中,所述分词文本数据包括用于表征情感类别的情感特征;
对所述分词文本数据进行数据增强处理,得到所述分词文本数据对应的情感正例对;其中,每一所述情感正例对包括所述情感特征;
通过预先训练的对比学习模型对所述情感正例对进行对比学习,得到情感嵌入向量;
根据所述情感嵌入向量进行情感分类处理,得到对应所述情感特征的目标情感类别。
2.根据权利要求1所述的方法,其特征在于,所述对所述分词文本数据进行数据增强处理,得到所述分词文本数据对应的情感正例对,包括:
对所述分词文本数据进行复制,得到复制文本数据;
对所述分词文本数据进行第一数据增强处理,得到第一编码向量;
对所述复制文本数据进行第二数据增强处理,得到第二编码向量;
根据所述第一编码向量和所述第二编码向量,得到所述情感正例对。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一编码向量和所述第二编码向量,得到所述情感正例对,包括:
通过第一多层感知机对所述第一编码向量进行映射处理,得到第一映射数据;
通过第二多层感知机对所述第二编码向量进行映射处理,得到第二映射数据;
根据所述第一映射数据和所述第二映射数据构建所述情感正例对。
4.根据权利要求1所述的方法,其特征在于,在所述通过预先训练的对比学习模型对所述情感正例对进行对比学习,得到情感嵌入向量之前,所述方法还包括:构建所述对比学习模型,具体包括:
获取训练样本;所述训练样本包括样本正例对和样本负例对;
将所述样本正例对和所述样本负例对输入到原始学习模型;
根据所述样本正例对和所述样本负例对,对所述原始学习模型的损失函数进行计算,得到损失值;
根据所述损失值更新所述原始学习模型,得到所述对比学习模型。
5.根据权利要求4所述的方法,其特征在于,所述根据所述损失值更新所述原始学习模型,得到所述对比学习模型,包括:
将所述损失值作为反向传播量,调整所述原始学习模型的模型参数,以更新所述原始学习模型,得到所述对比学习模型。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述根据所述情感嵌入向量进行情感分类处理,得到对应所述情感特征的目标情感类别,包括:
获取预设的神经网络模型;其中,所述神经网络模型包括卷积层、池化层、全连接层和分类器;
通过所述卷积层对所述情感嵌入向量进行特征提取处理,得到多个卷积特征向量;
通过所述池化层对每一所述卷积特征向量进行最大池化处理,得到多个池化特征向量;
通过所述全连接层对多个所述池化特征向量进行拼接处理,得到拼接特征向量;
通过所述分类器对所述拼接特征向量进行分类处理,得到对应所述情感特征的目标情感类别。
7.根据权利要求6所述的方法,其特征在于,所述通过所述分类器对所述拼接特征向量进行分类处理,得到对应所述情感特征的目标情感类别,包括:
通过所述分类器对所述拼接特征向量进行分类处理,得到多个候选情感类别以及每一所述候选情感类别对应的情感概率值;
获取情感概率值最高的候选情感类别,作为所述目标情感类别。
8.一种基于文本的情感分类装置,其特征在于,包括:
获取模块:用于获取待分类的原始文本数据;
分词模块:用于对所述原始文本数据进行分词处理,得到分词文本数据;其中,所述分词文本数据包括用于表征情感类别的情感特征;
增强模块:用于对所述分词文本数据进行数据增强处理,得到所述分词文本数据对应的情感正例对;其中,每一所述情感正例对包括所述情感特征;
学习模块:用于通过预先训练的对比学习模型对所述情感正例对进行对比学习,得到情感嵌入向量;
分类模块:用于根据所述情感嵌入向量进行情感分类处理,得到对应所述情感特征的目标情感类别。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,其中,所述存储器中存储有程序,所述程序被所述处理器执行时所述处理器用于执行:
如权利要求1至7中任一项所述的方法。
10.一种存储介质,所述存储介质为计算机可读存储介质,其特征在于,所述计算机可读存储有计算机程序,在所述计算机程序被计算机执行时,所述计算机用于执行:
如权利要求1至7中任一项所述的方法。
CN202210028278.4A 2022-01-11 2022-01-11 基于文本的情感分类方法和装置、计算机设备、存储介质 Pending CN114358201A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210028278.4A CN114358201A (zh) 2022-01-11 2022-01-11 基于文本的情感分类方法和装置、计算机设备、存储介质
PCT/CN2022/090673 WO2023134083A1 (zh) 2022-01-11 2022-04-29 基于文本的情感分类方法和装置、计算机设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210028278.4A CN114358201A (zh) 2022-01-11 2022-01-11 基于文本的情感分类方法和装置、计算机设备、存储介质

Publications (1)

Publication Number Publication Date
CN114358201A true CN114358201A (zh) 2022-04-15

Family

ID=81108993

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210028278.4A Pending CN114358201A (zh) 2022-01-11 2022-01-11 基于文本的情感分类方法和装置、计算机设备、存储介质

Country Status (2)

Country Link
CN (1) CN114358201A (zh)
WO (1) WO2023134083A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115544260A (zh) * 2022-12-05 2022-12-30 湖南工商大学 用于文本情感分析的对比优化编解码模型及方法
WO2023134083A1 (zh) * 2022-01-11 2023-07-20 平安科技(深圳)有限公司 基于文本的情感分类方法和装置、计算机设备、存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116756326B (zh) * 2023-08-18 2023-11-24 杭州光云科技股份有限公司 情感和非情感文本特征分析判断方法、装置及电子设备
CN117132004B (zh) * 2023-10-27 2024-02-09 四川省建筑设计研究院有限公司 基于神经网络的公共场所人流密度预测方法、系统及设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10789430B2 (en) * 2018-11-19 2020-09-29 Genesys Telecommunications Laboratories, Inc. Method and system for sentiment analysis
CN111339306B (zh) * 2018-12-18 2023-05-12 腾讯科技(深圳)有限公司 分类模型训练方法、分类方法及装置、设备和介质
CN111339305B (zh) * 2020-03-20 2023-04-14 北京中科模识科技有限公司 文本分类方法、装置、电子设备及存储介质
CN111858945B (zh) * 2020-08-05 2024-04-23 上海哈蜂信息科技有限公司 基于深度学习的评论文本方面级情感分类方法及系统
CN113343712A (zh) * 2021-06-29 2021-09-03 安徽大学 一种基于异质图的社交文本情感倾向分析方法及系统
CN113792818B (zh) * 2021-10-18 2023-03-10 平安科技(深圳)有限公司 意图分类方法、装置、电子设备及计算机可读存储介质
CN114358201A (zh) * 2022-01-11 2022-04-15 平安科技(深圳)有限公司 基于文本的情感分类方法和装置、计算机设备、存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023134083A1 (zh) * 2022-01-11 2023-07-20 平安科技(深圳)有限公司 基于文本的情感分类方法和装置、计算机设备、存储介质
CN115544260A (zh) * 2022-12-05 2022-12-30 湖南工商大学 用于文本情感分析的对比优化编解码模型及方法

Also Published As

Publication number Publication date
WO2023134083A1 (zh) 2023-07-20

Similar Documents

Publication Publication Date Title
CN113792818B (zh) 意图分类方法、装置、电子设备及计算机可读存储介质
US20230100376A1 (en) Text sentence processing method and apparatus, computer device, and storage medium
US20220050967A1 (en) Extracting definitions from documents utilizing definition-labeling-dependent machine learning background
CN109376222B (zh) 问答匹配度计算方法、问答自动匹配方法及装置
CN110688854B (zh) 命名实体识别方法、装置及计算机可读存储介质
CN109214006B (zh) 图像增强的层次化语义表示的自然语言推理方法
CN114358201A (zh) 基于文本的情感分类方法和装置、计算机设备、存储介质
CN113127624B (zh) 问答模型的训练方法及装置
CN111858944A (zh) 一种基于注意力机制的实体方面级情感分析方法
CN113392209B (zh) 一种基于人工智能的文本聚类方法、相关设备及存储介质
CN113887215A (zh) 文本相似度计算方法、装置、电子设备及存储介质
CN114358007A (zh) 多标签识别方法、装置、电子设备及存储介质
KR102379660B1 (ko) 딥러닝 기반 의미역 분석을 활용하는 방법
CN111581392B (zh) 一种基于语句通顺度的自动作文评分计算方法
CN116661805B (zh) 代码表示的生成方法和装置、存储介质及电子设备
CN111145914B (zh) 一种确定肺癌临床病种库文本实体的方法及装置
CN114519356A (zh) 目标词语的检测方法、装置、电子设备及存储介质
Bansal Advanced Natural Language Processing with TensorFlow 2: Build effective real-world NLP applications using NER, RNNs, seq2seq models, Transformers, and more
CN116258137A (zh) 文本纠错方法、装置、设备和存储介质
CN114358020A (zh) 疾病部位识别方法、装置、电子设备及存储介质
CN114490949A (zh) 基于bm25算法的文档检索方法、装置、设备及介质
CN117076608A (zh) 一种基于文本动态跨度的整合外部事件知识的脚本事件预测方法及装置
CN110852066B (zh) 一种基于对抗训练机制的多语言实体关系抽取方法及系统
CN116414988A (zh) 基于依赖关系增强的图卷积方面级情感分类方法及系统
CN114722774B (zh) 数据压缩方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination