CN112416956A - 一种基于bert和独立循环神经网络的问句分类方法 - Google Patents

一种基于bert和独立循环神经网络的问句分类方法 Download PDF

Info

Publication number
CN112416956A
CN112416956A CN202011300093.1A CN202011300093A CN112416956A CN 112416956 A CN112416956 A CN 112416956A CN 202011300093 A CN202011300093 A CN 202011300093A CN 112416956 A CN112416956 A CN 112416956A
Authority
CN
China
Prior art keywords
question
representing
bert
vector
neural network
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.)
Granted
Application number
CN202011300093.1A
Other languages
English (en)
Other versions
CN112416956B (zh
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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202011300093.1A priority Critical patent/CN112416956B/zh
Publication of CN112416956A publication Critical patent/CN112416956A/zh
Application granted granted Critical
Publication of CN112416956B publication Critical patent/CN112416956B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2322Optimistic concurrency control using timestamps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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
    • G06N3/045Combinations of networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

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

Abstract

本发明属于自然语言处理领域,具体涉及一种基于BERT和独立循环神经网络(IndRNN)的问句分类方法,包括:实时获取待分类的问句数据,将待分类的问句数据输入到训练好的问句分类模型中,得到分类后的数据;问句分类模型包括BERT模型和基于注意力机制的IndRNN模型;本发明利用BERT模型,得到的向量序列能捕捉更多的内在信息,相对RNN更加高效、能捕捉更长距离的依赖,提高预测精度。

Description

一种基于BERT和独立循环神经网络的问句分类方法
技术领域
本发明属于自然语言处理领域,具体涉及一种基于BERT和独立循环神经网络(IndRNN)的问句分类方法。
背景技术
自然语言处理(NaturalLanguageProcessing,NLP)也称自然语言理解(NaturalLanguageUnderstanding,NLU),是利用计算机为工具对人类特有的书面形式和口头形式的自然语言的信息进行各种类型处理和加工的技术,问答系统是自然语言处理的一个研究方向,即通过计算机系统对用户提出的问题的理解,利用自动推理等手段,在有关知识资源中自动求解答案并作出相应的回答,主要包含文本理解、信息检索和答案抽取三部分。对于社区问答来说,用户使用自然语言的表达方式提出问题,而其他用户通过用户的问题贡献自己的答案。用户通过社区问答搜索到自己想要的问题和答案。问句理解是对问题的类别进行确认,从而为社区问答系统的信息检索过程缩小问题和答案的搜索范围,提高准确性,所以提高社区问答问句分类准确性,是提高社区问答系统整体可用性可靠性的必要条件。
在问句分类之前需要对问句类别进行确定。目前对于中文问句的分类并没有一个统一的标准,在国际中比较的权威的分类体系是UIUC问句分类体系,这是一个基于答案类型的层次分类体系。但是UIUC分类体系是针对英文类别的,在中文问句分类体系方面,哈工大在UIUC的分类系统的基础上根据汉语固有的特点定义了一套中文分类体系,主要包含七个大类:人物、地点、数字、时间、实体、描述、未知;每一个大类下面又细分了一些小类,总共60个,而对于现如今比较流行的问答社区来说,都有自己的一套分类规则,例如百度知道和知乎,问题根据类型分为“体育”、“电脑”、“经济”等。
目前问句分类主要分为两个大的方向,首先是基于统计机器学习的分类方法,其次是基于深度学习的方法,主要是使用各类神经网络模型。Hui等人在进行问句分类时考虑到问题文本中词序和词间距的因素,提出了一种扩展类规则模型,但该方法需要定义大量的扩展类规则;Mishra等人根据从问题文本中抽取的词特征、语义特征和句法特征来训练不同的分类器(朴素贝叶斯、最近邻、支持向量机)进行问题的分类,该方法面对海量数据处理时性能较差;Liu等人在SVM的基础上提出了一种依赖句法关系和词性特征的核函数方法,但是该方法不能充分捕捉语义信息;杨思春等人为了解决问句分类研究中特征提取开销过大的问题,提出了一种包含基本特征和词袋绑定特征的问句特征模型,以此来获取更加有效的问句特征集。由于上述方法中不能处理大量的文本,其数据分类的准确性较低,急需一种能快速准确的对问句数据进行分类的方法。
发明内容
为解决以上现有技术存在的问题,本发明提出了一种基于BERT和独立循环神经网络的问句分类方法,该方法包括:实时获取待分类的问句数据,将待分类的问句数据输入到训练好的问句分类模型中,得到分类后的数据;问句分类模型包括BERT模型和基于注意力机制的独立循环神经网络IndRNN模型;对问句分类模型进行训练的过程包括:
S1:获取社区问答问句原始数据集,对社区问答问句原始数据集进行预处理,得到训练集、验证集和测试集;
S2:将训练集中的数据输入到BERT模型中提取特征,得到含有语义特征的序列向量;
S3:将含有语义特征的序列向量输入到基于注意力机制的IndRNN模型中,得到独立循环神经网络的隐藏状态;
S4:将独立循环神经网络的隐藏状态进行叠加,在进行叠加过程中采用注意力机制捕获上下文的相关信息,得到神经网络输出结果;
S5:将神经网络的输出结果输入到softmax层,得到分类结果;
S6:根据分类结果计算基于注意力机制的IndRNN模型的损失函数;
S7:采用Adam算法对损失函数进行优化,对基于注意力机制的IndRNN模型反向传播训练,不断修改、更新各层神经元的参数值以及连接权重;
S8:将验证集中的数据输入到问句分类模型中,确定模型参数的最佳值,使误差值达到最小,完成问句分类模型的训练;
S9:将测试集中的数据输入到训练好的问句分类模型中,得到预测结果。
优选的,对社区问答句原始数据集进行预处理的过程包括:对数据集进行清洗,去除数据集中重复和残缺的问答语句;将清洗后的数据集按70%:15%:15%的比例划分为训练集、验证集和测试集。
优选的,得到含有语义特征的序列向量的过程包括:
S21:将训练集中的数据划分为标签和内容,再将划分后的数据进行分词处理,得到分词文本序列;
S22:对分词文本序列进行全词掩码处理,对处理好后序列的头部添加一个特殊标记[CLS],每个句子采用标记[SEP]分隔;
S23:将标记后的序列向量输入到双向Transformer编码器中提取特征向量;
S24:采用多头注意力机制对提取的特征向量进行拼接,得到含有语义特征的序列向量。
进一步的,采用多头注意力机制对提取的特征向量进行拼接的公式为:
MultiHead(Q,K,V)=Concat(head1,...,headn)WO
Figure BDA0002786524350000031
Figure BDA0002786524350000032
优选的,得到循环神经网络隐藏状态的过程为:
S31:神经元cell获取语义特征的序列向量xt和一个神经元输出的循环神经网络隐藏状态ht-1
S32:将参数矩阵u和上一个神经元的输出ht-1进行点乘
Figure BDA0002786524350000033
运算,将参数矩阵w与语义特征的序列向量xt相乘,将上述点乘
Figure BDA0002786524350000034
运算结果与乘法运算结果相加,并加上偏置项b,得到待激活序列向量;
S33:将待激活序列向量传给激活函数σ得到循环神经网络隐藏状态ht
S34:输出循环神经网络的隐藏状态ht并将其传给下一个神经元cell;
计算独立循环神经网络隐藏状态的公式为:
Figure BDA0002786524350000041
优选的,得到隐藏状态的过程包括:
S41:将独立循环神经网络的隐藏状态进行双向叠加:
Figure BDA0002786524350000042
Figure BDA0002786524350000043
Figure BDA0002786524350000044
其中,
Figure BDA0002786524350000045
Figure BDA0002786524350000046
表示前向和后向IndRNN隐藏状态;Ti表示i位置单词经过BERT层输出的向量;n表示单词个数;hi表示当前隐藏层状态;
S42:根据当前隐藏层状态hi和单词上下文向量uw计算当前单词注意力权重ai,计算公式为:
ui=tanh(Wshi+bs)
Figure BDA0002786524350000047
其中hi为当前隐藏层状态;ui为hi的隐藏表示;Ws为权重矩阵;bs为偏置项;uw表示词级上下文向量,随机生成,作为模型的训练参数;n表示单词数量;ai表示问题文本中第i个单词的权重。
S43:据注意力权重向量ai和当前隐藏状态hi计算得到注意力向量Si,计算公式为:
Figure BDA0002786524350000048
S44:将向量Si输入到softmax层,得到预测结果。
进一步的,预测结果的表达式为:
pi=softmax(wsSi+bs)
优选的,损失函数为:
Figure BDA0002786524350000051
优选的,采用Adam算法对损失函数进行优化的过程包括:从训练集中采集m个样本{xm},样本对应的目标为实际标签的概率y;计算目标y对应的梯度g;根据对应的梯度g对参数进行更新和修正。
进一步的,进行更新和修正的内容包括:
更新有偏一阶矩估计:s←ρ1s+(1-ρ1)g
更新有偏二阶矩估计:r←ρ2r+(1-ρ2)g2
修正一阶矩的偏差:
Figure BDA0002786524350000052
修正二阶矩的偏差:
Figure BDA0002786524350000053
计算更新:
Figure BDA0002786524350000054
应用更新:θ←θ+Δθ
本发明有益效果:
(1)本发明利用BERT模型,得到的向量序列能捕捉更多的内在信息,相对RNN更加高效、能捕捉更长距离的依赖,提高预测精度。
(2)由于循环神经网络(RNN)处理时间序列问题时有梯度爆炸和梯度消失问题,本发明使用合适优化参数的独立循环神经网络(IndRNN)对文本序列处理,能达到很好的预测效果。与传统模型相比具有更好的自适应性。
(3)使用注意力机制衡量对应时间段的数据预测的结果,具有更好的预测效果。
附图说明
图1为本发明的整体流程图;
图2为本发明的模型训练过程图;
图3为本发明的模型结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的一种问句分类方法的实施例,如图3所示,包括:首先将处理后的数据输入到BERT模型中,通过Transformer的自注意力机制,将词与词之间的关联程度转为权重系数矩阵,将不同的Attention结果拼接起来,得到Embedding词向量。将Embedding词向量输入到IndRNN神经网络中,在IndRNN中,每个神经元只接收来自当前时刻的输入和它本身在上一时刻的隐藏状态信息,下一层中的每个神经元独立地处理前一层中所有神经元的输出,降低了构建深度网络结构的难度,增强了对更长序列的建模能力。经过注意力机制衡量序列中每个词的重要性,最后通过softmax层进行预测。
一种问句分类方法的优选实施例,其方法包括:实时获取待分类的问句数据,将待分类的问句数据输入到训练好的问句分类模型中,得到分类后的数据;问句分类模型包括BERT模型和基于注意力机制的独立循环神经网络IndRNN模型。
如图1所示,首先问句经过预处理输入BERT模型生成序列向量;其次将序列向量输入到IndRNN模型,同时IndRNN模型中融合注意力机制,更好地关联上下文获取语义信息;最终经过归一化处理输出训练结果。
如图2所示,对问句分类模型进行训练的过程包括:
S1:获取社区问句原始数据集,对社区问句原始数据集进行预处理,得到训练集、验证集和测试集;
S2:将训练集中的数据输入到BERT模型中提取特征,得到含有语义特征的序列向量;
S3:将含有语义特征的序列向量输入到基于注意力机制的IndRNN模型中,得到独立循环神经网络的隐藏状态;
S4:将独立循环神经网络的隐藏状态进行叠加,在进行叠加过程中采用注意力机制捕获上下文的相关信息,得到神经网络输出结果;
S5:将神经网络的输出结果输入到softmax层,得到分类结果;
S6:根据分类结果计算基于注意力机制的IndRNN模型的损失函数;
S6:采用Adam算法对损失函数进行优化,对基于注意力机制的IndRNN模型反向传播训练,不断修改、更新各层神经元的参数值以及连接权重;
S7:将验证集中的数据输入到问句分类模型中,确定模型参数的最佳值,使误差值达到最小,完成问句分类模型的训练;
S8:将测试集中的数据输入到训练好的问句分类模型中,得到预测结果。
社区问答问句原始数据集来自百度公开数据集,该数据采集自百度知道,大约包含了100万条各个类别的数据,总共选取教育、健康、生活、娱乐、游戏、体育、商业、文化、汽车、电子10个类别各两万条总共20万条数据;数据集进行清洗,去除数据集中重复和残缺的问答语句;将清洗后的数据集按照70%:15%:15%分为训练集、验证集和测试集。
得到含有语义特征的序列向量的过程包括:将训练集中的数据划分为标签和内容两个部分,将划分好的数据输入到BERT模型中;首先通过分词处理得到分词文本序列;然后对分词序列的部分词进行全词掩码Mask处理,再为序列的开头添加一个特殊标记[CLS],句子间用标记[SEP]分隔;将序列向量输入到双向Transformer进行特征提取,最后得到含有丰富语义特征的序列向量。
采用注意力机制对数据进行处理,其公式为:
Figure BDA0002786524350000071
其中,Attention(·)表示注意力机制;Q表示查询向量,K表示键向量、V表示值向量;Softmax(·)表示归一化函数,T为矩阵转置的标识,dk表示一个query和key向量的维度。
将多头注意力机制得到的不同Attention结果拼接起来得到最终输出序列向量:
MultiHead(Q,K,V)=Concat(head1,...,headn)WO
headi=Attention(QWi Q,KWi k,VWi V)
其中,MultiHead(·)表示多头注意力head数;Q表示查询向量,K表示键向量、V表示值向量;Concat(·)表示拼接不同的注意力;headi表示不同的注意力;WO表示MultiHead线性变换的参数。
将BERT层作为embedding层输入到IndRNN模型;IndRNN模型t时刻的输出表达式为:
Figure BDA0002786524350000081
其中,t表示时刻,xt表示t时刻的输入,即上述的BERT模型的输出序列向量;W表示隐藏层之间的权重,σ表示神经元的激活函数;u表示输入层和隐藏层之间的权重;b表示偏置值;
Figure BDA0002786524350000082
表示矩阵元素积;ht-1表示t-1时刻(即前一个时刻)的隐藏层输出,即在t时刻每个隐藏层神经元只接受此刻的输出以及t-1时刻自身的状态作为输入。
当需要构建多层循环神经网络时,新的隐藏层输出为:
Figure BDA0002786524350000083
其中,ht表示t时刻的前一层隐藏层输出;h′t-1表示新的隐藏层在t-1时刻的输出;h′t表示新的隐藏层输出;w′表示新的隐藏层之间的权重,σ表示神经元的激活函数;u′是前一个隐藏层和当前隐藏层之间的权重;b′表示当前层的偏置值;
Figure BDA0002786524350000084
表示矩阵元素积。
在问句分类任务中,最终目标是根据问句文本内容来预测对应问句文本的类别,即根据问句文本词向量x1到xn预测分类的值。
通过将独立循环神经网络的隐藏状态进行叠加,并在此过程利用注意力机制来捕获上下文相关信息。
首先将独立循环神经网络的隐藏状态进行双向叠加:
Figure BDA0002786524350000091
Figure BDA0002786524350000092
Figure BDA0002786524350000093
其中,
Figure BDA0002786524350000094
Figure BDA0002786524350000095
表示前向和后向IndRNN隐藏状态;Ti表示i位置单词经过BERT层输出的向量;n表示问句中的单词个数;hi表示当前隐藏层状态;
其次,并非所有的单词对句子表达都有同等的贡献,因此引入注意力机制来衡量单词的重要性,其计算公式为:
ui=tanh(Wshi+bs)
Figure BDA0002786524350000096
其中hi为当前隐藏层状态;ui为hi的隐藏表示;Ws为权重矩阵;bs为偏置项;uw表示词级上下文向量,随机生成,作为模型的训练参数;n表示单词数量;ai表示问题文本中第i个单词的权重。
根据注意力权重向量ai和当前隐藏层状态hi计算得到注意力向量Si,其计算公式为:
Figure BDA0002786524350000097
注意力向量Si通过softmax层输入,得到的预测结果为:
pi=softmax(wsSi+bs)
其中,pi表示预测分类结果,softmax(·)表示对数据进行归一化处理,ws表示权重矩阵,Si表示注意力层输出向量,bs表示偏移量。
计算真实状态y和预测状态pi之间的交叉熵,其表达式为:
Figure BDA0002786524350000098
其中,x表示样本,y表示实际标签的概率,pi表示预测概率,n表示样本总数量。
网络经过正向传播和反向传播,不断修改、更新各层神经元的参数值以及连接权重,验证集用于确定参数的最佳值,使误差值达到最小,直到满足迭代停止条件,得到训练好的模型。
采用Adam算法最小化损失函数优化模型。Adam是一种可以替代传统随机梯度下降过程的一阶优化算法,它能基于训练数据迭代地更新神经网络权重。Adam通过计算梯度的一阶矩估计和二阶矩估计为不同的参数设计独立的自适应性学习率。主要计算过程为:从训练集中采集m个样本{xm},样本对应的目标为实际标签的概率y;计算目标y对应的梯度g;根据对应的梯度g对参数进行更新和修正。
进行更新和修正的内容包括:
更新有偏一阶矩估计:s←ρ1s+(1-ρ1)g
更新有偏二阶矩估计:r←ρ2r+(1-ρ2)g2
修正一阶矩的偏差:
Figure BDA0002786524350000101
修正二阶矩的偏差:
Figure BDA0002786524350000102
计算更新:
Figure BDA0002786524350000103
应用更新:θ←θ+Δθ
其中,s表示偏一阶矩估计,ρ1表示矩估计的指数衰减速率,r表示偏二阶矩估计,ρ2表示矩估计的指数衰减速率,
Figure BDA0002786524350000104
表示修正的一阶矩偏差,
Figure BDA0002786524350000105
表示t时刻指数衰减速率,
Figure BDA0002786524350000106
表示修正的二阶矩偏差,
Figure BDA0002786524350000107
表示t时刻指数衰减速率,θ表示参数向量,Δθ表示计算得到的偏差值,∈表示步长,δ表示小常数。
在进行更新和修正过程中,将步长∈默认为0.001;矩估计的指数衰减速率ρ1和ρ2默认为0.9和0.999;数值稳定的常数δ默认为10-8;初始化一阶和二阶矩变量s=0和r=0,初始化时间步t=0。
对预测的结果进行评价,评价指标为精确率、召回率和F1值。
精确率是指正确分类的正例个数占分类为正例的实例个数的比例。精确率的表达式为:
Figure BDA0002786524350000108
其中,TP表示实例为正确分为该类的样本数目;FP表示实例不是该分类,但是预测为该类的数量。采用宏平均的度量标准,先对每一个类计算精确率,然后对所有类的精确率求算术平均值:
Figure BDA0002786524350000111
其中,macro_p表示宏平均精确率,n表示分类类别,pi表示第i类的精确率。
召回率是指正确分类的正例个数占实际正例个数的比例。召回率recall的表达式为:
Figure BDA0002786524350000112
其中,FN表示实例是该分类,但是被预测为其他类别的数量。采用宏平均的度量标准,先对每一个类计算召回率,然后对所有类别的召回率求算术平均值:
Figure BDA0002786524350000113
其中,macro_r表示宏平均召回率,n表示分类类别,ri表示第i类的召回率。
F1能够对precision和recall进行整体的评价,其表达式为:
Figure BDA0002786524350000114
采取宏平均的度量标准:
Figure BDA0002786524350000116
其中,macro_F1表示整体评价指标,是基于精确率和召回率计算得出。
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,包括:实时获取待分类的问句数据,将待分类的问句数据输入到训练好的问句分类模型中,得到分类后的数据;问句分类模型包括BERT模型和基于注意力机制的独立循环神经网络IndRNN模型;
对问句分类模型进行训练的过程包括:
S1:获取社区问答问句原始数据集,对社区问答问句原始数据集进行预处理,得到训练集、验证集和测试集;
S2:将训练集中的数据输入到BERT模型中提取特征,得到含有语义特征的序列向量;
S3:将含有语义特征的序列向量输入到基于注意力机制的IndRNN模型中,得到独立循环神经网络隐藏状态;
S4:将独立循环神经网络的隐藏状态进行叠加,在进行叠加过程中采用注意力机制捕获上下文的相关信息,得到神经网络输出结果;
S5:将神经网络的输出结果输入到softmax层,得到分类结果;
S6:根据分类结果计算基于注意力机制的IndRNN模型的损失函数;
S7:采用Adam算法对损失函数进行优化,对基于注意力机制的IndRNN模型反向传播训练,不断修改、更新各层神经元的参数值以及连接权重;
S8:将验证集中的数据输入到问句分类模型中,确定模型参数的最佳值,使误差值达到最小,完成问句分类模型的训练;
S9:将测试集中的数据输入到训练好的问句分类模型中,得到预测结果。
2.根据权利要求1所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,对社区问答问句原始数据集进行预处理的过程包括:对数据集进行清洗,去除数据集中重复和残缺的问句语句;将清洗后的数据集按70%:15%:15%的比例划分为训练集、验证集和测试集。
3.根据权利要求1所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,得到含有语义特征的序列向量的过程包括:
S21:将训练集中的数据划分为标签和内容,再将划分后的内容数据进行分词处理,得到分词文本序列;
S22:对分词文本序列进行全词掩码处理,对处理好后序列的头部添加一个特殊标记[CLS],每个句子采用标记[SEP]分隔;
S23:将标记后的序列向量输入到双向Transformer编码器中提取特征向量;
S24:采用多头注意力机制对提取的特征向量进行拼接,得到含有语义特征的序列向量。
4.根据权利要求3所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,采用多头注意力机制对提取的特征向量进行拼接的公式为:
MultiHead(Q,K,V)=Concat(head1,...,headn)WO
headi=Attention(QWi Q,KWi K,VWi V)
Figure FDA0002786524340000021
其中,MultiHead(.)表示多头注意力head数;Q表示查询向量,K表示键向量、V表示值向量;Concat(.)表示拼接不同的注意力;headi表示不同的注意力;WO表示MultiHead线性变换的参数。
5.根据权利要求1所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,得到独立循环神经网络隐藏状态的过程为:
S31:神经元cell获取语义特征的序列向量xt和上一个神经元输出的循环神经网络隐藏状态ht-1
S32:将参数矩阵u和上一个神经元的输出ht-1进行点乘运算,将参数矩阵w与语义特征的序列向量xt相乘,将上述点乘运算结果与乘法运算结果相加,并加上偏置项b,得到待激活序列向量;
S33:将待激活序列向量传给激活函数σ得到循环神经网络隐藏状态ht
S34:输出独立循环神经网络的隐藏状态ht并将其传给下一个神经元cell;
计算独立循环神经网络隐藏状态的公式为:
hit=σ(w·xit+u⊙hi(t-1)+b)
其中,hit表示当前第i位置t时刻神经元输出,σ(.)表示激活函数,w表示参数矩阵,u表示参数矩阵,hi(t-1)表示第i位置的上一个神经元输出,⊙表示点乘,b表示偏置项。
6.根据权利要求1所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,得到隐藏状态的过程包括:
S41:将独立循环神经网络的隐藏状态进行双向叠加,得到当前隐藏层状态hi
Figure FDA0002786524340000031
Figure FDA0002786524340000032
Figure FDA0002786524340000033
其中,
Figure FDA0002786524340000034
Figure FDA0002786524340000035
表示前向和后向IndRNN隐藏状态;Ti表示i位置单词经过BERT层输出的向量;n表示单词个数;hi表示当前隐藏层状态;
S42:根据当前隐藏层状态hi计算当前单词注意力权重ai,计算公式为:
ui=tanh(Wshi+bs)
Figure FDA0002786524340000036
其中hi为当前隐藏层状态;ui为hi的隐藏表示;Ws为权重矩阵;bs为偏置项;uw表示词级上下文向量,随机生成,作为模型的训练参数;n表示单词数量;ai表示问题文本中第i个单词的权重;
S43:根据注意力权重向量ai和当前隐藏层状态hi计算得到注意力向量Si,计算公式为:
Figure FDA0002786524340000037
S44:向量Si输入到softmax层,得到预测结果。
7.根据权利要求6所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,预测结果的表达式为:
pi=softmax(wsSi+bs)
其中,pi表示预测结果,softmax(.)表示对数据进行归一化处理,ws表示权重矩阵,Si表示IndRNN输出的向量,bs表示偏移量。
8.根据权利要求1所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,损失函数为:
Figure FDA0002786524340000041
其中,x表示样本,y表示实际标签的概率,pi表示预测概率,n表示样本总数量。
9.根据权利要求1所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,采用Adam算法对损失函数进行优化的过程包括:从训练集中采集m个样本{xm},样本对应的目标为实际标签的概率y;;计算目标y对应的梯度σ;根据对应的梯度σ对参数进行更新和修正。
10.根据权利要求9所述的一种基于BERT和独立循环神经网络的问句分类方法,其特征在于,进行更新和修正的内容包括:
更新有偏一阶矩估计:s←ρ1s+(1-ρ1)g
更新有偏二阶矩估计:r←ρ2r+(1-ρ2)g2
修正一阶矩的偏差:
Figure FDA0002786524340000042
修正二阶矩的偏差:
Figure FDA0002786524340000043
计算更新:
Figure FDA0002786524340000044
应用更新:θ←θ+Δθ
其中,s表示偏一阶矩估计,ρ1表示矩估计的指数衰减速率,r表示偏二阶矩估计,ρ2表示矩估计的指数衰减速率,
Figure FDA0002786524340000045
表示修正的一阶矩偏差,
Figure FDA0002786524340000046
表示t时刻指数衰减速率,
Figure FDA0002786524340000048
表示修正的二阶矩偏差,
Figure FDA0002786524340000047
表示t时刻指数衰减速率,θ表示参数向量,Δθ表示计算得到的偏差值,∈表示步长,δ表示常数。
CN202011300093.1A 2020-11-19 2020-11-19 一种基于bert和独立循环神经网络的问句分类方法 Active CN112416956B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011300093.1A CN112416956B (zh) 2020-11-19 2020-11-19 一种基于bert和独立循环神经网络的问句分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011300093.1A CN112416956B (zh) 2020-11-19 2020-11-19 一种基于bert和独立循环神经网络的问句分类方法

Publications (2)

Publication Number Publication Date
CN112416956A true CN112416956A (zh) 2021-02-26
CN112416956B CN112416956B (zh) 2023-04-07

Family

ID=74773528

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011300093.1A Active CN112416956B (zh) 2020-11-19 2020-11-19 一种基于bert和独立循环神经网络的问句分类方法

Country Status (1)

Country Link
CN (1) CN112416956B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685541A (zh) * 2021-03-11 2021-04-20 中南大学 一种基于多任务学习的社交媒体谣言检测方法
CN113297845A (zh) * 2021-06-21 2021-08-24 南京航空航天大学 一种基于多层次循环神经网络的简历块分类方法
CN113468203A (zh) * 2021-04-29 2021-10-01 华东师范大学 基于循环神经网络与注意力机制的金融用户画像方法
CN114707154A (zh) * 2022-04-06 2022-07-05 广东技术师范大学 一种基于序列模型的智能合约可重入漏洞检测方法及系统
CN117236436A (zh) * 2023-11-16 2023-12-15 江西师范大学 基于外部知识的跨句多层双向网络事件检测方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108763284A (zh) * 2018-04-13 2018-11-06 华南理工大学 一种基于深度学习和主题模型的问答系统实现方法
CN109472031A (zh) * 2018-11-09 2019-03-15 电子科技大学 一种基于双记忆注意力的方面级别情感分类模型及方法
CN109472024A (zh) * 2018-10-25 2019-03-15 安徽工业大学 一种基于双向循环注意力神经网络的文本分类方法
CN110110063A (zh) * 2019-04-30 2019-08-09 南京大学 一种基于哈希学习的问答系统构建方法
CN110147452A (zh) * 2019-05-17 2019-08-20 北京理工大学 一种基于层级bert神经网络的粗粒度情感分析方法
CN110334210A (zh) * 2019-05-30 2019-10-15 哈尔滨理工大学 一种基于bert与lstm、cnn融合的中文情感分析方法
CN111143563A (zh) * 2019-12-27 2020-05-12 电子科技大学 基于bert与lstm及cnn融合的文本分类方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108763284A (zh) * 2018-04-13 2018-11-06 华南理工大学 一种基于深度学习和主题模型的问答系统实现方法
CN109472024A (zh) * 2018-10-25 2019-03-15 安徽工业大学 一种基于双向循环注意力神经网络的文本分类方法
CN109472031A (zh) * 2018-11-09 2019-03-15 电子科技大学 一种基于双记忆注意力的方面级别情感分类模型及方法
CN110110063A (zh) * 2019-04-30 2019-08-09 南京大学 一种基于哈希学习的问答系统构建方法
CN110147452A (zh) * 2019-05-17 2019-08-20 北京理工大学 一种基于层级bert神经网络的粗粒度情感分析方法
CN110334210A (zh) * 2019-05-30 2019-10-15 哈尔滨理工大学 一种基于bert与lstm、cnn融合的中文情感分析方法
CN111143563A (zh) * 2019-12-27 2020-05-12 电子科技大学 基于bert与lstm及cnn融合的文本分类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张志昌等: "基于IndRNN-Attention的用户意图分类", 《计算机研究与发展》 *
迟海洋等: "基于BERT-BiGRU-Attention的在线健康社区用户意图识别方法", 《河北科技大学学报》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685541A (zh) * 2021-03-11 2021-04-20 中南大学 一种基于多任务学习的社交媒体谣言检测方法
CN112685541B (zh) * 2021-03-11 2021-05-25 中南大学 一种基于多任务学习的社交媒体谣言检测方法
CN113468203A (zh) * 2021-04-29 2021-10-01 华东师范大学 基于循环神经网络与注意力机制的金融用户画像方法
CN113297845A (zh) * 2021-06-21 2021-08-24 南京航空航天大学 一种基于多层次循环神经网络的简历块分类方法
CN114707154A (zh) * 2022-04-06 2022-07-05 广东技术师范大学 一种基于序列模型的智能合约可重入漏洞检测方法及系统
CN114707154B (zh) * 2022-04-06 2022-11-25 广东技术师范大学 一种基于序列模型的智能合约可重入漏洞检测方法及系统
CN117236436A (zh) * 2023-11-16 2023-12-15 江西师范大学 基于外部知识的跨句多层双向网络事件检测方法

Also Published As

Publication number Publication date
CN112416956B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN112416956B (zh) 一种基于bert和独立循环神经网络的问句分类方法
CN110609891B (zh) 一种基于上下文感知图神经网络的视觉对话生成方法
CN109597997B (zh) 基于评论实体、方面级情感分类方法和装置及其模型训练
CN111275521B (zh) 一种基于用户评论与满意层面嵌入的商品推荐方法
CN109271483B (zh) 基于递进式多判别器的问题生成方法
CN108536754A (zh) 基于blstm和注意力机制的电子病历实体关系抽取方法
CN110427461A (zh) 智能问答信息处理方法、电子设备及计算机可读存储介质
CN110826338B (zh) 一种单选择门与类间度量的细粒度语义相似识别的方法
CN112597302B (zh) 基于多维评论表示的虚假评论检测方法
CN111966812A (zh) 一种基于动态词向量的自动问答方法和存储介质
CN112256876A (zh) 基于多记忆注意力网络的方面级情感分类模型
CN109933792A (zh) 基于多层双向lstm和验证模型的观点型问题阅读理解方法
CN110415071A (zh) 一种基于观点挖掘分析的汽车竞品对比方法
CN111368082A (zh) 一种基于层次网络的领域自适应词嵌入的情感分析方法
CN112215001A (zh) 一种谣言识别方法及系统
CN109710760A (zh) 短文本的聚类方法、装置、介质及电子设备
CN113255366A (zh) 一种基于异构图神经网络的方面级文本情感分析方法
CN115563989A (zh) 基于自适应上下文推理机制的内容倾向性评判及预测方法
CN115270752A (zh) 一种基于多层次对比学习的模板句评估方法
CN113486174B (zh) 模型训练、阅读理解方法、装置、电子设备及存储介质
CN111538841A (zh) 基于知识互蒸馏的评论情感分析方法、装置及系统
CN113705207A (zh) 语法错误识别方法及装置
CN117094835A (zh) 面向社交媒体内容的多目标群体分类方法
CN116167353A (zh) 一种基于孪生长短期记忆网络的文本语义相似度度量方法
CN115840815A (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
GR01 Patent grant
GR01 Patent grant