基于BERT-TextCNN的云ERP社区跨领域问题分类方法技术

技术编号:34947590 阅读:15 留言:0更新日期:2022-09-17 12:23
本发明专利技术公开了一种基于BERT

【技术实现步骤摘要】
基于BERT

TextCNN的云ERP社区跨领域问题分类方法


[0001]本专利技术涉及文本分类领域,具体是一种基于BERT

TextCNN的云ERP社区跨领域问题分类方法。

技术介绍

[0002]云ERP社区问题分类是云ERP社区运行服务的关键环节,是云ERP生态圈所有个体和组织灵活、快捷的交流和分享的重要保障。然而,区别于娱乐、购物等普通生活类社区,云ERP社区具有极强的领域性、技术性、专业性特征,且涉及的主体多、范围广、内容丰富、问题杂,问题分类难,给云ERP社区的运行保障工作带来巨大困难与挑战。
[0003]考虑到云ERP社区的开放性、涉众群体的多样化和用户需求的多变性,在时间和空间维度上的领域数据众多,包括了云ERP领域知识库数据和交互数据。其中知识库数据包含39个云ERP领域的知识文档、开发者手册等;社区用户交互数据包含了人工客服会话数据、社区评论互动数据等。如此多的数据需要有效的分类,目前,目前在社区用户提问时仅将问题进行相关性检索,未在检索前对问题进行有效分类,而且问答流程仅为一问一答,答案生成难以控制,使得回复效率较低。

技术实现思路

[0004]本专利技术的目的在于克服上述
技术介绍
中提出的问题,提供了一种基于BERT

TextCNN的云ERP社区跨领域问题分类方法,该方法能够对云ERP社区问题进行有效分类。
[0005]本专利技术的目的主要通过以下技术方案实现:
[0006]基于BERT

TextCNN的云ERP社区跨领域问题分类方法,通过(1)对云ERP生态社区问题文本进行预处理;(2)将问题文本向量输入BERT预训练模型提取特征,对问题文本的特征进行基于字符级别的强抽取;(3)将问题特征向量输入文本卷积神经网络TextCNN中,捕捉临近词之间的关系;(4)通过全连接层输出问题分类结果。
[0007]针对现有云ERP社区问答中存在的问题未分类、文本特征未有效提取等问题,针对云ERP社区问题文本需有效分类的问题,提出一种基于BERT

