CN114626463A - 语言模型的训练方法、文本匹配方法及相关装置 - Google Patents
语言模型的训练方法、文本匹配方法及相关装置 Download PDFInfo
- Publication number
- CN114626463A CN114626463A CN202210261106.1A CN202210261106A CN114626463A CN 114626463 A CN114626463 A CN 114626463A CN 202210261106 A CN202210261106 A CN 202210261106A CN 114626463 A CN114626463 A CN 114626463A
- Authority
- CN
- China
- Prior art keywords
- text
- training
- sentence
- language model
- task
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- 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
- 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)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种语言模型的训练方法、文本匹配方法及相关装置,本申请提供的方案能够通过粒度划分,将目标领域的高频词语融入第一训练文本,并以SOP任务和MSP任务为第一阶段的训练任务,采用该第一训练文本预训练语言模型。由此,在预训练阶段,该方法不仅能够让语言模型学习到通用领域的知识,还能够学习到目标领域的知识。并且,该方法还能够以文本匹配任务为第二阶段的训练任务,采用从目标领域获取到的第二训练文本训练语言模型,从而使语言模型能够更广泛地学习到该目标领域的基础知识。由此,可以增加该语言模型的泛化能力,从而确保模型的训练效果。
Description
技术领域
本申请涉及自然语言处理(Natural Language Processing,NLP)领域,特别涉及一种语言模型的训练方法、文本匹配方法及相关装置。
背景技术
在自然语言处理过程中,可以先采用大量无标注的语言文本对初始模型进行预训练(Pre-training),从而得到与具体下游任务无关的语言模型。之后,可以基于具体的下游任务(例如文本蕴含识别、对话匹配或问答搜索等),采用与具体下游任务相关的,且具有人工标注的语言文本对该语言模型进行训练,从而得到能够执行具体下游任务的目标语言模型。
但是,上述训练方法训练得到的语言模型较差。
发明内容
本申请提供了一种语言模型的训练方法、文本匹配方法及相关装置,能够有效提高语言模型的训练效果。所述技术方案如下。
一方面,提供了一种语言模型的训练方法,所述方法包括:
从文档库中的第一文档中获取两个句子样本,所述文档库中包含目标领域的文档;
分别对每个所述句子样本进行粒度划分,粒度划分后的所述句子样本包括多个句子段,至少一个所述句子段包括多个文字,以及由所述多个文字组成的至少一个属于高频词语库的词语,所述高频词语库中包含所述目标领域的高频词语;
对粒度划分后的所述两个句子样本中的至少一个所述句子段进行掩码处理,得到第一训练文本;
以句子顺序预测(Sentence Order Prediction,SOP)任务和掩码段预测(MaskSegment Prediction,MSP)任务为第一阶段的训练任务,采用所述第一训练文本预训练语言模型,所述SOP任务用于预测所述两个句子样本在所述第一文档中的顺序,所述MSP任务用于预测被掩码处理的至少一个句子段;
以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练所述语言模型,所述第二训练文本包括所述目标领域的第一输入文本,以及所述目标领域的第二文档的标识文本,所述文本匹配任务用于预测所述第二文档与所述第一输入文本的匹配度。
另一方面,提供了一种文本匹配方法,所述方法包括:
获取目标输入文本;
将所述目标输入文本输入至文本匹配模型,得到所述文本匹配模型输出的与所述目标输入文本所匹配的推荐文档的标识文本;
其中,所述文本匹配模型是采用如上述方面所述的语言模型的训练方法对语言模型进行训练得到的。
又一方面,提供了一种语言模型的训练装置,所述装置包括:
获取模块,用于从文档库中的第一文档中获取两个句子样本,所述文档库中包含目标领域的文档;
划分模块,用于分别对每个所述句子样本进行粒度划分,粒度划分后的所述句子样本包括多个句子段,至少一个所述句子段包括多个文字,以及由所述多个文字组成的至少一个属于高频词语库的词语,所述高频词语库中包含所述目标领域的高频词语;
掩码模块,用于对粒度划分后的所述两个句子样本中的至少一个所述句子段进行掩码处理,得到第一训练文本;
训练模块,用于以SOP任务和MSP任务为第一阶段的训练任务,采用所述第一训练文本预训练语言模型,所述SOP任务用于预测所述两个句子样本在所述第一文档中的顺序,所述MSP任务用于预测被掩码处理的至少一个句子段;
所述训练模块,还用于以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练所述语言模型,所述第二训练文本包括所述目标领域的第一输入文本,以及所述目标领域的第二文档的标识文本,所述文本匹配任务用于预测所述第二文本与所述第一输入文本的匹配度。
再一方面,提供了一种文本匹配装置,所述装置包括:
获取模块,用于获取目标输入文本;
匹配模块,用于将所述目标输入文本输入至文本匹配模型,得到所述文本匹配模型输出的与所述目标输入文本所匹配的推荐文档的标识文本;
其中,所述文本匹配模型采用如上述方面所述的语言模型的训练装置训练得到。
再一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的语言模型的训练方法,或如上述方面所述的文本匹配方法。
再一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的语言模型的训练方法,或如上述方面所述的文本匹配方法。
再一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面所述的语言模型的训练方法,或上述方面所述的文本匹配方法。
本申请提供的技术方案带来的有益效果至少包括:
本申请公开了一种语言模型的训练方法、文本匹配方法及相关装置,本申请提供的方案能够通过粒度划分,将目标领域的高频词语融入第一训练文本,并以SOP任务和MSP任务为第一阶段的训练任务,采用该第一训练文本预训练语言模型。由此,在预训练阶段,该方法不仅能够让语言模型学习到通用领域的知识,还能够学习到目标领域的知识。并且,该方法还能够以文本匹配任务为第二阶段的训练任务,采用从目标领域获取到的第二训练文本训练语言模型,从而使语言模型能够更广泛地学习到该目标领域的基础知识。由此,可以增加该语言模型的泛化能力,从而确保模型的训练效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种语言模型的训练系统的结构示意图;
图2是本申请实施例提供的一种语言模型的训练方法的流程图;
图3是本申请实施例提供的另一种语言模型的训练方法的流程图;
图4是本申请实施例提供的一种语言模型以SOP任务为训练任务进行训练的示意图;
图5是本申请实施例提供的一种语言模型对句子段进行掩码处理的示意图;
图6是本申请实施例提供的一种语言模型以SOP任务和MSP任务为第一阶段的训练任务,预训练语言模型的示意图;
图7是本申请实施例提供的一种语言模型采用第二训练文本进行训练的示意图;
图8是本申请实施例提供的一种语言模型的训练过程的示意图;
图9是本申请实施例提供的一种目标语言模型和基础参考模型在可视化注意力形式下的表现图;
图10是本申请实施例提供的另一种目标语言模型和基础参考模型在可视化注意力形式下的表现图;
图11是本申请实施例提供的又一种目标语言模型和基础参考模型在可视化注意力形式下的表现图;
图12是本申请实施例提供的再一种目标语言模型和基础参考模型在可视化注意力形式下的表现图;
图13是本申请实施例提供的一种文本匹配方法的流程图;
图14是本申请实施例提供的一种语言模型的训练装置的结构框图;
图15是本申请实施例提供的另一种语言模型的训练装置的结构框图;
图16是本申请实施例提供的一种文本匹配装置的结构框图;
图17是本申请实施例提供的一种服务器的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供的方案可以应用于云技术、人工智能、智慧交通等各种场景。首先,针对本申请实施例中涉及的名词进行简单介绍。
人工智能(Artificial Intelligence,AI):是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
机器学习(Machine Learning,ML):是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
自然语言处理:是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
语言模型(Language Model,LM):是NLP领域中用于对语言文本进行分析和处理的模型,通常可以分为文法规则语言模型、统计语言模型和神经网络语言模型等。其中,能够执行具体下游任务的语言模型是对预训练后的语言模型(Pre-trained Language Models,PLMs)进行微调得到的。
其中,预训练是通过各种无监督的训练方式,采用大型语料库对初始的语言模型进行训练的方法。在预训练阶段,能够使得语言模型学习到通用的语言知识,有利于减轻下游任务的训练工作,避免从头开始训练新的模型。微调是通过一定数量的,且具有人工标注的目标领域的知识,对预训练阶段得到的语言模型进行训练,从而得到能够执行具体下游任务(例如文本蕴含识别、对话匹配或问答搜索等)的语言模型。
但是,由于在预训练阶段采用的训练样本都是通用的语言知识,即在预训练阶段语言模型缺少与下游任务密切相关的大规模训练。因此语言模型很难在预训练阶段学习到目标领域的知识。并且,由于预训练阶段的训练任务与微调阶段的训练任务(即具体下游任务)存在比较大差异,因此在微调阶段,需采用更多数量的精标语料(即与下游任务相关的,且具有人工标注的目标领域的语言知识)来对语言模型进行训练。相关技术中,精标数据的获取通常需要耗费大量的人力和物力,从而使得语言模型在训练过程中的成本较高。
图1是本申请实施例提供的一种语言模型的训练系统的结构示意图。参见图1,该系统包括:服务器110和终端120。该服务器110与终端120之间建立有线或无线通信连接。可选地,该服务器110可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。该终端120可以是个人计算机(Personal Computer,PC)、车载终端、平板电脑、智能手机、可穿戴设备、智能机器人等具备数据计算、处理和存储能力的终端。
在本申请实施例中,该系统中的终端120可以用于获取训练文本(例如句子样本、第二训练文本以及第三训练文本等),并将该训练文本发送至服务器110。服务器110进而可以采用该训练文本对语言模型进行训练(例如预训练和微调),从而得到能够执行具体任务的语言模型(例如医疗领域的文本匹配模型)。
可选地,该用于对语言模型进行训练的训练文本也可以是服务器110中预先存储的。相应的,该语言模型的训练系统也可以不包括终端120。
或者,该系统还能够执行具体任务,例如可以执行文本匹配任务。相应的,该系统中的终端120可以用于获取输入文本(例如目标输入文本),并将该输入文本发送至服务器110进行搜索。服务器110中预先存储有已完成预训练和微调的语言模型,例如文本匹配模型。服务器获取到输入文本后,可以将该输入文本输入至语言模型,该语言模型进而能够对该输入文本进行处理,并输出结果文本。例如,该语言模型输出的结果文本可以是与输入文本所匹配的推荐文档的标识文本。之后,服务器110可以将该结果文本发送至终端120。
可选地,该终端120中也可以存储有已完成预训练和微调的语言模型,终端120获取到输入文本后,可以直接将该输入文本输入至语言模型,该语言模型进而能够对该输入文本进行处理,并输出结果文本。相应的,该语言模型的训练系统也可以不包括服务器110。
结合上述名词简介和应用场景,对本申请实施例提供的语言模型的训练方法进行说明。该方法可以应用于计算机设备,该计算机设备可以是图1所示场景中的服务器110。下文以该语言模型的训练方法应用于服务器为例进行说明,如图2所示,该方法包括如下步骤。
步骤101、从文档库中的第一文档中获取两个句子样本。
在本申请实施例中,服务器中预先存储有文档库,该文档库中不仅包含有通用领域的多个文档,还包含有目标领域的多个文档。其中,目标领域可以是训练后的语言模型待应用的领域,例如可以是医疗领域。在开始训练时,服务器可以在文档库中获取多个第一文档,并能够在每个第一文档中获取两个句子样本。
可以理解的是,对于每个第一文档,服务器可以以句号为划分标志,将该第一文档划分为多个句子。之后,服务器可以从该多个句子中随机选取位于一个句号前后的两个句子作为句子样本。
步骤102、分别对每个句子样本进行粒度划分。
服务器中预先存储有高频词语库,该高频词语库中不仅包含有通用的高频词语,还包含目标领域的高频词语。服务器可以基于该高频词语库,分别对每个句子样本进行粒度划分。其中,粒度划分后的句子样本能够被划分为多个句子段,该多个句子段中的至少一个句子段包括多个文字,以及由该多个文字组成的至少一个属于高频词语库的词语。
可以理解的是,高频词语库中可以包括日常生活和工作中较为常见和使用的词语,以及在目标领域中使用较为频繁的词语。本申请实施例中的词语包括至少两个文字。还可以理解的是,该粒度划分后的多个句子段中,可能存在某个句子段只包括单个文字的情况。
可选地,本申请实施例中的句子样本可以是中文的文本,相应的,该第一句子文本中的文字可以是指汉字。或者,该句子样本可以是英文的文本,相应的,该第一句子文本中的文字可以是指单词。
步骤103、对粒度划分后的两个句子样本中的至少一个句子段进行掩码处理,得到第一训练文本。
在本申请实施例中,服务器可以将粒度划分后的两个句子样本输入至语言模型进行掩码处理。对于该两个句子样本,语言模型可以对该两个句子样本中的至少一个句子段进行掩码处理,得到第一训练文本。其中,掩码处理后的每个句子段中的部分文字或词语会被替换为掩码[MASK]。
可选地,语言模型可以随机对该两个句子样本中一定比例的句子段(例如15%的句子段)进行掩码处理。并且,该两个句子样本中被替换为掩码[MASK]的至少一个句子段,是语言模型在预训练过程中需要去预测的句子段。
步骤104、以SOP任务和MSP任务为第一阶段的训练任务,采用第一训练文本预训练语言模型。
其中,该SOP任务用于预测该两个句子样本在第一文档中的顺序,该MSP任务用于预测被掩码处理的至少一个句子段。
可以理解的是,粒度划分后的两个句子样本在第一训练文本中的顺序,与该两个句子样本在第一文档中的顺序可能相同,也可能不同。以SOP任务为语言模型的训练任务对语言模型进行预训练,能够让语言模型学习到该两个句子样本之间的连贯性。
以MSP任务为语言模型的训练任务对语言模型进行预训练,能够让语言模型学习到句子样本中的一些高频词语。
还可以理解的是,由于本申请实施例提供的文档库中包含有目标领域的文档,且高频词语库中包含有目标领域的高频词语,因此,以SOP任务和MSP任务预训练语言模型,能够让语言模型在学习到通用领域的知识的基础上,还能较好地学习到目标领域的知识。
可选地,本申请实施例可以将基于变换器的双向编码器表征量(BidirectionalEncoder Representations from Transformers,BERT)模型作为初始的语言模型,并采用第一训练文本对该初始的语言模型进行预训练。
步骤105、以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练语言模型。
服务器在完成第一阶段的训练任务后,能够继续采用第二训练文本对语言模型进行第二阶段的训练。其中,该第二训练文本包括目标领域的第一输入文本,以及目标领域的第二文档的标识文本。该文本匹配任务用于预测第二文档与第一输入文本的匹配度。
可以理解的是,该第二阶段的文本匹配任务即为初始的下游任务。服务器可以基于第一阶段(即预训练阶段)得到的语言模型所要应用的目标领域,以及该语言模型所要执行的文本匹配任务,从该目标领域的数据库中获取多个与该文本匹配任务相关的第一输入文本,以及与该第一输入文本相关的第二文档的标识文本。其中,该标识文本可以为该第二文档的标题(Title)。之后,服务器可以将该第一输入文本和第二文档的标识文本作为第二训练文本,对语言模型进行训练,从而实现对该语言模型的初步微调。
可以理解的是,若直接采用第一输入文本和第二文档作为第二训练文本,会导致第二训练文本的数据量过大,训练效率明显降低。因此在本申请实施例中,可以采用第一输入文本和第二文档的标识文本作为文本匹配任务的第二训练文本。相应的,语言模型经过第二阶段的训练后,可以学习到第二文档的标识文本与第一输入文本的匹配度,该匹配度即可作为第二文档与第一输入文本的匹配度。
可选地,该文本匹配任务具体可以是文本蕴含识别任务,对话匹配任务或者问答搜索任务等。
还可以理解的是,通过该第二阶段的训练,能够让语言模型学习到目标领域的一些基础知识,以增加该语言模型的泛化能力。进而使得在以具体的下游任务(即文本匹配任务)训练语言模型时,该语言模型能够通过有限的精标数据(即人工标注的训练文本),快速且有效地学习到目标领域的知识。由此,能够在确保语言模型的训练效果的同时,有效降低该语言模型的训练成本。
综上所述,本申请实施例提供了一种语言模型的训练方法。该方法能够通过粒度划分,将目标领域的高频词语融入第一训练文本,并以SOP任务和MSP任务为第一阶段的训练任务,采用该第一训练文本预训练语言模型。由此,在预训练阶段,该方法不仅能够让语言模型学习到通用领域的知识,还能够学习到目标领域的知识。并且,该方法还能够以文本匹配任务为第二阶段的训练任务,采用从目标领域获取到的第二训练文本训练语言模型,从而使语言模型能够更广泛地学习到该目标领域的基础知识。由此,可以增加该语言模型的泛化能力,从而确保模型的训练效果。
图3是本申请实施例提供的另一种语言模型的训练方法的流程图。本实施例以该方法应用于服务器进行举例说明。参见图3,该方法包括:
步骤201、从文档库中的第一文档中获取两个句子样本。
在本申请实施例中,服务器中预先存储有文档库,该文档库中不仅包含通用领域的多个文档,还包含有目标领域的多个文档。在开始训练时,服务器可以在文档库中获取多个第一文档,并能够在每个第一文档中获取一个或多个句子对,其中每个句子对包括两个句子样本。可选地,文档库中的文档可以来源于书籍、期刊、百科知识库、论坛和社交平台等。
其中,通用领域是指能够为语言模型的预训练过程提供大规模训练样本的开放领域。采用通用领域的多个训练样本预训练语言模型,能够让语言模型学习到通用的语法语义知识。目标领域可以是训练后的语言模型待应用的领域,例如可以是医疗领域。
可以理解的是,对于每个第一文档,服务器能够以句号为划分标志,将该第一文档划分为多个句子。之后,服务器可以从该多个句子中随机选取位于一个句号前后的两个句子作为一个句子对中的两个句子样本。
示例的,假设该目标领域为医疗领域,则该文档库中包含有该医疗领域的多个文档。服务器可以从该文档库获取k个第一文档。其中,该k个第一文档的文档集合D可以表示为D={d1,d2,d3……dn……dk-1,dk},k为文档集合D所包含的第一文档的总数,k为大于1的正整数,dn为文档集合D中的第n个文档,n为大于等于1,且小于等于k的正整数。
对于该文档集合D中的第n个第一文档dn,服务器能够以句号为划分标志,将该第一文档dn划分为多个句子,得到该第一文档dn的句子序列dn={dn,1,dn,2……dn,m}。其中,m为该第一文档dn所包括的句子的总数,m为大于1的整数,dn,i为该第一文档dn中的第i个句子,i为不大于m的整数。服务器得到该第一文档dn的句子序列后,可以在该句子序列中随机选取两个连续的句子作为句子样本。例如,服务器可以选取该第一文档dn的第一个句子dn,1和第二个句子dn,2作为句子样本。
步骤202、分别对每个句子样本进行粒度划分。
服务器中预先存储有高频词语库,该高频词语库中不仅包含有通用的高频词语,还包含目标领域的高频词语。服务器可以基于该高频词语库,分别对每个句子样本进行粒度划分。其中,粒度划分后的句子样本能够被划分为多个句子段,该多个句子段中的至少一个句子段包括多个文字,以及由该多个文字组成的至少一个属于高频词语库的词语。
可以理解的是,高频词语库中的词语包括至少两个文字。该通用的高频词语是指日常生活和工作中出现频率较高的词语,目标领域的高频词语是指在目标领域中出现频率较高的词语。本申请实施例中的词语包括至少两个文字。还可以理解的是,该粒度划分后的多个句子段中,可能存在某个句子段只包括单个文字的情况。
可选地,对于每个句子样本,服务器可以先对该句子样本进行分词处理,以识别出该句子中所包含的词语。之后,服务器可以将识别出的词语与高频词语库中的各个高频词语进行匹配。若某个词语与高频词语库中的任一高频词语匹配,则服务器可以将该词语插入至句子样本中。并且,插入的词语位于该词语所包含的最后一个文字之后。若句子样本中连续的若干个文字能够组成多个属于高频词语库的词语,则对于每个词语,服务器均可以将其插入至该词语所包含的最后一个文字之后。
例如,假设句子样本中包括“晕车贴”这三个文字。由于该三个文字能够组成“晕车”和“晕车贴”共两个词语,因此服务器可以将词语“晕车”插入在文字“车”的后面,并可以将词语“晕车贴”插入在文字“贴”的后面。由此,服务器可以得到粒度划分后的句子样本“晕-车-晕车-贴-晕车贴”。
可以理解的是,粒度划分后的句子样本可以包括多个句子段。其中,每个句子段包括多个文字,以及由该多个文字组成的一个或多个词语。也即是,若句子样本中连续的若干个文字能够组成多个词语,则该连续的若干个文字以及该多个词语均属于一个句子段。或者,若句子样本中的某个文字无法与其相邻的文字组成词语,则该文字可以单独作为一个句子段。其中,句子样本中的每个句子段也可以称为子图。并且,基于上述划分方式可知,服务器对每个句子样本进行粒度划分得到多个子图后,相邻两个子图互不相交,即相邻两个子图中的前一个子图中的最后一个文字或词语,无法与后一个子图中的第一个文字或词语组成新的词语。
示例的,对于句子样本“晕车贴使用方法”,服务器对其分词后可以确定出该句子样本中包括如下词语:“晕车”、“晕车贴”、“使用”以及“方法”假设目标领域为医疗领域,且词语“晕车”、“使用”以及“方法”均属于高频词语库中的通用的高频词语,“晕车贴”属于高频词语库中医疗领域的高频词语。基于该句子样本中存在于高频词语库中的高频词语,服务器对该句子样本进行粒度划分后可以得到“晕-车-晕车-贴-晕车贴-使-用-使用-方-法-方法”。
上述粒度划分后的句子样本中包括三个句子段:“晕-车-晕车-贴-晕车贴”、“使-用-使用”以及“方-法-方法”。参考该示例可以看出,该句子样本中的三个句子段在语义上没有直接联系(即子图互不交互)。并且,每个句子段均包含有字粒度的句子成分(例如文字“晕”)和词粒度的句子成分(例如词语“晕车”)。
还可以理解的是,字粒度的句子成分往往存在多个语义。语言模型若基于字粒度划分的句子样本进行训练,则在训练过程中会出现较多歧义问题。而本申请实施例通过将字粒度划分与词粒度划分结合,能够将高频词语库中的高频词语作为词粒度的句子成分引入到句子样本中,从而能够有效弥补字粒度的句子成分存在的歧义问题。例如词语“车贴”和“晕车贴”,该两个词语虽只有一个字的差别,但含义确完全不同。本申请实施例通过引入高频词语,能够准确识别并学习到医疗领域的高频词语“晕车贴”。并且,由于引入了更多粒度知识,语言模型能通过较多数量的句子样本学习到两个句子样本之间的对齐信息,有利于语言模型在下游任务(例如文本匹配任务)中性能的提升。
可选地,本申请实施例中的句子样本可以是中文的文本,相应的,该第一句子文本中的文字可以是指汉字。或者,该句子样本可以是英文的文本,相应的,该第一句子文本中的文字可以是指单词。
步骤203、对粒度划分后的两个句子样本中的至少一个句子段进行掩码处理,得到第一训练文本。
对于粒度划分后的两个句子样本,服务器可以将该两个句子样本进样本行拼接后输入至语言模型。语言模型能够从拼接后的两个句子样本中获取至少一个句子段进行掩码处理,从而得到第一训练文本。例如,语言模型能够从拼接后的两个句子样本所包括的各个句子段中获取一定比例(例如15%)的句子段进行掩码处理。
可选地,对于获取到的每个句子段,语言模型可以将该句子段中的第一句子成分替换为掩码,并将第二句子成分替换为其他句子成分,该句子段中的剩余成分则保持不变。其中,句子段中的第一句子成分和第二句子成分均为单个文字或词语。该第一句子成分和第二句子成分中的词语至少包括两个文字。也即是,服务器可以将每个句子段中的部分单个文字(或词语)替换为掩码,并将部分单个文字(或词语)替换为其他单个文字(或其他词语)。
可以理解的是,粒度划分后的句子样本中的多个句子成分以字粒度和词粒度结合的方式进行排列,该种排列方式使得该句子样本包含有较多的冗余信息。若将该句子段中的所有句子成分均替换为掩码[MASK],则会让语言模型在MSP任务中,直接依据该冗余信息对掩码处理后的句子段中进行预测,从而导致语言模型难以收敛。因此,语言模型可以只将该句子段中的第一句子成分替换为掩码。并且,为了减小预训练任务下游任务的差别,语言模型可以将句子段中的第二句子成分替换为下游任务中常见的句子成分(例如目标领域的高频词语),该句子段中的剩余成分保持不变。
可选地,对于获取到的每个句子段,语言模型可以在该句子段中随机选取第一比例(例如80%)的句子成分作为第一句子成分,并将该第一句子成分替换为掩码[MASK]。并且,语言模型可以在该句子段中选取第二比例(例如10%)的句子成分作为第二句子成分,并将该第二句子成分替换为其他句子成分。该句子段中剩余的句子成分则保持不变。
示例的,假设服务器获取到的两个句子样本为dn,m-1和dn,m,则参考图4,服务器可以将该两个句子样本通过[SEP]拼接,并以“[CLS]dn,m-1[SEP]dn,m[CLS]”的形式输入至语言模型。其中,“[SEP]”是特殊的分隔符,也可以称为拼接符,语言模型借此分隔符来区分该两个句子样本。“[CLS]”是一个特殊的标记,该标记可以将该两个句子样本所包括的语义信息汇集成整体的语义信息并作为语言模型的输出。
之后,对于该两个句子样本中的句子段S1={wb-2,wb-1,wb},如图5所示,语言模型可以将该句子段S1={wb-2,wb-1,wb}中的第一句子成分wb替换为掩码[MASK],并将第二句子成分wb-2替换为高频词语库中的高频词语wc,该句子段S1中的剩余成分wb-1则保持不变。在后续的MSP任务中,语言模型能够预测该句子段中所包括的各个句子成分。
可选地,对于获取到的每个句子段,语言模型也可以将该句子段中的所有句子成分均替换为掩码。
步骤204、根据两个句子样本在第一训练文本中的顺序,确定该两个句子样本的顺序标签。
对于每个第一训练文本的两个句子样本,服务器若确定该两个句子样本在第一训练文本中的拼接顺序与在第一文档中的顺序相同,则可以将该两个句子样本的顺序标签设置为第一标签。服务器若确定该两个句子样本在该第一训练文本中的顺序与在第一文档中的顺序不同,则可以将该两个句子样本的顺序标签设置为第二标签。其中,该第一标签与第二标签不同,例如该第一标签可以为“1”,该第二标签可以为“0”。
示例的,若第一文档dn中的两个句子样本dn,m-1和dn,m在第一训练文本中的拼接顺序为“dn,m-1[SEP]dn,m”,则由于该拼接顺序与该两个句子样本在第一文档dn中的顺序相同,因此可以将该两个句子样本的顺序标签设置为第一标签(例如“1”)。若该两个句子样本在第一训练文本中的拼接顺序为dn,m[SEP]dn,m-1,则由于该拼接顺序与该两个句子样本在第一文档dn中的顺序不同,因此可以将该两个句子样本的顺序标签设置为第二标签(例如“0”)。
可以理解的是,顺序标签为第一标签的两个句子样本所组成的第一训练样本也可以称为正样本。顺序标签为第二标签的两个句子样本所组成的第一训练样本也可以称为负样本。
步骤205、以SOP任务和MSP任务为第一阶段的训练任务,采用第一训练文本预训练语言模型。
其中,该SOP任务用于预测该两个句子样本在第一文档中的顺序,该MSP任务用于预测被掩码处理的至少一个句子段。
服务器在采用第一训练文本预训练语言模型的过程中,可以将第一训练文本输入至语言模型,得到语言模型输出的预测顺序,以及预测句子段。之后,服务器可以根据语言模型输出的预测顺序和该第一训练文本中的两个句子样本的顺序标签,确定语言模型在SOP任务中的第一损失值。其中,语言模型输出的预测顺序可以包括:第一训练文本中的两个句子样本的拼接顺序为第一标签指示的顺序的概率,以及该两个句子样本的拼接顺序为第二标签指示的顺序的概率。
并且,服务器可以根据预测句子段和粒度划分后的两个句子样本中被掩码处理的句子段,确定语言模型在MSP任务中的第二损失值。服务器确定出语言模型在第一阶段的第一损失值和第二损失值后,可以根据该第一损失值和第二损失值预训练语言模型。
可以理解的是,粒度划分后的两个句子样本在第一训练文本中的顺序,与该两个句子样本在第一文档中的顺序可能相同,也可能不同。以SOP任务为语言模型的训练任务对语言模型进行预训练,能够让语言模型学习到该两个句子样本之间的连贯性。
在本申请实施例中,服务器可以将确定出的多个第一训练文本分为多个批次(Batch)进行训练。服务器可以将一个批次内的所有的第一训练文本的第一损失值之和,确定为该批次的第一损失值,并将一个批次内的所有的第一训练文本的第二损失值之和,确定为该批次的第二损失值。
在本申请实施例中,语言模型在SOP任务中的第一损失值和MSP任务中的第二损失值可以均可以采用交叉熵损失函数计算得到。也即是,SOP任务中的损失函数和MSP任务中的损失函数可以均为交叉熵损失函数。该SOP任务的损失函数LSOP可以表示为:
其中,x表示第一训练文本。p(x)表示第一训练文本的顺序标签在第一标签和第二标签上的真实概率分布。q(x)表示语言模型输出的第一训练文本的预测顺序在第一标签和第二标签上的概率分布。该第一损失值LSOP可以为语言模型在一个训练批次内的损失值之和。
在本申请实施例中,第一训练文本的顺序标签在第一标签和第二标签上的概率分布可以表示为[a1,a2]。a1表示顺序标签为第一标签的概率,a2表示顺序标签为第二标签的概率。语言模型输出的预测顺序在第一标签和第二标签上的概率分布可以表示为[b1,b2]。b1表示预测顺序为第一标签指示的顺序的概率,b2表示预测顺序为第二标签指示的顺序的概率。由此可知,该SOP任务用于预测第一训练文本中的两个句子样本的拼接顺序是否与该两个句子样本在第一文档中的顺序相同。或者,可以理解为:该SOP任务用于预测第一训练文本中的两个句子样本的拼接顺序是否正确。
示例的,假设第一训练文本x的顺序标签为第一标签,则a1=1,a2=0。相应的,该第一训练文本x的顺序标签在第一标签和第二标签上的概率分布p(x)为[1,0]。若语言模型输出的第一训练文本x中的两个句子样本的拼接顺序为第一标签和第二标签指示的顺序的概率分别为0.95,0.05,即b1=0.95,b2=0.05,则该预测顺序在第一标签和第二标签上的概率分布q(x)可以为[0.95,0.05]。
语言模型在MSP任务中的第二损失值可以由该MSP任务的损失函数计算得到。该MSP任务的损失函数LMSP可以表示为:
其中,xi表示第一训练文本x中第i个被掩码替换的文字。r表示第一训练文本x中被掩码处理的文字的数量,且r为大于等于1的正整数,i为不大于r的正整数。p(xi)表示第一训练文本x中第i个被掩码替换的文字xi在文字库中所对应的真实文字的概率分布。q(xi)表示语言模型输出的第一训练文本x中第i个被掩码替换的文字xi在文字库中所对应的预测概率分布。该第二损失值LMSP可以为语言模型在一个训练批次内的损失值之和。
在本申请实施例中,假设文字库中共包含J个文字,则该第一训练文本x中第i个被掩码替换的文字xi在文字库中所对应的概率分布p(xi)可以为[p1,…,pj,…,pJ]。其中,pj表示文字xi是文字Wj的概率,j为不大于J的正整数。该语言模型输出的该第一训练文本x中第i个被掩码替换的文字xi在文字库中所对应的预测概率分布q(xi)可以为[q1,…,qj,…,qJ]。其中,qj表示语言模型输出的文字xi是文字库中第j个文字的概率。
图6是本申请实施例提供的一种语言模型以SOP任务和MSP任务为第一阶段的训练任务,预训练语言模型的过程示意图。参考图6,假设对第一文档dn中的两个句子样本dn,m-1和dn,m进行粒度划分和掩码处理后,得到的第一训练样本为“[CLS]上火上火[SEP][MASK][CLS]”。服务器在采用该第一训练文本对语言模型进行第一阶段的训练的过程中,可以将语言模型在SOP任务中确定出的第一损失值,以及在MSP任务中确定出的第二损失值,确定为该语言模型在第一阶段的整体损失值。并且,服务器可以基于该第一阶段的整体损失值来预训练语言模型。相应的,该第一阶段的损失函数L可以表示为:L=LSOP+LMSP。
步骤206、从目标领域的数据库中获取第一输入文本,以及与第一输入文本关联的第二文档的标识文本,得到第二训练文本。
在本申请实施例中,服务器可以基于第一阶段(即预训练阶段)得到的语言模型所要应用的目标领域,以及该语言模型所要执行的具体下游任务(即文本匹配任务),从该目标领域的数据库中获取多个与下游任务相关的第一输入文本,以及与该第一输入文本相关的第二文档的标识文本,得到第二训练文本。其中,该标识文本可以为该第二文档的标题。可选地,该标识文本除了包含第二文档的标题外,还可以包括该第二文档的摘要和/或关键词等信息。
示例的,假设该语言模型所要执行的具体下游任务为医疗领域的文本匹配任务,则服务器可以从医疗领域的数据库中获取多个第二训练文本。其中,该多个第二训练文本的集合G可以表示为:
G={(q1,T1),(q2,T2),…,(qn,Tn),…,(qm-1,Tm-1),(qm,Tm)};
其中,m为服务器获取到的第二训练文本的总数,qn为第n个第二训练文本中的第一输入文本,Tn={t1,t2,…,to}为与第一输入文本qn相关的第二文档的标识文本集合,to为该标识文本集合中的第O个第二文档的标识文本,O为大于1的正整数。如图7所示,服务器可以通过[SEP]对第一输入文本qn以及标识文本集合Tn中第二文档的标识文本tn进行拼接,得到一个第二训练文本。其中,tn可以为标识文本集合Tn中的任意一个第二文档的标识文本。
可选地,对于标识文本集合Tn中的每个第二文档的标识文本,服务器可以计算该第二文档的标识文本与第一输入文本qn的匹配度。之和,服务器可以选择匹配度较高的至少一个第二文档的标识文本与第一输入文本qn进行拼接,从而得到至少一个第二训练文本。
步骤207、计算第一输入文本与第二文档的匹配度,得到第二训练文本的匹配度标签。
对于每个第二训练文本,服务器可以依据该第二训练文本中第一输入文本与第二文档的相关性,计算该第一输入文本与第二文档的匹配度。基于第二训练中第一输入文本与第二文档的匹配度,服务器可以确定出该第二训练文本的匹配度标签。
可选地,服务器中可以预先存储有多个匹配度标签,每个匹配度标签对应一个匹配度范围。对于每个第二训练文本,服务器计算出该第二训练文本中第一输入文本与第二文档的匹配度后,可以根据该匹配度所处的匹配度范围确定该第一输入文本与第二文档所对应的匹配度标签。其中,服务器可以采用余弦相似度算法、高斯距离或者相似度矩阵等方法来计算第一输入文本与第二文档的匹配度。
在本申请实施例中,该匹配度标签可以采用数字表示。并且,第二训练文本的匹配度标签越大,则表明该第二训练文本中第一输入文本与第二文档的相关程度越高。
示例的,假设服务器中预先配置有如下5个匹配度标签:f1,f2,f3,f4,f5。其中,匹配度标签“f1”对应的匹配度范围可以为:0≤f<0.2,也即是,当第二训练文本中第一输入文本与第二文档的匹配度f大于等于0且小于0.2时,可以将该第二训练文本的匹配度标签设置为f1。匹配度标签“f2”对应的匹配度范围可以为:0.2≤f<0.4。匹配度标签“f3”对应的匹配度范围可以为:0.4≤f<0.6。匹配度标签“f4”对应的匹配度范围可以为:0.6≤f<0.8。匹配度标签“f5”对应的匹配度范围可以为:0.8≤f≤1。
若服务器计算出第一输入文本与第二文档的匹配度f为0.9,则由于该匹配度0.9所处的匹配度范围为0.8≤f≤1,因此可以将该第二训练文本的匹配度标签配置为f5。
步骤208、以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练语言模型。
服务器在完成第一阶段的训练任务后,能够以文本匹配任务为第二阶段的训练任务,并继续采用第二训练文本对语言模型进行第二阶段的训练。其中,该文本匹配任务用于预测第二文档与第一输入文本的匹配度。可选地,该文本匹配任务具体可以是文本蕴含识别任务,对话匹配任务或者问答搜索任务等。
基于上述步骤207和步骤208可知,服务器以文本匹配任务为第二阶段的训练任务,并将第一输入文本和第二文档的标识文本作为第二训练文本对语言模型进行训练,能够让语言模型在训练过程学习到该第一输入文本和第二文档的标识文本之间的相关性。并且,语言模型能够基于该第一输入文本和第二文档的标识文本之间的相关性,来预测该第一输入文本和第二文档的匹配度。
可以理解的是,若直接采用第一输入文本和第二文档作为第二训练文本,会导致第二训练文本的数据量过大,训练效率明显降低。因此在本申请实施例中,可以采用第一输入文本和第二文档的标识文本作为文本匹配任务的第二训练文本。相应的,语言模型经过第二阶段的训练后,可以学习到第二文档的标识文本与第一输入文本的匹配度,该匹配度即可作为第二文档与第一输入文本的匹配度。
在第二阶段的训练过程中,服务器可以将第二训练文本输入至语言模型,得到语言模型输出的针对该第二训练文本的预测匹配度。对于每个第二训练文本,服务器可以基于语言模型输出的预测匹配度,以及该第二训练文本中第二文档与第一输入文本的匹配度标签,确定语言模型在该文本匹配任务中的第三损失值,并根据第三损失值训练语言模型。可以理解的是,该第二阶段的训练任务即为初始的下游任务。服务器采用第二训练文本对语言模型进行训练,能够实现对该语言模型的初步微调。
其中,语言模型在文本匹配任务中的第三损失值也可以采用交叉熵损失函数计算得到。也即是,该文本匹配任务的损失函数可以为交叉熵损失函数。该文本匹配任务的损失函数LTM可以表示为:
在上述公式中,s表示第二训练文本,p(s)表示第二训练文本s的匹配度标签的概率分布,q(s)表示语言模型输出的第二训练文本s的预测匹配度的概率分布。该第三损失值LTM可以为语言模型在一个训练批次内的损失值之和。
可以理解的是,若服务器中预设了K(K为大于等于1的整数)个匹配度标签,则第二训练文本s的匹配度标签在上述K个匹配度标签上的概率分布p(s)可以表示为[c1,...,ck,…,cK]。其中,ck表示匹配度标签是第k个匹配度标签的概率,k为不大于K的正整数。并且,该第二训练文本s的预测匹配度在上述K个匹配度标签上的概率分布q(s)为可以表示为[e1,...,ek,…,eK]。其中,ek表示预测匹配度是K个匹配度标签中的第k个匹配度标签的概率。
示例的,假设K=5,即服务器中预设了5个匹配度标签:L1,L2,L3,L4,L5,并且该第二训练文本s的匹配度标签为L3,即c1=c2=c4=c5=0,且c3=1。则该第二训练文本s的匹配度标签在上述5个匹配度标签上的概率分布p(s)可以为[0,0,1,0,0]。若语言模型输出的第二训练文本s的预测匹配度在上述5个匹配度标签上的概率分别为:0.005,0.02,0.95,0.015,0.01,即e1=0.005,e2=0.02,e3=0.95,e4=0.015,e5=0.01,则该第二训练文本s在上述5个匹配度标签上的概率分布q(s)可以为[0.005,0.02,0.95,0.015,0.01]。
继续参考图7,对于输入至语言模型的第二训练文本“[CLS]qn[SEP]tn[CLS]”,语言模型能够将该第二训练文本的整体语义信息汇集到该第二训练文本中的第一个[CLS]上。语言模型的分类器获取到该[CLS]后,能够基于该[CLS]所汇集的第二训练文本的整体语义信息,确定出该第二训练文本的预测匹配度在预设的K个匹配度标签上的分布概率。
通过上述第二阶段的训练,能够让语言模型学习到目标领域的一些基础知识,以增加该语言模型的泛化能力。进而使得在以具体的下游任务训练语言模型时,该语言模型能够通过有限的精标数据(即人工标注的训练文本),学习到目标领域的知识。由此,在确保语言模型的训练效果的同时,有效降低了该语言模型的训练成本。并且,通过该第二阶段的训练,并将文本匹配任务作为该阶段的训练任务,能够在增加与下游任务(即文本匹配任务)紧密相关的训练任务的基础上,使得语言模型在下游任务中能够快速收敛,并有效提升语言模型在文本相关性匹配上的效果。
步骤209、以文本匹配任务为第三阶段的训练任务,采用第三训练文本训练语言模型。
服务器在完成第二阶段的训练任务后,能够继续以文本匹配任务为训练任务,并采用第三训练文本对语言模型进行第三阶段的训练。其中,该第三训练文本包括目标领域的第二输入文本,以及目标领域的第三文档的标识文本。其中,第二训练文本中第一输入文本与第二文档的匹配度由机器标注,第三训练文本是中第二输入文本与第三文档的匹配度由人工标注。在本申请实施例中,该第二训练文本也可以称为召回数据,该第三训练文本也可以称为精标数据。
可以理解的是,该第三阶段的训练过程和第二阶段的训练过程相同,语言模型的输出结果也相同。因此,语言模型可以采用与第二训练阶段相同的损失函数来确定语言模型在第三阶段的损失值,并依据该损失值训练语言模型,本申请实施例对此不再赘述。
还可以理解的是,由于第二训练文本是服务器随机获取,且由机器标注的训练文本。因此服务器可以获取较多数量的第二训练文本,对语言模型进行与下游任务密切相关的大规模训练。但是,机器难以确保第二训练文本中的第一输入文本与第二文档的相关性,且难以准确地标注出第二训练文本中的第一输入文本与第二文档的匹配度。因此,第二阶段的训练难以实现语言模型的精准微调。
由于第三训练文本是由人工标注的训练文本,且人工标注的训练文本的准确性远远大于机器标注的训练文本。因此,在以具体的下游任务对语言模型进行训练时,服务器能够通过较少数量的第三训练文本(即精标数据),实现语言模型的微调。
在本申请实施例中,若该文本匹配任务为文本蕴含任务,则上述第二训练文本中的第一输入文本,以及第三训练文本中的第二输入文本均可以是文本蕴含任务中的前提(Premise)文本。上述第二训练文本中的第二文档的标识文本,以及第三训练文本中的第三文档均可以是与该前提文本相匹配的假设(Hypothesis)文本。
若该文本匹配任务为对话匹配任务,则上述第二训练文本中的第一输入文本,以及第三训练文本中的第二输入文本均可以是对话匹配任务的对话文本。上述第二训练文本中的第二文档,以及第三训练文本中的第三文档均可以是针对该对话文本的回复文本。
若该文本匹配任务为问答搜索任务,则上述第二训练文本中的第一输入文本,以及第三训练文本中的第二输入文本均可以是问答搜索任务的问题文本。上述第二训练文本中的第二文档,以及第三训练文本中的第三文档,均可以是针对该问题文本的答案文本。
图8是本申请实施例提供的一种语言模型的训练过程的流程示意图。参考图8可以看出,本申请实施例提供的语言模型的训练过程可以分为三个阶段。第一阶段可以看作语言模型的预训练过程,第三阶段可以看作语言模型的微调阶段。相应的,第二阶段可以看作语言模型在预训练和微调之间的过渡阶段。
其中,在第一阶段中,输入至语言模型的“[CLS]上火上火[SEP][MASK][CLS]”为粒度划分和掩码处理后得到的第一训练文本。在第二阶段,对于输入至语言模型的第二训练文本“[CLS]Q1[SEP]T1[CLS]”,Q1表示第一输入文本,T1表示与该第一输入文本Q1关联的第二文档的标识文本。在第三阶段,对于输入至语言模型的第三训练文本“[CLS]Q2[SEP]T2[CLS]”,Q2表示第二输入文本,T2表示与该第二输入文本Q2关联的目标领域的第三文档的标识文本。
还可以理解的是,采用本申请实施例提供训练方法进行训练后,得到的语言模型,可以作为教师模型,通过知识蒸馏的方式将自身学习到的知识迁移给学习能力较弱的学生模型。或者,该语言模型可以作为目标领域中语义匹配模块和搜索模块的辅助模块,辅助相关任务筛选出相关性高的样本。
表1和表2分别示出了采用本申请实施例提供的方法进行训练后得到的语言模型(下文称为目标语言模型),与相关技术中的语言模型在医疗领域的长尾数据集和全局数据集上的表现。其中,长尾数据集是指包含有医疗领域中语义上较为相似,且难以辨别或区分的文本。全局数据集是指包含有医疗领域各方面的文本。本申请实施例以相关性匹配任务为测试任务,并将基础的BERT模型和只进行第一阶段和第二阶段的训练得到的模型(即两阶段语言模型)作为目标语言模型的参考模型。并且,本申请实施例中的5分档准确率指将文本的匹配程度分为五个等级后,模型输出的预测匹配度的准确率。3分档准确率指将文本的匹配程度分为三个等级后,模型输出的预测匹配度的准确率。此外,本申请实施例还将归一化折损累积增益(Normalized Discounted Cumulative Gain,NDCG)和逆序对准确率作为模型在数据集上的评价指标。其中,在以NDCG为评价指标时并计算模型在测试过程中的NDCG时,会对模型输出的预测匹配度按照由高到低的顺序进行排序。NDCG@1表示在评价模型的表现过程中,只关注预测匹配度排在第一个(即最高)的匹配结果。NDCG@5表示在评价模型的表现过程中,只关注预测匹配度排在前五个的匹配结果。
表1
表1为上述3个模型在全局测试集下的测试结果。参考表1可知,相比于单独使用基础BERT模型进行语义匹配任务,目标语言模型在全局测试数据集上的5分档准确率提升了1.7%,NDCG@5提升了0.004%,逆序对准确率提升了1.1%。
表2
表2为上述三个模型在长尾测试集下的测试结果。参考表2可知,相比于单独使用基础Bert模型进行语义匹配任务,目标语言模型在长尾测试数据集上的5分档准确率提升了2.6%,NDCG@5提升了0.009,逆序对准确率提升了1.8%。
图9、图10、图11以及图12分别以可视化注意力的方式示出了采用本申请实施例提供的方法进行训练后得到的语言模型(下文称为目标语言模型),与相关技术中的基础参考模型的表现。
如图9所示,对于目标输入文本“鸡蛋发霉了还能吃吗”,以及与该目标输入文本关联的文档的标识文本“鸡蛋外壳长霉了还能吃吗?”。图9左边是基础参考模型的注意力的可视化表示,右边是目标语言模型的注意力的可视化表示。参考图9可以看出,“鸡蛋”和“鸡蛋外壳”在字面上是包含关系但是含义不同。基础参考模型将“发霉”确定为“鸡蛋”的修饰词。而目标语言模型将“发霉”聚焦到了文档标识的“鸡蛋外壳”,并着重注意了“外壳”。因此,目标语言模型能够更为准确地预测出目标输入文本和该目标输入文本对应的文档标识的相关性。
如图10所示,对于目标输入文本“右肩膀疼,半年左右”,以及与该目标输入文本关联的文档的标识文本“右肩膀疼痛手臂也痛已有半年多”。图10左边是基础参考模型注意力的可视化,右边是目标语言模型注意力的可视化。从对齐关系来看,底层的“右肩膀”的“右”字的注意力应该更关注“肩膀”,而不是“左”字。在基础参考模型中,因为“左右”一词为高频词语,因此“右肩膀”的中“右”字过多关注了“左”字。而目标语言模型能够确定“半年左右”的“左右”已经是一个词语,并能够使“右肩膀”中的“右”字更加关注“肩膀”一词,从而消除了错误的对齐关系。
如图11所示,左边是基础参考模型的注意力的可视化,右边是目标语言模型注意力的可视化。对于目标输入文本“AB是空腹还是饭后吃有效”,以及与该目标输入文本关联的文档的标识文本“感冒药空腹吃还是饭后吃”。其中,AB指代某种感冒药。参考图11可知,基础参考模型无法识别到“AB”是“感冒药”的一种,因此两者交互的信息很少。而目标语言模型能够注意到“AB”和“感冒药”的上下位关系,并能够准确注意到“AB”是“感冒药”的一种。
如图12所示,左边是基础参考模型的注意力的可视化,右边是目标语言模型注意力的可视化。对于目标输入文本为“晕车贴贴耳朵图示”,以及与该目标输入文本关联的文档的标识文本“晕车贴贴哪里示意图”。基础参考模型未能学习到高频医疗词语“晕车贴”,因此误将该词语识别成了“车贴”。而对于目标语言模型,由于在训练该目标语言的过程中引入了医疗领域的高频词语,因此该目标语言模型能够准确地识别出该高频词语,加强了对歧义文本的识别能力,从而准确预测出目标输入文本与标识文本的相关度。
可选地,服务器可以在语言模型的第一阶段的损失函数L收敛时,或者语言模型在第一阶段的精度达到预设精度时,又或者该语言模型在第一训练阶段的训练轮数达到预设轮数时,停止第一阶段的预训练,并开始第二阶段的预训练。同理,服务器可以在第二阶段的损失函数LTM收敛时,或者语言模型在第二阶段的精度达到预设精度时,又或者该语言模型在第二训练阶段的训练轮数达到预设轮数时,停止第二阶段的预训练,并开始第三阶段的预训练。并且,服务器可以在第三阶段的损失函数收敛时,或者语言模型在第三阶段的精度达到预设精度时,又或者该语言模型在第三训练阶段的训练轮数达到预设轮数时,停止第三阶段的预训练,并得到能够执行文本匹配任务的语言模型。
可以理解的是,本申请实施例提供的语言模型的预训练方法的步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。例如,上述步骤201可以根据情况删除,也即是,句子样本可以是服务器预先获取到的。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
综上所述,本申请实施提供了一种语言模型的训练方法。该方法能够通过粒度划分,将目标领域的高频词语融入第一训练文本,并以SOP任务和MSP任务为第一阶段的训练任务,采用该第一训练文本预训练语言模型。由此,在预训练阶段,该方法不仅能够让语言模型学习到通用领域的知识,还能够学习到目标领域的知识。并且,该方法还能够以文本匹配任务为第二阶段的训练任务,采用从目标领域获取到的第二训练文本训练语言模型,从而使语言模型能够更广泛地学习到该目标领域的基础知识。由此,可以增加该语言模型的泛化能力,从而确保模型的训练效果。
图13是本申请实施提供的一种文本匹配方法的流程图,该文本匹配方法可以应用于计算机设备,例如可以应用于图1所示场景中的服务器110或终端120。参见图6,该方法可以包括如下步骤。
步骤301、获取目标输入文本。
其中,该目标输入文本可以是针对目标领域的输入文本。
作为第一种可能的示例,若该文本匹配方法应用于服务器,则该目标输入文本可以是终端发送至服务器的。
作为第二种可能的示例,若该文本匹配方法应用于终端,则该目标输入文本可以是终端用户输入至终端的,或者,该搜索文本可以是另一终端发送至该终端的。
步骤302、将目标输入文本输入至文本匹配模型,得到该文本匹配模型输出的与该目标输入文本所匹配的推荐文档的标识文本。
其中,该文本匹配模型可以是服务器采用如图2和图3所示的语言模型的训练方法进行预训练,并经过微调后得到的。文本匹配模型输出的与该目标输入文本所匹配的推荐文档的标识文本。该标识文本可以为推荐文档的标题。
在上述第一种可能的示例中,服务器中预先存储有文本匹配模型。服务器获取到目标输入文本后,可以将该目标输入文本输入至文本匹配模型进行处理,并得到该文本匹配模型输出的与该目标输入文本所匹配的推荐文档的标识文本。之后,服务器可以将文本匹配模型输出的推荐文档的标识文本。
在上述第二种可能的示例中,服务器可以将训练得到的文本匹配模型发送至终端。终端获取到目标输入文本后,可以直接将该目标输入文本输入至文本匹配模型进行处理,并得到该文本匹配模型输出的推荐文档的标识文本。
综上所述,本申请实施例提供了一种文本匹配方法,该方法可以获取目标输入文本,并将该目标输入文本输入至文本匹配模型进行处理,得到文本匹配模型输出的推荐文档的标识文本。由于该文本匹配模型是采用上述实施例提供的语言模型的训练方法进行预训练,并经过微调后得到,因此该文本匹配模型输出的推荐文档的标识文本也较为全面和准确,有效确保了文本匹配结果的可靠性。
图14是本申请实施提供的一种语言模型的训练装置的结构框图,该语言模型的训练装置可以应用于计算机设备中,该计算机设备可以是图1所示场景中的服务器110。如图14所示,该装置包括:
获取模块401,用于从文档库中的第一文档中获取两个句子样本,文档库中包含目标领域的文档。
划分模块402,用于分别对每个句子样本进行粒度划分,粒度划分后的句子样本包括多个句子段,至少一个句子段包括多个文字,以及由多个文字组成的至少一个属于高频词语库的词语,高频词语库中包含目标领域的高频词语。
掩码模块403,用于对粒度划分后的两个句子样本中的至少一个句子段进行掩码处理,得到第一训练文本。
训练模块404,用于以SOP任务和MSP任务为第一阶段的训练任务,采用第一训练文本预训练语言模型,SOP任务用于预测两个句子样本在第一文档中的顺序,MSP任务用于预测被掩码处理的至少一个句子段。
该训练模块404,还用于以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练语言模型,第二训练文本包括目标领域的第一输入文本,以及目标领域的第二文档的标识文本,文本匹配任务用于预测第二文本与第一输入文本的匹配度。
可选地,该掩码模块403用于:从粒度划分后的两个句子样本中获取至少一个句子段;对于每个句子段,将句子段中的第一句子成分替换为掩码,并将句子段中的第二句子成分替换为其他句子成分;其中,第一句子成分和第二句子成分均为单个文字或词语。
可选地,该训练模块404,用于:将第一训练文本输入至语言模型,得到语言模型输出的预测顺序,以及预测句子段;根据预测顺序和两个句子样本的顺序标签,确定第一损失值,顺序标签用于指示两个句子样本在第一文档中的顺序;根据预测句子段和粒度划分后的两个句子样本中被掩码处理的句子段,确定第二损失值;根据第一损失值和第二损失值预训练语言模型。
可选地,参考图14,该语言模型的训练装置还包括:顺序标定模块405,该顺序标定模块405用于:若两个句子样本在第一训练文本中的顺序与在第一文档中的顺序相同,则将两个句子样本的顺序标签设置为第一标签;若两个句子样本在第一训练文本中的顺序与在第一文档中的顺序不同,则将两个句子样本的顺序标签设置为第二标签。
可选地,该训练模块404,用于:将第二训练文本输入至语言模型,得到语言模型输出的预测匹配度;根据预测匹配度,以及第二文档与第一输入文本的匹配度标签,确定第三损失值;根据第三损失值训练语言模型。
可选地,该获取模块401,用于:从目标领域的数据库中获取第一输入文本,以及与第一输入文本关联的第二文档的标识文本,得到第二训练文本;计算第一输入文本与第二文档的匹配度,得到匹配度标签。
可选地,该训练模块404,还可以用于:
以文本匹配任务为第三阶段的训练任务,采用第三训练文本训练语言模型,第三训练文本包括目标领域的第二输入文本,以及目标领域的第三文档的标识文本;其中,第二训练文本中第一输入文本与第二文档的匹配度由机器标注,第三训练文本中第二输入文本与第三文档的匹配度由人工标注。
综上所述,本申请实施例提供了一种语言模型的训练装置。该装置能够通过粒度划分,将目标领域的高频词语融入第一训练文本,并以SOP任务和MSP任务为第一阶段的训练任务,采用该第一训练文本预训练语言模型。由此,在预训练阶段,该方法不仅能够让语言模型学习到通用领域的知识,还能够学习到目标领域的知识。并且,该方法还能够以文本匹配任务为第二阶段的训练任务,采用从目标领域获取到的第二训练文本训练语言模型,从而使语言模型能够更广泛地学习到该目标领域的基础知识。由此,可以增加该语言模型的泛化能力,从而确保模型的训练效果。
图16是本申请实施例提供的一种文本匹配装置的结构框图,该文本匹配装置可以应用于计算机设备中,该计算机设备可以是图1所示场景中的终端120。如图16所示,该装置包括:
获取模块501,用于获取目标输入文本。
匹配模块502,用于将目标输入文本输入至文本匹配模型,得到文本匹配模型输出的与目标输入文本所匹配的推荐文档的标识文本;其中,该文本匹配模型采用如图14或图15所示的语言模型的训练装置训练得到。
综上所述,本申请实施例提供了一种文本匹配装置,该装置可以获取目标输入文本,并将目标输入文本输入至文本匹配模型进行处理,得到文本匹配模型输出的与该目标输入文本所匹配的推荐文档的标识文本。由于该文本匹配模型是采用上述实施例提供的语言模型的训练装置进行预训练,并经过微调后得到,因此该文本匹配模型输出的推荐文档的标识文本也较为全面和准确,有效确保了文本匹配结果的可靠性。
可以理解的是:上述实施例提供的语言模型的训练装置和文本匹配装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
另外,上述实施例提供的语言模型的训练装置和语言模型的训练方法实施例属于同一构思,文本匹配装置与文本匹配方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图17是本申请实施例提供的一种服务器的结构示意图,该计算机设备可以是图1所示场景中的服务器110,下文以该计算机设备为服务器110进行说明。
具体来讲:服务器110包括中央处理单元(Central Processing Unit,CPU)111、包括随机存取存储器(Random Access Memory,RAM)1121和只读存储器(Read Only Memory,ROM)1122的系统存储器112,以及连接系统存储器112和中央处理单元111的系统总线113。服务器110还包括用于存储操作系统1141、应用程序1142和其他程序模块1143的大容量存储设备114。
大容量存储设备114通过连接到系统总线113的大容量存储控制器(未示出)连接到中央处理单元111。大容量存储设备114及其相关联的计算机可读介质为服务器110提供非易失性存储。也就是说,大容量存储设备114可以包括诸如硬盘或者紧凑型光盘只读存储器(Compact Disc Read Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、带电可擦可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)、闪存或其他固态存储其技术,CD-ROM、数字通用光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的系统存储器112和大容量存储设备114可以统称为存储器。
根据本申请的各种实施例,服务器110还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器110可以通过连接在系统总线113上的网络接口单元115连接到网络116,或者说,也可以使用网络接口单元115来连接到其他类型的网络或远程计算机系统(未示出)。
上述存储器还包括一个或者一个以上的程序,一个或者一个以上程序存储于存储器中,被配置由CPU执行,以实现上述方法实施例提供的语言模型的训练方法,或文本匹配方法。
本申请的实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的语言模型的训练方法,或文本匹配方法。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行,以实现上述各方法实施例提供的语言模型的训练方法,或文本匹配方法。
本申请的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的语言模型的训练方法,或文本匹配方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
可以理解的是,本申请中术语“多个”的含义是指两个或两个以上。本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
还可以理解的是,本申请所涉及的信息和数据(包括但不限于用于训练语言模型的数据,以及目标输入文本),均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的第一训练文本,第二训练文本,第三训练文本以及目标输入文本都是在充分授权的情况下获取的。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种语言模型的训练方法,其特征在于,所述方法包括:
从文档库中的第一文档中获取两个句子样本,所述文档库中包含目标领域的文档;
分别对每个所述句子样本进行粒度划分,粒度划分后的所述句子样本包括多个句子段,至少一个所述句子段包括多个文字,以及由所述多个文字组成的至少一个属于高频词语库的词语,所述高频词语库中包含所述目标领域的高频词语;
对粒度划分后的所述两个句子样本中的至少一个所述句子段进行掩码处理,得到第一训练文本;
以句子顺序预测SOP任务和掩码段预测MSP任务为第一阶段的训练任务,采用所述第一训练文本预训练语言模型,所述SOP任务用于预测所述两个句子样本在所述第一文档中的顺序,所述MSP任务用于预测被掩码处理的至少一个句子段;
以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练所述语言模型,所述第二训练文本包括所述目标领域的第一输入文本,以及所述目标领域的第二文档的标识文本,所述文本匹配任务用于预测所述第二文档与所述第一输入文本的匹配度。
2.根据权利要求1所述的方法,其特征在于,所述对粒度划分后的两个句子样本中的至少一个所述句子段进行掩码处理,包括:
从粒度划分后的两个句子样本中获取至少一个所述句子段;
对于每个所述句子段,将所述句子段中的第一句子成分替换为掩码,并将所述句子段中的第二句子成分替换为其他句子成分;
其中,所述第一句子成分和所述第二句子成分均为单个文字或词语。
3.根据权利要求1所述的方法,其特征在于,所述以句子顺序预测SOP任务和掩码段预测MSP任务为第一阶段的训练任务,采用所述第一训练文本预训练语言模型,包括:
将所述第一训练文本输入至所述语言模型,得到所述语言模型输出的预测顺序,以及预测句子段;
根据所述预测顺序和所述两个句子样本的顺序标签,确定第一损失值,所述顺序标签用于指示所述两个句子样本在所述第一文档中的顺序;
根据所述预测句子段和所述粒度划分后的两个句子样本中被掩码处理的句子段,确定第二损失值;
根据所述第一损失值和所述第二损失值预训练所述语言模型。
4.根据权利要求3所述的方法,其特征在于,在以句子顺序预测SOP任务和掩码段预测MSP任务为第一阶段的训练任务,采用所述第一训练文本预训练语言模型之前,所述方法还包括:
若所述两个句子样本在所述第一训练文本中的顺序与在所述第一文档中的顺序相同,则将所述两个句子样本的顺序标签设置为第一标签;
若所述两个句子样本在所述第一训练文本中的顺序与在所述第一文档中的顺序不同,则将所述两个句子样本的顺序标签设置为第二标签。
5.根据权利要求1至4任一所述的方法,其特征在于,所述以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练所述语言模型,包括:
将所述第二训练文本输入至所述语言模型,得到所述语言模型输出的预测匹配度;
根据所述预测匹配度,以及所述第二文档与所述第一输入文本的匹配度标签,确定第三损失值;
根据所述第三损失值训练所述语言模型。
6.根据权利要求5所述的方法,其特征在于,在以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练所述语言模型之前,所述方法还包括:
从所述目标领域的数据库中获取所述第一输入文本,以及与所述第一输入文本关联的第二文档的标识文本,得到所述第二训练文本;
计算所述第一输入文本与所述第二文档的匹配度,得到所述匹配度标签。
7.根据权利要求1至4任一所述的方法,其特征在于,所述方法还包括:
以所述文本匹配任务为第三阶段的训练任务,采用第三训练文本训练所述语言模型,所述第三训练文本包括所述目标领域的第二输入文本,以及所述目标领域的第三文档的标识文本;
其中,所述第二训练文本中第一输入文本与第二文档的匹配度由机器标注,所述第三训练文本中第二输入文本与第三文档的匹配度由人工标注。
8.一种文本匹配方法,其特征在于,所述方法包括:
获取目标输入文本;
将所述目标输入文本输入至文本匹配模型,得到所述文本匹配模型输出的与所述目标输入文本所匹配的推荐文档的标识文本;
其中,所述文本匹配模型是采用如权利要求1至7任一所述的方法对语言模型进行训练得到的。
9.一种语言模型的训练装置,其特征在于,所述装置包括:
获取模块,用于从文档库中的第一文档中获取两个句子样本,所述文档库中包含目标领域的文档;
划分模块,用于分别对每个所述句子样本进行粒度划分,粒度划分后的所述句子样本包括多个句子段,至少一个所述句子段包括多个文字,以及由所述多个文字组成的至少一个属于高频词语库的词语,所述高频词语库中包含所述目标领域的高频词语;
掩码模块,用于对粒度划分后的所述两个句子样本中的至少一个所述句子段进行掩码处理,得到第一训练文本;
训练模块,用于以句子顺序预测SOP任务和掩码段预测MSP任务为第一阶段的训练任务,采用所述第一训练文本预训练语言模型,所述SOP任务用于预测所述两个句子样本在所述第一文档中的顺序,所述MSP任务用于预测被掩码处理的至少一个句子段;
所述训练模块,还用于以文本匹配任务为第二阶段的训练任务,采用第二训练文本训练所述语言模型,所述第二训练文本包括所述目标领域的第一输入文本,以及所述目标领域的第二文档的标识文本,所述文本匹配任务用于预测所述第二文本与所述第一输入文本的匹配度。
10.一种文本匹配装置,其特征在于,所述装置包括:
获取模块,用于获取目标输入文本;
匹配模块,用于将所述目标输入文本输入至文本匹配模型,得到所述文本匹配模型输出的与所述目标输入文本所匹配的推荐文档的标识文本;
其中,所述文本匹配模型采用如权利要求9所述的语言模型的训练装置训练得到。
11.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至7任一所述的语言模型的训练方法,或如权利要求8所述的文本匹配方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至7任一所述的语言模型的训练方法,或如权利要求8所述的文本匹配方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210261106.1A CN114626463A (zh) | 2022-03-16 | 2022-03-16 | 语言模型的训练方法、文本匹配方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210261106.1A CN114626463A (zh) | 2022-03-16 | 2022-03-16 | 语言模型的训练方法、文本匹配方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114626463A true CN114626463A (zh) | 2022-06-14 |
Family
ID=81902352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210261106.1A Pending CN114626463A (zh) | 2022-03-16 | 2022-03-16 | 语言模型的训练方法、文本匹配方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114626463A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117574878A (zh) * | 2024-01-15 | 2024-02-20 | 西湖大学 | 用于混合领域的成分句法分析方法、装置及介质 |
-
2022
- 2022-03-16 CN CN202210261106.1A patent/CN114626463A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117574878A (zh) * | 2024-01-15 | 2024-02-20 | 西湖大学 | 用于混合领域的成分句法分析方法、装置及介质 |
CN117574878B (zh) * | 2024-01-15 | 2024-05-17 | 西湖大学 | 用于混合领域的成分句法分析方法、装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112131350B (zh) | 文本标签确定方法、装置、终端及可读存储介质 | |
Virpioja et al. | Empirical comparison of evaluation methods for unsupervised learning of morphology | |
US20230069935A1 (en) | Dialog system answering method based on sentence paraphrase recognition | |
CN113282711B (zh) | 一种车联网文本匹配方法、装置、电子设备及存储介质 | |
CN114818717A (zh) | 融合词汇和句法信息的中文命名实体识别方法及系统 | |
CN112966117A (zh) | 实体链接方法 | |
Dobson | Interpretable outputs: criteria for machine learning in the humanities | |
Da et al. | Deep learning based dual encoder retrieval model for citation recommendation | |
CN114611520A (zh) | 一种文本摘要生成方法 | |
Hande et al. | Multi-task learning in under-resourced Dravidian languages | |
CN114626463A (zh) | 语言模型的训练方法、文本匹配方法及相关装置 | |
Hughes | Automatic inference of causal reasoning chains from student essays | |
Vaaras et al. | Analysis of self-supervised learning and dimensionality reduction methods in clustering-based active learning for speech emotion recognition | |
Thomas et al. | Synthesized feature space for multiclass emotion classification | |
Zhang et al. | Dual attention model for citation recommendation with analyses on explainability of attention mechanisms and qualitative experiments | |
Alwaneen et al. | Stacked dynamic memory-coattention network for answering why-questions in Arabic | |
Luo | Automatic short answer grading using deep learning | |
Singh et al. | Computer Application for Assessing Subjective Answers using AI | |
Shafiq et al. | Enhancing Arabic Aspect-Based Sentiment Analysis Using End-to-End Model | |
Lawrence | Explainable argument mining | |
Favre | Contextual language understanding Thoughts on Machine Learning in Natural Language Processing | |
US11977853B2 (en) | Aggregating and identifying new sign language signs | |
Libovický | Multimodality in machine translation | |
Vecchi et al. | Transferring multiple text styles using CycleGAN with supervised style latent space | |
CN111611392B (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 |