CN114781392A - 一种基于bert改进模型的文本情感分析方法 - Google Patents
一种基于bert改进模型的文本情感分析方法 Download PDFInfo
- Publication number
- CN114781392A CN114781392A CN202210354654.9A CN202210354654A CN114781392A CN 114781392 A CN114781392 A CN 114781392A CN 202210354654 A CN202210354654 A CN 202210354654A CN 114781392 A CN114781392 A CN 114781392A
- Authority
- CN
- China
- Prior art keywords
- model
- text
- bert
- emotion
- layer
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
- G06F18/2414—Smoothing the distance, e.g. radial basis function networks [RBFN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本发明为一种基于BERT改进模型的文本情感分析方法,首先获取文本数据集并进行数据预处理,在输入编码层对预处理后的文本数据进行分词并编码,获得文本的词向量表示,然后利用BERT改进模型对输入词向量进行语义特征提取,在BILSTM网络中对BERT改进模型输出的语义特征进行二次提取,BILSTM网络后接Attention层,突出文本的关键情感信息,由此构建了BERT‑Att‑BILSTM情感分类模型;本发明在输入编码层获得文本的词向量表示,利用BERT改进模型提取语义特征,使用BILSTM网络二次提取语义特征,并引入注意力机制,可以充分提取文本中的关键情感信息,有效的保证了情感分析结果的准确性。
Description
技术领域
本发明属于人工智能技术领域,涉及利用人工智能进行自然语言处理,特别涉及一种基于BERT改进模型的文本情感分析方法。
背景技术
微博平台作为网民表达情感的平台,积累了大量的文本,对网民发表的信息进行情感挖掘、分析,有助于了解网民的情感变化,为科学有效地做好社会舆论监督等提供有效的帮助。文本情感分析的基本任务是对于给定的文本进行极性的分类,简单的二元情感分类已经不能满足当前人们的需要,人们通过文本所表达的情感是丰富的,多分类情感分类任务在一定程度上对其进行了补充,划分得更加细致。
情感分析通过对文本的预处理、分析,挖掘文本的情感倾向,可以作为重要的手段辅助企业、政府等机构进行舆情分析。情感分析研究方法主要分为基于情感词典的分析方法,基于机器学习的方法,基于深度学习的方法。基于词典的方法主要依赖于情感词典的构建,其泛化能力较差且需要耗费大量人力去构建词典尤其难以适应当下变化迅速的网络文本。基于机器学习的方法依赖选取有效特征组合训练机器学习分类器来进行情感分类,但这种方法需要大量人工标注数据集来训练模型,耗费大量人力同时也存在泛化能力差的问题。基于深度学习的方法,可以挖掘深层的语义情感含义,应用广泛,但静态词向量加神经网络的分类模型无法解决中文一词多义与网络新词等带来的情感错分问题。
发明内容
为了克服上述现有技术的缺点,本发明的目的在于提供一种基于BERT改进模型的文本情感分析方法,解决了传统方法耗时费力、泛化能力差、无法应对中文一词多义与难以处理不断更新的网络文本等问题;具备能够快速有效地保证情感分析结果的准确性,可辅助团体机构进行舆情分析。
为了实现上述目的,本发明采用的技术方案是:
一种基于BERT改进模型的文本情感分析方法,包括如下步骤:
S1:获取文本数据集;
S2:数据预处理;
S3:对预处理后的文本进行分词并进行向量化处理得到输入tokens,利用BERT改进模型对输入tokens进行语义特征提取,,并在BILSTM网络中对语义特征进行二次提取,BILSTM网络后接Attention层,突出关键情感信息,构建BERT-Att-BILSTM情感分类模型;
S4:利用训练集对情感分类模型进行训练;
S5:利用训练好的情感分类模型进行文本情感分类。
在一个实施例中,所述文本数据集是公开数据集或通过采集文本数据自行构造数据集;当为自行构造的数据集时,由标注人员对句子中的每一条文本数据,标注其情感极性标签,情感极性包括积极、中性、消极三种情绪。
在一个实施例中,所述数据预处理是对文本数据去除与情感评论无关的符号与链接;将非简体中文词汇转换为简体中文词汇,并将emoji表情转化为文字。
在一个实施例中,所述情感分类模型包括:
输入编码层:对预处理的文本数据,按照双字节编码方式对单个汉字进行编码得到词向量,将得到的输入tokens作为BERT层的输入;
BERT层:基于BERT改进模型,对输入的词向量进行第一次语义特征提取,输出带有权重的特征向量集合,所述BERT改进模型为RoBERTa预训练模型;
BILSTM层:基于BILSTM网络,将BERT层输出的特征向量集合作为BILSTM网络的序列化输入,分别从两个方向进行二次语义特征提取,两个方向的LSTM之间不会共用状态,在同一时刻,将两个方向的LSTM的输出结果进行拼接得到考虑了上下文语义信息的特征向量,作为整个BILSTM层的输出;
注意力模块:对BILSTM层的输出的特征向量动态地分配不同的注意力权重,对情感分类最相关的特征赋予更多的权重,突出关键信息,使文本的情感特征更加明显,注意力模块输出的向量综合考虑了文本的上下文信息记忆重点情感特征;
全连接层:进行特征提纯;
分类输出层:基于Softmax分类函数,对提纯后的特征进行归一化处理输出最终的分类值得到情感极性的分类,对比真实标签与预测标签,利用焦点损失计算损失函数,进行反向传播,更新模型的权重参数,进行迭代运算,不断迭代,当损失函数的损失值在连续两个迭代过程中趋于稳定时,结束模型的训练过程,得到情感分类模型,情感分类模型的输出结果为每条数据集的标签,情感分类标签为-1、0、1,分别代表消极、中性、积极。
在一个实施例中,所述输入编码层采用与上下文有关的动态字节编码模型,使用全词mask策略,基于WordPiece将中文语句切分,在训练序列中,被分开的词随机被mask。
在一个实施例中,所述BERT改进模型采用深层的双向Transformer编码器构建,在结构上最大化利用上下文信息;所述Transformer编码器中包括字向量与位置编码、多头自注意力机制、残差连接与层标准化和前馈网络;
利用字向量与位置编码提供短文本中每个字的位置信息,使得字在短文本中的依赖关系和时序关系能够被识别;
利用多头自注意力机制,通过计算得出短文本中每个字与句中其余字的相互关系,使得每个字向量均含有该短文本中所有字向量的信息;
经过多头自注意力机制处理的字向量输入到所述前馈网络中,所述前馈网络有两层,第一层的激活函数是ReLU,第二层是一个线性激活函数。
在一个实施例中,所述BERT改进模型最后一层Transformer的所有输出结果为B∈Rs*e,即输出带有权重的特征向量集合,其中s为以字为单位的文本长度,e为特征向量的维度
在一个实施例中,所述RoBERTa预训练模型在每次输入时对句子动态地进行遮蔽,每次输入一个序列时均会生成新的掩码模式。
在一个实施例中,所述损失函数的计算公式为:FL(pt)=-α(1-pt)γlog(pt),(1-pt)γ表示调制因子,γ为聚焦参数,γ∈[0,5],γ取不同值对结果影响不同,当γ=0时,FL=CE,等于传统的交叉熵函数;当γ>0时,降低了简单样本的相对损失值,将注意力放在困难样本和分错的样本上;α为平衡权重,α∈[0,1],pt是类别概率,t为不同类别的数量,多分类就是softmax归一化后的结果。
在一个实施例中,对情感分类模型进行训练的过程中,采用多次调参的形式对情感分类模型的参数进行调整,在参数调整时使用Dropout策略与L2正则化来避免过拟合问题,情感分类模型的参数至少包括学习率、输入文本最大长度、训练轮数;并采用Warmup策略训练,在模型开始训练的时候使用小的学习率,之后在一定的训练步数之后使用预定的学习率,在接近模型收敛点的时候使用小的学习率;在训练时,使用Adam优化器修正学习率以及修正梯度;并利用准确率和F1值验证情感分类模型性能。
与现有技术相比,本发明通过BERT模型内部的Transformer编码器捕获文本的相关特征,将提取的特征向量作为BILSTM的输入,对BILSTM的输出的特征向量做Attention操作,即对输出的特征向量进行加权,突出关键情感信息,由此构建了BERT-Att-BILSTM情感分类模型,该模型充分挖掘上下文深层语义信息,突出重点信息,提高了情感分类的准确率。
附图说明
图1为本发明流程图。
图2为本发明实施例中输入向量示意图。
图3为BERT改进模型结构图。
图4为Transformer编码器单元结构图。
图5为BILSTM网络结构示意图。
具体实施方式
下面结合附图和实施例详细说明本发明的实施方式。
如图1所示,本发明为一种基于BERT改进模型的文本情感分析方法,包括如下步骤:
S1:获取文本数据集。
本发明中,文本数据集可以采用公开数据集,也可以通过采集文本数据自行构造数据集。当为自行构造的数据集时,对句子中的每一条文本数据,均由标注人员标注其情感极性标签,情感极性包括积极、中性、消极三种情绪。
S2:数据预处理。
对于文本数据集中的文本数据,通过预处理去除用户ID、转发标记、URL、@等与情感评论无关的符号与链接,并将繁体、英文等非简体中文词汇转换为简体中文词汇,同时还将emoji表情转化为文字。
在本发明的一个实施例中,文本数据为“他失败了一无所有”,原始的输入序列形式则为“CLS他失败了SEP一无所有SEP”。
S3:
对预处理后的文本进行分词并进行向量化处理得到输入tokens,利用BERT改进模型对输入tokens进行语义特征提取,,并在BILSTM网络中对语义特征进行二次提取,BILSTM网络后接Attention层,突出关键情感信息,构建BERT-Att-BILSTM情感分类模型;
在结构上,本发明提出的BERT-Att-BILSTM情感分类模型包括输入编码层、BERT层、BILSTM层、注意力模块、全连接层和分类输出层。其中:
在输入编码层,对预处理的文本数据按照双字节编码方式对单个汉字进行编码得到词向量,作为BERT层的输入嵌入。
具体地,本发明输入编码层采用与上下文有关的动态字节编码模型,不仅能够动态编码文本数据中某字在不同语境中的语义,而且可以编码各个分句间的逻辑关系。通过输入编码层获得BERT的输入词向量,该词向量由三部分组成分别为字向量、分段向量和位置向量,首先通过WordPiece将中文语句切分,得到各个单独的字,通过查询字向量表将文本中的每个字转换为一维向量得到字向量,分段向量在模型训练过程中自动学习,用于划分子句,并与字向量的语义信息相融合,由于出现在文本不同位置的词语所携带的语义信息存在差异(比如:“我爱你”和“你爱我”),因此BERT模型对不同位置的字分别附加一个不同的向量以作区分,该向量为位置向量。
本发明使用全词mask策略,在训练序列中,对被分开的字随机被mask。具体做法为:针对中文,保留85%的token不进行“全词mask策略”,对15%的token进行“全词mask策略”。mask策略为对选中的token以80%的概率替换为[MASK]标记,以10%的概率替换为词表中的一个随机的词,10%的概率保持原词不变。全词mask为一个完整的词的部分字被[MASK]标记,则同属该词的其他部分也会被[MASK]标记,即对组成同一个词的汉字全部进行mask。每句话的第一个token为[CLS],在各个分句的起始位置添加特殊的[SEP]字符,例如“他失败了,一无所有”,添加特殊token为“[CLS]他失败了[SEP]一无所有[SEP]”。随机替换部分子句,通过模型中内嵌的二分类子模型判断各个分句间是否存在逻辑关系;
BERT层基于BERT改进模型,对输入的词向量进行第一次语义特征提取,输出带有权重的特征向量集合。
参考图3,本发明中,BERT改进模型采用深层的双向Transformer编码器堆叠构建,以在结构上最大化利用上下文信息。
其中,Transformer编码器主要包括字向量与位置编码、多头自注意力机制、残差连接与层标准化和前馈网络。本发明利用字向量与位置编码提供短文本中每个字的位置信息,使得字在短文本中的依赖关系和时序关系能够被识别。本发明利用多头自注意力机制,通过计算得出短文本中每个字与句中其余字的相互关系,使得每个字向量均含有该短文本中所有字向量的信息。本发明利用层标准化,通过归一化神经网络中的隐藏层为标准正态分布加快模型训练速度,加速模型收敛。本发明利用残差连接,解决梯度消失和网络退化问题。本发明利用前馈网络,经过多头自注意力机制处理的字向量输入到前馈网络中,该前馈网络有两层,第一层的激活函数是ReLU,第二层是一个线性激活函数。
示例地,参考图4,本发明BERT改进模型可选择RoBERTa预训练模型,为了更加全面地利用输出信息,其最后一层Transformer的所有输出结果,即输出带有权重的特征向量集合B∈Rs*e均输入至下一层(即BILSTM层),其中s为以词为单位的文本长度,e为特征向量的维度。
BERT预训练模型只需要微调就可以应用于分类任务中,在做下游任务时直接更新预训练参数,不需要从0开始,变化往往比随机初始化的方式变化小得多,模型也能更快收敛。在BERT模型输出中,每一个输入进模型的词Wi都将有一个输出向量bi,bi向量在计算过程中加入了上下文其它词语的语义信息,因此对于不同语境下的同一词语,bi不一定相同,解决了中文的一词多义问题。
本发明选用RoBERTa预训练语言模型,并在RoBERTA后添加BiLSTM与注意力机制进行网络的优化。
RoBERTa预训练模型是一种经过严格优化的BERT预训练模型,RoBERTa预训练模型相较于BERT预训练模型的改进有如下几点:
1、训练时间和训练序列更长,扩大batch size和训练数据;
2、取消NSP(next predict loss)任务;
3、动态调整Mask机制。
RoBERTa预训练模型引入了更多的训练数据,除了BERT所使用的Book-Corpus和Wikipedia(16G),增加了160G的其他数据,预训练数据相比BERT增加了10倍,随之训练时间也更长,同时增大batch size的大小,提升优化速度和性能。
原始的BERT预训练中仅在预处理数据时对句子部分词进行遮蔽,在之后的训练中遮蔽词不会改变,将其称为静态遮蔽,即对数据进行执行一次随机mask,得到一个静态掩码。RoBERTa在每次输入时对句子动态地进行遮蔽,使用了动态mask,这样每次遇到同一个样本被遮蔽的词语都不一样,每次输入一个序列时都会生成新的掩码模式,可以学到更多的语义表示。比起输入句子对做任务,直接输入连续多个句子的序列只做遮蔽语言模型任务预训练能更好地建模句子对的关系。在大量数据不断输入的过程中,模型会逐渐适应不同的掩码策略,学习不同的语言表征。
BILSTM层基于BILSTM网络,即双向LSTM架构,其中一个LSTM的方向为输入序列的正序方向,而另一个为输入序列的逆序方向。参考图5,将BERT层输出的特征向量集合作为BILSTM网络的序列化输入,分别从两个方向进行二次语义特征提取,两个方向的LSTM之间不会共用状态,正序方向的LSTM状态传递仅沿正序方向传递,逆序方向也仅沿逆序方向传递。但在同一时刻,将两个方向的LSTM的输出结果进行拼接,作为整个BILSTM层的输出,这样不仅考虑了上文语义信息,而且考虑下文的语义信息。
根据每个词语的贡献程度,注意力模块对BILSTM层输出的特征向量动态地分配不同的注意力权重,对情感分类最相关的特征赋予更多的权重,突出关键信息,使文本的情感特征更加明显。因此,注意力模块输出的向量综合考虑了文本的上下文信息记忆重点情感特征。
全连接层的主要作用是对注意力模块的特征分配完权重后的结果进行特征提纯。
分类输出层基于Softmax分类函数,主要作用是对提纯后的特征进行归一化处理输出最终的分类值得到情感极性分类,分类值以数组的形式输出,数组中的内容分别代表文本情感为哪一类的概率。通过焦点损失函数为优化目标来训练模型,具体地,通过对比真实标签与预测标签,利用焦点损失函数计算损失,进行反向传播,更新模型的权重参数,进行迭代运算,不断迭代,当损失函数的损失值在连续两个迭代过程中趋于稳定时,结束模型的训练过程,得到情感分类模型,情感分类模型的输出结果为每条数据集的标签,情感分类标签为-1、0、1,分别代表消极、中性、积极。
示例地,本发明采用的损失函数的计算公式:FL(pt)=-α(1-pt)γlog(pt)。在传统交叉熵基础上,添加了调制因子(1-pt)γ,γ∈[0,5]为聚焦参数,γ取不同值对结果影响不同,当γ=0时,FL=CE,等于传统的交叉熵函数;当γ>0时,降低了简单样本(预测时与真实标签误差较大的样本)的相对损失值,将注意力放在困难样本和分错的样本上。因此在训练过程中只对困难样本(预测时与真实标签误差较小的样本)进行训练,对简单样本减少训练。α作为平衡权重,α∈[0,1],控制正负样本对总的loss的共享权重,调节缩放比例。
基于此,Focal loss在一定程度上能缓解数据不平衡问题,无论那种类别数据较少,由于样本少导致在实际训练过程中更容易判错,种类特征学习不够,置信度也变低,损失也随之增大。同时在学习过程中逐渐抛弃简单样本,因此剩下各类别的困难样本,可以达到同样的训练优化目的。
S4:利用训练集对情感分类模型进行训练。
示例地,在训练的过程中,采用多次调参的形式对情感分类模型的参数进行调整,在参数调整时使用Dropout策略与L2正则化来避免过拟合问题,情感分类模型的参数至少包括学习率、输入文本最大长度、训练轮数。
本发明采用Warmup策略训练,Warmup是一种学习率优化方法,它在模型开始训练的时候使用小的学习率,之后在一定的训练步数之后使用预定的学习率,在接近模型收敛点的时候使用小的学习率,这样的学习率设置可以让模型在开始训练的时候不会过拟合,也就是开始的时候不会学习到错误的参数。
本发明训练时,使用Adam优化器修正学习率以及修正梯度,并利用准确率和F1值验证情感分类模型性能。
S5:利用训练好的情感分类模型进行文本情感分类。
在本发明的一个实施例中,依据与“新冠肺炎”相关的230个主题词进行数据采集,抓取了2020年1月1日至2020年2月20日期间共计100万条微博数据,并对其中10万条数据进行人工标注,标注分类三类,分别为:-1(积极),0(中性)和-1(消极)。
数据以CSV格式存储,带标签的数据具体格式如下:[微博id,微博发布时间,发布人账号,微博中文内容,微博图片,微博视频,情感倾向]。
在进行数据预处理后,在输入编码层通过WordPiece进行分词然后进行编码,词向量由词语向量、分段向量和位置向量三部分叠加而成。
在训练中,本实施例采用的计算机操作系统为ubuntu,编程语言Python,开发软件平台为Pycharm,通过深度学习框架pytorch来进行实验。Pytorch主要针对GPU加速的深度神经网络进行编程,与静态图机制的TensorFlow相比,它建立了动态的神经网络能更灵活的处理很多问题。由于实验数据是中文微博短文本,且微博规定评论内容不超过140个词,结合实验所用服务器的内存大小,故处理文本的最大长度设置为140。同时应设置好批大小、学习率、训练轮数等超参数,模型编译时设置损失函数为Focal Loss焦点损失函数,优化器为Adam,Adam结合了AdaGrad和RMSProp的优点,其基于动量的思想可以有效利用梯度的历史信息,不仅能通过累计平方梯度来自适应修正学习率,还可以利用累计梯度来实现对梯度的修正。
最终,利用完成训练的情感分类模型进行微博短文本情感分类,数据集采用自行在微博上根据新冠疫情相关话题爬取的评论数据,经过人工标注获得训练集、验证集与测试集。实验采用通用的评测标准对模型的分类效果进行评价,分别是准确率Acc、和综合评价指标F1值,其中F1值综合了统计学中精确率和召回率两个度量值,因为是多分类问题因此最终采用macro-acc与macro-F1作为评测指标。
表1
Model | ACC | F1 |
BERT | 74.56 | 72.12 |
RoBERTa-wwm | 77.79 | 75.33 |
BERT-Att-BILSTM | 80.19 | 77.08 |
表1为本发明所提出的特征融合情感分析模型与单模型情感分析实验结果对比,本发明相比单模型的情感分析方法,在准确率与F1值上都得到了大幅度地提升。
综上,本发明使用了RoBERTa-wwm中文预训练语言模型,该模型使用了动态mask机制,取消了NSP任务以及使用WWM即全词mask策略。在模型后接BILSTM二次提取语义特征,并引入了注意力机制,重点关注重要的情感信息特征。训练时候采用了Focal Loss焦点损失函数,有效缓解了训练中数据类别不平衡带来的模型退化等问题。该模型可以有效地提升在微博评论等短文本进行情感分析的准确率,有效地解决了因中文一词多义带来的情感倾向错分等问题。
Claims (10)
1.一种基于BERT改进模型的文本情感分析方法,其特征在于,包括如下步骤:
S1:获取文本数据集;
S2:数据预处理;
S3:对预处理后的文本进行分词并进行向量化处理得到输入tokens,利用BERT改进模型对输入tokens进行语义特征提取,,并在BILSTM网络中对语义特征进行二次提取,BILSTM网络后接Attention层,突出关键情感信息,构建BERT-Att-BILSTM情感分类模型;
S4:利用训练集对情感分类模型进行训练;
S5:利用训练好的情感分类模型进行文本情感分类。
2.根据权利要求1所述基于BERT改进模型的文本情感分析方法,其特征在于,所述文本数据集是公开数据集或通过采集文本数据自行构造数据集;当为自行构造的数据集时,由标注人员对句子中的每一条文本数据,标注其情感极性标签,情感极性包括积极、中性、消极三种情绪。
3.根据权利要求1所述基于BERT改进模型的文本情感分析方法,其特征在于,所述数据预处理是对文本数据去除与情感评论无关的符号与链接;将非简体中文词汇转换为简体中文词汇,并将emoji表情转化为文字。
4.根据权利要求1所述基于BERT改进模型的文本情感分析方法,其特征在于,所述情感分类模型包括:
输入编码层:对预处理的文本数据,按照双字节编码方式对单个汉字进行编码得到词向量,将得到的输入tokens作为BERT层的输入;
BERT层:基于BERT改进模型,对输入的词向量进行第一次语义特征提取,输出带有权重的特征向量集合,所述BERT改进模型为RoBERTa预训练模型;
BILSTM层:基于BILSTM网络,将BERT层输出的特征向量作为BILSTM网络的序列化输入,分别从两个方向进行二次语义特征提取,两个方向的LSTM之间不会共用状态,在同一时刻,将两个方向的LSTM的输出结果进行拼接得到考虑了上下文语义信息的特征向量,作为整个BILSTM层的输出;
注意力模块:对BILSTM层的输出特征向量动态地分配不同的注意力权重,对情感分类最相关的特征赋予更多的权重,突出关键情感信息,使文本的情感特征更加明显,注意力模块输出的向量综合考虑了文本的上下文信息记忆重点情感特征;
全连接层:进行特征提纯;
分类输出层:基于Softmax分类函数,根据提纯后的特征进行归一化处理输出最终的分类值得到情感极性的分类,对比真实标签与预测标签,利用焦点损失计算损失函数,进行反向传播,更新模型的权重参数,进行迭代运算,不断迭代,当损失函数的损失值在连续两个迭代过程中趋于稳定时,结束模型的训练过程,得到情感分类模型,情感分类模型的输出结果为每条数据集的标签,情感分类标签为-1、0、1,分别代表消极、中性、积极。
5.根据权利要求4所述基于BERT改进模型的文本情感分析方法,其特征在于,所述输入编码层采用与上下文有关的动态字节编码模型,使用全词mask策略,基于WordPiece将中文语句切分,在训练序列中,被分开的词随机被mask。
6.根据权利要求4所述基于BERT改进模型的文本情感分析方法,其特征在于,所述BERT改进模型采用深层的双向Transformer编码器构建,在结构上最大化利用上下文信息;所述Transformer编码器中包括字向量与位置编码、多头自注意力机制、残差连接与层标准化和前馈网络;
利用字向量与位置编码提供短文本中每个字的位置信息,使得字在短文本中的依赖关系和时序关系能够被识别;
利用多头自注意力机制,通过计算得出短文本中每个字与句中其余字的相互关系,使得每个字向量均含有该短文本中所有字向量的信息;
经过多头自注意力机制处理的字向量输入到所述前馈网络中,所述前馈网络有两层,第一层的激活函数是ReLU,第二层是一个线性激活函数。
7.根据权利要求4所述改进训练方式的BERT短文本情感分析方法,其特征在于,所述BERT改进模型最后一层Transformer的所有输出结果为B∈Rs*e,即输出带有权重的特征向量集合,其中s为以字为单位的文本长度,e为特征向量的维度。
8.根据权利要求4所述基于BERT改进模型的文本情感分析方法,其特征在于,所述RoBERTa预训练模型在每次输入时对句子动态地进行遮蔽,每次输入一个序列时均会生成新的掩码模式。
9.根据权利要求4所述基于BERT改进模型的文本情感分析方法,其特征在于,所述损失函数的计算公式为:FL(pt)=-α(1-pt)γlog(pt),(1-pt)γ表示调制因子,γ为聚焦参数,γ∈[0,5],γ取不同值对结果影响不同,当γ=0时,FL=CE,等于传统的交叉熵函数;当γ>0时,降低了简单样本的相对损失值,将注意力放在困难样本和分错的样本上;α为平衡权重,α∈[0,1],pt是类别概率,t为不同类别的数量。
10.根据权利要求1所述一种基于BERT改进模型的文本情感分析方法,其特征在于,对情感分类模型进行训练的过程中,采用多次调参的形式对情感分类模型的参数进行调整,在参数调整时使用Dropout策略与L2正则化来避免过拟合问题,情感分类模型的参数至少包括学习率、输入文本最大长度、训练轮数;并采用Warmup策略训练,在模型开始训练的时候使用小的学习率,之后在一定的训练步数之后使用预定的学习率,在接近模型收敛点的时候使用小的学习率;在训练时,使用Adam优化器修正学习率以及修正梯度;并利用准确率和F1值验证情感分类模型性能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210354654.9A CN114781392A (zh) | 2022-04-06 | 2022-04-06 | 一种基于bert改进模型的文本情感分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210354654.9A CN114781392A (zh) | 2022-04-06 | 2022-04-06 | 一种基于bert改进模型的文本情感分析方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114781392A true CN114781392A (zh) | 2022-07-22 |
Family
ID=82427415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210354654.9A Pending CN114781392A (zh) | 2022-04-06 | 2022-04-06 | 一种基于bert改进模型的文本情感分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114781392A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115687625A (zh) * | 2022-11-14 | 2023-02-03 | 五邑大学 | 文本分类方法、装置、设备及介质 |
CN115952291A (zh) * | 2023-03-14 | 2023-04-11 | 山东大学 | 基于多头自注意力及lstm的金融舆情分类方法及系统 |
CN116340522A (zh) * | 2023-05-26 | 2023-06-27 | 品木世纪(北京)营销科技有限公司 | 一种母婴垂直媒体ugc的情感分类模型的构建方法和装置 |
CN117574981A (zh) * | 2024-01-16 | 2024-02-20 | 城云科技(中国)有限公司 | 一种信息分析模型的训练方法及信息分析方法 |
-
2022
- 2022-04-06 CN CN202210354654.9A patent/CN114781392A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115687625A (zh) * | 2022-11-14 | 2023-02-03 | 五邑大学 | 文本分类方法、装置、设备及介质 |
CN115687625B (zh) * | 2022-11-14 | 2024-01-09 | 五邑大学 | 文本分类方法、装置、设备及介质 |
CN115952291A (zh) * | 2023-03-14 | 2023-04-11 | 山东大学 | 基于多头自注意力及lstm的金融舆情分类方法及系统 |
CN115952291B (zh) * | 2023-03-14 | 2023-07-18 | 山东大学 | 基于多头自注意力及lstm的金融舆情分类方法及系统 |
CN116340522A (zh) * | 2023-05-26 | 2023-06-27 | 品木世纪(北京)营销科技有限公司 | 一种母婴垂直媒体ugc的情感分类模型的构建方法和装置 |
CN117574981A (zh) * | 2024-01-16 | 2024-02-20 | 城云科技(中国)有限公司 | 一种信息分析模型的训练方法及信息分析方法 |
CN117574981B (zh) * | 2024-01-16 | 2024-04-26 | 城云科技(中国)有限公司 | 一种信息分析模型的训练方法及信息分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109992782B (zh) | 法律文书命名实体识别方法、装置及计算机设备 | |
CN110427623B (zh) | 半结构化文档知识抽取方法、装置、电子设备及存储介质 | |
CN111626063B (zh) | 一种基于投影梯度下降和标签平滑的文本意图识别方法及系统 | |
CN107729309B (zh) | 一种基于深度学习的中文语义分析的方法及装置 | |
CN106919673B (zh) | 基于深度学习的文本情绪分析系统 | |
CN111708882B (zh) | 基于Transformer的中文文本信息缺失的补全方法 | |
CN114781392A (zh) | 一种基于bert改进模型的文本情感分析方法 | |
CN110210037A (zh) | 面向循证医学领域的类别检测方法 | |
CN111985239A (zh) | 实体识别方法、装置、电子设备及存储介质 | |
US11755636B2 (en) | System and method for text processing for summarization and optimization | |
CN115545041B (zh) | 一种增强医疗语句语义向量表示的模型构造方法及系统 | |
CN114153973A (zh) | 基于t-m bert预训练模型的蒙古语多模态情感分析方法 | |
CN115203406A (zh) | 一种基于RoBERTa模型的长文本信息立场检测方法 | |
CN115048511A (zh) | 一种基于Bert的护照版面分析方法 | |
CN113869055A (zh) | 基于深度学习的电网项目特征属性识别方法 | |
CN116245110A (zh) | 基于图注意力网络的多维度信息融合用户立场检测方法 | |
Antit et al. | TunRoBERTa: a Tunisian robustly optimized BERT approach model for sentiment analysis | |
Ahmed et al. | Context based Emotion Recognition from Bengali Text using Transformers | |
CN116522165B (zh) | 一种基于孪生结构的舆情文本匹配系统及方法 | |
CN115204143B (zh) | 一种基于prompt的文本相似度计算方法及系统 | |
CN116882402A (zh) | 基于多任务的电力营销小样本命名实体识别方法 | |
CN116910196A (zh) | 一种基于多任务学习的校园安全突发事件抽取方法 | |
CN116662924A (zh) | 基于双通道与注意力机制的方面级多模态情感分析方法 | |
CN116483314A (zh) | 一种自动化智能活动图生成方法 | |
CN115292490A (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 |