TextCNN的云ERP社区跨领域问题分类方法,该方法搭建模型,模型整体为端到端的文本分类结构,模型使用BERT预训练模型训练模型参数,通过深层模型学习到更好的文本特征。在此基础上,将特征向量输入文本卷积神经网络TextCNN中,捕捉临近词之间的关系,得到较好的分类效果,并通过实验验证该模型的有效性。
[0008]本分类方法用于对输入的问题进行分类,并控制下一步执行流程的方向。在该模块中,输入的问题将被分为知识库问题和生成式问题两类,前者多为一些简单且重复的问题,问句结构多为主谓宾形式;后者是从真实的云ERP社区人工客服对话场景中提取得到,可得到更加灵活和优质的回复。同时,也能对问答流程进行控制,降低了回复的不确定性和随机性。
[0009]步骤(1)中对云ERP生态社区问题文本进行预处理时,首先从数据库中抽取云ERP
知识库和客服数据的问题文本,然后通过Python脚本程序对问题文本自动打标,将知识库类问题和生成类问题分别标记为“1”类和“0”类,构建云ERP领域问题分类数据集。
[0010]步骤(2)中BERT预训练模型由输入表示层、Transformer编码器和输出层构成。
[0011]Transformer编码器的词嵌入输入层(Input Embedding)用于输入词向量,并在进入编码器之前,加入了位置编码(Positional Encoding)识别语言顺序,位置编码是通过三角函数学习出来的,如式(1)和式(2)所示:
[0012][0013][0014]式(1)中pos代表语句中字的位置,i表示词向量维数,d
model
表示编码器模型维数,通过sin和cos函数便函提供模型位置信息。
[0015]Transformer编码器的多头自注意力层(Multi

Head Self

Attention)为自注意力机制随机初始化多组权重向量,其原理如式(3)所示,初始化三个权重矩阵Query(Q)查询矩阵、Key(K)键矩阵、Value(V)值矩阵,QK
T
矩阵乘法得到注意力矩阵,用将其表示成标准正态分布,得到softmax归一化后的结果给值矩阵V注意力权重,得到最后的自注意力:
[0016][0017]Transformer编码器的求和与层归一化(Add&Normalize),通过残差连接将输入词嵌入与注意力向量相加,再通过层归一化将网络的隐藏层转换为标准正态分布,起到加速收敛的作用,计算原理如式(4)和式(5)所示:
[0018]X
attention
=X+X
attention
ꢀꢀ
(4)
[0019][0020]式中X
attention
代表自注意力向量,X代表位置编码后的词向量输入,LayerNorm(x
i
)代表层归一化函数,α和β为两个训练设置的初始化常数项参数,u
L
为以矩阵行为单位求的均值,ε常数项是为了避免分母为零。
[0021]Transformer编码器的前馈神经网络,是向量通过两层线性全连接网络后由激活函数得到的,如式(6)所示,Linear表示线性映射,Activate表示激活函数:
[0022]X
hidden
=Activate(Linear(Linear(X
attention
))
ꢀꢀ
(6)
[0023]通过重复(a)到(d)的编码过程,最终得到X
hidden
隐藏层向量,传入下一个编码器Encoder进行编码,BERT通过双向Transformer编码器表征,使其特征编码能力达到最优。
[0024]步骤(3)中采用TextCNN作为下游分类器来构建BERT

TextCNN问题分类模型,首先通过BERT做词嵌入,得到嵌入矩阵,TextCNN将嵌入矩阵看成一幅图像,并通过一维卷积层和时序最大池化层提取特征,TextCNN中定义了多个一维卷积核对输入分别做卷积计算,然后通过宽度不同的卷积核捕捉不同个数相邻词的相关性,在此基础上对输出的所有通道分别做时序最大池化,池化输出值拼接为向量,最后,通过全连接层对特征进行压缩作为类别
输出,再将预测的结果与实际的结果进行比较,通过反向传播的方式更新网络参数,在整个卷积过程中使用丢弃层(dropout)应对过拟合,计算公式(7)如下:
[0025][0026]式中X
i
∈R
k
表示语句中第i个k维词向量,X
1:n
为一整条语句的表示,通过串联运算符计算得到式(8):
[0027]C
i
=f(W
·
X<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于BERT

TextCNN的云ERP社区跨领域问题分类方法,其特征在于,包括以下步骤:(1)对云ERP生态社区问题文本进行预处理;(2)将问题文本向量输入BERT预训练模型提取特征,对问题文本的特征进行基于字符级别的强抽取;(3)将问题特征向量输入文本卷积神经网络TextCNN中,捕捉临近词之间的关系;(4)通过全连接层输出问题分类结果。2.根据权利要求1所述的基于BERT

TextCNN的云ERP社区跨领域问题分类方法,其特征在于,所述步骤(1)中对云ERP生态社区问题文本进行预处理时,首先从数据库中抽取云ERP知识库和客服数据的问题文本,然后通过Python脚本程序对问题文本自动打标,将知识库类问题和生成类问题分别标记为“1”类和“0”类,构建云ERP领域问题分类数据集。3.根据权利要求1所述的基于BERT

TextCNN的云ERP社区跨领域问题分类方法,其特征在于,所述步骤(2)中BERT预训练模型由输入表示层、Transformer编码器和输出层构成。4.根据权利要求3所述的基于BERT

TextCNN的云ERP社区跨领域问题分类方法,其特征在于,所述Transformer编码器的词嵌入输入层(Input Embedding)用于输入词向量,并在进入编码器之前,加入了位置编码(Positional Encoding)识别语言顺序,位置编码是通过三角函数学习出来的,如式(1)和式(2)所示:学习出来的,如式(1)和式(2)所示:式(1)中pos代表语句中字的位置,i表示词向量维数,d
model
表示编码器模型维数,通过sin和cos函数便函提供模型位置信息。5.根据权利要求3所述的基于BERT

TextCNN的云ERP社区跨领域问题分类方法,其特征在于,所述Transformer编码器的多头自注意力层(Multi

Head Self

Attention)为自注意力机制随机初始化多组权重向量,其原理如式(3)所示,初始化三个权重矩阵Query(Q)查询矩阵、Key(K)键矩阵、Value(V)值矩阵,QK
T
矩阵乘法得到注意力矩阵,用将其表示成标准正态分布,得到softmax归一化后的结果给值矩阵V注意力权重,得到最后的自注意力:6.根据权利要求3所述的基于BERT

TextCNN的云ERP社区跨领域问题分类方法,其特征在于,所述Transformer编码器的求和与层归一化(Add&amp;Normalize),通过残差连接将输入词嵌入与注意力向量相加,再通过层归一化将网络的隐藏层转换为标准正态分布,起到加速收敛的作用,计算原理如式(4)和式(5)所示:X
attention
=X+X
attention
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)式中X
attention
代表自注意力向量,X代表位置编码后的词向量输入,LayerNorm(x
i
)代表
层归一化函数,α和β为两个训练设置的初始化常数项参数,u
L
为以矩阵行为单位求的均值,ε常数项是为了避免分母为零。7.根据权利要求3所述的基于BERT

TextCNN的云ERP社区跨领域问题分类方法,其特征在于,所述Transformer编码器的前馈神经网络,是向量通过两层线性全连接网络后由激活函数得到的,如式(6)所示,...

【专利技术属性】
技术研发人员:廖伟智黄明彤阴艳超
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1