CN116680575B - 模型处理方法、装置、设备及存储介质 - Google Patents
模型处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116680575B CN116680575B CN202310976194.8A CN202310976194A CN116680575B CN 116680575 B CN116680575 B CN 116680575B CN 202310976194 A CN202310976194 A CN 202310976194A CN 116680575 B CN116680575 B CN 116680575B
- Authority
- CN
- China
- Prior art keywords
- sentence
- target
- model
- language
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000012549 training Methods 0.000 claims abstract description 406
- 239000013598 vector Substances 0.000 claims abstract description 321
- 238000000034 method Methods 0.000 claims abstract description 59
- 238000005457 optimization Methods 0.000 claims abstract description 24
- 238000013519 translation Methods 0.000 claims description 145
- 238000012545 processing Methods 0.000 claims description 61
- 238000006243 chemical reaction Methods 0.000 claims description 37
- 238000005065 mining Methods 0.000 claims description 18
- 238000005070 sampling Methods 0.000 claims description 12
- 238000012216 screening Methods 0.000 claims description 5
- 230000008014 freezing Effects 0.000 claims description 4
- 238000007710 freezing Methods 0.000 claims description 4
- 230000009467 reduction Effects 0.000 claims description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000002708 enhancing effect Effects 0.000 abstract description 3
- 230000000875 corresponding effect Effects 0.000 description 155
- 230000014509 gene expression Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 24
- 238000003058 natural language processing Methods 0.000 description 20
- 238000004590 computer program Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000008451 emotion Effects 0.000 description 3
- 230000000873 masking effect Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 241000070023 Phoenicopterus roseus Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000013526 transfer learning 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/28—Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
-
- 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
- G06N3/0895—Weakly supervised learning, e.g. semi-supervised or self-supervised learning
-
- 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
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
本申请基于人工智能技术公开一种模型处理方法、装置、设备及存储介质,方法包括:获取跨语言预训练模型的目标训练数据,目标训练数据包括多个语句对;调用跨语言预训练模型,分别生成每个语句对中的各个句子的向量表示,并分别对每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;调用跨语言预训练模型分别生成每个语句对的向量表示,并分别对每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;根据第一学习结果和第二学习结果,对跨语言预训练模型进行模型优化,以提升跨语言预训练模型的跨语言理解和生成能力,从而增强跨语言预训练模型的模型性能。
Description
技术领域
本申请涉及互联网技术领域,具体涉及人工智能技术领域,尤其涉及一种模型处理方法、装置、设备及存储介质。
背景技术
近年来,跨语言预训练模型的发展将NLP(Natural Language Processing,自然语言处理)领域的研究提升到了一个新的阶段;所谓的跨语言预训练模型是一种可利用大规模无标注数据来预训练的模型,其可生成不同语言的句子的向量表示。目前,如何对跨语言预训练模型进行训练优化成为了一个研究热点。
发明内容
本申请实施例提供了一种模型处理方法、装置、设备及存储介质,可提升跨语言预训练模型的跨语言理解和生成能力,从而增强跨语言预训练模型的模型性能。
一方面,本申请实施例提供了一种模型处理方法,所述方法包括:
获取跨语言预训练模型的目标训练数据,所述目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,所述每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词;
调用所述跨语言预训练模型,分别生成所述每个语句对中的各个句子的向量表示;并分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;
调用所述跨语言预训练模型分别生成所述每个语句对的向量表示,并分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;
根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化。
另一方面,本申请实施例提供了一种模型处理装置,所述装置包括:
获取单元,用于获取跨语言预训练模型的目标训练数据,所述目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,所述每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词;
处理单元,用于调用所述跨语言预训练模型,分别生成所述每个语句对中的各个句子的向量表示;并分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;
所述处理单元,还用于调用所述跨语言预训练模型分别生成所述每个语句对的向量表示,并分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;
所述处理单元,还用于根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化。
再一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括输入接口和输出接口,所述计算机设备还包括:
处理器以及计算机存储介质;
其中,所述处理器适于实现一条或多条指令,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行上述所提及的模型处理方法。
再一方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行上述所提及的模型处理方法。
再一方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括一条或多条指令;所述计算机程序产品中的一条或多条指令被处理器执行时,实现上述所提及的模型处理方法。
本申请实施例在获取到包含多个语句对的目标训练数据后,可以调用跨语言预训练模型,分别生成目标训练数据中的每个语句对中的各个句子的向量表示,并分别对每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;另外,还可调用跨语言预训练模型分别生成每个语句对的向量表示,并分别对每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果。然后,根据第一学习结果和第二学习结果,对跨语言预训练模型进行模型优化。本申请实施例通过分层对比学习,一方面可以使得跨语言预训练模型有效学习句子和单词的表征,提升跨语言预训练模型的跨语言理解和生成的能力,从而增强跨语言预训练模型的模型性能;另一方面,可以使得跨语言预训练模型学习到与语言无关的表示,从而弥补跨语言的不同句子之间的语义差异,进而增强跨语言预训练模型对于句子的向量表示的能力,使得跨语言预训练模型所生成的句子的向量表示更具通用性。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种终端和服务器之间的交互示意图;
图2是本申请实施例提供的一种模型处理方法的流程示意图;
图3a是本申请实施例提供的一种生成任一句子的向量表示的生成流程示意图;
图3b是本申请实施例提供的一种计算句子级对比损失值的示意图;
图3c是本申请实施例提供的一种生成第i个语句对的向量表示的流程示意图;
图3d是本申请实施例提供的一种计算单词级对比损失值的示意图;
图4是本申请另一实施例提供的一种模型处理方法的流程示意;
图5a是本申请实施例提供的一种构造困难负样本的示意图;
图5b是本申请实施例提供的一种翻译模型的结构示意图;
图5c是本申请实施例提供的一种翻译模型的优化过程示意图;
图6是本申请实施例提供的一种模型处理装置的结构示意图;
图7是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请实施例中,跨语言预训练模型可以理解成是一种跨语言的预训练模型(Pre-trainingmodel,PTM);所谓的预训练模型也称基石模型或者大模型,其是从自然语言处理(NLP)领域的大语言模型(Large Language Model)发展而言的,具体是指具有大参量的深度神经网络(Deepneuralnetwork,DNN)。在海量未标记的数据上对其进行训练,可以实现利用大参量DNN的函数近似能力使预训练模型在数据上提取共性特征;并且,预训练模型经微调(finetune)、参数高效微调(PEFT)、prompt-tuning等技术后,可以适用于下游任务。因此,预训练模型可以在小样本(Few-shot)或零样本(Zero-shot)场景下达到理想效果。PTM(即预训练模型)按照处理的数据模态可以分为语言模型(如ELMO,BERT,GPT)、视觉模型(如swin-transformer,ViT,V-MOE)、语音模型(如VALL-E)、多模态模型(如ViBERT,CLIP,Flamingo,Gato)等,其中多模态模型指建立两种或以上数据模态特征表示的模型。应理解的是,预训练模型是输出人工智能生成内容(AIGC)的重要工具,其也可以作为连接多个具体任务模型的通用接口。
跨语言预训练模型在跨语言的自然语言处理(NLP)任务上具有显著的优势,所谓的NLP是计算机科学领域与人工智能(Artificial Intelligence,AI)领域中的重要方向,它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理涉及自然语言,即人们日常使用的语言,与语言学研究密切;同时涉及计算机科学和数学。其中,AI技术是指利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术;其主要通过了解智能的实质,生产出一种新的能以人类智能相似的方式做出反应的智能机器,使得智能机器具有感知、推理与决策等多种功能。相应的,AI技术是一门综合学科,其主要包括计算机视觉技术(Computer Vision,CV)、语音处理技术、自然语言处理技术以及机器学习(Machine Learning,ML)/深度学习等几大方向。
此处提及的自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是AI的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域;而深度学习则是一种利用深层神经网络系统,进行机器学习的技术。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习(Reinforcement Learning,RL)、迁移学习、归纳学习、式教学习、有监督学习、无监督学习、自监督学习等技术;其中,所谓的有监督学习是指采用类别已知(具有标注信息)的数据对模型进行训练优化的处理方式,无监督学习是指采用类别未知(没有被标记)的数据对模型进行训练优化的处理方式,而自监督学习是指利用辅助任务(pretext)从大规模的无监督数据中挖掘自身的监督信息,并通过构造的监督信息对模型进行训练优化的处理方式。需要说明的是,本申请实施例提及的跨语言预训练模型是深度学习的最新发展成果,融合了以上技术。
为了强化跨语言预训练模型,本申请实施例基于AI技术提出了一种新颖的分层对比学习框架。所谓的分层对比学习可理解成是一种可用于自然语言处理(NLP)任务的,且通过至少两个层级(如句子级和单词级)的对比学习来学习语义等价句子的向量表示的方法,该方法可以使跨语言预训练模型通过自监督非参数实例区分来学习不同语言中分布的语义等价句子之间的通用向量表示,从而提高跨语言预训练模型理解整个句子的能力和捕捉标记共现的能力,进而提升跨语言预训练模型的跨语言理解和生成能力,增强跨语言预训练模型的模型性能。其中:
①对比学习是一种利用无标签数据学习有意义的表示函数的技术;在对比学习中,可将数据样本分成锚定点、正样本和负样本,并通过将锚定点和正样本拉近,将锚定点和负样本拉远的方式,使得学习到的表示函数能够捕获数据的相关性和差异性,从而在后续的任务中发挥作用。对比学习的目标是最大化锚定点(采用q表示)和其匹配的正样本(采用k+表示)之间的相似性,同时最小化锚定点和其匹配的各个负样本(采用表示)之间的相似性,使得各个负样本/>尽量远离锚定点。基于此,本申请实施例所使用的对比学习的损失函数/>可参见下述公式1.1所示:
式1.1
其中,exp表示以自然常数 e为底的指数函数,k+表示正样本,表示第k个负样本,k的取值为正整数,且小于或等于负样本的数量。s(q,k)表示评分函数,用于计算q和k之间的相似性;具体的,该评分函数可以是余弦相似度函数(即/>),或者,该评分函数也可以是欧式距离函数,等等。
②自监督非参数实例是一种无需人工标注数据的自监督学习方法,其可通过比较相似和不相似的样本来让跨语言预训练模型自动学习句子特征的通用表示,从而改进跨语言自然语言处理任务的效率和准确性。
③语义等价句子是指不同语言中具有相同语义的句子,通过学习它们之间的相似性可以实现跨语言自然语言处理任务。本申请实施例可通过语义等价句子表示这一表示方法对语义等价的各个句子进行表示,该语义等价句子表示可实现不同语言中具有相同语义的句子具有相似的向量表示,例如有一句话在英语中是"The cat is sleeping",其在法语中是"Le chat dort",由于这两个句子在语义上是相同的,即它们表达了相同的意思,因此如果使用语义等价句子表示,那么这两个句子的向量表示也应该是相似的,这种表示方法可以在跨语言的自然语言处理任务中提高效率和准确性。
基于上述描述,下面对本申请实施例所提出的分层对比学习框架的工作流程进行阐述。具体的,该分层对比学习框架的工作流程大致如下:
首先,可获取用于对跨语言预训练模型进行预训练的多个批次的训练数据,并依次采用各个批次的训练数据对跨语言预训练模型进行模型训练(即模型优化)。其中,任一批次的训练数据均包括多个语句对,每个语句对是由不同语言中所分布的两个语义等价句子构成的。在采用当前批次的训练数据对跨语言预训练模型进行模型训练时,可控制跨语言预训练模型对当前批次的训练数据中的每个语句对进行句子级对比学习;以及,可以获取为当前批次的训练数据中的每个语句对分别配置的词袋,并控制跨语言预训练模型根据获取到的各个词袋,对相应语句对进行单词级对比学习。然后,可以根据句子级对比学习的结果和单词级对比学习的结果,优化跨语言预训练模型。
可见,通过本申请实施例提出的分层对比学习框架,可以使得跨语言预训练模型学习到与语言无关的表示,从而弥补跨语言的不同句子之间的语义差异,进而增强跨语言预训练模型对于句子的向量表示的能力,使得跨语言预训练模型所生成的句子的向量表示更具通用性。并且,通过自监督的非参数实例区分学习语言不变的句子表示,可以提高预训练模型在跨语言NLP任务上的理解和生成能力;且通过并行的跨语言句子使得两种语言之间具有相同的语义表示,并且可以区分其中的单词,从而提高了跨语言理解和生成的能力。另外,通过多个句子级的对比学习和单词级的对比学习,可以有效地学习句子和单词的表征,从而提升句子的向量表示的准确性。
在具体实现中,上述提及的分层对比学习框架的工作流程可由计算机设备执行,此处的计算机设备可以是终端或服务器;或者,该状态估计方案也可由终端和服务器共同执行,对此不作限定。例如参见图1所示,可以由终端负责获取用于对跨语言预训练模型进行预训练的多个批次的训练数据,并将获取到的各个批次的训练数据依次发送给服务器,使服务器每接收到一个批次的训练数据,便控制跨语言预训练模型基于当前批次的训练数据进行句子级对比学习和单词级对比学习,然后根据句子级对比学习的结果和单词级对比学习的结果,优化跨语言预训练模型。或者,服务器在得到句子级对比学习的结果和单词级对比学习的结果之后,可以将句子级对比学习的结果和单词级对比学习的结果下发给终端,由终端根据句子级对比学习的结果和单词级对比学习的结果,优化跨语言预训练模型。
其中,上述提及的终端可以是智能手机、电脑(如平板电脑、笔记本电脑、台式计算机等)、智能穿戴设备(如智能手表、智能眼镜)、智能语音交互设备、智能家电(如智能电视)、车载终端或飞行器等;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。进一步的,终端和服务器可位于区块链网络内或区块链网络外,对此不作限定;更进一步的,终端和服务器还可将内部所存储的任一数据上传至区块链网络进行存储,以防止内部所存储的数据被篡改,提升数据安全性。
基于上述分层对比学习框架的相关描述,本申请实施例提出了一种模型处理方法。该模型处理方法可以由上述提及的计算机设备(如终端或服务器)执行,也可以由终端和服务器共同执行;为便于阐述,本申请实施例主要以计算机设备执行该模型处理方法为例进行说明。请参见图2所示,该模型处理方法可包括以下步骤S201-S206:
S201,获取跨语言预训练模型的目标训练数据。
本申请实施例对跨语言预训练模型的具体类型不作限定,例如其可以是以下任一种模型:XLM(Cross-lingual Language Model Pretraining)、XLM-R(UnsupervisedCross-lingual Representation Learning at Scale,一种在100个语种上的预训练模型)、多语言BERT-style(一种基于双向变换器的大规模预训练语言,BidirectionalEncoder Representation from Transformers)模型,等等。进一步的,该跨语言预训练模型可以通过掩码语言模型和转换语言模型等任务来实现跨语言表示;具体的,该跨语言预训练模型中可包括转换语言模型和掩码语言模型等。所谓的转换语言模型是一种具有语言转换能力的预训练模型,其通常与掩码语言模型一起使用来进行多任务的预训练,用于从大规模无标注数据中学习知识,并将其应用于下游的自然语言处理任务;所谓的掩码语言模型是一种预训练模型,其主要用于在输入的句子中随机掩码掉一些单词后,通过预测被掩码的单词来学习语言的上下文信息。
应理解的是,跨语言预训练模型还可包括编码器,此处提及的编码器是自然语言处理中的一个概念,具体是指通过对自然语言文本(如句子或单词)进行编码,将其转换为一种机器可读形式的模型或组件。编码器可用于多种任务,例如文本分类、命名实体识别和情感分析等等;编码器通常是预训练模型的一部分,可以根据大规模未标记的数据学习模型输入数据(即输入至跨语言预训练模型中的数据,如句子、单词等)的通用的向量表示,这些通用的向量表示可用于不同的下游自然语言处理任务,可以提高跨语言理解和生成的效率和准确性。还需说明的是,该编码器可以内置在跨语言预训练模型中的转换语言模型内,或者,该编码器也可以和转换语言模型并行地内置在跨语言预训练模型中,对此不作限定。
跨语言预训练模型的目标训练数据是指:用于对跨语言预训练模型进行预训练的数据。具体的,目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,此处提及的第一语言和第二语言可根据实际需求或者经验值确定,例如第一语言可以是中文,第二语言可以是英文,或者第一语言可以是英文,第二语言可以是韩文,等等。示例性地,目标训练数据可包括第一语言集(采用X表示)和第二语言集(采用Y表示);第一语言集中包括依次排列的n(n为大于1的整数)个第一语言的句子,第二语言集中包括依次排列的n个第二语言的句子,即X=,/>。其中,yi是xi的语义等价句子,即第一语言集和第二语言集中处于同一排列位置的两个句子构成一个语句对;示例性地,第i个语句对可以表示为。
进一步的,目标训练数据中的每个语句对均配置有一个词袋,所谓的词袋是指将一个或多个文档中的所有单词放在一起所形成的无序的集合(也称为文档向量),在自然语言处理领域中,词袋广泛应用于文本分类、情感分析等任务中。基于词袋的定义可知,任一词袋包括相应语句对所处的文档中的单词;应理解的是,本申请实施例所提及的语句对包括的是不同语言的句子,不同语言的句子位于不同的文档中,如中文的句子位于中文的文档中,英文的句子位于英文的文档中,因此任一语句对所处的文档包括的是:相应语句对中的各个句子所处的文档。
需说明的是,跨语言预训练模型可以通过一个批次的训练数据进行优化,此情况下的目标训练数据就是这一个批次的训练数据。或者,该跨语言预训练模型可以通过使用多个批次的训练数据进行优化,以提升跨语言预训练模型的优化效果;在此情况下,这多个批次的训练数据是依次被使用的,而目标训练数据可以是多个批次中的非首个批次的训练数据,也可以是多个批次中的首个批次的训练数据,对此不作限定。
S202,调用跨语言预训练模型,分别生成每个语句对中的各个句子的向量表示。
由前述可知,跨语言预训练模型内包括编码器,该编码器可通过编码将句子表示为隐藏向量表示;基于此,在执行步骤S202时,可以调用跨语言预训练模型中的编码器,分别对每个语句对中的各个句子进行编码,得到每个语句对中的各个句子的向量表示。
其中,参见图3a所示,调用跨语言预训练模型中的编码器对任一句子(设句子x)进行编码的过程可包括:首先,可在任一句子(设句子x)前插入一个特殊单词(如[CLS]符号),并对任一句子(句子x)进行分词,得到多个单词;其次,可将该特殊单词和多个单词输入至跨语言预训练模型中的编码器,使该跨语言预训练模型中的编码器通过学习任一句子(句子x)的上下文信息,分别对输入的各个单词进行编码以得到相应单词的隐藏向量表示;然后,可从得到的各个单词的隐藏向量表示中,选取出特殊单词的隐藏向量,并对特殊单词的隐藏向量进行线性投影,得到特殊单词的输出向量,从而将该特殊单词的输出向量作为任一句子(句子x)的向量表示。
可见,输入至跨语言预训练模型中的单词序列中的第一个单词始终是一个特殊的单词,且相应于该特殊单词的最终隐藏向量可投影成句子的向量表示。即采用rx代表任一句子(句子x)的向量表示,则。其中,/>表示对输入的句子x所涉及的各个单词进行编码,得到各个单词的隐藏向量;/>是聚合函数,该聚合函数主要是用于从输入的各个单词的隐藏向量中选取出特殊单词的隐藏向量;/>是线性投影,用于对聚合函数所得到的隐藏向量(即特殊单词的隐藏向量)进行线性投影,得到特殊单词的输出向量;/>表示操作的组合,此处的操作可根据实际需求设定,在此不作限定。
应理解的是,上述只是示例性地阐述了跨语言预训练模型生成任一句子的向量表示的一种实施方式,并非穷举。例如,在其他实施例中,也可直接将任一句子(句子x)中的各个单词至跨语言预训练模型中的编码器,使该跨语言预训练模型中的编码器通过学习任一句子(句子x)的上下文信息,分别对输入的各个单词进行编码以得到相应单词的隐藏向量表示;然后,可对得到的各个单词的隐藏向量表示进行整合(如均值运算),并对整合后的隐藏向量进行线性投影,得到任一句子(句子x)的向量表示。
S203,分别对每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果。
其中,第一学习结果包括:每个语句对所对应的句子级对比损失值。句子级对比学习可理解成是:以单个句子作为最小的学习单位,对不同句子的向量表示进行对比学习的处理。从本质来说,句子级对比学习是一种通过自监督非参数实例区分来学习语义等价的句子表示方法,该方法主要通过对跨语言的语义等价的各个句子的向量表示进行对比学习,以使得跨语言预训练模型可以学习到这些句子在语义表示上所具有的相同的特点,并区分出它们中包含的单词,从而提高了跨语言预训练模型的跨语言理解和生成能力。
在一种具体实现中,针对第i个语句对而言,由于第i个语句对中的第一语言的句子(即xi)和第二语言的句子(即yi)之间具有语义等价关系,因此为了获得跨语言的语义等价句子的通用向量表示,可以使第i个语句对中的第一语言的句子(即xi)的向量表示(采用表示)与第i 个语句对中的第二语言的句子(即yi)的向量表示(采用/>表示)尽可能相似,但使/>与批次(即目标训练数据)中的其他语句对中的各个句子的向量表示尽可能不相似,此处提及的其他语句对包括:目标训练数据中除第i个语句对以外的语句对。
在此情况下,计算机设备在执行步骤S203时,可将作为第一锚定点(采用/>表示),将/>作为第一锚定点的正样本(采用/>表示);以及,可以将其他语句对中的各个句子的向量表示视为一系列的负样本,并表示为/>,从而可根据/>和正样本/>之间的相似性,以及/>和/>中的每个负样本之间的相似性,计算出第i个语句对中的xi对应的句子级对比损失值,如图3b所示。其中,图3b中的/>表示由其他语句对中的各个句子所构成的实例集;X为第一语言集,/>表示去除了第i个第一语言的句子以后的第一语言集,Y为第二语言集,/>表示去除了第i个第二语言的句子以后的第二语言集。
进一步的,基于前述公式1.1,xi对应的句子级对比损失值(采用表示)可以参见下述公式1.2所示:
式1.2
对称地,为了增强句子级对比学习的效果,还可以使第i个语句对中的第二语言的句子(即yi)的向量表示(采用表示)与第i个语句对中的第一语言的句子(即xi)的向量表示(采用/>表示)尽可能相似,但使/>与批次(即目标训练数据)中的其他语句对中的各个句子的向量表示尽可能不相似。基于此,计算机设备在执行步骤S203时,还可将/>作为第二锚定点(采用/>表示),将/>作为第二锚定点的正样本(采用/>表示);以及,可以将其他语句对中的各个句子的向量表示视为一系列的负样本,并表示为/>,从而可根据/>和正样本/>之间的相似性,以及/>和/>中的每个负样本之间的相似性,计算出第i个语句对中的yi对应的句子级对比损失值。采用/>表示yi对应的句子级对比损失值,则/>的定义可以参见下述公式1.3所示:
式1.3
基于上述描述,计算机设备在得到第i个语句对中的xi对应的句子级对比损失值和yi对应的句子级对比损失值后,可对xi对应的句子级对比损失值和yi对应的句子级对比损失值进行整合(如均值运算或求和运算等),得到第i个语句对所对应的句子级对比损失值。当然,可以理解的是,在其他实施例中,也可直接将xi对应的句子级对比损失值,或者yi对应的句子级对比损失值作为第i个语句对所对应的句子级对比损失值。
可选的,上述在计算第i个语句对所对应的句子级对比损失值时,是将其他语句对中的各个句子的向量表示均视为负样本的;然而,在其他实施例中,也可从其他语句对中的各个句子的向量表示中,随机选取预设数量的向量表示作为负样本,从而按照上述提及的计算原理,计算出第i个语句对所对应的句子级对比损失值。
进一步的,由于在句子级对比学习中,为了训练每个句子的向量表示,需要从同一批次的训练数据中选择一个正样本和多个负样本;然而,随机选取的负样本可能会不太具有区分度,即随机选取的负样本通常是很容易区分的,这样会使得跨语言预训练模型区分正负样本的难度较低,从而影响模型的学习效果。因此,本申请实施例提出了在向量空间中使用平滑的线性插值算法和自适应控制算法来构造难以区分负样本,使得跨语言预训练模型对正样本和难以区分负样本进行对比学习,从而解决因缺少难以区分负样本而影响模型识别能力的问题。
其中,①难以区分负样本又可称为困难负样本,其具体是指与正样本的相似度较高(如相似度高于阈值)的负样本;换句话说,难以区分负样本可理解成是容易被误认为是正样本的负样本。②线性插值算法是指用于实现线性插值的算法,而线性插值是指在一组已有的向量表示中,通过对它们进行加权平均来生成新向量表示的过程。线性插值算法的作用是利用句子表示的连续性,在嵌入空间中找到更难以区分的负样本。通过对同一批次中不同句子的向量表示进行插值,以此获得更接近正样本表示的负样本(即难以区分负样本),这样可有助于提高模型对整个句子的理解能力和整体表征能力,从而提高跨语言自然语言处理的效果。③上述提及的自适应控制算法是一种利用实时反馈信息对系统进行控制的方法,其基本思路是根据系统状态的变化来调整控制器参数,以达到系统最优的控制效果,该算法能够在系统环境发生变化的情况下自动地调整控制参数,并能够克服系统中存在的不确定性和非线性因素的影响,因此在工程实践中得到了广泛应用。
基于此,计算机设备在计算第i个语句对中的xi对应的句子级对比损失值时,可以使用线性插值算法和自适应控制算法,从其他语句对中的各个句子的向量表示中,挖掘出第一锚定点的至少一个难以区分负样本(即困难负样本),采用挖掘出的难以区分负样本替换中的至少一个负样本,以更新/>从而基于更新后的和上述公式1.2来计算xi对应的句子级对比损失值。或者,可直接根据和正样本/>之间的相似性,以及/>和挖掘出的每个难以区分负样本之间的相似性,计算出xi对应的句子级对比损失值。应理解的是,在需挖掘难以区分负样本的情况下,yi对应的句子级对比损失值的计算原理类似,在此不作赘述。
S204,调用跨语言预训练模型分别生成每个语句对的向量表示。
在具体实现中,可调用跨语言预训练模型中的编码器,分别对每个语句对进行编码,得到每个语句对的向量表示。参见图3c所示,针对第i个语句对而言,i的取值为正整数,且小于或等于目标训练数据中的语句对的总数,调用跨语言预训练模型中的编码器对第i个语句对进行编码的过程可包括:
首先,可将特殊单词(如[CLS]符号)和第i个语句对中的各个句子进行拼接,得到拼接后的句子,特殊单词位于拼接后的句子的首部。示例性地,设第i个语句对表示为,并采用/>代表拼接后的句子,则/>为:[CLS]/>[SEP]/>[SEP];其中,[SEP]是用于分隔句子的标识符号。其次,可将拼接后的句子中的各个单词输入至跨语言预训练模型中的编码器,使该跨语言预训练模型中的编码器通过学习拼接后的句子的上下文信息,编码得到拼接后的句子中的各个单词的隐藏向量表示;然后,可从拼接后的句子中的各个单词的隐藏向量表示中,选取出第一个单词(即特殊单词)的隐藏向量,并对第一个单词的隐藏向量进行线性投影,得到第一个单词的输出向量,从而将该第一个单词的输出向量作为第i个语句对的向量表示。
应理解的是,上述只是示例性地阐述了跨语言预训练模型生成第i个语句对的向量表示的一种实施方式,并非穷举。例如,在其他实施例中,也可直接将第i个语句对中的各个句子中的各个单词至跨语言预训练模型中的编码器,使该跨语言预训练模型中的编码器通过学习第i个语句对中的各个句子的上下文信息,分别对第i个语句对中的各个单词进行编码以得到相应单词的隐藏向量表示;然后,可对第i个语句对中的各个单词的隐藏向量表示进行整合(如均值运算),得到目标隐藏向量,从而对目标隐藏向量进行线性投影,得到第i个语句对的向量表示。
S205,分别对每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果。
其中,第二学习结果可包括每个语句对所对应的单词级对比损失值。单词级对比学习可理解成是:以单个单词作为最小的学习单位,对语句对的向量表示和不同单词的向量表示进行对比学习的处理。从本质来说,单词级对比学习是一种自监督学习方法,用于学习自然语言处理任务中的通用表示,该方法主要通过将每个语句对所对应的词袋中的每个单词的向量表示视为正样本,将背景语料库(即词汇表)中其他单词的向量表示视为负样本,并分别对每个语句对所所对应的正样本和负样本进行对比学习,使得跨语言预训练模型可以学习到跨语言间的单词之间的联系,从而提高跨语言自然语言处理任务的效率和准确性。
基于此,计算机设备在执行步骤S203时,针对第i个语句对而言,可以将第i个语句对的向量表示作为基准锚定点;将第i个语句对所对应的词袋中的各个单词的向量表示,均作为基准锚定点的正样本。以及,获取词汇表,该词汇表中包括至少一个语言的单词,该词汇表覆盖了历史收集到的所有语言的单词。其次,将位于词汇表中且未位于第i个语句对所对应的词袋中的各个单词的向量表示,作为基准锚定点的负样本。然后,可根据基准锚定点和对应的正样本之间的相似性,以及基准锚定点和对应的各个负样本之间的相似性,计算出第i个语句对所对应的单词级对比损失值,具体计算方式与后续提及的公式1.4类似,在此不作赘述。
或者,在获取到词汇表后,可对词汇表(采用V表示)进行负采样,得到单词子集(采用S表示)。所谓的负采样是指:对词汇表中的候选单词进行采样的操作,候选单词是指位于词汇表中且未位于第i个语句对所对应的词袋中的单词;相应的,单词子集中包括采样出的一个或多个候选单词。然后,可通过向量查找函数查找单词子集中的各个候选单词的向量表示,并从查找到的各个向量表示作为基准锚定点的负样本。接着,可根据基准锚定点和对应的正样本之间的相似性,以及基准锚定点和对应的各个负样本之间的相似性,计算出第i个语句对所对应的单词级对比损失值。例如,设基准锚定点的基准正样本的数量为|B|个,|B|是第i个语句对所对应的词袋中的单词的数量,则基准锚定点的各个基准正样本可以表示为;并且,设通过负采样所得到的基准锚定点的负样本的数量为m个,m为正整数,其可以表示为/>;那么计算第i个语句对所对应的单词级对比损失值的原理图可参见图3d所示,且相应的计算公式可参见下述公式1.4所示:
式1.4
其中,表示第i个语句对所对应的单词级对比损失值,/>表示基准锚定点(即第i个语句对的向量表示),wt表示第i个语句对所对应的词袋中的单词,wj表示单词子集中的单词,/>是向量查找函数,其用于查找相应单词的表示向量。可理解的是,对于而言,当t=1时,/>就是/>,当t=2时,/>就是/>,以此类推;同理,对于/>而言,当/>是单词子集中的第1个单词时,/>就是/>,当/>是单词子集中的第2个单词时,/>就是/>,以此类推。
又或者,在得到单词子集中的各个候选单词的向量表示后,可以从查找到的各个向量表示中挖掘出基准锚定点的一个或多个难以区分负样本。接着,可根据基准锚定点和对应的正样本之间的相似性,以及基准锚定点和对应的各个难以区分负样本之间的相似性,计算出第i个语句对所对应的单词级对比损失值,具体计算方式与前述提及的公式1.4类似,在此不作赘述。
S206,根据第一学习结果和第二学习结果,对跨语言预训练模型进行模型优化。
由前述可知,第一学习结果包括:每个语句对所对应的句子级对比损失值;第二学习结果包括:每个语句对所对应的单词级对比损失值。基于此,步骤S206的具体实施方式可以是:整合第一学习结果中的各个句子级对比损失值,得到目标训练数据对应的句子级对比损失值;以及,整合第二学习结果中的各个单词级对比损失值,得到目标训练数据对应的单词级对比损失值。然后,可以对目标训练数据对应的句子级对比损失值,和目标训练数据对应的单词级对比损失值进行求和,得到跨语言预训练模型的模型损失值。接着,可以按照减少模型损失值的方向,优化跨语言预训练模型的模型参数。
本申请实施例在获取到包含多个语句对的目标训练数据后,可以调用跨语言预训练模型,分别生成目标训练数据中的每个语句对中的各个句子的向量表示,并分别对每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;另外,还可调用跨语言预训练模型分别生成每个语句对的向量表示,并分别对每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果。然后,根据第一学习结果和第二学习结果,对跨语言预训练模型进行模型优化。本申请实施例通过分层对比学习,一方面可以使得跨语言预训练模型有效学习句子和单词的表征,提升跨语言预训练模型的跨语言理解和生成的能力,从而增强跨语言预训练模型的模型性能;另一方面,可以使得跨语言预训练模型学习到与语言无关的表示,从而弥补跨语言的不同句子之间的语义差异,进而增强跨语言预训练模型对于句子的向量表示的能力,使得跨语言预训练模型所生成的句子的向量表示更具通用性。
基于上述图2所示的方法实施例,本申请实施例提出了另一种更为具体的模型处理方法;在本申请实施例中,仍以计算机设备为执行主体为例进行说明。请参见图4所示,该模型处理方法可包括以下步骤S401-S406:
S401,获取跨语言预训练模型的目标训练数据,该目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词。
S402,调用跨语言预训练模型,分别生成每个语句对中的各个句子的向量表示;并分别对每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果。
其中,第一学习结果包括:每个语句对所对应的句子级对比损失值。对第i个语句对中的各个句子的向量表示进行句子级对比学习,得到第i个语句对所对应的句子级对比损失值的具体方式可包括以下步骤s11-s15:
s11,轮询第i个语句对中的各个句子,并将当前轮询的句子的向量表示作为目标锚定点。
s12,将第i个语句对中除当前轮询的句子以外的其他句子的向量表示,作为目标锚定点的目标正样本。例如,若当前轮询的句子为第i个语句对中的xi,则可将yi的向量表示作为目标正样本;若当前轮询的句子为第i个语句对/>中的yi,则可将xi的向量表示作为目标正样本。
s13,从其他语句对中的各个句子的向量表示中,挖掘出目标锚定点的至少一个目标负样本。其中,其他语句对包括:所述目标训练数据中除第i个语句对以外的语句对。
在一种具体实现中,目标负样本为其他语句对中的一个句子的向量表示。在此具体实现中,步骤s13的具体实施方式可以包括:从其他语句对中的各个句子的向量表示中,随机选取至少一个向量表示作为目标锚定点的目标负样本。
另一种具体实现中,目标负样本可以为目标锚定点的困难负样本(即难以区分负样本)。经研究表明,针对目标锚定点而言,可在其所处的向量空间中画一个圆圈(半径为),处于圆圈内部的向量表示为正样本,其中目标锚定点/>和正样本/>在语义上相等。那么,对于一个负样本而言,其越靠近圆圈,则表明该负样本越难以区分,如图5a所示。其中,图5a中的/>为目标正样本和目标锚定点之间的距离值,/>为初始负样本和目标锚定点之间的距离值。并且,图5a中的/>和/>均是通过欧式距离函数计算得到;但实际应用中,也可采用其他的距离函数(如余弦相似度函数)计算/>和/>。
基于此,在此具体实现中,步骤s13的具体实施方式可以包括:在其他语句对中的各个句子的向量表示中执行一次或多次采样操作;每采样出一个向量表示,则将当前采样出的向量表示作为目标锚定点的初始负样本。然后,可计算初始负样本和目标锚定点之间的距离值,得到第一距离值;以及,计算目标正样本和目标锚定点之间的距离值,得到第二距离值。然后,可根据第一距离值和第二距离值之间的大小关系,对初始负样本进行困难负样本的挖掘,得到目标锚定点的困难负样本。
其中,在根据第一距离值和第二距离值之间的大小关系,对初始负样本进行困难负样本的挖掘,得到目标锚定点的困难负样本时,若第一距离值小于或等于第二距离值,则将初始负样本作为目标锚定点的困难负样本。若第一距离值大于第二距离值,则可减小初始负样本中的各个向量元素的取值,得到目标锚定点的困难负样本。或者,若第一距离值大于第二距离值,则获取样本难度调整参数,并采用该样本难度调整参数对初始负样本进行线性插值处理,得到目标锚定点的困难负样本;具体的,可以通过对初始负样本和目标锚定点进行差值运算,得到初始负样本和目标锚定点之间的向量差异值;接着,采用样本难度调整参数,对向量差异值进行缩小处理,得到缩小后的向量差异值;然后,可在目标锚定点上叠加缩小后的向量差异值,得到目标锚定点的困难负样本。示例性地,目标锚定点的困难负样本的挖掘公式可参见下述公式2.1所示:
式2.1
其中,表示第一距离值,/>表示第二距离值,/>表示样本难度调整系数,q表示目标锚定点,/>表示目标锚定点的困难负样本,/>表示初始负样本。通过公式2.1可知,随着/>变小时,/>的难度增加。
进一步的,获取样本难度调整参数的方式可以包括:计算第一距离值和第二距离值之间的比值。然后,根据第一距离值和第二距离值之间的比值,确定样本难度调整参数;其中,样本难度调整参数大于计算出的比值且小于基准数值。在一种实施方式中,可以从计算出的比值和基准数值(如数值1)之间的取值范围内,随机选取一个数值作为样本难度调整系数。或者,当跨语言预训练模型通过使用多个批次的训练数据进行优化,目标训练数据是所述多个批次中的非首个批次的训练数据时,计算机设备也可从多个批次的训练数据中确定出历史训练数据,所谓的历史训练数据是指:在使用目标训练数据之前,已使用过的训练数据。然后,根据各个历史训练数据所对应的句子级对比损失值,以及第一距离值和第二距离值之间的比值,确定样本难度调整参数;具体的,样本难度调整参数的确定方式可参见下述公式2.2所示:
式2.2
其中,,其是指F个历史训练数据的平均对数概率,F为正整数,/>是一个历史训练数据对应的句子级对比损失。在训练期间,当模型易于区分正负样本时,即负样本非常容易区分的时候。此时/>增加和/>下降,导致参数/>下降,则模型会在后续训练步骤中自适应的生成更难以区分的负样本,反之亦然。由于难负样本通常会导致模型参数的显著变化,因此引入松弛系数/>,在从随机负样本转换为难以区分负样本时,防止模型进入到错误的方向进行训练。在实践中通常将/>设置为/>。由此可见,本申请实施例生成的困难负样本可以在训练期间进行自适应控制。
s14,根据目标锚定点和目标正样本之间的相似性,以及目标锚定点和每个目标负样本之间的相似性,计算当前轮询的句子所对应的句子级对比损失值,具体计算方式可以参见前述实施例的描述,在此不作赘述。
s15,在第i个语句对中的各个句子均被轮询后,对第i个语句对中的各个句子所对应的句子级对比损失值进行整合,得到第i个语句对所对应的句子级对比损失值,具体实施方式可以参见前述实施例的描述,在此不作赘述。
S403,调用跨语言预训练模型分别生成每个语句对的向量表示,并分别对每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果。
其中,第二学习结果包括:每个语句对所对应的单词级对比损失值。对第i个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第i个语句对所对应的单词级对比损失值的具体方式可以包括以下步骤s21-s24:
s21,将第i个语句对的向量表示作为基准锚定点。
s22,将第i个语句对所对应的词袋中的各个单词的向量表示,均作为基准锚定点的基准正样本。
s23,获取词汇表,该词汇表中包括至少一个语言的单词;并基于第i个语句对所对应的词袋,从词汇表中的各个单词的向量表示中,挖掘出基准锚定点的至少一个基准负样本。
在一种具体实现中,基准负样本为词汇表中的一个候选单词的向量表示;候选单词是指:位于词汇表中,且未位于第i个语句对所对应的词袋中的单词。在此具体实现中,步骤s13的具体实施方式可以包括:基于第i个语句对所对应的词袋,从词汇表中筛选出候选单词,并从筛选出的各个候选单词的向量表示中,随机选取至少一个向量表示作为基准定点的基准负样本。
另一种具体实现中,基准负样本为基准锚定点的困难负样本。在此具体实现中,步骤s23的具体实施方式可以包括:基于第i个语句对所对应的词袋,从词汇表中筛选出候选单词;并从筛选出的各个候选单词的向量表示中采样出R个向量表示,并依次遍历R个向量表示,将当前遍历的第r个向量表示作为基准锚定点的候选负样本;r∈[1,R],R为正整数。然后,可以根据候选负样本和基准锚定点之间的距离值,以及基准正样本和基准锚定点之间的距离值,对候选负样本进行困难负样本的挖掘,得到基准锚定点的困难负样本。需要说明的是,对候选负样本进行困难负样本的挖掘的具体实施方式,与前述提及的对初始负样本进行困难负样本的挖掘的具体实施方式类似,在此不作赘述。
s24,根据基准锚定点和每个基准正样本之间的相似性,以及基准锚定点和每个基准负样本之间的相似性,计算得到第i个语句对所对应的单词级对比损失值,具体计算方式可以类比前述实施例中的公式1.4,在此不作赘述。
S404,整合第一学习结果中的各个句子级对比损失值,得到目标训练数据对应的句子级对比损失值;以及,整合第二学习结果中的各个单词级对比损失值,得到目标训练数据对应的单词级对比损失值。
其中,整合第一学习结果中的各个句子级对比损失值的方式可以是:对第一学习结果中的各个句子级对比损失值进行均值运算;或者,对第一学习结果中的各个句子级对比损失值进行加权平均或求和运算,等等。以均值运算为例,目标训练数据所对应的句子级对比损失值(采用表示)的一种计算方式可以如下述公式2.3所示:
式2.3
类似的,整合第二学习结果中的各个单词级对比损失值的方式可以是:对第二学习结果中的各个单词级对比损失值进行均值运算;或者,对第二学习结果中的各个单词级对比损失值进行加权平均或求和运算,等等。以均值运算为例,目标训练数据所对应的单词级对比损失值(采用表示)的一种计算方式可以如下述公式2.4所示:
式2.4
S405,对目标训练数据对应的句子级对比损失值,和目标训练数据对应的单词级对比损失值进行求和,得到跨语言预训练模型的模型损失值。
在一种实施方式中,可对目标训练数据对应的句子级对比损失值,和目标训练数据对应的单词级对比损失值进行求和,并将求和结果直接作为跨语言预训练模型的模型损失值。
另一种实施方式中,当跨语言预训练模型包括转换语言模型时,可将转换语言模型都与分层对比学习组合在一起以实现对跨语言预训练模型进行优化。具体的,可以对目标训练数据对应的句子级对比损失值(),和目标训练数据对应的单词级对比损失值(/>)进行求和,得到分层对比学习损失值。并调用跨语言预训练模型中的转换语言模型,分别根据每个语句对中的第一语言的句子的向量表示,将相应的第一语言的句子转换成第二语言的句子,得到每个语句对所对应的句子转换结果。然后,可根据每个语句对所对应的句子转换结果和相应语句对中的第二语言的句子,确定跨语言预训练模型的语言转换损失值();其中,任一语句对所对应的句子转换结果和相应语句对中的第二语言的句子之间的差异,与该语言转换损失值的大小成正相关。然后,可对分层对比学习损失值和语言转换损失值进行求和运算,得到跨语言预训练模型的模型损失值(/>);示例性地,该模型损失值的计算公式可以参见下述公式2.5所示:
式2.5
S406,按照减少模型损失值的方向,优化跨语言预训练模型的模型参数。
此处提及的“按照减少模型损失值的方向”是指:以最小化模型损失值为目标的模型优化方向;通过此方向进行模型优化,使得目标模型在每次优化后所再次产生的模型损失值,需小于目标模型在优化前所产生的模型损失值。例如,本次计算得到的目标模型的模型损失值为0.85,那么通过按照减小模型损失值的方向优化目标模型后,通过优化目标模型所产生的模型损失值应小于0.85。
本申请实施例可以使用跨语言预训练模型分别对同一个语句对中的两个句子进行编码,然后在句子级别和单词级别进行逐个实例的比较,这两者是互补的。在句子级别上最大化语义等价句子之间的相似性,同时最小化非语义等价句子之间的相似性。在词级别上为每个语句对维护一个词袋,其中词袋中的每个词被视为正样本,而词汇表中的其余词(即未位于词袋中的词)则被视为负样本,从而在单词级别上对正样本和负样本进行对比学习。且进一步的,为了减少单词级别上的负样本的数量,还可在单词级对比学习上进行负采样,从而提升单词级对比学习的学习效率,进而提升模型优化的效率。
需要说明的是,在使用上述图2或图4所示的模型处理方法,得到优化后的跨语言预训练模型之后,可以将该优化后的跨语言预训练模型运用在多种下游任务中,此处提及的多种下游任务可以包括但不限于以下几种:
(1)语言理解任务。例如,可以通过分层对比学习生成的向量表示可以用于单个文本或文本对的分类。具体来说,当需对某个句子进行分类(如情感分析分类,或基于相应语句对的表述和关系分类)时,可以调用优化后的跨语言预训练模型对该句子进行编码,得到该句子的向量表示,然后控制用于分类的输出层,根据该句子的向量对该句子进行分类处理。又如,可以调用优化后的跨语言预训练模型中的编码器为某个句子中的每个单词分配POS(词性)标签,或在结构化预测中定位和分类所有的命名实体。
(2)翻译任务。优化后的跨语言预训练模型可以为有监督和无监督的翻译模型提供更好的初始化,即翻译模型可以通过在各种语言对上使用预训练的序列到序列模型(即优化后的跨语言预训练模型)来改进。具体的,参见图5b所示,可以将优化后的跨语言预训练模型作为翻译模型中的编码器,并在翻译模型中添加一个新的解码器以及该解码器的参数集以从头开始学习。为了防止优化后的跨语言预训练模型中的模型参数(即权重)在监督训练中被清除,本申请实施例可在两个步骤中训练编码器-解码器模型。在第一步训练中,可以冻结预训练的编码器仅更新解码器,在第二步训练中,以相对较少的迭代次数训练所有参数。并且,在两个步骤中编码器-解码器模型通过最大化双语言文本的对数似然值进行优化。
基于此,当优化后的跨语言预训练模型被作为翻译模型中的编码器,且翻译模型还包括解码器时,计算机设备还可执行如图5c所述的流程,具体可包括如下步骤S501-S503:
S501,获取翻译模型的训练样本集,训练样本集中包括:P个第一训练样本以及Q个第二训练样本,P和Q均为正整数,且P>Q。其中,每个第一训练样本均包括第一语言的句子以及相应句子的翻译结果标签;同理,每个第二训练样本均包括第一语言的句子以及相应句子的翻译结果标签。
S502,采用P个第一训练样本迭代地更新所述翻译模型中的解码器,并在每次更新解码器时,冻结编码器。
具体的,可以调用翻译模型中的编码器中的转换语言模型,对第p(p∈[1,P])个第一训练样本中的第一语言的句子进行语言转换处理,得到第二语言的目标句子。其次,可以调用翻译模型中的解码器对目标句子进行翻译,得到待输出的多个翻译结果,一个翻译结果为一个句子。然后,可以根据每个翻译结果的向量表示和目标句子的向量表示之间的相似性,分别确定每个翻译结果的输出概率。接着,可以根据每个翻译结果的输出概率,从所述多个翻译结果中选取一个翻译结果进行输出,例如选取最大的输出概率所对应的翻译结果进行输出。然后,可以基于输出的翻译结果和第p个第一训练样本中的翻译结果标签,更新翻译模型中的解码器。
其中,调用译模型中的解码器对所述目标句子进行翻译,得到待输出的多个翻译结果的实施方式可以是:获取目标句子的向量表示,以及调用翻译模型中的解码器对目标句子进行翻译,得到多个翻译向量表示,一个翻译向量表示用于确定一个翻译结果。然后,可以直接根据每个翻译向量表示生成相应的翻译结果。或者,可以通过逐元素相加操作,将目标句子的向量表示分别叠加至每个翻译向量表示上,得到多个叠加后的翻译向量表示。然后,可根据多个叠加后的翻译向量表示,生成待输出的多个翻译结果。
其中,逐元素相加操作是指:将两个向量表示中处于同一排列位置处的向量元素进行相加的操作。例如,将目标句子的向量表示中的第1个向量元素和翻译向量表示中的第1个向量元素进行相加,将目标句子的向量表示中的第2个向量元素和翻译向量表示中的第2个向量元素进行相加,以此类推。例如,设目标句子的向量表示为[1,2,3],翻译向量表示为[2,3,1],则可叠加后的翻译向量表示为[3,5,4]。通过逐元素相加的方式,可以使得在生成翻译结果的过程中,学习到多种语言的知识,从而提升翻译结果的准确性。
S503,在使用了P个第一训练样本后,采用Q个第二训练样本迭代地更新翻译模型中的解码器和编码器,得到更新后的翻译模型。
在具体实现中,可以调用翻译模型中的编码器中的转换语言模型,对第g(g∈[1,P])个第二训练样本中的第一语言的句子进行语言转换处理,得到第二语言的参考句子。其次,可以调用翻译模型中的解码器对参考句子进行翻译,得到待输出的多个翻译结果,一个翻译结果为一个句子。然后,可以根据每个翻译结果的向量表示和参考句子的向量表示之间的相似性,分别确定每个翻译结果的输出概率。接着,可以根据每个翻译结果的输出概率,从多个翻译结果中选取一个翻译结果进行输出。然后,可以基于输出的翻译结果和第g个第二训练样本中的翻译结果标签,更新翻译模型中的解码器和编码器。
基于上述可知,本申请实施例所提出的分层对比学习框架可以使用跨语言预训练模型(如BERT-style模型)分别对同一个语句对中的两个句子进行编码,然后在句子级别和单词级别进行逐个实例的比较,这两者是互补的。在句子级别上最大化语义等价句子之间的相似性,同时最小化非语义等价句子之间的相似性。在词级别上为每个语句对维护一个词袋,其中词袋中的每个词被视为正样本,而词汇表中的其余词(即未位于词袋中的词)则被视为负样本,从而在单词级别上对正样本和负样本进行对比学习。且进一步的,为了减少单词级别上的负样本的数量,还可在单词级对比学习上进行负采样。通过分层对比学习框架,可以学习语言无关的表示,从而弥补跨语言不同句子之间的语义差异。
基于上述模型处理方法实施例的描述,本申请实施例还公开了一种模型处理装置;所述模型处理装置可以是运行于计算机设备中的一个计算机程序(包括一条或多条指令),且该模型处理装置可以执行图2或图4所示的方法流程中的各个步骤。请参见图6,所述模型处理装置可以运行如下单元:
获取单元601,用于获取跨语言预训练模型的目标训练数据,所述目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,所述每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词;
处理单元602,用于调用所述跨语言预训练模型,分别生成所述每个语句对中的各个句子的向量表示;并分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;
所述处理单元602,还用于调用所述跨语言预训练模型分别生成所述每个语句对的向量表示,并分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;
所述处理单元602,还用于根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化。
在一种实施方式中,所述第一学习结果包括:所述每个语句对所对应的句子级对比损失值;相应的,处理单元602在用于分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果时,可具体用于:
轮询第i个语句对中的各个句子,并将当前轮询的句子的向量表示作为目标锚定点;i的取值为正整数,且小于或等于所述目标训练数据中的语句对的总数;
将所述第i个语句对中除所述当前轮询的句子以外的其他句子的向量表示,作为所述目标锚定点的目标正样本;并从其他语句对中的各个句子的向量表示中,挖掘出所述目标锚定点的至少一个目标负样本;所述其他语句对包括:所述目标训练数据中除所述第i个语句对以外的语句对;
根据所述目标锚定点和所述目标正样本之间的相似性,以及所述目标锚定点和每个目标负样本之间的相似性,计算所述当前轮询的句子所对应的句子级对比损失值;
在所述第i个语句对中的各个句子均被轮询后,对所述第i个语句对中的各个句子所对应的句子级对比损失值进行整合,得到所述第i个语句对所对应的句子级对比损失值。
另一种实施方式中,所述目标负样本为所述目标锚定点的困难负样本;相应的,处理单元602在用于从其他语句对中的各个句子的向量表示中,挖掘出所述目标锚定点的至少一个目标负样本时,可具体用于:
在其他语句对中的各个句子的向量表示中执行一次或多次采样操作;
每采样出一个向量表示,则将当前采样出的向量表示作为所述目标锚定点的初始负样本;
计算所述初始负样本和所述目标锚定点之间的距离值,得到第一距离值;以及,计算所述目标正样本和所述目标锚定点之间的距离值,得到第二距离值;
根据所述第一距离值和所述第二距离值之间的大小关系,对所述初始负样本进行困难负样本的挖掘,得到所述目标锚定点的困难负样本。
另一种实施方式中,处理单元602在用于根据所述第一距离值和所述第二距离值之间的大小关系,对所述初始负样本进行困难负样本的挖掘,得到所述目标锚定点的困难负样本时,可具体用于:
若所述第一距离值大于所述第二距离值,则获取样本难度调整参数,并采用所述样本难度调整参数对所述初始负样本进行线性插值处理,得到所述目标锚定点的困难负样本;
若所述第一距离值小于或等于所述第二距离值,则将所述初始负样本作为所述目标锚定点的困难负样本。
另一种实施方式中,处理单元602在用于获取样本难度调整参数时,可具体用于:
计算所述第一距离值和所述第二距离值之间的比值;
根据所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数;其中,所述样本难度调整参数大于计算出的比值且小于基准数值。
另一种实施方式中,所述跨语言预训练模型通过使用多个批次的训练数据进行优化,所述目标训练数据是所述多个批次中的非首个批次的训练数据;
相应的,处理单元602在用于根据所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数时,可具体用于:
从所述多个批次的训练数据中确定出历史训练数据,所述历史训练数据是指:在使用所述目标训练数据之前,已使用过的训练数据;
根据各个历史训练数据所对应的句子级对比损失值,以及所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数。
另一种实施方式中,处理单元602在用于采用所述样本难度调整参数对所述初始负样本进行线性插值处理,得到所述目标锚定点的困难负样本时,可具体用于:
通过对所述初始负样本和所述目标锚定点进行差值运算,得到所述初始负样本和所述目标锚定点之间的向量差异值;
采用所述样本难度调整参数,对所述向量差异值进行缩小处理,得到缩小后的向量差异值;
在所述目标锚定点上叠加所述缩小后的向量差异值,得到所述目标锚定点的困难负样本。
另一种实施方式中,所述第二学习结果包括:所述每个语句对所对应的单词级对比损失值;相应的,处理单元602在用于分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果时,可具体用于:
将第i个语句对的向量表示作为基准锚定点,i的取值为正整数,且小于或等于所述目标训练数据中的语句对的总数;
将所述第i个语句对所对应的词袋中的各个单词的向量表示,均作为所述基准锚定点的基准正样本;
获取词汇表,所述词汇表中包括至少一个语言的单词;并基于所述第i个语句对所对应的词袋,从所述词汇表中的各个单词的向量表示中,挖掘出所述基准锚定点的至少一个基准负样本;
根据所述基准锚定点和每个基准正样本之间的相似性,以及所述基准锚定点和每个基准负样本之间的相似性,计算得到所述第i个语句对所对应的单词级对比损失值。
另一种实施方式中,所述基准负样本为所述基准锚定点的困难负样本;
相应的,处理单元602在用于基于所述第i个语句对所对应的词袋,从所述词汇表中的各个单词的向量表示中,挖掘出所述基准锚定点的至少一个基准负样本时,可具体用于:
基于所述第i个语句对所对应的词袋,从所述词汇表中筛选出候选单词;所述候选单词是指:位于所述词汇表中,且未位于所述第i个语句对所对应的词袋中的单词;
从筛选出的各个候选单词的向量表示中采样出R个向量表示,并依次遍历所述R个向量表示,将当前遍历的第r个向量表示作为所述基准锚定点的候选负样本;r∈[1,R],R为正整数;
根据所述候选负样本和所述基准锚定点之间的距离值,以及所述基准正样本和所述基准锚定点之间的距离值,对所述候选负样本进行困难负样本的挖掘,得到所述基准锚定点的困难负样本。
另一种实施方式中,所述第一学习结果包括:所述每个语句对所对应的句子级对比损失值;所述第二学习结果包括:所述每个语句对所对应的单词级对比损失值;
相应的,处理单元602在用于根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化时,可具体用于:
整合所述第一学习结果中的各个句子级对比损失值,得到所述目标训练数据对应的句子级对比损失值;
整合所述第二学习结果中的各个单词级对比损失值,得到所述目标训练数据对应的单词级对比损失值;
对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到所述跨语言预训练模型的模型损失值;
按照减少所述模型损失值的方向,优化所述跨语言预训练模型的模型参数。
另一种实施方式中,所述跨语言预训练模型包括转换语言模型;相应的,处理单元602在用于对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到所述跨语言预训练模型的模型损失值时,可具体用于:
对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到分层对比学习损失值;
调用所述跨语言预训练模型中的转换语言模型,分别根据每个语句对中的第一语言的句子的向量表示,将相应的第一语言的句子转换成第二语言的句子,得到每个语句对所对应的句子转换结果;
根据每个语句对所对应的句子转换结果和相应语句对中的第二语言的句子,确定所述跨语言预训练模型的语言转换损失值;
对所述分层对比学习损失值和所述语言转换损失值进行求和运算,得到所述跨语言预训练模型的模型损失值。
另一种实施方式中,优化后的跨语言预训练模型被作为翻译模型中的编码器,所述翻译模型还包括解码器;相应的,处理单元602还可用于:
获取所述翻译模型的训练样本集,所述训练样本集中包括:P个第一训练样本以及Q个第二训练样本,P和Q均为正整数,且P>Q;
采用所述P个第一训练样本迭代地更新所述翻译模型中的解码器,并在每次更新所述解码器时,冻结所述编码器;
在使用了所述P个第一训练样本后,采用所述Q个第二训练样本迭代地更新所述翻译模型中的解码器和编码器,得到更新后的翻译模型。
另一种实施方式中,优化后的跨语言预训练模型包括转换语言模型,每个第一训练样本均包括第一语言的句子以及相应句子的翻译结果标签;相应的,处理单元602在用于采用所述P个第一训练样本迭代地更新所述翻译模型中的解码器时,可具体用于:
调用所述翻译模型中的编码器中的转换语言模型,对第p个第一训练样本中的第一语言的句子进行语言转换处理,得到第二语言的目标句子,p∈[1,P];
调用所述翻译模型中的解码器对所述目标句子进行翻译,得到待输出的多个翻译结果,一个翻译结果为一个句子;
根据每个翻译结果的向量表示和所述目标句子的向量表示之间的相似性,分别确定所述每个翻译结果的输出概率;
根据所述每个翻译结果的输出概率,从所述多个翻译结果中选取一个翻译结果进行输出;
基于输出的翻译结果和所述第p个第一训练样本中的翻译结果标签,更新所述翻译模型中的解码器。
另一种实施方式中,处理单元602在用于调用所述翻译模型中的解码器对所述目标句子进行翻译,得到待输出的多个翻译结果时,可具体用于:
获取所述目标句子的向量表示,以及调用所述翻译模型中的解码器对所述目标句子进行翻译,得到多个翻译向量表示,一个翻译向量表示用于确定一个翻译结果;
通过逐元素相加操作,将所述目标句子的向量表示分别叠加至每个翻译向量表示上,得到多个叠加后的翻译向量表示;其中,所述逐元素相加操作是指:将两个向量表示中处于同一排列位置处的向量元素进行相加的操作;
根据所述多个叠加后的翻译向量表示,生成待输出的多个翻译结果。
根据本申请的另一个实施例,图6所示的模型处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于模型处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2或图4中所示的相应方法所涉及的各步骤的计算机程序(包括一条或多条指令),来构造如图6中所示的模型处理装置设备,以及来实现本申请实施例的模型处理方法。所述计算机程序可以记载于例如计算机可读存储介质上,并通过计算机可读存储介质装载于上述计算设备中,并在其中运行。
本申请实施例在获取到包含多个语句对的目标训练数据后,可以调用跨语言预训练模型,分别生成目标训练数据中的每个语句对中的各个句子的向量表示,并分别对每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;另外,还可调用跨语言预训练模型分别生成每个语句对的向量表示,并分别对每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果。然后,根据第一学习结果和第二学习结果,对跨语言预训练模型进行模型优化。本申请实施例通过分层对比学习,一方面可以使得跨语言预训练模型有效学习句子和单词的表征,提升跨语言预训练模型的跨语言理解和生成的能力,从而增强跨语言预训练模型的模型性能;另一方面,可以使得跨语言预训练模型学习到与语言无关的表示,从而弥补跨语言的不同句子之间的语义差异,进而增强跨语言预训练模型对于句子的向量表示的能力,使得跨语言预训练模型所生成的句子的向量表示更具通用性。
基于上述方法实施例以及装置实施例的描述,本申请实施例还提供一种计算机设备。请参见图7,该计算机设备至少包括处理器701、输入接口702、输出接口703以及计算机存储介质704。其中,计算机设备内的处理器701、输入接口702、输出接口703以及计算机存储介质704可通过总线或其他方式连接。计算机存储介质704可以存储在计算机设备的存储器中,所述计算机存储介质704用于存储计算机程序,所述计算机程序包括一条或多条指令,所述处理器701用于执行所述计算机存储介质704存储的计算机程序中的一条或多条指令。处理器701(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
在一个实施例中,本申请实施例所述的处理器701可以用于对跨语言预训练模型进行一系列的模型处理,具体包括:获取跨语言预训练模型的目标训练数据,所述目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,所述每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词;调用所述跨语言预训练模型,分别生成所述每个语句对中的各个句子的向量表示;并分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;调用所述跨语言预训练模型分别生成所述每个语句对的向量表示,并分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化,等等。
本申请实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是计算机设备中的记忆设备,用于存放计算机程序和数据。可以理解的是,此处的计算机存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了计算机设备的操作系统。并且,在该存储空间中还存放了计算机程序,该计算机程序包括适于被处理器701加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的程序代码。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,可由处理器加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关图2或图4所示的方法实施例中的相应步骤;具体实现中,计算机存储介质中的一条或多条指令可由处理器加载并执行如下步骤:
获取跨语言预训练模型的目标训练数据,所述目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,所述每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词;
调用所述跨语言预训练模型,分别生成所述每个语句对中的各个句子的向量表示;并分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;
调用所述跨语言预训练模型分别生成所述每个语句对的向量表示,并分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;
根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化。
在一种实施方式中,所述第一学习结果包括:所述每个语句对所对应的句子级对比损失值;相应的,在分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果时,所述一条或多条指令可由处理器加载并具体执行:
轮询第i个语句对中的各个句子,并将当前轮询的句子的向量表示作为目标锚定点;i的取值为正整数,且小于或等于所述目标训练数据中的语句对的总数;
将所述第i个语句对中除所述当前轮询的句子以外的其他句子的向量表示,作为所述目标锚定点的目标正样本;并从其他语句对中的各个句子的向量表示中,挖掘出所述目标锚定点的至少一个目标负样本;所述其他语句对包括:所述目标训练数据中除所述第i个语句对以外的语句对;
根据所述目标锚定点和所述目标正样本之间的相似性,以及所述目标锚定点和每个目标负样本之间的相似性,计算所述当前轮询的句子所对应的句子级对比损失值;
在所述第i个语句对中的各个句子均被轮询后,对所述第i个语句对中的各个句子所对应的句子级对比损失值进行整合,得到所述第i个语句对所对应的句子级对比损失值。
另一种实施方式中,所述目标负样本为所述目标锚定点的困难负样本;相应的,在从其他语句对中的各个句子的向量表示中,挖掘出所述目标锚定点的至少一个目标负样本时,所述一条或多条指令可由处理器加载并具体执行:
在其他语句对中的各个句子的向量表示中执行一次或多次采样操作;
每采样出一个向量表示,则将当前采样出的向量表示作为所述目标锚定点的初始负样本;
计算所述初始负样本和所述目标锚定点之间的距离值,得到第一距离值;以及,计算所述目标正样本和所述目标锚定点之间的距离值,得到第二距离值;
根据所述第一距离值和所述第二距离值之间的大小关系,对所述初始负样本进行困难负样本的挖掘,得到所述目标锚定点的困难负样本。
另一种实施方式中,在根据所述第一距离值和所述第二距离值之间的大小关系,对所述初始负样本进行困难负样本的挖掘,得到所述目标锚定点的困难负样本时,所述一条或多条指令可由处理器加载并具体执行:
若所述第一距离值大于所述第二距离值,则获取样本难度调整参数,并采用所述样本难度调整参数对所述初始负样本进行线性插值处理,得到所述目标锚定点的困难负样本;
若所述第一距离值小于或等于所述第二距离值,则将所述初始负样本作为所述目标锚定点的困难负样本。
另一种实施方式中,在获取样本难度调整参数时,所述一条或多条指令可由处理器加载并具体执行:
计算所述第一距离值和所述第二距离值之间的比值;
根据所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数;其中,所述样本难度调整参数大于计算出的比值且小于基准数值。
另一种实施方式中,所述跨语言预训练模型通过使用多个批次的训练数据进行优化,所述目标训练数据是所述多个批次中的非首个批次的训练数据;
相应的,在根据所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数时,所述一条或多条指令可由处理器加载并具体执行:
从所述多个批次的训练数据中确定出历史训练数据,所述历史训练数据是指:在使用所述目标训练数据之前,已使用过的训练数据;
根据各个历史训练数据所对应的句子级对比损失值,以及所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数。
另一种实施方式中,在采用所述样本难度调整参数对所述初始负样本进行线性插值处理,得到所述目标锚定点的困难负样本时,所述一条或多条指令可由处理器加载并具体执行:
通过对所述初始负样本和所述目标锚定点进行差值运算,得到所述初始负样本和所述目标锚定点之间的向量差异值;
采用所述样本难度调整参数,对所述向量差异值进行缩小处理,得到缩小后的向量差异值;
在所述目标锚定点上叠加所述缩小后的向量差异值,得到所述目标锚定点的困难负样本。
另一种实施方式中,所述第二学习结果包括:所述每个语句对所对应的单词级对比损失值;相应的,在分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果时,所述一条或多条指令可由处理器加载并具体执行:
将第i个语句对的向量表示作为基准锚定点,i的取值为正整数,且小于或等于所述目标训练数据中的语句对的总数;
将所述第i个语句对所对应的词袋中的各个单词的向量表示,均作为所述基准锚定点的基准正样本;
获取词汇表,所述词汇表中包括至少一个语言的单词;并基于所述第i个语句对所对应的词袋,从所述词汇表中的各个单词的向量表示中,挖掘出所述基准锚定点的至少一个基准负样本;
根据所述基准锚定点和每个基准正样本之间的相似性,以及所述基准锚定点和每个基准负样本之间的相似性,计算得到所述第i个语句对所对应的单词级对比损失值。
另一种实施方式中,所述基准负样本为所述基准锚定点的困难负样本;
相应的,在基于所述第i个语句对所对应的词袋,从所述词汇表中的各个单词的向量表示中,挖掘出所述基准锚定点的至少一个基准负样本时,所述一条或多条指令可由处理器加载并具体执行:
基于所述第i个语句对所对应的词袋,从所述词汇表中筛选出候选单词;所述候选单词是指:位于所述词汇表中,且未位于所述第i个语句对所对应的词袋中的单词;
从筛选出的各个候选单词的向量表示中采样出R个向量表示,并依次遍历所述R个向量表示,将当前遍历的第r个向量表示作为所述基准锚定点的候选负样本;r∈[1,R],R为正整数;
根据所述候选负样本和所述基准锚定点之间的距离值,以及所述基准正样本和所述基准锚定点之间的距离值,对所述候选负样本进行困难负样本的挖掘,得到所述基准锚定点的困难负样本。
另一种实施方式中,所述第一学习结果包括:所述每个语句对所对应的句子级对比损失值;所述第二学习结果包括:所述每个语句对所对应的单词级对比损失值;
相应的,在根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化时,所述一条或多条指令可由处理器加载并具体执行:
整合所述第一学习结果中的各个句子级对比损失值,得到所述目标训练数据对应的句子级对比损失值;
整合所述第二学习结果中的各个单词级对比损失值,得到所述目标训练数据对应的单词级对比损失值;
对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到所述跨语言预训练模型的模型损失值;
按照减少所述模型损失值的方向,优化所述跨语言预训练模型的模型参数。
另一种实施方式中,所述跨语言预训练模型包括转换语言模型;相应的,在对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到所述跨语言预训练模型的模型损失值时,所述一条或多条指令可由处理器加载并具体执行:
对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到分层对比学习损失值;
调用所述跨语言预训练模型中的转换语言模型,分别根据每个语句对中的第一语言的句子的向量表示,将相应的第一语言的句子转换成第二语言的句子,得到每个语句对所对应的句子转换结果;
根据每个语句对所对应的句子转换结果和相应语句对中的第二语言的句子,确定所述跨语言预训练模型的语言转换损失值;
对所述分层对比学习损失值和所述语言转换损失值进行求和运算,得到所述跨语言预训练模型的模型损失值。
另一种实施方式中,优化后的跨语言预训练模型被作为翻译模型中的编码器,所述翻译模型还包括解码器;相应的,所述一条或多条指令可由处理器加载并具体执行:
获取所述翻译模型的训练样本集,所述训练样本集中包括:P个第一训练样本以及Q个第二训练样本,P和Q均为正整数,且P>Q;
采用所述P个第一训练样本迭代地更新所述翻译模型中的解码器,并在每次更新所述解码器时,冻结所述编码器;
在使用了所述P个第一训练样本后,采用所述Q个第二训练样本迭代地更新所述翻译模型中的解码器和编码器,得到更新后的翻译模型。
另一种实施方式中,优化后的跨语言预训练模型包括转换语言模型,每个第一训练样本均包括第一语言的句子以及相应句子的翻译结果标签;相应的,在采用所述P个第一训练样本迭代地更新所述翻译模型中的解码器时,所述一条或多条指令可由处理器加载并具体执行:
调用所述翻译模型中的编码器中的转换语言模型,对第p个第一训练样本中的第一语言的句子进行语言转换处理,得到第二语言的目标句子,p∈[1,P];
调用所述翻译模型中的解码器对所述目标句子进行翻译,得到待输出的多个翻译结果,一个翻译结果为一个句子;
根据每个翻译结果的向量表示和所述目标句子的向量表示之间的相似性,分别确定所述每个翻译结果的输出概率;
根据所述每个翻译结果的输出概率,从所述多个翻译结果中选取一个翻译结果进行输出;
基于输出的翻译结果和所述第p个第一训练样本中的翻译结果标签,更新所述翻译模型中的解码器。
另一种实施方式中,在调用所述翻译模型中的解码器对所述目标句子进行翻译,得到待输出的多个翻译结果时,所述一条或多条指令可由处理器加载并具体执行:
获取所述目标句子的向量表示,以及调用所述翻译模型中的解码器对所述目标句子进行翻译,得到多个翻译向量表示,一个翻译向量表示用于确定一个翻译结果;
通过逐元素相加操作,将所述目标句子的向量表示分别叠加至每个翻译向量表示上,得到多个叠加后的翻译向量表示;其中,所述逐元素相加操作是指:将两个向量表示中处于同一排列位置处的向量元素进行相加的操作;
根据所述多个叠加后的翻译向量表示,生成待输出的多个翻译结果。
本申请实施例在获取到包含多个语句对的目标训练数据后,可以调用跨语言预训练模型,分别生成目标训练数据中的每个语句对中的各个句子的向量表示,并分别对每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;另外,还可调用跨语言预训练模型分别生成每个语句对的向量表示,并分别对每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果。然后,根据第一学习结果和第二学习结果,对跨语言预训练模型进行模型优化。本申请实施例通过分层对比学习,一方面可以使得跨语言预训练模型有效学习句子和单词的表征,提升跨语言预训练模型的跨语言理解和生成的能力,从而增强跨语言预训练模型的模型性能;另一方面,可以使得跨语言预训练模型学习到与语言无关的表示,从而弥补跨语言的不同句子之间的语义差异,进而增强跨语言预训练模型对于句子的向量表示的能力,使得跨语言预训练模型所生成的句子的向量表示更具通用性。
需要说明的是,根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括一条或多条指令,该一条或多条指令存储在计算机存储介质中。计算机设备的处理器从计算机存储介质读取一条或多条指令,处理器执行该一条或多条指令,使得该计算机设备执行上述图2或图4所示的方法实施例方面的各种可选方式中提供的方法。应理解的是,以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (16)
1.一种模型处理方法,其特征在于,包括:
获取跨语言预训练模型的目标训练数据,所述目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,所述每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词;
调用所述跨语言预训练模型,分别生成所述每个语句对中的各个句子的向量表示;并分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;
调用所述跨语言预训练模型分别生成所述每个语句对的向量表示,并分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;
根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化;
其中,所述第一学习结果包括:所述每个语句对对应的句子级对比损失值;第i个语句对对应的句子级对比损失值的确定方式如下:轮询第i个语句对中的各个句子,并将当前轮询的句子的向量表示作为目标锚定点;i的取值为正整数,且小于或等于所述目标训练数据中的语句对的总数;将所述第i个语句对中除所述当前轮询的句子以外的其他句子的向量表示,作为所述目标锚定点的目标正样本;并从其他语句对中的各个句子的向量表示中,挖掘出所述目标锚定点的至少一个目标负样本;所述其他语句对包括:所述目标训练数据中除所述第i个语句对以外的语句对;根据所述目标锚定点和所述目标正样本之间的相似性,以及所述目标锚定点和每个目标负样本之间的相似性,计算所述当前轮询的句子所对应的句子级对比损失值;在所述第i个语句对中的各个句子均被轮询后,对所述第i个语句对中的各个句子所对应的句子级对比损失值进行整合,得到所述第i个语句对所对应的句子级对比损失值。
2.如权利要求1所述的方法,其特征在于,所述目标负样本为所述目标锚定点的困难负样本;所述从其他语句对中的各个句子的向量表示中,挖掘出所述目标锚定点的至少一个目标负样本,包括:
在其他语句对中的各个句子的向量表示中执行一次或多次采样操作;
每采样出一个向量表示,则将当前采样出的向量表示作为所述目标锚定点的初始负样本;
计算所述初始负样本和所述目标锚定点之间的距离值,得到第一距离值;以及,计算所述目标正样本和所述目标锚定点之间的距离值,得到第二距离值;
根据所述第一距离值和所述第二距离值之间的大小关系,对所述初始负样本进行困难负样本的挖掘,得到所述目标锚定点的困难负样本。
3.如权利要求2所述的方法,其特征在于,所述根据所述第一距离值和所述第二距离值之间的大小关系,对所述初始负样本进行困难负样本的挖掘,得到所述目标锚定点的困难负样本,包括:
若所述第一距离值大于所述第二距离值,则获取样本难度调整参数,并采用所述样本难度调整参数对所述初始负样本进行线性插值处理,得到所述目标锚定点的困难负样本;
若所述第一距离值小于或等于所述第二距离值,则将所述初始负样本作为所述目标锚定点的困难负样本。
4.如权利要求3所述的方法,其特征在于,所述获取样本难度调整参数,包括:
计算所述第一距离值和所述第二距离值之间的比值;
根据所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数;其中,所述样本难度调整参数大于计算出的比值且小于基准数值。
5.如权利要求4所述的方法,其特征在于,所述跨语言预训练模型通过使用多个批次的训练数据进行优化,所述目标训练数据是所述多个批次中的非首个批次的训练数据;
所述根据所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数,包括:
从所述多个批次的训练数据中确定出历史训练数据,所述历史训练数据是指:在使用所述目标训练数据之前,已使用过的训练数据;
根据各个历史训练数据所对应的句子级对比损失值,以及所述第一距离值和所述第二距离值之间的比值,确定样本难度调整参数。
6.如权利要求3-5任一项所述的方法,其特征在于,所述采用所述样本难度调整参数对所述初始负样本进行线性插值处理,得到所述目标锚定点的困难负样本,包括:
通过对所述初始负样本和所述目标锚定点进行差值运算,得到所述初始负样本和所述目标锚定点之间的向量差异值;
采用所述样本难度调整参数,对所述向量差异值进行缩小处理,得到缩小后的向量差异值;
在所述目标锚定点上叠加所述缩小后的向量差异值,得到所述目标锚定点的困难负样本。
7.如权利要求1所述的方法,其特征在于,所述第二学习结果包括:所述每个语句对所对应的单词级对比损失值;所述分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果,包括:
将第i个语句对的向量表示作为基准锚定点,i的取值为正整数,且小于或等于所述目标训练数据中的语句对的总数;
将所述第i个语句对所对应的词袋中的各个单词的向量表示,均作为所述基准锚定点的基准正样本;
获取词汇表,所述词汇表中包括至少一个语言的单词;并基于所述第i个语句对所对应的词袋,从所述词汇表中的各个单词的向量表示中,挖掘出所述基准锚定点的至少一个基准负样本;
根据所述基准锚定点和每个基准正样本之间的相似性,以及所述基准锚定点和每个基准负样本之间的相似性,计算得到所述第i个语句对所对应的单词级对比损失值。
8.如权利要求7所述的方法,其特征在于,所述基准负样本为所述基准锚定点的困难负样本;
所述基于所述第i个语句对所对应的词袋,从所述词汇表中的各个单词的向量表示中,挖掘出所述基准锚定点的至少一个基准负样本,包括:
基于所述第i个语句对所对应的词袋,从所述词汇表中筛选出候选单词;所述候选单词是指:位于所述词汇表中,且未位于所述第i个语句对所对应的词袋中的单词;
从筛选出的各个候选单词的向量表示中采样出R个向量表示,并依次遍历所述R个向量表示,将当前遍历的第r个向量表示作为所述基准锚定点的候选负样本;r∈[1,R],R为正整数;
根据所述候选负样本和所述基准锚定点之间的距离值,以及所述基准正样本和所述基准锚定点之间的距离值,对所述候选负样本进行困难负样本的挖掘,得到所述基准锚定点的困难负样本。
9.如权利要求1所述的方法,其特征在于,所述第一学习结果包括:所述每个语句对所对应的句子级对比损失值;所述第二学习结果包括:所述每个语句对所对应的单词级对比损失值;
所述根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化,包括:
整合所述第一学习结果中的各个句子级对比损失值,得到所述目标训练数据对应的句子级对比损失值;
整合所述第二学习结果中的各个单词级对比损失值,得到所述目标训练数据对应的单词级对比损失值;
对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到所述跨语言预训练模型的模型损失值;
按照减少所述模型损失值的方向,优化所述跨语言预训练模型的模型参数。
10.如权利要求9所述的方法,其特征在于,所述跨语言预训练模型包括转换语言模型;所述对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到所述跨语言预训练模型的模型损失值,包括:
对所述目标训练数据对应的句子级对比损失值,和所述目标训练数据对应的单词级对比损失值进行求和,得到分层对比学习损失值;
调用所述跨语言预训练模型中的转换语言模型,分别根据每个语句对中的第一语言的句子的向量表示,将相应的第一语言的句子转换成第二语言的句子,得到每个语句对所对应的句子转换结果;
根据每个语句对所对应的句子转换结果和相应语句对中的第二语言的句子,确定所述跨语言预训练模型的语言转换损失值;
对所述分层对比学习损失值和所述语言转换损失值进行求和运算,得到所述跨语言预训练模型的模型损失值。
11.如权利要求1所述的方法,其特征在于,优化后的跨语言预训练模型被作为翻译模型中的编码器,所述翻译模型还包括解码器;所述方法还包括:
获取所述翻译模型的训练样本集,所述训练样本集中包括:P个第一训练样本以及Q个第二训练样本,P和Q均为正整数,且P>Q;
采用所述P个第一训练样本迭代地更新所述翻译模型中的解码器,并在每次更新所述解码器时,冻结所述编码器;
在使用了所述P个第一训练样本后,采用所述Q个第二训练样本迭代地更新所述翻译模型中的解码器和编码器,得到更新后的翻译模型。
12.如权利要求11所述的方法,其特征在于,优化后的跨语言预训练模型包括转换语言模型,每个第一训练样本均包括第一语言的句子以及相应句子的翻译结果标签;所述采用所述P个第一训练样本迭代地更新所述翻译模型中的解码器,包括:
调用所述翻译模型中的编码器,对第p个第一训练样本中的第一语言的句子进行语言转换处理,得到第二语言的目标句子,p∈[1,P];
调用所述翻译模型中的解码器对所述目标句子进行翻译,得到待输出的多个翻译结果,一个翻译结果为一个句子;
根据每个翻译结果的向量表示和所述目标句子的向量表示之间的相似性,分别确定所述每个翻译结果的输出概率;
根据所述每个翻译结果的输出概率,从所述多个翻译结果中选取一个翻译结果进行输出;
基于输出的翻译结果和所述第p个第一训练样本中的翻译结果标签,更新所述翻译模型中的解码器。
13.如权利要求12所述的方法,其特征在于,所述调用所述翻译模型中的解码器对所述目标句子进行翻译,得到待输出的多个翻译结果,包括:
获取所述目标句子的向量表示,以及调用所述翻译模型中的解码器对所述目标句子进行翻译,得到多个翻译向量表示,一个翻译向量表示用于确定一个翻译结果;
通过逐元素相加操作,将所述目标句子的向量表示分别叠加至每个翻译向量表示上,得到多个叠加后的翻译向量表示;其中,所述逐元素相加操作是指:将两个向量表示中处于同一排列位置处的向量元素进行相加的操作;
根据所述多个叠加后的翻译向量表示,生成待输出的多个翻译结果。
14.一种模型处理装置,其特征在于,包括:
获取单元,用于获取跨语言预训练模型的目标训练数据,所述目标训练数据包括多个语句对,每个语句对包括第一语言的句子和第二语言的句子,同一个语句对中的各个句子之间具有语义等价关系;其中,所述每个语句对均配置有一个词袋,任一词袋包括相应语句对所处的文档中的单词;
处理单元,用于调用所述跨语言预训练模型,分别生成所述每个语句对中的各个句子的向量表示;并分别对所述每个语句对中的各个句子的向量表示进行句子级对比学习,得到第一学习结果;
所述处理单元,还用于调用所述跨语言预训练模型分别生成所述每个语句对的向量表示,并分别对所述每个语句对的向量表示和相应词袋中的各个单词的向量表示进行单词级对比学习,得到第二学习结果;
所述处理单元,还用于根据所述第一学习结果和所述第二学习结果,对所述跨语言预训练模型进行模型优化;
其中,所述第一学习结果包括:所述每个语句对对应的句子级对比损失值;第i个语句对对应的句子级对比损失值的确定方式如下:轮询第i个语句对中的各个句子,并将当前轮询的句子的向量表示作为目标锚定点;i的取值为正整数,且小于或等于所述目标训练数据中的语句对的总数;将所述第i个语句对中除所述当前轮询的句子以外的其他句子的向量表示,作为所述目标锚定点的目标正样本;并从其他语句对中的各个句子的向量表示中,挖掘出所述目标锚定点的至少一个目标负样本;所述其他语句对包括:所述目标训练数据中除所述第i个语句对以外的语句对;根据所述目标锚定点和所述目标正样本之间的相似性,以及所述目标锚定点和每个目标负样本之间的相似性,计算所述当前轮询的句子所对应的句子级对比损失值;在所述第i个语句对中的各个句子均被轮询后,对所述第i个语句对中的各个句子所对应的句子级对比损失值进行整合,得到所述第i个语句对所对应的句子级对比损失值。
15.一种计算机设备,包括输入接口和输出接口,其特征在于,还包括:处理器以及计算机存储介质;
其中,所述处理器适于实现一条或多条指令,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-13任一项所述的模型处理方法。
16.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-13任一项所述的模型处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310976194.8A CN116680575B (zh) | 2023-08-04 | 2023-08-04 | 模型处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310976194.8A CN116680575B (zh) | 2023-08-04 | 2023-08-04 | 模型处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116680575A CN116680575A (zh) | 2023-09-01 |
CN116680575B true CN116680575B (zh) | 2023-11-07 |
Family
ID=87789534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310976194.8A Active CN116680575B (zh) | 2023-08-04 | 2023-08-04 | 模型处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116680575B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116991391B (zh) * | 2023-09-26 | 2023-12-08 | 北京一平方科技有限公司 | 基于大语言模型的代码生成补缺方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320960A (zh) * | 2015-10-14 | 2016-02-10 | 北京航空航天大学 | 一种基于投票的跨语言主客观情感分类方法 |
CN112084295A (zh) * | 2019-05-27 | 2020-12-15 | 微软技术许可有限责任公司 | 跨语言的任务训练 |
CN115270826A (zh) * | 2022-09-30 | 2022-11-01 | 北京澜舟科技有限公司 | 多语言翻译模型构建方法、翻译方法及计算机存储介质 |
CN116227498A (zh) * | 2022-12-08 | 2023-06-06 | 重庆邮电大学 | 一种基于全局-局部对比学习的跨语言自然语言理解方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11545145B2 (en) * | 2020-05-29 | 2023-01-03 | Samsung Electronics Co., Ltd. | Machine action based on language-independent graph rewriting of an utterance |
US20230153542A1 (en) * | 2021-11-15 | 2023-05-18 | Salesforce.Com, Inc. | Systems and methods for cross-lingual transfer in natural language processing |
-
2023
- 2023-08-04 CN CN202310976194.8A patent/CN116680575B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320960A (zh) * | 2015-10-14 | 2016-02-10 | 北京航空航天大学 | 一种基于投票的跨语言主客观情感分类方法 |
CN112084295A (zh) * | 2019-05-27 | 2020-12-15 | 微软技术许可有限责任公司 | 跨语言的任务训练 |
CN115270826A (zh) * | 2022-09-30 | 2022-11-01 | 北京澜舟科技有限公司 | 多语言翻译模型构建方法、翻译方法及计算机存储介质 |
CN116227498A (zh) * | 2022-12-08 | 2023-06-06 | 重庆邮电大学 | 一种基于全局-局部对比学习的跨语言自然语言理解方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116680575A (zh) | 2023-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022037256A1 (zh) | 文本语句处理方法、装置、计算机设备和存储介质 | |
CN108733792B (zh) | 一种实体关系抽取方法 | |
CN112214995B (zh) | 用于同义词预测的分层多任务术语嵌入学习 | |
CN111401084B (zh) | 一种机器翻译的方法、设备以及计算机可读存储介质 | |
CN111666758B (zh) | 中文分词方法、训练设备以及计算机可读存储介质 | |
CN111161740A (zh) | 意图识别模型训练方法、意图识别方法以及相关装置 | |
CN110765775A (zh) | 一种融合语义和标签差异的命名实体识别领域自适应的方法 | |
US11475225B2 (en) | Method, system, electronic device and storage medium for clarification question generation | |
CN114676234A (zh) | 一种模型训练方法及相关设备 | |
CN113392209B (zh) | 一种基于人工智能的文本聚类方法、相关设备及存储介质 | |
CN112131883B (zh) | 语言模型训练方法、装置、计算机设备和存储介质 | |
CN113655893B (zh) | 一种词句生成方法、模型训练方法及相关设备 | |
CN112380863A (zh) | 一种基于多头自注意力机制的序列标注方法 | |
CN116661805B (zh) | 代码表示的生成方法和装置、存储介质及电子设备 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN114358201A (zh) | 基于文本的情感分类方法和装置、计算机设备、存储介质 | |
CN111368542A (zh) | 一种基于递归神经网络的文本语言关联抽取方法和系统 | |
CN116341564A (zh) | 基于语义理解的问题推理方法和装置 | |
Zhang et al. | Hierarchical representation and deep learning–based method for automatically transforming textual building codes into semantic computable requirements | |
CN118170668A (zh) | 一种测试用例生成方法、装置、存储介质和设备 | |
CN116680575B (zh) | 模型处理方法、装置、设备及存储介质 | |
Mankolli et al. | Machine learning and natural language processing: Review of models and optimization problems | |
CN115129826B (zh) | 电力领域模型预训练方法、精调方法、装置及设备 | |
CN113095063B (zh) | 一种基于遮蔽语言模型的两阶段情感迁移方法和系统 | |
CN114880991B (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 |