CN113434699B - 用于文本匹配的bert模型的预训练方法、计算机装置和存储介质 - Google Patents
用于文本匹配的bert模型的预训练方法、计算机装置和存储介质 Download PDFInfo
- Publication number
- CN113434699B CN113434699B CN202110745018.4A CN202110745018A CN113434699B CN 113434699 B CN113434699 B CN 113434699B CN 202110745018 A CN202110745018 A CN 202110745018A CN 113434699 B CN113434699 B CN 113434699B
- 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.)
- Active
Links
- 238000012549 training Methods 0.000 title claims abstract description 93
- 238000000034 method Methods 0.000 title claims abstract description 59
- 239000011159 matrix material Substances 0.000 claims abstract description 173
- 230000007246 mechanism Effects 0.000 claims abstract description 92
- 239000013598 vector Substances 0.000 claims abstract description 50
- 238000012545 processing Methods 0.000 claims abstract description 30
- 238000007477 logistic regression Methods 0.000 claims description 18
- 230000000875 corresponding effect Effects 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 230000009466 transformation Effects 0.000 claims description 6
- 230000002596 correlated effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 16
- 238000004590 computer program Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000011143 downstream manufacturing Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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 Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Animal Behavior & Ethology (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (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模型和ERNIE模型等。K-BERT模型和ERNIE模型的基本原理是在对BERT模型进行预训练的过程中引入额外的使用外部知识的预训练任务,但是,这些相关技术引入额外的预训练任务后,会影响BERT模型本身的结构和参数,导致BERT模型的性能变化的方向和幅度不稳定。
发明内容
针对上述的如果引入额外的预训练任务训练BERT模型,将影响BERT模型本身的结构和参数,导致BERT模型的性能变化的方向和幅度不稳定等至少一个技术问题,本发明的目的在于提供一种BERT模型的预训练方法、计算机装置和存储介质,从而避免引入使用外部知识的预训练任务对BERT模型进行预训练,可以耗用更少的预训练时间,另外,在缺乏训练数据时也能获得明显的性能优势。
一方面,本发明实施例提供一种BERT模型的预训练方法,包括:
获取训练数据;
获取同义词知识图谱;
对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵;
根据所述训练数据确定掩模矩阵;
加载BERT模型,所述BERT模型包括多个注意力机制模块;
对于每个所述注意力机制模块,将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果;
将全部所述注意力机制模块的输出结果进行字符串拼接和线性化处理,得到语义向量;
根据所述语义向量与所述掩模矩阵确定训练损失值;
根据所述训练损失值对部分或全部所述注意力机制模块的网络参数进行调整。
进一步地,所述将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果,包括:
获取所述训练数据对应的查询矩阵、键矩阵和值矩阵;
将所述查询矩阵、所述键矩阵和所述值矩阵输入至所述注意力机制模块,使得所述注意力机制模块对所述查询矩阵、所述键矩阵和所述值矩阵进行参数调整;
根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
对所述注意力分值进行逻辑回归处理得到逻辑回归结果;
将所述逻辑回归结果与调整后的值矩阵的乘积作为所述注意力机制模块的输出结果。
进一步地,所述获取同义词知识图谱,包括:
从WordNet知识库中获取多个词语;
标记所述多个词语之间的关系,其中,所述关系包括同义关系或非同义关系;
以各个所述词语作为实体,根据各个所述实体之间的关系,建立所述同义词知识图谱。
进一步地,所述对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵,包括:
使用TransE算法,获取所述同义词知识图谱中的各个所述实体的词向量;
以所述词向量作为元素,组成所述知识矩阵。
进一步地,在将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理之前,所述方法还包括:
对所述知识矩阵中的各个所述词向量进行如下变换:
;
其中,为所述知识矩阵中的第/>个所述词向量变换前的值,/>为所述知识矩阵中的第/>个所述词向量变换后的值,/>和/>设定的为权重系数矩阵。
进一步地,所述根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值,包括:
使用如下公式根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
;
其中,表示所述注意力分值,/>表示所述查询矩阵,/>表示所述键矩阵,/>和/>表示第/>个所述注意力机制模块的参数,/>表示所述知识矩阵,/>表示所述掩模矩阵,⊙表示矩阵逐元素相乘运算。
进一步地,所述对所述注意力分值进行逻辑回归处理得到逻辑回归结果,包括:
根据所述键矩阵的维度值,对所述注意力分值进行归一化处理;
将经过归一化处理的所述注意力分值输入到分类器,得到所述/>分类器的输出值;
将所述分类器的输出值作为逻辑回归结果。
进一步地,所述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算法的原理是,将同义词知识图谱中的各实体转换成相应的词向量,转换之后如果把两个实体中的一个看做头实体,另一个看做尾实体,那么头实体对应的词向量可以表示为,尾实体对应的词向量可以表示为/>,头实体与尾实体之间的关系可以表示为向量/>,头实体/>、尾实体/>、头实体与尾实体之间的关系/>可以表示为三元组/>,并且满足/>。/>的大小可以表示头实体/>与尾实体/>之间的词义关系的远近,因此TransE算法的目标是,将两个词语转换所得的词向量分别视为头实体/>和尾实体/>,头实体/>与尾实体、之间的关系/>应该满足/>,并且两个词语之间的词义关系越接近,则/>的大小越小,反之/>的大小越大。
基于上述原理,本实施例中的TransE算法在使用前可以先进行训练。在训练过程中,定义TransE算法中的距离公式为,定义TransE算法中的损失函数为,其中/>表示如果/>大于0则取/>的原值,如果/>小于0则取0,/>表示训练过程中引入的被破坏的三元组,被破坏的三元组满足/>,被破坏的三元组是将原三元组中/>的替换成,或者将原三元组中/>的替换成/>得到的。训练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模型不能同时在两个异构向量空间上进行运算,在将知识矩阵输入到各注意力机制进行处理之前,可以对知识矩阵进行转换处理。具体地,在各注意力机制模块对知识矩阵进行处理之前,对知识矩阵中的各词向量进行如下变换:
;
其中,为知识矩阵中的第/>个词向量变换前的值,/>为知识矩阵中的第/>个词向量变换后的值,/>和/>设定的为权重系数矩阵,其中每个注意力机制模块可以分别设定不同的/>和/>,即不同的注意力机制模块设定的/>可以不同,不同的注意力机制模块设定的/>也可以不同。也就是对于知识矩阵中的第/>个词向量/>,使用公式进行变换后得到/>,使用/>来替换/>,直至知识矩阵中的所有词向量均被变换和替换。经过上述变换处理的知识矩阵能够被引入到BERT模型的向量空间,从而能被注意力机制模块处理。
参照图3,步骤S6具体包括以下步骤:
S601.获取训练数据对应的查询矩阵Q、键矩阵K、值矩阵V;
S602.将查询矩阵Q、键矩阵K、值矩阵V输入至各注意力机制模块;
S603.各注意力机制模块分别对所输入的数据进行包含以下步骤S60301-S60304的处理过程:
S60301.使用本注意力机制模块的网络参数对查询矩阵Q、键矩阵K、值矩阵V进行调整;
S60302.根据掩模矩阵MASK、知识矩阵G以及调整后的查询矩阵和键矩阵确定注意力分值;
S60303.对注意力分值进行逻辑回归;
S60304.以逻辑回归的结果与调整后的值矩阵相乘所得的值作为本注意力机制模块的输出。
步骤S6中,每个注意力机制模块将知识矩阵引入到注意力分值/>的计算过程中,以修正BERT的底层注意力计算。具体地,第/>个注意力机制模块设定参数/>、/>和,获取训练数据对应的查询矩阵/>、键矩阵/>、值矩阵/>,获取掩模矩阵/>,使用本注意力机制模块的网络参数/>、/>和/>,通过矩阵相乘对查询矩阵/>、键矩阵/>、值矩阵/>进行调整,获得/>、/>和/>;根据掩模矩阵/>、知识矩阵/>以及调整后的查询矩阵/>和键矩阵/>确定注意力分值/>。具体地,注意力分值/>的计算公式为/>,其中/>表示将/>和知识矩阵/>这两个矩阵进行逐元素相乘运算,例如,知识矩阵/>的维度与/>相同,那么/>所得矩阵中每个位置的元素的值等于知识矩阵/>与矩阵相同位置的元素的值相乘。
公式中的掩模矩阵/>可以将注意力机制模块训练为遮蔽语言模型(Masked Language Model,MLM),通过加入掩模矩阵/>,可以根据掩模矩阵/>中不同的元素的值,屏蔽/>所得矩阵中特定位置的元素。
步骤S6中,注意力机制模块对注意力分值进行逻辑回归。具体地,注意力机制模块根据键矩阵/>的维度值/>,对注意力分值/>进行归一化处理,归一化处理后得到/>,将经过归一化处理的注意力分值/>输入到/>分类器中,获取/>分类器的输出值/>作为逻辑回归的结果。当设定BERT模型中的注意力机制模块执行MLM任务,也就是根据上下文预测被掩模矩阵/>屏蔽的元素,那么/>分类器的输出值可以表示注意力机制模块预测到的被掩模矩阵/>屏蔽的元素的正确概率。
步骤S6的最后,注意力机制模块以分类器的输出值作为权重,对值矩阵/>经过注意力机制模块参数/>调整后的矩阵/>进行加权求和,具体地可以使用矩阵相乘实现,从而获得/>,即第/>个注意力机制模块的输出结果为。
步骤S7中,参照图3,各注意力机制模块的输出进行字符串拼接和线性化处理,经过前馈网络输出,从而获得语义向量。其中,对个注意力机制模块的输出进行字符串拼接的结果为/>,使用设定的矩阵/>对字符串拼接的结果进行线性化,得到语义向量/>。
步骤S8中,可以根据语义向量确定BERT模型对训练数据中被掩模矩阵/>屏蔽的元素的预测结果,根据掩模矩阵与训练数据可以确定训练数据中被掩模矩阵/>屏蔽的元素的实际情况,将预测结果与实际情况进行对比,通过计算相似度等量化值可以确定本轮训练损失值。
步骤S9中,将训练损失值与预设的损失阈值进行对比,根据训练损失值与预设的损失阈值的差值的符号和大小,对部分或全部注意力机制模块的、/>、/>等网络参数进行调整。参照图1,执行完步骤S9之后,如果训练损失值大于损失阈值,那么可以返回至从步骤S6开始执行对各注意力机制模块的预训练过程,如果训练损失值小于损失阈值,那么可以结束对BERT模型中各注意力机制模块的预训练过程。
完成预训练的BERT模型,可以在应用于机器翻译、同义词语义匹配等具体的下游任务前,再针对具体的下游任务进行少量训练,训练完成后再投入具体的下游任务中使用。由于已完成了预训练过程,因此训练过程只需要使用较少的训练数据以及消耗较少的训练时间,从而加快训练速度。
实施例中的对BERT模型的预训练方法,通过根据掩模矩阵、知识矩阵/>以及调整后的查询矩阵/>和键矩阵/>确定注意力分值/>,具体地,通过在步骤S6中使用公式/>计算注意力分值/>,可以将知识矩阵/>所包含的同义词语义知识直接嵌入到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 (8)
1.一种用于文本匹配的BERT模型的预训练方法,包括:
获取训练数据;
获取同义词知识图谱;
对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵;
根据所述训练数据确定掩模矩阵;
加载BERT模型,所述BERT模型包括多个注意力机制模块;
对于每个所述注意力机制模块,将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果;
将全部所述注意力机制模块的输出结果进行字符串拼接和线性化处理,得到语义向量;
根据所述语义向量与所述掩模矩阵确定训练损失值;
根据所述训练损失值对部分或全部所述注意力机制模块的网络参数进行调整;
所述将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理,得到所述注意力机制模块的输出结果,包括:
获取所述训练数据对应的查询矩阵、键矩阵和值矩阵;
将所述查询矩阵、所述键矩阵和所述值矩阵输入至所述注意力机制模块,使得所述注意力机制模块对所述查询矩阵、所述键矩阵和所述值矩阵进行参数调整;
根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
对所述注意力分值进行逻辑回归处理得到逻辑回归结果;
将所述逻辑回归结果与调整后的值矩阵的乘积作为所述注意力机制模块的输出结果;
所述根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值,包括:
使用如下公式根据所述掩模矩阵、所述知识矩阵、调整后的查询矩阵和调整后的键矩阵确定注意力分值;
;
其中,表示所述注意力分值,/>表示所述查询矩阵,/>表示所述键矩阵,/>和表示第/>个所述注意力机制模块的参数,/>表示所述知识矩阵,/>表示所述掩模矩阵,⊙表示矩阵逐元素相乘运算。
2.根据权利要求1所述的BERT模型的预训练方法,其特征在于,所述获取同义词知识图谱,包括:
从WordNet知识库中获取多个词语;
标记所述多个词语之间的关系,其中,所述关系包括同义关系或非同义关系;
以各个所述词语作为实体,根据各个所述实体之间的关系,建立所述同义词知识图谱。
3.根据权利要求2所述的BERT模型的预训练方法,其特征在于,所述对所述同义词知识图谱进行词向量嵌入处理得到知识矩阵,包括:
使用TransE算法,获取所述同义词知识图谱中的各个所述实体的词向量;
以所述词向量作为元素,组成所述知识矩阵。
4.根据权利要求2所述的BERT模型的预训练方法,其特征在于,在将所述训练数据、所述知识矩阵以及所述掩模矩阵输入至所述注意力机制模块进行处理之前,所述方法还包括:
对所述知识矩阵中的各个所述词向量进行如下变换:
;
其中,为所述知识矩阵中的第/>个所述词向量变换前的值,/>为所述知识矩阵中的第/>个所述词向量变换后的值,/>和/>设定的为权重系数矩阵。
5.根据权利要求1所述的BERT模型的预训练方法,其特征在于,所述对所述注意力分值进行逻辑回归处理得到逻辑回归结果,包括:
根据所述键矩阵的维度值,对所述注意力分值进行归一化处理;
将经过归一化处理的所述注意力分值输入到分类器,得到所述/>分类器的输出值;
将所述分类器的输出值作为逻辑回归结果。
6.根据权利要求1至5任一项所述的BERT模型的预训练方法,其特征在于,所述BERT模型包括的所述注意力机制模块的数量与所述知识矩阵的规模正相关。
7.一种计算机装置,其特征在于,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行权利要求1至6任一项所述的BERT模型的预训练方法。
8.一种存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行如权利要求1至6任一项所述的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 CN113434699A (zh) | 2021-09-24 |
CN113434699B true 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) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 | 北京交通大学 | 一种基于多任务学习的多模式交通短时客流协同预测方法 |
CN115617947B (zh) * | 2022-10-17 | 2023-08-18 | 桂林电子科技大学 | 基于预训练模型与提示学习的可解释电力设备查询方法 |
Citations (9)
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 | 深圳市欢太科技有限公司 | 一种文本分类方法、装置、电子设备及存储介质 |
CN112966106A (zh) * | 2021-03-05 | 2021-06-15 | 平安科技(深圳)有限公司 | 文本的情绪识别方法、装置、设备及存储介质 |
CN113011191A (zh) * | 2021-04-28 | 2021-06-22 | 广东工业大学 | 一种知识联合抽取模型训练方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11568143B2 (en) * | 2019-11-15 | 2023-01-31 | Intuit Inc. | Pre-trained contextual embedding models for named entity recognition and confidence prediction |
-
2021
- 2021-06-30 CN CN202110745018.4A patent/CN113434699B/zh active Active
Patent Citations (9)
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 | 深圳市欢太科技有限公司 | 一种文本分类方法、装置、电子设备及存储介质 |
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 | 广东工业大学 | 一种知识联合抽取模型训练方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113434699A (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113434699B (zh) | 用于文本匹配的bert模型的预训练方法、计算机装置和存储介质 | |
US11256487B2 (en) | Vectorized representation method of software source code | |
WO2019100724A1 (zh) | 训练多标签分类模型的方法和装置 | |
CN111063410B (zh) | 一种医学影像文本报告的生成方法及装置 | |
CN112183747A (zh) | 神经网络训练的方法、神经网络的压缩方法以及相关设备 | |
CN110362814B (zh) | 一种基于改进损失函数的命名实体识别方法及装置 | |
CN107506350B (zh) | 一种识别信息的方法和设备 | |
CN110598603A (zh) | 人脸识别模型获取方法、装置、设备和介质 | |
CN109726391B (zh) | 对文本进行情感分类的方法、装置及终端 | |
CN113011532B (zh) | 分类模型训练方法、装置、计算设备及存储介质 | |
CN115238893B (zh) | 面向自然语言处理的神经网络模型量化方法和装置 | |
CN111611395B (zh) | 一种实体关系的识别方法及装置 | |
CN107977456A (zh) | 一种基于多任务深度网络的多源大数据分析方法 | |
AU2022345509A1 (en) | Convolution attention network for multi-label clinical document classification | |
CN112580732A (zh) | 模型训练方法、装置、设备、存储介质和程序产品 | |
CN111611796A (zh) | 下位词的上位词确定方法、装置、电子设备及存储介质 | |
CN114118370A (zh) | 模型训练方法、电子设备和计算机可读存储介质 | |
CN113869005A (zh) | 一种基于语句相似度的预训练模型方法和系统 | |
Lysechko et al. | Experimental study of optimized face recognition algorithms for resource–constrained | |
CN110889290A (zh) | 文本编码方法和设备、文本编码有效性检验方法和设备 | |
CN114021572B (zh) | 一种自然语言处理方法、装置、设备及可读存储介质 | |
CN112614197B (zh) | 图像生成方法、装置、计算机设备和存储介质 | |
WO2022153710A1 (en) | Training apparatus, classification apparatus, training method, classification method, and program | |
CN114742045A (zh) | 一种语义文本相似度的计算方法、装置及存储介质 | |
CN116109853A (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 |