CN113434699A - Bert模型的预训练方法、计算机装置和存储介质 - Google Patents
Bert模型的预训练方法、计算机装置和存储介质 Download PDFInfo
- Publication number
- CN113434699A CN113434699A CN202110745018.4A CN202110745018A CN113434699A CN 113434699 A CN113434699 A CN 113434699A CN 202110745018 A CN202110745018 A CN 202110745018A CN 113434699 A CN113434699 A CN 113434699A
- Authority
- CN
- China
- Prior art keywords
- matrix
- knowledge
- bert model
- attention mechanism
- training
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- 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/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- 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
- 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
-
- 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
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Animal Behavior & Ethology (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种BERT模型的预训练方法,包括加载BERT模型,BERT模型调用多个注意力机制模块,获取掩模矩阵,将训练数据、知识矩阵以及掩模矩阵分别输入至各注意力机制模块进行处理,获取各注意力机制模块的输出,对各注意力机制模块的输出进行字符串拼接和线性化处理,获得语义向量,根据语义向量与掩模矩阵的比较结果,确定训练损失值,对注意力机制模块的网络参数进行调整等步骤。本发明可以将知识矩阵直接嵌入到BERT模型的多头注意力机制中,即使不引入使用外部知识的预训练任务对BERT模型进行预训练,也可以增强BERT模型在文本匹配任务中的同义词理解和识别能力。本发明可广泛应用于自然语言技术领域。
Description
技术领域
本发明涉及自然语言技术领域,尤其是一种BERT模型的预训练方法、计算机装置和存储介质。
背景技术
BERT全称为Bidirectional Encoder Representations from Transformers,是一种基于Transformers架构以及编码器的深度学习模型。BERT模型在经过无标注的训练数据预训练后,只需要在应用到具体的下游处理任务之前,针对具体的下游处理任务使用相应的样本数据来进行少量训练,即可具有处理下游处理任务的能力,BERT模型这一特点很适合应用到自然语言处理(NLP,Natural Language Processing)等领域。目前,BERT模型在应用到自然语言处理时,尚欠缺对同义词的理解和利用能力,一些相关技术基于原始的BERT模型进行了改进,以增强BERT模型对同义词的理解和利用能力,这些相关技术包括K-BERT模型和ERNI E模型等。K-BERT模型和ERNIE模型的基本原理是在对BERT模型进行预训练的过程中引入额外的使用外部知识的预训练任务,但是,这些相关技术引入额外的预训练任务后,会影响BERT模型本身的结构和参数,导致BERT模型的性能变化的方向和幅度不稳定。
发明内容
针对上述的如果引入额外的预训练任务训练BERT模型,将影响BERT模型本身的结构和参数,导致BERT模型的性能变化的方向和幅度不稳定等至少一个技术问题,本发明的目的在于提供一种BERT模型的预训练方法、计算机装置和存储介质,从而避免引入使用外部知识的预训练任务对BERT模型进行预训练,可以耗用更少的预训练时间,另外,在缺乏训练数据时也能获得明显的性能优势。
一方面,本发明实施例提供一种BERT模型的预训练方法,包括:
获取训练数据;
获取同义词知识图谱;
对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵;
根据所述训练数据确定掩模矩阵;
加载BERT模型,所述BERT模型包括多个注意力机制模块;
对于每个所述注意力机制模块,将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果;
将全部所述注意力机制模块的输出结果进行字符串拼接和线性化处理,得到语义向量;
根据所述语义向量与所述掩模矩阵确定训练损失值;
根据所述训练损失值对部分或全部所述注意力机制模块的网络参数进行调整。
进一步地,所述将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果,包括:
获取所述训练数据对应的查询矩阵、键矩阵和值矩阵;
将所述查询矩阵、所述键矩阵和所述值矩阵输入至所述注意力机制模块,使得所述注意力机制模块对所述查询矩阵、所述键矩阵和所述值矩阵进行参数调整;
根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
对所述注意力分值进行逻辑回归处理得到逻辑回归结果;
将所述逻辑回归结果与调整后的值矩阵的乘积作为所述注意力机制模块的输出结果。
进一步地,所述获取同义词知识图谱,包括:
从WordNet知识库中获取多个词语;
标记所述多个词语之间的关系,其中,所述关系包括同义关系或非同义关系;
以各个所述词语作为实体,根据各个所述实体之间的关系,建立所述同义词知识图谱。
进一步地,所述对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵,包括:
使用TransE算法,获取所述同义词知识图谱中的各个所述实体的词向量;
以所述词向量作为元素,组成所述知识矩阵。
进一步地,在将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理之前,所述方法还包括:
对所述知识矩阵中的各个所述词向量进行如下变换:
ωei=TanH(W2*Relu(W1*wkei));
其中,wkei为所述知识矩阵中的第i个所述词向量变换前的值,ωei为所述知识矩阵中的第i个所述词向量变换后的值,W1和W2设定的为权重系数矩阵。
进一步地,所述根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值,包括:
使用如下公式根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
socres=QWi Q(KWi K)T⊙G+MASK;
其中,socres表示所述注意力分值,Q表示所述查询矩阵,K表示所述键矩阵,Wi Q和Wi K表示第i个所述注意力机制模块的参数,G表示所述知识矩阵,MASK表示所述掩模矩阵,⊙表示矩阵逐元素相乘运算。
进一步地,所述对所述注意力分值进行逻辑回归处理得到逻辑回归结果,包括:
根据所述键矩阵的维度值,对所述注意力分值进行归一化处理;
将经过归一化处理的所述注意力分值输入到softmax分类器,得到所述softmax分类器的输出值;
将所述softmax分类器的输出值作为逻辑回归结果。
进一步地,所述BERT模型包括的所述注意力机制模块的数量与所述知识矩阵的规模正相关。
另一方面,本发明实施例还提供一种计算机装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行本发明的实施例中的BERT模型的预训练方法。
另一方面,本发明实施例还提供一种存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行本发明的实施例中的BERT模型的预训练方法。
本发明的有益效果包括:实施例中的对BERT模型的预训练方法,通过在对BERT模型的预训练过程中,将训练数据、知识矩阵以及掩模矩阵分别输入至BERT模型中的各注意力机制模块进行处理,可以将知识矩阵所包含的同义词语义知识直接嵌入到BERT模型的多头注意力机制中,即使不引入使用外部知识的预训练任务对BERT模型进行预训练,也可以增强BERT模型在文本匹配任务中的同义词理解和识别能力,可以避免引入使用外部预训练任务影响BERT模型本身的结构和参数,保持BERT模型的性能及其变化的稳定。由于可以不引入使用外部知识的预训练任务对BERT模型进行预训练,因此可以在获得相同或者更佳的文本匹配任务同义词理解和识别能力的情况下,耗用更少的预训练时间,在缺乏训练数据时也能获得明显的性能优势。
附图说明
图1为本发明的实施例中BERT模型的预训练方法的流程图;
图2为本发明的实施例中对BERT模型进行预训练的原理图;
图3为本发明的实施例中BERT模型的工作原理图;
图4为本发明的实施例中执行BERT模型的预训练方法的计算机装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
本实施例中,参照图1,BERT模型的预训练方法包括以下步骤:
S1.获取训练数据;
S2.获取同义词知识图谱;
S3.对同义词知识图谱进行词向量嵌入处理得到知识矩阵;
S4.根据训练数据确定掩模矩阵;
S5.加载BERT模型;其中,BERT模型包括多个注意力机制模块;
S6.对于每个注意力机制模块,将训练数据、知识矩阵以及掩模矩阵输入至注意力机制模块进行处理,得到注意力机制模块的输出结果;
S7.将全部注意力机制模块的输出结果进行字符串拼接和线性化处理,得到语义向量;
S8.根据语义向量与掩模矩阵确定训练损失值;
S9.根据训练损失值对部分或全部注意力机制模块的网络参数进行调整。
本实施例中,对BERT模型进行预训练的原理如图2所示,图2中,BERT模型包括前馈网了以及多个注意力机制模块形成的多头注意力机制。图2中,在对BERT模型进行预训练的过程中,引入同义词知识图谱来增强BERT模型对同义词知识的理解,从而提高经过预训练后所得的BERT模型对同义词理解和利用的能力。
步骤S1中,可以获取无标记的文本数据作为训练数据。
步骤S2中,从WordNet知识库中收集多个词语,标记各词语之间的关系,即标记两个不同词语之间属于同义关系或者属于非同义关系,然后以各词语作为实体,根据各实体之间的关系,建立同义词知识图谱,即同义词知识图谱中的各实体或者节点分别对应从WordNet知识库中收集到的一个词语,节点与节点之间的边便是对应两个词语之间的关系。建立同义词知识图谱之后,可以使用n-gram字符串比较的方法,从训练数据中提取实体,以及从同义词知识图谱中提取实体。
步骤S3中,可以使用TransE算法等词嵌入算法对同义词知识图谱进行词向量嵌入处理。词向量嵌入处理的原理是将同义词知识图谱中的实体对应的词语的语义信息表示为稠密低维实值向量,对同义词知识图谱中每个实体进行词向量嵌入处理所得的结果为词向量,当对多个实体进行词向量嵌入处理,获得的多个词向量可以作为矩阵的元素组成矩阵,所组成的矩阵可以称为知识矩阵。
TransE算法的原理是,将同义词知识图谱中的各实体转换成相应的词向量,转换之后如果把两个实体中的一个看做头实体,另一个看做尾实体,那么头实体对应的词向量可以表示为h,尾实体对应的词向量可以表示为t,头实体与尾实体之间的关系可以表示为向量l,头实体h、尾实体t、头实体与尾实体之间的关系l可以表示为三元组(h,l,t),并且满足h+l=t。l的大小可以表示头实体h与尾实体t之间的词义关系的远近,因此TransE算法的目标是,将两个词语转换所得的词向量分别视为头实体h和尾实体t,头实体h与尾实体t、之间的关系l应该满足h+l=t,并且两个词语之间的词义关系越接近,则l的大小越小,反之l的大小越大。
基于上述原理,本实施例中的TransE算法在使用前可以先进行训练。在训练过程中,定义TransE算法中的距离公式为定义TransE算法中的损失函数为L=∑(h,l,t)∈S∑(h′,l′,t′)∈S′(h,l,t)[γ+d(h+l,t)-d(h′+l,t′)]+,其中[x]+表示如果x大于0则取x的原值,如果x小于0则取0,S′(h,l,t)表示训练过程中引入的被破坏的三元组,被破坏的三元组满足S′(h,l,t)={(h′,l,t)|h′∈E}∪{(h,l,t′)t′∈E},被破坏的三元组是将原三元组中h的替换成h′,或者将原三元组中t的替换成t′得到的。训练TransE算法时,训练目标是期望原三元组对应的损失函数更小,被破坏的三元组对应的损失函数更大。
步骤S5中,所加载的BERT模型的工作原理如图3所示,BERT模型可以调用多个注意力机制模块,具体地,BERT模型调用的注意力机制模块的数量与知识矩阵的规模正相关,即知识矩阵的规模越大则BERT模型调用的注意力机制模块的数量越多。具体地,BERT模型调用的注意力机制模块的数量可以等于知识矩阵的规模、与知识矩阵的规模成正比例、与知识矩阵的规模满足幂函数关系、指数函数关系、对数函数关系等。其中知识矩阵的规模可以是指知识矩阵的行数、列数、行数与列数的乘积、基向量的个数等。一般地,知识矩阵的规模越大则包含的同义词语义信息越丰富,而相应地增加BERT模型调用的注意力机制模块的数量,则有利于BERT模型在预训练过程中捕捉学习到更丰富的同义词语义信息。从平衡资源消耗以及对同义词语义信息利用程度的角度看,根据知识矩阵的规模确定BERT模型调用的注意力机制模块的数量时,可以采用注意力机制模块的数量增长小于知识矩阵的规模增长的正相关数量关系,例如BERT模型调用的注意力机制模块的数量是知识矩阵的规模的正比例函数、幂函数、指数函数,且正比例函数中的系数大于0且小于1、幂函数中的幂次数大于0且小于1、指数函数中的底数大于1且小于2等,从而既可以保持BERT模型调用的注意力机制模块的数量与知识矩阵的规模之间的正相关关系,又可以避免知识矩阵的规模增长时BERT模型调用的注意力机制模块的数量增长过快而消耗过多的计算资源。从尽量挖掘知识矩阵中的同义词语义信息的角度看,根据知识矩阵的规模确定BERT模型调用的注意力机制模块的数量时,可以采用注意力机制模块的数量增长大于知识矩阵的规模增长的正相关数量关系,例如BERT模型调用的注意力机制模块的数量是知识矩阵的规模的正比例函数、幂函数、指数函数,且正比例函数中的系数大于1、幂函数中的幂次数大于1、指数函数中的底数大于2等,从而可以在知识矩阵的规模增长时BERT模型调用更多的注意力机制模块的数量,以更大的算力学习更丰富的同义词语义信息。
步骤S5中,每个注意力机制模块所进行的数据处理可以基于相似的原理,只是处理过程或者结果中的具体参数不同,因此可以只对其中一个注意力机制模块的处理过程进行说明。
由于知识矩阵提供的是同义词知识图谱中的实体的向量空间表示,而现有的BERT模型主要用于语言表征,由于知识表征和语言表征之间不兼容,而BERT模型不能同时在两个异构向量空间上进行运算,在将知识矩阵输入到各注意力机制进行处理之前,可以对知识矩阵进行转换处理。具体地,在各注意力机制模块对知识矩阵进行处理之前,对知识矩阵中的各词向量进行如下变换:
ωei=TanH(W2*Relu(W1*wkei));
其中,wkei为知识矩阵中的第i个词向量变换前的值,ωei为知识矩阵中的第i个词向量变换后的值,W1和W2设定的为权重系数矩阵,其中每个注意力机制模块可以分别设定不同的W1和W2,即不同的注意力机制模块设定的W1可以不同,不同的注意力机制模块设定的W2也可以不同。也就是对于知识矩阵中的第i个词向量wkei,使用公式ωei=TanH(W2*Relu(W1*wkei))进行变换后得到ωei,使用ωei来替换wkei,直至知识矩阵中的所有词向量均被变换和替换。经过上述变换处理的知识矩阵能够被引入到BERT模型的向量空间,从而能被注意力机制模块处理。
参照图3,步骤S6具体包括以下步骤:
S601.获取训练数据对应的查询矩阵Q、键矩阵K、值矩阵V;
S602.将查询矩阵Q、键矩阵K、值矩阵V输入至各注意力机制模块;
S603.各注意力机制模块分别对所输入的数据进行包含以下步骤S60301-S60304的处理过程:
S60301.使用本注意力机制模块的网络参数对查询矩阵Q、键矩阵K、值矩阵V进行调整;
S60302.根据掩模矩阵MASK、知识矩阵G以及调整后的查询矩阵和键矩阵确定注意力分值;
S60303.对注意力分值进行逻辑回归;
S60304.以逻辑回归的结果与调整后的值矩阵相乘所得的值作为本注意力机制模块的输出。
步骤S6中,每个注意力机制模块将知识矩阵G引入到注意力分值socres的计算过程中,以修正BERT的底层注意力计算。具体地,第i个注意力机制模块设定参数Wi Q、Wi K和Wi V,获取训练数据对应的查询矩阵Q、键矩阵K、值矩阵V,获取掩模矩阵MASK,使用本注意力机制模块的网络参数Wi Q、Wi K和Wi V,通过矩阵相乘对查询矩阵Q、键矩阵K、值矩阵V进行调整,获得Wi QQ、Wi KK和Wi VV;根据掩模矩阵MASK、知识矩阵G以及调整后的查询矩阵Wi QQ和键矩阵Wi KK确定注意力分值socres。具体地,注意力分值socres的计算公式为socres=QWi Q(KWi K)T⊙G+MASK,其中QWi Q(KWi K)T⊙G表示将QWi Q(KWi K)T和知识矩阵G这两个矩阵进行逐元素相乘运算,例如,知识矩阵G的维度与QWi Q(KWi K)T相同,那么QWi Q(KWi K)T⊙G所得矩阵中每个位置的元素的值等于知识矩阵G与矩阵QWi Q(KWi K)T相同位置的元素的值相乘。
公式socres=QWi Q(KWi K)T⊙G+MASK中的掩模矩阵MASK可以将注意力机制模块训练为遮蔽语言模型(Masked Language Model,MLM),通过加入掩模矩阵MASK,可以根据掩模矩阵MASK中不同的元素的值,屏蔽QWi Q(KWi K)T⊙G所得矩阵中特定位置的元素。
步骤S6中,注意力机制模块对注意力分值socres进行逻辑回归。具体地,注意力机制模块根据键矩阵K的维度值dk,对注意力分值socres进行归一化处理,归一化处理后得到将经过归一化处理的注意力分值输入到softmax分类器中,获取softmax分类器的输出值作为逻辑回归的结果。当设定BERT模型中的注意力机制模块执行MLM任务,也就是根据上下文预测被掩模矩阵MASK屏蔽的元素,那么softmax分类器的输出值可以表示注意力机制模块预测到的被掩模矩阵MASK屏蔽的元素的正确概率。
步骤S6的最后,注意力机制模块以softmax分类器的输出值作为权重,对值矩阵V经过注意力机制模块参数Wi V调整后的矩阵Wi VV进行加权求和,具体地可以使用矩阵相乘实现,从而获得即第i个注意力机制模块的输出结果为
步骤S7中,参照图3,各注意力机制模块的输出进行字符串拼接和线性化处理,经过前馈网络输出,从而获得语义向量。其中,对h个注意力机制模块的输出进行字符串拼接的结果为Concat(head1,head2,…,headi,…,headh),使用设定的矩阵WO对字符串拼接的结果进行线性化,得到语义向量MultiHead(Q,K,V)=Concat(head1,head2,…,headi,…,headh)WO。
步骤S8中,可以根据语义向量
MultiHead(Q,K,V)=Concat(head1,head2,…,headi,…,headh)WO确定BERT模型对训练数据中被掩模矩阵MASK屏蔽的元素的预测结果,根据掩模矩阵MASK与训练数据可以确定训练数据中被掩模矩阵MASK屏蔽的元素的实际情况,将预测结果与实际情况进行对比,通过计算相似度等量化值可以确定本轮训练损失值。
步骤S9中,将训练损失值与预设的损失阈值进行对比,根据训练损失值与预设的损失阈值的差值的符号和大小,对部分或全部注意力机制模块的Wi Q、Wi K、Wi V等网络参数进行调整。参照图1,执行完步骤S9之后,如果训练损失值大于损失阈值,那么可以返回至从步骤S6开始执行对各注意力机制模块的预训练过程,如果训练损失值小于损失阈值,那么可以结束对BERT模型中各注意力机制模块的预训练过程。
完成预训练的BERT模型,可以在应用于机器翻译、同义词语义匹配等具体的下游任务前,再针对具体的下游任务进行少量训练,训练完成后再投入具体的下游任务中使用。由于已完成了预训练过程,因此训练过程只需要使用较少的训练数据以及消耗较少的训练时间,从而加快训练速度。
实施例中的对BERT模型的预训练方法,通过根据掩模矩阵MASK、知识矩阵G以及调整后的查询矩阵QWi Q和键矩阵KWi K确定注意力分值socres,具体地,通过在步骤S6中使用公式socres=QWi Q(KWi K)T⊙G+MASK计算注意力分值socres,可以将知识矩阵G所包含的同义词语义知识直接嵌入到BERT模型的多头注意力机制中,即使不引入使用外部知识的预训练任务对BERT模型进行预训练,也可以增强BERT模型在文本匹配任务中的同义词理解和识别能力,可以避免引入使用外部预训练任务影响BERT模型本身的结构和参数,保持BERT模型的性能及其变化的稳定。由于可以不引入使用外部知识的预训练任务对BERT模型进行预训练,因此可以在获得相同或者更佳的文本匹配任务同义词理解和识别能力的情况下,耗用更少的预训练时间,在缺乏训练数据时也能获得明显的性能优势。
本实施例中,BERT模型的预训练系统包括数据获取模块和模型训练模块,其中数据获取模块和模型训练模块均为具有相应功能的硬件模块、软件模块或者硬件和软件的组合。其中,数据获取模块可以执行本实施例中BERT模型的预训练方法中的步骤S1-S3,即获取训练数据,获取同义词知识图谱,对同义词知识图谱进行词向量嵌入处理,从而获得知识矩阵;模型训练模块可以执行本实施例中BERT模型的预训练方法中的步骤S5-S9,即加载BERT模型;BERT模型包括多个注意力机制模块;各注意力机制模块分别进行以下处理:获取训练数据对应的查询矩阵、键矩阵、值矩阵,获取掩模矩阵,使用本注意力机制模块的网络参数对查询矩阵、键矩阵、值矩阵进行调整,根据掩模矩阵、知识矩阵以及调整后的查询矩阵和键矩阵确定注意力分值,对注意力分值进行逻辑回归,以逻辑回归的结果与值矩阵相乘所得的值作为本注意力机制模块的输出;对各注意力机制模块的输出进行字符串拼接和线性化处理,获得语义向量;根据语义向量与掩模矩阵的比较结果,确定训练损失值;根据训练损失值,对部分或全部注意力机制模块的网络参数进行调整。
本实施例中,通过运行BERT模型的预训练系统以执行BERT模型的预训练方法,可以实现与本发明实施例中的BERT模型的预训练方法相同的技术效果。
本发明的实施例中,可以使用具有图4所示结构的计算机装置来执行步骤S1-S9,其中,计算机装置包括存储器6001和处理器6002,其中存储器6001用于存储至少一个程序,处理器6002用于加载至少一个程序以执行本发明实施例中的BERT模型的预训练方法。通过运行该计算机装置,可以实现与本发明实施例中的BERT模型的预训练方法相同的技术效果。
本发明的实施例中,提供一种存储介质,其中存储有处理器可执行的程序,其中处理器可执行的程序在由处理器执行时用于执行本发明实施例中的BERT模型的预训练方法。通过使用该存储介质,可以实现与本发明实施例中的BERT模型的预训练方法相同的技术效果。
需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本实施例所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本实施例说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本实施例所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本实施例所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本实施例描述的过程的操作,除非本实施例另外指示或以其他方式明显地与上下文矛盾。本实施例描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本实施例所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本实施例所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
Claims (10)
1.一种BERT模型的预训练方法,包括:
获取训练数据;
获取同义词知识图谱;
对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵;
根据所述训练数据确定掩模矩阵;
加载BERT模型,所述BERT模型包括多个注意力机制模块;
对于每个所述注意力机制模块,将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果;
将全部所述注意力机制模块的输出结果进行字符串拼接和线性化处理,得到语义向量;
根据所述语义向量与所述掩模矩阵确定训练损失值;
根据所述训练损失值对部分或全部所述注意力机制模块的网络参数进行调整。
2.根据权利要求1所述的BERT模型的预训练方法,其特征在于,所述将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果,包括:
获取所述训练数据对应的查询矩阵、键矩阵和值矩阵;
将所述查询矩阵、所述键矩阵和所述值矩阵输入至所述注意力机制模块,使得所述注意力机制模块对所述查询矩阵、所述键矩阵和所述值矩阵进行参数调整;
根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
对所述注意力分值进行逻辑回归处理得到逻辑回归结果;
将所述逻辑回归结果与调整后的值矩阵的乘积作为所述注意力机制模块的输出结果。
3.根据权利要求1所述的BERT模型的预训练方法,其特征在于,所述获取同义词知识图谱,包括:
从WordNet知识库中获取多个词语;
标记所述多个词语之间的关系,其中,所述关系包括同义关系或非同义关系;
以各个所述词语作为实体,根据各个所述实体之间的关系,建立所述同义词知识图谱。
4.根据权利要求3所述的BERT模型的预训练方法,其特征在于,所述对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵,包括:
使用TransE算法,获取所述同义词知识图谱中的各个所述实体的词向量;
以所述词向量作为元素,组成所述知识矩阵。
5.根据权利要求3所述的BERT模型的预训练方法,其特征在于,在将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理之前,所述方法还包括:
对所述知识矩阵中的各个所述词向量进行如下变换:
ωei=TanH(W2*Relu(W1*wkei));
其中,wkei为所述知识矩阵中的第i个所述词向量变换前的值,ωei为所述知识矩阵中的第i个所述词向量变换后的值,W1和W2设定的为权重系数矩阵。
6.根据权利要求2所述的BERT模型的预训练方法,其特征在于,所述根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值,包括:
使用如下公式根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
socres=QWi Q(KWi K)T⊙G+MASK;
其中,socres表示所述注意力分值,Q表示所述查询矩阵,K表示所述键矩阵,Wi Q和Wi K表示第i个所述注意力机制模块的参数,G表示所述知识矩阵,MASK表示所述掩模矩阵,⊙表示矩阵逐元素相乘运算。
7.根据权利要求6所述的BERT模型的预训练方法,其特征在于,所述对所述注意力分值进行逻辑回归处理得到逻辑回归结果,包括:
根据所述键矩阵的维度值,对所述注意力分值进行归一化处理;
将经过归一化处理的所述注意力分值输入到softmax分类器,得到所述softmax分类器的输出值;
将所述softmax分类器的输出值作为逻辑回归结果。
8.根据权利要求1至7任一项所述的BERT模型的预训练方法,其特征在于,所述BERT模型包括的所述注意力机制模块的数量与所述知识矩阵的规模正相关。
9.一种计算机装置,其特征在于,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行权利要求1至8任一项所述的BERT模型的预训练方法。
10.一种存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行如权利要求1至8任一项所述的BERT模型的预训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110745018.4A CN113434699B (zh) | 2021-06-30 | 2021-06-30 | 用于文本匹配的bert模型的预训练方法、计算机装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110745018.4A CN113434699B (zh) | 2021-06-30 | 2021-06-30 | 用于文本匹配的bert模型的预训练方法、计算机装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113434699A true CN113434699A (zh) | 2021-09-24 |
CN113434699B CN113434699B (zh) | 2023-07-18 |
Family
ID=77758412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110745018.4A Active CN113434699B (zh) | 2021-06-30 | 2021-06-30 | 用于文本匹配的bert模型的预训练方法、计算机装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113434699B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114021572A (zh) * | 2022-01-05 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 一种自然语言处理方法、装置、设备及可读存储介质 |
CN114330348A (zh) * | 2021-12-31 | 2022-04-12 | 科大讯飞股份有限公司 | 一种命名实体识别方法及装置 |
CN115098623A (zh) * | 2022-06-06 | 2022-09-23 | 中国船舶集团有限公司系统工程研究院 | 一种基于bert的体能训练数据特征提取方法 |
CN115146844A (zh) * | 2022-06-27 | 2022-10-04 | 北京交通大学 | 一种基于多任务学习的多模式交通短时客流协同预测方法 |
CN115617947A (zh) * | 2022-10-17 | 2023-01-17 | 桂林电子科技大学 | 基于预训练模型与提示学习的可解释电力设备查询方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992648A (zh) * | 2019-04-10 | 2019-07-09 | 北京神州泰岳软件股份有限公司 | 基于词迁徙学习的深度文本匹配方法及装置 |
CN111241304A (zh) * | 2020-01-16 | 2020-06-05 | 平安科技(深圳)有限公司 | 基于深度学习的答案生成方法、电子装置及可读存储介质 |
CN112000805A (zh) * | 2020-08-24 | 2020-11-27 | 平安国际智慧城市科技股份有限公司 | 基于预训练模型的文本匹配方法、装置、终端及存储介质 |
WO2021017268A1 (zh) * | 2019-07-30 | 2021-02-04 | 平安科技(深圳)有限公司 | 基于双架构的序列标注方法、装置和计算机设备 |
CN112528637A (zh) * | 2020-12-11 | 2021-03-19 | 平安科技(深圳)有限公司 | 文本处理模型训练方法、装置、计算机设备和存储介质 |
CN112543932A (zh) * | 2020-01-22 | 2021-03-23 | 华为技术有限公司 | 语义分析方法、装置、设备及存储介质 |
WO2021081945A1 (zh) * | 2019-10-31 | 2021-05-06 | 深圳市欢太科技有限公司 | 一种文本分类方法、装置、电子设备及存储介质 |
US20210149993A1 (en) * | 2019-11-15 | 2021-05-20 | Intuit Inc. | Pre-trained contextual embedding models for named entity recognition and confidence prediction |
CN112966106A (zh) * | 2021-03-05 | 2021-06-15 | 平安科技(深圳)有限公司 | 文本的情绪识别方法、装置、设备及存储介质 |
CN113011191A (zh) * | 2021-04-28 | 2021-06-22 | 广东工业大学 | 一种知识联合抽取模型训练方法 |
-
2021
- 2021-06-30 CN CN202110745018.4A patent/CN113434699B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992648A (zh) * | 2019-04-10 | 2019-07-09 | 北京神州泰岳软件股份有限公司 | 基于词迁徙学习的深度文本匹配方法及装置 |
WO2021017268A1 (zh) * | 2019-07-30 | 2021-02-04 | 平安科技(深圳)有限公司 | 基于双架构的序列标注方法、装置和计算机设备 |
WO2021081945A1 (zh) * | 2019-10-31 | 2021-05-06 | 深圳市欢太科技有限公司 | 一种文本分类方法、装置、电子设备及存储介质 |
US20210149993A1 (en) * | 2019-11-15 | 2021-05-20 | Intuit Inc. | Pre-trained contextual embedding models for named entity recognition and confidence prediction |
CN111241304A (zh) * | 2020-01-16 | 2020-06-05 | 平安科技(深圳)有限公司 | 基于深度学习的答案生成方法、电子装置及可读存储介质 |
CN112543932A (zh) * | 2020-01-22 | 2021-03-23 | 华为技术有限公司 | 语义分析方法、装置、设备及存储介质 |
CN112000805A (zh) * | 2020-08-24 | 2020-11-27 | 平安国际智慧城市科技股份有限公司 | 基于预训练模型的文本匹配方法、装置、终端及存储介质 |
CN112528637A (zh) * | 2020-12-11 | 2021-03-19 | 平安科技(深圳)有限公司 | 文本处理模型训练方法、装置、计算机设备和存储介质 |
CN112966106A (zh) * | 2021-03-05 | 2021-06-15 | 平安科技(深圳)有限公司 | 文本的情绪识别方法、装置、设备及存储介质 |
CN113011191A (zh) * | 2021-04-28 | 2021-06-22 | 广东工业大学 | 一种知识联合抽取模型训练方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114330348A (zh) * | 2021-12-31 | 2022-04-12 | 科大讯飞股份有限公司 | 一种命名实体识别方法及装置 |
CN114021572A (zh) * | 2022-01-05 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 一种自然语言处理方法、装置、设备及可读存储介质 |
CN114021572B (zh) * | 2022-01-05 | 2022-03-22 | 苏州浪潮智能科技有限公司 | 一种自然语言处理方法、装置、设备及可读存储介质 |
CN115098623A (zh) * | 2022-06-06 | 2022-09-23 | 中国船舶集团有限公司系统工程研究院 | 一种基于bert的体能训练数据特征提取方法 |
CN115146844A (zh) * | 2022-06-27 | 2022-10-04 | 北京交通大学 | 一种基于多任务学习的多模式交通短时客流协同预测方法 |
CN115617947A (zh) * | 2022-10-17 | 2023-01-17 | 桂林电子科技大学 | 基于预训练模型与提示学习的可解释电力设备查询方法 |
CN115617947B (zh) * | 2022-10-17 | 2023-08-18 | 桂林电子科技大学 | 基于预训练模型与提示学习的可解释电力设备查询方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113434699B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111797893B (zh) | 一种神经网络的训练方法、图像分类系统及相关设备 | |
CN113434699A (zh) | Bert模型的预训练方法、计算机装置和存储介质 | |
CN111368993B (zh) | 一种数据处理方法及相关设备 | |
WO2022068623A1 (zh) | 一种模型训练方法及相关设备 | |
WO2022068627A1 (zh) | 一种数据处理方法及相关设备 | |
CN116307624B (zh) | 一种erp系统的资源调度方法及其系统 | |
CN107977456B (zh) | 一种基于多任务深度网络的多源大数据分析方法 | |
CN114090780A (zh) | 一种基于提示学习的快速图片分类方法 | |
CN112000809B (zh) | 一种文本类别的增量学习方法及装置、可读存储介质 | |
EP4318313A1 (en) | Data processing method, training method for neural network model, and apparatus | |
CN116308754B (zh) | 一种银行信贷风险预警系统及其方法 | |
US20240185086A1 (en) | Model distillation method and related device | |
CN115496144A (zh) | 配电网运行场景确定方法、装置、计算机设备和存储介质 | |
CN114861671A (zh) | 模型训练方法、装置、计算机设备及存储介质 | |
using Relevance | A Meta-heuristic optimization approach for content based image retrieval using relevance feedback method | |
CN114169393A (zh) | 一种图像分类方法及其相关设备 | |
CN116957304B (zh) | 无人机群协同任务分配方法及系统 | |
CN113779360A (zh) | 基于多头问答模型的解题方法、装置、设备及存储介质 | |
CN118096091B (zh) | 一种机械工程项目需求分析方法、系统、设备及介质 | |
CN118656646B (zh) | 自动化大模型融合处理方法、装置、存储介质和电子设备 | |
CN115565051B (zh) | 轻量级人脸属性识别模型训练方法、识别方法及设备 | |
CN114492395B (zh) | 一种面向知识图谱的联合实体消歧方法及系统 | |
US20230229736A1 (en) | Embedding optimization for a machine learning model | |
US20240290065A1 (en) | Method for multimodal embedding and system therefor | |
Westphal | Developing a Neural Network Model for Semantic Segmentation |
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 |