CN116150625B - 文本搜索模型的训练方法及装置、计算设备 - Google Patents
文本搜索模型的训练方法及装置、计算设备 Download PDFInfo
- Publication number
- CN116150625B CN116150625B CN202310218641.3A CN202310218641A CN116150625B CN 116150625 B CN116150625 B CN 116150625B CN 202310218641 A CN202310218641 A CN 202310218641A CN 116150625 B CN116150625 B CN 116150625B
- Authority
- CN
- China
- Prior art keywords
- text
- sample
- event
- encoder
- canonical
- 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 72
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000013598 vector Substances 0.000 claims abstract description 101
- 239000011159 matrix material Substances 0.000 claims abstract description 75
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007774 longterm Effects 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
- 230000000452 restraining effect Effects 0.000 description 1
- 230000003068 static 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/33—Querying
- G06F16/3331—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种文本搜索模型的训练方法及装置、计算设备,方法包括:获取当前批次的训练数据,当前批次的训练数据包括样本事件文本组和样本规范文本组,样本事件文本组包括N条样本事件文本,样本规范文本组包括N条样本规范文本;根据预测矩阵和标签矩阵,计算模型损失值,其中,预测矩阵中第i行第j列的元素是根据样本事件文本组中第i条样本事件文本的向量表示和样本规范文本组中第j条样本规范文本的向量表示计算得到的相似度,标签矩阵中第i行第j列的元素用于指示第i条样本事件文本和第j条样本规范文本是否匹配;根据模型损失值更新文本搜索模型中的编码器。通过本申请实施例提供的训练方法,能够训练得到准确度较高的文本搜索模型。
Description
技术领域
本申请涉及文本搜索技术领域,尤其涉及一种文本搜索模型的训练方法及装置、计算设备。
背景技术
近年来,随着大数据技术的快速发展及人工智能算法的落地,数字化赋能各行各业。在一些场景中,用户期待基于大数据技术完成文本搜索任务,以在海量的文本数据库中获取目标文本。然而,目前的文本搜索方法的准确性仍有待提高。
发明内容
本申请实施例提供一种文本搜索模型的训练方法及装置、计算设备,能够有利于提高文本搜索的准确性。
本申请实施例提供一种文本搜索模型的训练方法,所述文本搜索模型包括编码器,所述方法包括:获取当前批次的训练数据,所述当前批次的训练数据包括样本事件文本组和样本规范文本组,所述样本事件文本组包括N条样本事件文本,所述样本规范文本组包括N条样本规范文本,N为大于1的正整数;采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示;根据预测矩阵和标签矩阵,计算模型损失值,其中,所述预测矩阵中第i行第j列的元素是根据所述样本事件文本组中第i条样本事件文本的向量表示和所述样本规范文本组中第j条样本规范文本的向量表示计算得到的相似度,所述标签矩阵中第i行第j列的元素用于指示所述第i条样本事件文本和所述第j条样本规范文本是否匹配,1≤i≤N,1≤j≤N,i,j为正整数;根据所述模型损失值更新所述编码器。
可选的,所述N条样本事件文本所属的事件类别各不相同。
可选的,获取当前批次的训练数据包括:获取所述N条样本事件文本;根据所述标签矩阵中第j列的N个元素和所述N条样本事件文本,从规范文本数据库中抽取所述第j条样本规范文本。
可选的,所述标签矩阵中第j列的元素中仅单个元素为1,所述规范文本数据库包括多个规范文本集合,根据所述标签矩阵中第j列的N个元素和所述N条样本事件文本,从规范文本数据库中抽取所述第j条样本规范文本包括:确定所述第j列的元素中值为1的元素对应的样本事件文本,记为第j列的正例事件文本;从所述第j列的正例事件文本关联的规范文本集合中抽取所述第j条样本规范文本。
可选的,所述规范文本集合包括多个样本规范文本单元,从所述第j列的正例事件文本关联的规范文本集合中抽取所述第j条样本规范文本包括:从所述第j列的正例事件文本关联的样本规范文本单元中抽取所述第j条样本规范文本。
可选的,所述标签矩阵中第i行第i列的元素均为1,其余元素均为0。
可选的,所述编码器包括第一编码器和第二编码器,采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码包括:采用所述第一编码器对所述样本事件文本组进行编码,得到各条样本事件文本的向量表示;采用所述第二编码器对所述样本规范文本组进行编码,得到各条样本规范文本的向量表示。
可选的,所述第一编码器和所述第二编码器均为句向量编码器。
可选的,所述方法还包括:获取诉求事件文本;将所述诉求事件文本输入至所述编码器,得到所述编码器输出的事件文本向量;获取多条候选规范文本向量;根据所述事件文本向量和各条候选规范文本向量之间的相似度,从多条候选规范文本中确定至少一条目标规范文本,所述目标规范文本为与所述诉求事件文本相匹配的规范文本。
本申请实施例还提供一种文本搜索模型的训练装置,所述文本搜索模型包括编码器,所述装置包括:获取模块,用于获取当前批次的训练数据,所述当前批次的训练数据包括样本事件文本组和样本规范文本组,所述样本事件文本组包括N条样本事件文本,所述样本规范文本组包括N条样本规范文本,N为大于1的正整数;编码模块,用于采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示;损失计算模块,用于根据预测矩阵和标签矩阵,计算模型损失值,其中,所述预测矩阵中第i行第j列的元素是根据所述样本事件文本组中第i条样本事件文本的向量表示和所述样本规范文本组中第j条样本规范文本的向量表示计算得到的相似度,所述标签矩阵中第i行第j列的元素用于指示所述第i条样本事件文本和所述第j条样本规范文本是否匹配,1≤i≤N,1≤j≤N,i,j为正整数;更新模块,用于根据所述模型损失值更新所述编码器。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述的文本搜索模型的训练方法的步骤。
本申请实施例还提供一种计算设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述的文本搜索模型的训练方法的步骤。
与现有技术相比,本申请实施例的技术方案具有以下有益效果:
在本申请实施例的方案中,每个批次的训练数据包括:样本事件文本组和样本规范文本组,样本规范文本组包括N条样本规范文本,样本事件文本组包括N条样本事件文本,然后采用编码器分别对样本事件文本组和样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示,进一步根据预测矩阵和标签矩阵计算模型损失值,并根据模型损失值更新编码器。
上述方案中,预测矩阵中第i行第j列的元素是根据第i条样本事件文本的向量表示和第j条样本规范文本的向量表示计算得到的相似度,标签矩阵中第i行第j列的元素用于指示第i条样本事件文本和第j条样本规范文本是否匹配,由此,通过单个批次的训练能够使得编码器学习到多个样本事件文本各自匹配的规范文本的向量表示和/或不匹配的规范文本的向量表示。通过多批次的训练,进一步能够使匹配同一事件类别的规范文本的向量表示在语义空间内的距离不断减小和/或使匹配不同事件类别的规范文本的向量表示在语义空间内的距离不断增大,从而后续能够使用文本搜索模型准确地搜索到事件文本相匹配的规范文本。
进一步,样本规范文本组中N条样本事件文本所属的事件类别各不相同。采用这样的方案,能够在单批次的训练中对各个事件类别的正例样本和/或负例样本进行学习,有利于提高训练效率。
进一步,标签矩阵中第j列的元素中仅有1个元素为1,其余元素均为0。采用上述方案,仅根据标签矩阵中单个元素的值抽取第j条样本规范文本,即可使得第j条样本规范文本和N条样本事件文本中各条样本事件文本均满足标签矩阵中第j列的元素的要求。有利于提高获取样本规范文本组的效率,从而提高训练效率。
进一步,本申请实施例的方案中,分别为事件文本和规范文本各自设置编码器,通过训练能够使得两个编码器分别对不同的语言结构或者语言模态的文本进行各自的向量化编码,相较于采用同一编码器对两种不同的语言结构或者语言模态的文本进行编码的方案,上述方案能够提高文本向量表示的准确性,从而有利于提高文本搜索的准确性。
进一步,本申请实施例的方案,第一编码器和第二编码器均为句向量编码器,由此,编码得到的事件文本的向量表示和规范文本的向量表示均为句向量,相较于采用词向量来表征文本的方案,上述方案能够更加充分地表达文本的语义,有利于提高文本搜索的准确性。
附图说明
图1是本申请实施例中一种文本搜索模型的训练方法的流程示意图;
图2是本申请实施例中一种文本搜索模型的训练装置的结构示意图。
具体实施方式
如背景技术所述,目前的文本搜索模型的准确性仍有待提高。
文本搜索任务可以是基于某一文本进行其他文本的搜索。由于在自然语言领域中,通常存在一词多义或者一义多词的情况,如何提高文本搜索的准确性成为文本搜索任务的技术难点之一。具体而言,同一个词语在不同的文本中可能具有不同的语义,相同的语义在不同文本中可能由不同的词语进行表述,相同的语义也可能由不同结构的句式进行描述等。因此,基于某一文本搜索其他文本时,搜索结果可能不是用户期望的文本。
作为一个非限制性的例子,对于请求人反映的事件文本,用户期望在规范文本数据库中搜索到事件文本匹配的规范文本。其中,请求人可以是指希望事件文本所描述的事件能够被解决或解答的人,用户可以是指能够向请求人提供规范文本以向请求人提供帮助或解答的人,规范文本可以是法条、公司章程等。然而,事件文本和规范文本对于同一事物的表达或措辞通常存在很大差异,请求人反映的事件文本中通常采用口语化的表达,甚至是带有地域色彩的表达,而规范文本中均为规范的表达,为此,在搜索事件文本匹配的规范文本的任务中,文本搜索的准确性较低。
有鉴于此,本申请实施例提供一种文本搜索模型的训练方法,在本申请实施例提供的训练方法中,每个批次的训练数据包括:样本事件文本组和样本规范文本组,样本规范文本组包括N条样本规范文本,样本事件文本组包括N条样本事件文本,然后采用编码器分别对样本事件文本组和样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示,进一步根据预测矩阵和标签矩阵计算模型损失值,并根据模型损失值更新编码器。
上述方案中,预测矩阵中第i行第j列的元素是根据第i条样本事件文本的向量表示和第j条样本规范文本的向量表示计算得到的相似度,标签矩阵中第i行第j列的元素用于指示第i条样本事件文本和第j条样本规范文本是否匹配,由此,通过单个批次的训练能够使得编码器学习到多个样本事件文本各自匹配的规范文本的向量表示和/或不匹配的规范文本的向量表示。通过多批次的训练,进一步能够使匹配同一事件类别的规范文本的向量表示在语义空间内的距离不断减小和/或使匹配不同事件类别的规范文本的向量表示在语义空间内的距离不断增大,从而后续能够使用文本搜索模型准确地搜索到事件文本相匹配的规范文本。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
参照图1,图1是本申请实施例中一种文本搜索模型的训练方法的流程示意图。所述方法可以由计算设备执行,所述计算设备可以是现有的各种具有数据接收和数据处理能力的设备,例如,可以是手机、计算机、物联网设备和服务器等,但并不限于此。图1示出的文本搜索模型的训练方法可以包括:
步骤S11:获取当前批次的训练数据,所述当前批次的训练数据包括样本事件文本组和样本规范文本组,所述样本事件文本组包括N条样本事件文本,所述样本规范文本组包括N条样本规范文本,N为大于1的正整数;
步骤S12:采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示;
步骤S13:根据预测矩阵和标签矩阵,计算模型损失值,其中,所述预测矩阵中第i行第j列的元素是根据所述样本事件文本组中第i条样本事件文本的向量表示和所述样本规范文本组中第j条样本规范文本的向量表示计算得到的相似度,所述标签矩阵中第i行第j列的元素用于指示所述第i条样本事件文本和所述第j条样本规范文本是否匹配,1≤i≤N,1≤j≤N,i,j为正整数;
步骤S14:根据所述模型损失值更新所述编码器。
可以理解的是,在具体实施中,上述方法可以采用软件程序的方式实现,该软件程序运行于芯片或芯片模组内部集成的处理器中;或者,该方法可以采用硬件或者软硬结合的方式来实现,例如用专用的芯片或芯片模组来实现,或者,用专用的芯片或芯片模组结合软件程序来实现。
需要说明的是,图1仅示出了文本搜索模型的训练过程中一个批次的训练过程,在实际应用中,可以重复步骤S11至步骤S14,直至文本搜索模型收敛,从而完成训练。
在步骤S11的具体实施中,可以获取当前批次的训练数据,所述当前批次的训练数据包括单个样本事件文本组和单个样本规范文本组,其中,样本事件文本组可以包括N条样本事件文本,样本规范文本组包括N条样本规范文本,N条样本规范文本所属的事件类别可以是不同的。N为大于1的正整数。所述事件类别可以是:生态环境、交通、教育等。
在本申请实施例的方案中,可以先获取样本事件文本组,再获取样本规范文本组。其中,样本事件文本可以从历史事件文本数据库读取的,以及样本规范文本可以是从规范文本数据库读取的。
本实施例中,标签矩阵可以是预先设置的,不同批次的训练数据对应的标签矩阵可以是相同的,获取当前批次的样本事件文本组之后,可以根据标签矩阵抽取N条样本规范文本。采用这样的方案,一方面无需在确定每个批次的标签矩阵,有利于提高训练效率,另一方面能够使得训练数据更加标准化,有利于提高模型的准确性。需要说明的是,在其他实施例中,也可以先确定样本事件文本组,再确定标签矩阵。
具体而言,所述标签矩阵为N×N的矩阵,标签矩阵中第i行第j列的元素用于指示第i条样本事件文本和第j条样本规范文本是否匹配。其中,1≤i≤N,1≤j≤N,i,j为正整数。
更具体地,如果标签矩阵中第i行第j列的元素为1,则指示第i条样本事件文本和第j条样本规范文本匹配,也即,第i条样本事件文本和第j条样本规范文本为正例文本对。如果标签矩阵中第i行第j列的元素为0,则指示第i条样本事件文本和第j条样本规范文本不匹配。也即,第i条样本事件文本和第j条样本规范文本为负例文本对。
其中,第i条样本事件文本和第j条样本规范文本匹配可以是指第j条样本规范文本和第i条样本事件文本所属的事件类别是相同的。更进一步地,第i条样本事件文本和第j条样本规范文本匹配还可以表征第j条样本规范文本是对第i条样本事件文本所描述的事件进行规范或约束的文本。
获取样本事件文本组之后,可以根据标签矩阵中第j列的元素和N条样本事件文本,从规范文本集合中抽取第j条样本规范文本。换言之,抽取的第j条样本规范文本和N条样本事件文本中每条样本事件文本均满足标签矩阵中第j列的N个元素的要求。
在一个非限制性的例子中,样本事件文本组中的N条样本事件文本所属的事件类别各不相同。换言之,样本事件文本组包括分别属于N个事件类别的样本事件文本。在具体实施中,N个事件类别可以是预先设置的。采用这样的方案,能够在单个批次的训练中对各个类别的正例样本和负例样本进行学习,有利于提高训练效率。
此外,标签矩阵中第j列的元素中可以仅有1个元素为1,其余元素均为0。由此,可以仅根据标签矩阵中单个元素的值抽取第j个样本规范文本,即可使得第j条样本规范文本和N条样本事件文本中各条样本事件文本均满足标签矩阵中第j列的元素的要求,有利于提高获取样本规范文本组的效率,从而提高训练效率。
具体而言,历史事件文本数据库可以包括多个历史事件文本集合,其中,第n个历史事件文本集合中的事件文本均具有第n个事件类别的标签,不同历史事件文本集合对应的事件类别不同。规范文本数据库可以包括多个规范文本集合,其中,第n个规范文本集合中的规范文本均具有第n个事件类别的标签,不同规范文本集合的事件类别标签不同。其中,1≤n≤N,n为正整数。
在具体实施中,可以访问历史事件文本数据库,从第i个历史事件文本集合中抽取第i条样本事件文本。也即,样本事件文本组中N条样本事件文本的位置或顺序可以是固定的,也即,可以根据事件类别的编号n确定。
进一步地,由于标签矩阵中第j列的元素中仅有1个元素为1,其余元素均为0,且N条样本事件文本所属的事件类别各不相同,为此,可以从第j列的正例事件文本关联的规范文本集合中抽取第j条样本规范文本。由此可以使得第j条样本规范文本和N条样本事件文本中各条样本事件文本均满足标签矩阵中第j列的元素的要求。
具体地,第j列的正例事件文本是指标签矩阵中第j列的元素中值为1的元素对应的样本事件文本,正例事件文本关联的规范文本集合是指具有正例事件文本所属事件类别的标签的规范文本集合
在一个非限制性的例子中,标签矩阵中第i行第i列的元素均为1,其余元素均为0。在这种情况下,从第i个历史事件文本集合中抽取第i个样本事件文本的同时,还可以一并从第i个规范文本集合中抽取第i个样本规范文本。
进一步地,对于某个事件类别的样本事件文本,该事件类别对应的规范文本集合中部分的规范文本可能并不直接对该样本事件文本进行规范或者约束,为了进一步提高搜索的准确度,本申请实施例还可以在规范文本集合的基础上进行颗粒度更细的划分。
具体而言,规范文本集合可以包括多个样本规范单元,其中,每个样本规范文本单元可以关联一条样本事件文本。
也即,每条样本事件文本可以预先设置有关联的样本规范文本单元,样本规范文本单元中的各条样本规范文本均与该条样本事件文本相匹配。更具体地,样本规范文本单元中各条样本规范文本直接对关联的样本事件文本进行规范或者约束。需要说明的是,同一规范文本集合中的不同样本规范单元具有相同的事件类别标签,但关联不同的样本事件文本。
在这种情况下,对于第j条样本规范文本,可以从第j列的正例事件文本关联的样本规范文本单元中抽取第j条样本规范文本。
由上,可以得到当前批次的训练数据。
在步骤S12的具体实施中,可以采用编码器分别对样本事件文本组中的N条样本事件文本进行编码,得到N条样本事件文本的向量表示,以及对样本规范文本组中的N条样本规范文本进行编码,得到N条样本规范文本的向量表示。
在本申请的一实施例中,虽然两种均为文本数据,但考虑到事件文本和规范文本在表达和措辞上的差异非常大,可以将其视为两种不同模态的数据,为此,设置两个不同的编码器分别对两种文本进行编码。
具体而言,文本搜索模型可以包括第一编码器和第二编码器,所述第一编码器和第二编码器均为文本编码器。
更具体地,所述第一编码器和第二编码器可以均为transformer编码器。例如,可以是来自transformer的双向编码表示(Bidirectional Encoder Representations fromTransformers,简称BERT)模型。
在步骤S12中,可以采用第一编码器对N条样本事件文本进行编码,得到N条样本事件文本的向量表示,以及采用第二编码器对N条样本规范文本进行编码,得到N条样本规范文本的向量表示。
更具体地,所述第一编码器和第二编码器可以均为句向量编码器。
示例性的,下面以第一编码器为例对第一编码器的编码过程进行非限制性的描述,第二编码器的编码过程可以参照第一编码器的编码过程的描述。
第一编码器可以包括分词模块和编码模块,样本事件文本组输入至第一编码器之后,可以先对样本规范文本进行分词编码,例如,可以采用BERT模型中自带的分词器对样本规范文本按单字符拆分。对每一输入的文本,第一编码器的最大输入长度为512字符,超过则截断。由此可以生成了512维度的独热码(one-hot)向量,假设事件类别的数量N=28,则参与训练的一批数据格式为(28,512)。对one-hot向量可以初始化一个随机的嵌入(embedding)向量,并添加位置编码,从而得到样本事件文本组的向量表示,在本实施例中以文本向量为768维为例,得到样本事件文本组对应的one-hot向量,one-hot向量的数据格式为(28,512,768)。
进一步地,将样本事件文本组对应的one-hot向量继续输入至编码模块。在本实施例中,该模块可以由堆叠了12层的Transformer模型构成,每层包含编解码结构,编解码结构是包含编码单元和解码单元的结构,编解码结构由多头注意力(Multi-HeadAttention)、残差连接网络、归一化层(Layer Norm)、前馈神经网络等模块构成,其中,多头注意力的个数可以为8,隐藏层维数可以为768。样本事件文本组对应的嵌入向量依次通过各层,最后连接全连接层,映射为与输入相同维数的向量,得到样本事件文本组的句向量表示,该句向量的数据格式为(28,512,768)。
相较于采用词向量编码器进行编码来表征文本的方案,上述方案能够更加充分地表达文本的语义,有利于提高文本搜索的准确性。
在步骤S13的具体实施中,可以根据N条样本事件文本的向量表示和N条样本规范文本的向量表示,计算预测矩阵。
作为一种具体的实施方式,可以计算所述样本事件文本组中第i条样本事件文本的向量表示和样本规范文本组中第j条样本规范文本的向量表示之间的相似度,并将得到的相似度作为预测矩阵中第i行第j列的元素。
其中,所述相似度可以是余弦相似度,在其他实施例中,也可以是其他类型的用于表示向量之间相似程度的相似度。例如,皮尔逊相关系数、欧氏距离。
作为另一种具体的实施方式,可以计算样本事件文本组中第i条样本事件文本的向量表示和样本规范文本组中第j条样本规范文本的向量表示之间的相似度,并将得到的相似度作为预测矩阵中第i行第j列的初始元素。进一步地,得到预测矩阵中第i行的N个初始元素之后,可以对预测矩阵中第i行的N个元素进行归一化处理,得到预测矩阵第i行的N个元素,从而得到预测矩阵。
进一步地,可以根据预测矩阵和标签矩阵,计算模型损失值。示例性的模型损失值可以是交叉熵损失,或者模型损失值也可以是基于其他现有的损失函数计算的损失值,本实施例对此并不限制。
在步骤S14的具体实施中,可以根据步骤S13中计算得到的模型损失值更新编码器,更具体地,可以根据模型损失值分别更新第一编码器和第二编码器。更具体地,更新编码器的原则可以是增大正例文本对的向量表示之间的相似度,以及减小负例文本对的向量表示之间的相似度。
关于根据模型损失值更新编码器的具体方法可以参照现有的根据模型损失值对模型参数进行调整的方法,本实施例对此并不限制。
进一步地,如果更新后的文本搜索模型尚未收敛,则可以返回至步骤S11进行下一批次的训练,并继续执行步骤S11至步骤S14,直至文本搜索模型收敛。
如果更新后的文本搜索模型收敛,例如,长时间模型效果未获得提升,则可以停止训练。
在本申请的一实施例中,如上文所述,对于第j条样本规范文本,从第j列的正例事件文本关联的样本规范文本单元中抽取第j个样本规范文本。在步骤S11中,每次抽取时,可以在第j列的正例事件文本关联的样本规范文本单元中未被抽取过的样本规范文本中抽取第j条样本规范文本。
在步骤S14之后,如果本批次所抽取的样本规范文本单元中仍有未被抽取过的样本规范文本,则依次地从本批次所抽取的样本规范文本单元中抽取未被抽取过的样本规范文本,并更新样本事件文本组,然后继续执行步骤S12至步骤S14,直至本批次被抽取的样本规范文本单元中各条样本规范文本均被抽取过或者样本规范文本单元被抽取的次数达到预设阈值,则当前批次的训练完成。
进一步地,训练完成后,可以将文本搜索模型部署于计算设备。所述文本搜索模型可以用于搜索诉求事件文本的事件类别相匹配的规范文本,也即,所述文本搜索模型可以用于类到类的文本搜索。其中,诉求事件文本可以是请求人上传的事件文本,或者,诉求事件文本也可以被称之为“当前事件文本”。
进一步地,在模型推理阶段,可以预先采用文本搜索模型对规范文本集合中的各条规范文本进行编码,得到规范文本向量,并将规范文本向量存储于数据库中,保存于数据库的规范文本向量可以记为候选规范文本向量。
进一步地,当有诉求事件文本到来时,可以将诉求事件文本输入至文本搜索模型,以得到事件文本向量。然后可以从数据库中读取多条候选规范文本向量,并分别计算事件文本向量和各条候选规范文本向量之间的相似度,然后选取相似度最高的M条规范文本向量,并将M条候选规范文本向量对应的M条规范文本作为目标规范文本,目标规范文本可以与诉求事件文本相匹配,也即,目标规范文本和诉求事件文本的事件类别相匹配,或者,目标规范文本可以用于规范或约束诉求事件文本所描述的事件。其中,M为正整数。
如上文所述,文本搜索模型包括第一编码器和第二编码器,在这种情况下,可以预先将多条规范文本输入至第二编码器,以得到第二编码器输出的多条规范文本向量,并保存于数据库中。当诉求事件文本到来时,可以将诉求事件文本输入至第一编码器,以得到第一编码器输出的事件文本向量。
需要说明的是,在其他实施例中,也可以是标签矩阵中第i行第j列的元素用于指示第i条样本规范文本和第j条样本事件文本是否匹配,本实施例对此并不进行限制。
在实际应用中,可以采用MySQL 5.7及以上版本数据库来存储历史事件文本、规范文本等,还可以采用采用MongoDB数据库来存储文本的向量表示,但并不限于此。
参照图2,图2是本申请实施例中一种文本搜索模型的训练装置的结构示意图。如图2所示,图2示出的文本搜索模型的训练装置可以包括:
获取模块21,用于获取当前批次的训练数据,所述当前批次的训练数据包括样本事件文本组和样本规范文本组,所述样本事件文本组包括N条样本事件文本,所述样本规范文本组包括N条样本规范文本,N为大于1的正整数;
编码模块22,用于采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示;
损失计算模块23,用于根据预测矩阵和标签矩阵,计算模型损失值,其中,所述预测矩阵中第i行第j列的元素是根据所述样本事件文本组中第i条样本事件文本的向量表示和所述样本规范文本组中第j条样本规范文本的向量表示计算得到的相似度,所述标签矩阵中第i行第j列的元素用于指示所述第i条样本事件文本和所述第j条样本规范文本是否匹配,1≤i≤N,1≤j≤N,i,j为正整数;
更新模块24,用于根据所述模型损失值更新所述编码器。
关于本申请实施例中的文本搜索模型的训练装置的工作原理、工作方法和有益效果等更多内容,可以参照上文中关于文本搜索模型的训练方法的相关描述,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述方法的步骤。所述存储介质可以包括ROM、RAM、磁盘或光盘等。所述存储介质还可以包括非挥发性存储器(non-volatile)或者非瞬态(non-transitory)存储器等。
本申请实施例还提供一种计算设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述方法的步骤。所述计算设备包括但不限于手机、计算机、平板电脑等计算设备。
应理解,本申请实施例中,所述处理器可以为中央处理单元(central processingunit,简称CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,简称DSP)、专用集成电路(application specific integrated circuit,简称ASIC)、现成可编程门阵列(field programmable gate array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,简称ROM)、可编程只读存储器(programmable ROM,简称PROM)、可擦除可编程只读存储器(erasable PROM,简称EPROM)、电可擦除可编程只读存储器(electricallyEPROM,简称EEPROM)或闪存。易失性存储器可以是随机存取存储器(random accessmemory,简称RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,简称RAM)可用,例如静态随机存取存储器(staticRAM,简称SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronousDRAM,简称SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,简称DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,简称ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,简称SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,简称DR RAM)
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机程序可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和系统,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的;例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。例如,对于应用于或集成于芯片的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于芯片模组的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,不同的模块/单元可以位于芯片模组的同一组件(例如芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片模组内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于终端的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,不同的模块/单元可以位于终端内同一组件(例如,芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于终端内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A 和B,单独存在B这三种情况。另外,本文中字符“/”,表示前后关联对象是一种“或”的关系。
本申请实施例中出现的“多个”是指两个或两个以上。本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。
虽然本申请披露如上,但本申请并非限定于此。任何本领域技术人员,在不脱离本申请的精神和范围内,均可作各种更动与修改,因此本申请的保护范围应当以权利要求所限定的范围为准。
Claims (11)
1.一种文本搜索模型的训练方法,其特征在于,所述文本搜索模型包括编码器,所述方法包括:
获取当前批次的训练数据,所述当前批次的训练数据包括样本事件文本组和样本规范文本组,所述样本事件文本组包括N条样本事件文本,所述样本规范文本组包括N条样本规范文本,N为大于1的正整数;
采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示;根据预测矩阵和标签矩阵,计算模型损失值,其中,所述预测矩阵中第i行第j列的元素是根据所述样本事件文本组中第i条样本事件文本的向量表示和所述样本规范文本组中第j条样本规范文本的向量表示计算得到的相似度,所述标签矩阵中第i行第j列的元素用于指示所述第i条样本事件文本和所述第j条样本规范文本是否匹配,1≤i≤N,1≤j≤N,i,j为正整数;
根据所述模型损失值更新所述编码器;
其中,获取当前批次的训练数据包括:
获取所述N条样本事件文本;
根据所述标签矩阵中第j列的N个元素和所述N条样本事件文本,从规范文本数据库中抽取所述第j条样本规范文本。
2.根据权利要求1所述的文本搜索模型的训练方法,其特征在于,所述N条样本事件文本所属的事件类别各不相同。
3.根据权利要求1所述的文本搜索模型的训练方法,其特征在于,所述标签矩阵中第j列的元素中仅单个元素为1,所述规范文本数据库包括多个规范文本集合,根据所述标签矩阵中第j列的N个元素和所述N条样本事件文本,从规范文本数据库中抽取所述第j条样本规范文本包括:
确定所述第j列的元素中值为1的元素对应的样本事件文本,记为第j列的正例事件文本;
从所述第j列的正例事件文本关联的规范文本集合中抽取所述第j条样本规范文本。
4.根据权利要求3所述的文本搜索模型的训练方法,其特征在于,所述规范文本集合包括多个样本规范文本单元,从所述第j列的正例事件文本关联的规范文本集合中抽取所述第j条样本规范文本包括:
从所述第j列的正例事件文本关联的样本规范文本单元中抽取所述第j条样本规范文本。
5.根据权利要求1所述的文本搜索模型的训练方法,其特征在于,所述标签矩阵中第i行第i列的元素均为1,其余元素均为0。
6.根据权利要求1所述的文本搜索模型的训练方法,其特征在于,所述编码器包括第一编码器和第二编码器,采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码包括:
采用所述第一编码器对所述样本事件文本组进行编码,得到各条样本事件文本的向量表示;
采用所述第二编码器对所述样本规范文本组进行编码,得到各条样本规范文本的向量表示。
7.根据权利要求6所述的文本搜索模型的训练方法,其特征在于,所述第一编码器和所述第二编码器均为句向量编码器。
8.根据权利要求1所述的文本搜索模型的训练方法,其特征在于,所述方法还包括:
获取诉求事件文本;
将所述诉求事件文本输入至所述编码器,得到所述编码器输出的事件文本向量;
获取多条候选规范文本向量;
根据所述事件文本向量和各条候选规范文本向量之间的相似度,从多条候选规范文本中确定至少一条目标规范文本,所述目标规范文本为与所述诉求事件文本相匹配的规范文本。
9.一种文本搜索模型的训练装置,其特征在于,所述文本搜索模型包括编码器,所述装置包括:
获取模块,用于获取当前批次的训练数据,所述当前批次的训练数据包括样本事件文本组和样本规范文本组,所述样本事件文本组包括N条样本事件文本,所述样本规范文本组包括N条样本规范文本,N为大于1的正整数;
编码模块,用于采用所述编码器分别对所述样本事件文本组和所述样本规范文本组进行编码,得到各条样本事件文本的向量表示和各条样本规范文本的向量表示;
损失计算模块,用于根据预测矩阵和标签矩阵,计算模型损失值,其中,所述预测矩阵中第i行第j列的元素是根据所述样本事件文本组中第i条样本事件文本的向量表示和所述样本规范文本组中第j条样本规范文本的向量表示计算得到的相似度,所述标签矩阵中第i行第j列的元素用于指示所述第i条样本事件文本和所述第j条样本规范文本是否匹配,1≤i≤N,1≤j≤N,i,j为正整数;
更新模块,用于根据所述模型损失值更新所述编码器;
其中,所述获取模块包括:
用于获取所述N条样本事件文本的子模块;
用于根据所述标签矩阵中第j列的N个元素和所述N条样本事件文本,从规范文本数据库中抽取所述第j条样本规范文本的子模块。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时,执行权利要求1至8中任一项所述的文本搜索模型的训练方法的步骤。
11.一种计算设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序时执行权利要求1至8中任一项所述的文本搜索模型的训练方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310218641.3A CN116150625B (zh) | 2023-03-08 | 2023-03-08 | 文本搜索模型的训练方法及装置、计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310218641.3A CN116150625B (zh) | 2023-03-08 | 2023-03-08 | 文本搜索模型的训练方法及装置、计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116150625A CN116150625A (zh) | 2023-05-23 |
CN116150625B true CN116150625B (zh) | 2024-03-29 |
Family
ID=86373608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310218641.3A Active CN116150625B (zh) | 2023-03-08 | 2023-03-08 | 文本搜索模型的训练方法及装置、计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116150625B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109543030A (zh) * | 2018-10-12 | 2019-03-29 | 平安科技(深圳)有限公司 | 客服机器人会话文本分类方法及装置、设备、存储介质 |
WO2020103783A1 (zh) * | 2018-11-19 | 2020-05-28 | 阿里巴巴集团控股有限公司 | 地址文本相似度确定方法、地址搜索方法、装置和设备 |
CN111435411A (zh) * | 2019-01-15 | 2020-07-21 | 菜鸟智能物流控股有限公司 | 命名体类型识别方法和装置以及电子设备 |
CN114281991A (zh) * | 2021-12-20 | 2022-04-05 | 平安普惠企业管理有限公司 | 文本分类方法、装置、电子设备及存储介质 |
CN115495555A (zh) * | 2022-09-26 | 2022-12-20 | 中国科学院深圳先进技术研究院 | 一种基于深度学习的文献检索方法和系统 |
-
2023
- 2023-03-08 CN CN202310218641.3A patent/CN116150625B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109543030A (zh) * | 2018-10-12 | 2019-03-29 | 平安科技(深圳)有限公司 | 客服机器人会话文本分类方法及装置、设备、存储介质 |
WO2020103783A1 (zh) * | 2018-11-19 | 2020-05-28 | 阿里巴巴集团控股有限公司 | 地址文本相似度确定方法、地址搜索方法、装置和设备 |
CN111435411A (zh) * | 2019-01-15 | 2020-07-21 | 菜鸟智能物流控股有限公司 | 命名体类型识别方法和装置以及电子设备 |
CN114281991A (zh) * | 2021-12-20 | 2022-04-05 | 平安普惠企业管理有限公司 | 文本分类方法、装置、电子设备及存储介质 |
CN115495555A (zh) * | 2022-09-26 | 2022-12-20 | 中国科学院深圳先进技术研究院 | 一种基于深度学习的文献检索方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116150625A (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11210306B2 (en) | Dialogue system, a method of obtaining a response from a dialogue system, and a method of training a dialogue system | |
US11741109B2 (en) | Dialogue system, a method of obtaining a response from a dialogue system, and a method of training a dialogue system | |
CN109376222B (zh) | 问答匹配度计算方法、问答自动匹配方法及装置 | |
US20230039496A1 (en) | Question-and-answer processing method, electronic device and computer readable medium | |
CN114330354B (zh) | 一种基于词汇增强的事件抽取方法、装置及存储介质 | |
CN113392209B (zh) | 一种基于人工智能的文本聚类方法、相关设备及存储介质 | |
CN110765785A (zh) | 基于神经网络的中英翻译方法、及其相关设备 | |
CN111611807A (zh) | 一种基于神经网络的关键词提取方法、装置及电子设备 | |
CN113886571A (zh) | 实体识别方法、装置、电子设备及计算机可读存储介质 | |
CN114661861B (zh) | 文本匹配方法及装置、存储介质、终端 | |
CN115827819A (zh) | 一种智能问答处理方法、装置、电子设备及存储介质 | |
CN115203372A (zh) | 文本意图分类方法、装置、计算机设备及存储介质 | |
CN112836039A (zh) | 基于深度学习的语音数据处理方法和装置 | |
CN113961666A (zh) | 关键词识别方法、装置、设备、介质及计算机程序产品 | |
CN114492661A (zh) | 文本数据分类方法和装置、计算机设备、存储介质 | |
CN117076946A (zh) | 一种短文本相似度确定方法、装置及终端 | |
CN111859979A (zh) | 讽刺文本协同识别方法、装置、设备及计算机可读介质 | |
CN116775875A (zh) | 问题语料库构建方法和装置、问答方法、设备及存储介质 | |
CN116150625B (zh) | 文本搜索模型的训练方法及装置、计算设备 | |
WO2023134085A1 (zh) | 问题答案的预测方法、预测装置、电子设备、存储介质 | |
CN116089605A (zh) | 基于迁移学习和改进词袋模型的文本情感分析方法 | |
CN115496067A (zh) | 一种实体识别模型训练方法及装置、实体识别方法及装置 | |
CN114911940A (zh) | 文本情感识别方法及装置、电子设备、存储介质 | |
CN115238080A (zh) | 实体链接方法及相关设备 | |
CN114298047A (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 |