CN116186562B - 基于编码器的长文本匹配方法 - Google Patents
基于编码器的长文本匹配方法 Download PDFInfo
- Publication number
- CN116186562B CN116186562B CN202310466350.6A CN202310466350A CN116186562B CN 116186562 B CN116186562 B CN 116186562B CN 202310466350 A CN202310466350 A CN 202310466350A CN 116186562 B CN116186562 B CN 116186562B
- Authority
- CN
- China
- Prior art keywords
- document
- encoder
- matching
- pair
- long text
- 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
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/35—Clustering; Classification
-
- 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/084—Backpropagation, e.g. using gradient descent
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于编码器的长文本匹配方法,包括获取现有的文档数据集;提取关键句;构建匹配数据集;构建长文本匹配初始模型;采用匹配数据集训练长文本匹配初始模型得到长文本匹配模型;采用长文本匹配模型进行实际的长文本对的匹配判定。本发明通过关键句提取方案和文本匹配框架,不仅能够更好地提取输入的长文本的关键信息,而且融合了交叉编码器和双编码器各自的优势,在长文本匹配任务中表现优异,尤其是在匹配描述同一事件的长文本时具有更高的准确性和鲁棒性;而且本发明的可靠性高、精确性好且效率较高。
Description
技术领域
本发明属于自然语言处理领域,具体涉及一种基于编码器的长文本匹配方法。
背景技术
随着经济技术的发展和人们生活水平的提高,人工智能技术已经广泛应用于人们的生产和生活当中,给人们的生产和生活带来了无尽的便利。在人工智能技术当中,自然语言处理是极为重要的组成部分。
文本匹配(Text Matching)是自然语言处理中一项基础任务,旨在识别给定的一对文本是否报告或描述了同一事件或故事。长文本匹配是文本匹配的一个重要子方向,主要应用于文本聚类、新闻推荐、搜索引擎、文本去重、机器翻译等领域。
目前,许多深度文本匹配方法在短文本匹配任务上能够取得较好的效果,但该类方案无法较好地应用到长文本匹配任务上,其主要原因是当待匹配文本的长度超过一定限度时,由于模型的限制需要在计算过程中使用截断方法或者使用原始文档的关键内容代替整篇文档作为输入;这种处理方式有可能导致语义交互的不足,或者选择了不合适的关键句子,从而导致在识别描述同一事件的文本对时,出错误判的情况。近些年来,研究者尝试了基于表示的方法,基于交互的方法以及两者的组合;这类方案虽然在短文本匹配中获得了不错的效果,但依旧无法处理长文本提供的海量信息,并无法直接迁移到长文本匹配中。
发明内容
本发明的目的在于提供一种可靠性高、精确性好且效率较高的基于编码器的长文本匹配方法。
本发明提供的这种基于编码器的长文本匹配方法,包括如下步骤:
S1. 获取现有的文档数据集;
S2. 基于实体提取和实体评价,提取步骤S1得到的文档中的关键句;
S3. 基于步骤S1获取的文档数据集和步骤S2得到的关键句,构建匹配数据集;
S4. 基于交叉编码器、双编码器和神经网络结构,构建长文本匹配初始模型;
S5. 采用步骤S3构建的匹配数据集,对步骤S4构建的长文本匹配初始模型进行训练,得到长文本匹配模型;
S6. 采用步骤S5得到的长文本匹配模型,进行实际的长文本对的匹配判定。
所述的步骤S1,具体包括如下步骤:
获取的文档数据集S表示为,其中为第i个文档对中第一文档所包括的信息,/>为第i个文档对中第二文档所包括的信息,/>为第i个文档对的标签;/>为第i个文档对中第一文档的文档内容,/>为第i个文档对中第一文档的文档标题,/>为第i个文档对中第一文档的文档关键词;/>为第i个文档对中第二文档的文档内容,/>为第i个文档对中第二文档的文档标题,为第i个文档对中第二文档的文档关键词;N为文档数据集S中文档对的数量。所述的步骤S2,具体包括如下步骤:
提取各个文档的文档内容中句子的实体;
根据获取的各个文档的句子实体,根据每个句子中的实体数量、实体类型和实体位置,对句子进行评分;
根据得到的句子的评分,选取满足设定要求的若干句子,作为对应文档的关键句。
所述的步骤S2,具体包括如下步骤:
采用spacy库从各个文档的文档内容中提取句子的实体;
对于第i个文档对中的第zzz文档的文档内容中的第j个句子/>,计算该句子的实体数量得分/>为/>,计算该句子的实体类型得分/>,以及计算该句子的位置得分为/>;其中zzz的取值为1或2,为句子/>中包含的实体的数量,/>为文档内容/>中包含的实体的总数量,/>为句子/>中包含的实体类型的数量,/>为文档内容中包含的实体类型的总数量,max为取最大值操作,n为文档内容/>中包含的句子的总数量;
采用如下算式计算得到句子的评分/>:式中/>为设定的数量权重值,/>为设定的类型权重值,/>为设定的位置权重值;
根据得到的各个句子的评分,选取每个文档中句子得分最高的若干个句子,作为该文档的关键句。
所述的步骤S3,具体包括如下步骤:
根据步骤S1获取的文档数据集,将其中的文档内容替换为步骤S2得到的关键句,从而构建得到匹配数据集/>为,其中/>为第i个文档对中第一文档的关键句,为第i个文档对中第二文档的关键句。
所述的步骤S4,具体包括如下步骤:
所述的长文本匹配初始模型包括依次串联的交叉编码器、双编码器和前馈神经网络结构;
交叉编码器用于对输入的数据信息进行编码;
双编码器用于对交叉编码器输出的编码向量进行特征提取,并输出最终的匹配向量;
前馈神经网络结构用于将接收到的匹配向量进行处理,从而得到最终的匹配结果。
所述的步骤S4,具体包括如下步骤:
长文本匹配初始模型包括依次串联的交叉编码器、双编码器和前馈神经网络结构;
所述的交叉编码器采用预训练语言模型BERT;
基于孪生网络构建双编码器;双编码器包括内容层和匹配层;双编码器的输入为向量对,将向量/>和/>分别通过内容层进行语义特征的提取,得到语义特征向量对/>;然后匹配层用于计算向量/>和/>之间的点积向量和差向量,并将点积向量和差向量进行拼接,得到最终的双编码器的输出向量;
前馈神经网络结构采用单层前馈神经网络结构,用于将双编码器的输出向量进行处理,得到最终的长文本匹配结果。
所述的步骤S5,具体包括如下步骤:
A. 将匹配数据集按照设定的比例划分为训练集、验证集和测试集;设置迭代轮次变量,并初始化;设置最高F1分数变量,用于表示训练过程中记录的验证集上最高的F1分数;其中F1分数指准确率和召回率的调和平均值,是统计学中用来衡量二分类模型精确度的一种指标,并初始化;
B. 设置训练的步数变量,并初始化;
C. 随机从训练集中选取若干样本;
D. 对于当前批次的若干样本:/>表示为,其中为当前批次样本的第i2个文档对中第一文档的关键句,/>为当前批次样本的第i2个文档对中第一文档的文档标题,/>为当前批次样本的第i2个文档对中第一文档的文档关键词,/>为当前批次样本的第i2个文档对中第二文档的关键句,为当前批次样本的第i2个文档对中第二文档的文档标题,/>为当前批次样本的第i2个文档对中第二文档的文档关键词,/>为当前批次样本的第i2个文档对的标签;
将、/>、/>、/>、/>和/>拼接,得到预训练语言模型BERT的输入/>为其中,/>为BERT模型输入格式中位于序列开头的分类标识符;/>为BERT模型输入格式中用于分隔句子的分隔标识符;
将输入到交叉编码器进行处理,获取编码后的输出向量/>为式中/>为交叉编码器编码后的/>分类标识符的输出向量;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的关键句;/>为交叉编码器编码后的/>分隔标识符的输出向量;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的关键句;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的文档标题;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的文档标题;为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的文档关键词;为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的文档关键词;
E. 将步骤D得到的和/>以及/>和/>,分别输入到双编码器中,得到特征提取后的标题向量/>和特征提取后的关键句向量/>;
F. 将步骤E得到的和/>与步骤D得到的/>进行拼接,得到匹配向量h,然后将匹配向量h输入到分类器中,得到最终的长文本匹配预测结果;
G. 将同一样本连续输入匹配模型两次,并采用如下算式计算得到第一损失:式中/>为第一次输入后模型输出的预测概率分布;/>为第二次输入后模型输出的预测概率分布;
采用如下算式计算得到第二损失:式中为两次输入模型产生的两个预测概率分布之间的KL散度(相对熵);
最后,计算得到总损失函数L为,/>为设定的权重参数;
H. 进行反向传播,得到各个参数的梯度;
I. 采用梯度下降算法更新各个参数;
J. 训练的步数变量增加1,并进行判断:
若当前的训练的步数变量的值为设定的记录间隔值的整数倍,则采用验证集对当前的匹配模型进行评估:计算当前训练步数下匹配模型在验证集上的F1分数,并再次进行判断:若当前训练步数下的F1分数大于最高F1分数变量的值,则将最高F1分数变量的值替换为当前训练步数下的F1分数的值,并保存当前的匹配模型的参数、当前训练步数下的F1分数和当前的训练步数;若当前训练步数下的F1分数小于或等于最高F1分数变量的值,则继续进行后续步骤,不对最高F1分数变量的值进行更新;
若当前的训练的步数变量的值不为设定的记录间隔值的整数倍,则继续进行后续步骤;
K. 重复步骤C~步骤J,直至遍历完训练集中的全部数据,当前训练轮次结束;
L. 重复步骤B~步骤K,直至训练轮次达到设定值,训练过程结束。
本发明提供的这种基于编码器的长文本匹配方法,通过关键句提取方案和文本匹配框架,不仅能够更好地提取输入的长文本的关键信息,而且融合了交叉编码器和双编码器各自的优势,在长文本匹配任务中表现优异,尤其是在匹配描述同一事件的长文本时具有更高的准确性和鲁棒性;而且本发明的可靠性高、精确性好且效率较高。
附图说明
图1为本发明的方法流程示意图。
具体实施方式
如图1所示为本发明的方法流程示意图:本发明提供的这种基于编码器的长文本匹配方法,包括如下步骤:
S1. 获取现有的文档数据集;具体包括如下步骤:
获取的文档数据集S表示为,其中为第i个文档对中第一文档所包括的信息,/>为第i个文档对中第二文档所包括的信息,/>为第i个文档对的标签;/>为第i个文档对中第一文档的文档内容,/>为第i个文档对中第一文档的文档标题,/>为第i个文档对中第一文档的文档关键词;/>为第i个文档对中第二文档的文档内容,/>为第i个文档对中第二文档的文档标题,为第i个文档对中第二文档的文档关键词;N为文档数据集S中文档对的数量;
S2. 基于实体提取和实体评价,提取步骤S1得到的文档中的关键句;具体包括如下步骤:
提取各个文档的文档内容中句子的实体;
根据获取的各个文档的句子实体,根据每个句子中的实体数量、实体类型和实体位置,对句子进行评分;
根据得到的句子的评分,选取满足设定要求的若干句子,作为对应文档的关键句;
具体实施时,包括如下步骤:
采用spacy库从各个文档的文档内容中提取句子的实体;
对于第i个文档对中的第zzz文档的文档内容中的第j个句子/>,计算该句子的实体数量得分/>为/>,计算该句子的实体类型得分/>,以及计算该句子的位置得分为/>;其中zzz的取值为1或2,为句子/>中包含的实体的数量,/>为文档内容/>中包含的实体的总数量,/>为句子/>中包含的实体类型的数量,/>为文档内容中包含的实体类型的总数量,max为取最大值操作,n为文档内容/>中包含的句子的总数量;
采用如下算式计算得到句子的评分/>:式中/>为设定的数量权重值,/>为设定的类型权重值,/>为设定的位置权重值;具体实施时,可以根据经验值或实验值进行权重的设定,比如3个权重值依次设定为0.6、0.3和0.1;
根据得到的各个句子的评分,选取每个文档中句子得分最高的若干个句子,作为该文档的关键句;
S3. 基于步骤S1获取的文档数据集和步骤S2得到的关键句,构建匹配数据集;具体包括如下步骤:
根据步骤S1获取的文档数据集,将其中的文档内容替换为步骤S2得到的关键句,从而构建得到匹配数据集/>为,其中/>为第i个文档对中第一文档的关键句,为第i个文档对中第二文档的关键句;
S4. 基于交叉编码器、双编码器和神经网络结构,构建长文本匹配初始模型;具体包括如下步骤:
所述的长文本匹配初始模型包括依次串联的交叉编码器、双编码器和前馈神经网络结构;
交叉编码器用于对输入的数据信息进行编码;
双编码器用于对交叉编码器输出的编码向量进行特征提取,并输出最终的匹配向量;
前馈神经网络结构用于将接收到的匹配向量进行处理,从而得到最终的匹配结果;
具体实施时,包括如下步骤:
长文本匹配初始模型包括依次串联的交叉编码器、双编码器和前馈神经网络结构;
所述的交叉编码器采用预训练语言模型BERT;
基于孪生网络构建双编码器;双编码器包括内容层context_layer和匹配层matching_layer;双编码器的输入为向量对,将向量/>和/>分别通过内容层进行语义特征的提取,得到语义特征向量对/>,这个过程表示为和/>,/>和/>为内容层的参数且相互独立,因此在具体实施时,内容层可以设置2个,并分别用于处理各自的输入向量;然后,匹配层用于计算向量/>和/>之间的点积向量和差向量,并将点积向量和差向量进行拼接,得到最终的双编码器的输出向量v;双编码器的总处理过程表示为,/>为双编码器的全部参数;
前馈神经网络结构采用单层前馈神经网络结构,用于将双编码器的输出向量进行处理,得到最终的长文本匹配结果;
S5. 采用步骤S3构建的匹配数据集,对步骤S4构建的长文本匹配初始模型进行训练,得到长文本匹配模型;具体包括如下步骤:
A. 将匹配数据集按照设定的比例划分为训练集、验证集和测试集;设置迭代轮次变量,并初始化;设置最高F1分数变量,用于表示训练过程中记录的验证集上最高的F1分数;其中F1分数指准确率和召回率的调和平均值,是统计学中用来衡量二分类模型精确度的一种指标,并初始化;
B. 设置训练的步数变量,并初始化;
C. 随机从训练集中选取若干样本;
D. 对于当前批次的若干样本:/>表示为,其中为当前批次样本的第i2个文档对中第一文档的关键句,/>为当前批次样本的第i2个文档对中第一文档的文档标题,/>为当前批次样本的第i2个文档对中第一文档的文档关键词,/>为当前批次样本的第i2个文档对中第二文档的关键句,为当前批次样本的第i2个文档对中第二文档的文档标题,/>为当前批次样本的第i2个文档对中第二文档的文档关键词,/>为当前批次样本的第i2个文档对的标签;
将、/>、/>、/>、/>和/>拼接,得到预训练语言模型BERT的输入/>为其中,/>为BERT模型输入格式中位于序列开头的分类标识符;/>为BERT模型输入格式中用于分隔句子的分隔标识符;
将输入到交叉编码器进行处理,获取编码后的输出向量/>为式中/>为交叉编码器编码后的/>分类标识符的输出向量;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的关键句;/>为交叉编码器编码后的/>分隔标识符的输出向量;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的关键句;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的文档标题;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的文档标题;为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的文档关键词;为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的文档关键词;
E. 将步骤D得到的和/>以及/>和/>,分别输入到双编码器中,得到特征提取后的标题向量/>和特征提取后的关键句向量/>;
F. 将步骤E得到的和/>与步骤D得到的/>进行拼接,得到匹配向量h,然后将匹配向量h经过随机失活(dropout)处理之后输入到分类器中,得到最终的长文本匹配预测结果;
G. 由于在步骤F中将匹配向量h输入分类器之前使用了随机失活机制(dropout),为了防止该操作导致训练过程和预测过程的不连续,在训练时将同一样本连续输入匹配模型两次,这两次输入所获得的输出结果会有所不同,并采用如下算式计算得到第一损失:式中/>为第一次输入后模型输出的预测概率分布;/>为第二次输入后模型输出的预测概率分布;
采用如下算式计算得到第二损失:式中为两次输入模型产生的两个预测概率分布之间的KL散度(相对熵);
最后,计算得到总损失函数L为,/>为设定的权重参数;
H. 进行反向传播,得到各个参数的梯度;
I. 采用梯度下降算法更新各个参数;
J. 训练的步数变量增加1,并进行判断:
若当前的训练的步数变量的值为设定的记录间隔值的整数倍,则采用验证集对当前的匹配模型进行评估:计算当前训练步数下匹配模型在验证集上的F1分数,并再次进行判断:若当前训练步数下的F1分数大于最高F1分数变量的值,则将最高F1分数变量的值替换为当前训练步数下的F1分数的值,并保存当前的匹配模型的参数、当前训练步数下的F1分数和当前的训练步数;若当前训练步数下的F1分数小于或等于最高F1分数变量的值,则继续进行后续步骤,不对最高F1分数变量的值进行更新;
若当前的训练的步数变量的值不为设定的记录间隔值的整数倍,则继续进行后续步骤;
K. 重复步骤C~步骤J,直至遍历完训练集中的全部数据,当前训练轮次结束;
L. 重复步骤B~步骤K,直至训练轮次达到设定值,训练过程结束;
S6. 采用步骤S5得到的长文本匹配模型,进行实际的长文本对的匹配判定。
以下结合一个实施例,对本发明的效果进行说明:
在CNSE数据集和CNSS数据集上进行文本匹配的实验,本发明方法和其他方法的识别结果数据如表1所示:
表1 不同匹配方案的对比数据示意表
表1中,F1分数是统计学中用来衡量二分类模型精确度的一种指标;它同时兼顾了分类模型的准确率和召回率。
通过表1的数据可以看到,本方法方法在两个数据集上的表现均优于对比模型。
同时,本发明的关键句抽取方案,也能够极大的提升本发明方法的精确性。在本发明构建的匹配模型的基础上,在CNSE数据集和CNSS数据集上,以不同的关键句抽取方案进行实验,最终的匹配结果如表2所示:
表2 不同的关键句抽取方案的对比实验结果示意表
通过表2的数据可以看到,本发明方法同样具有最优的实验结果。通过以上的实验表明,本发明方法具有良好的可靠性和精确性。
Claims (4)
1.一种基于编码器的长文本匹配方法,其特征在于包括如下步骤:
S1. 获取现有的文档数据集;
S2. 基于实体提取和实体评价,提取步骤S1得到的文档中的关键句;具体包括如下步骤:
采用spacy库从各个文档的文档内容中提取句子的实体;
对于第i个文档对中的第zzz文档的文档内容中的第j个句子/>,计算该句子的实体数量得分/>为/>,计算该句子的实体类型得分/>,以及计算该句子的位置得分为/>;其中zzz的取值为1或2,为句子/>中包含的实体的数量,/>为文档内容/>中包含的实体的总数量,/>为句子/>中包含的实体类型的数量,/>为文档内容中包含的实体类型的总数量,max为取最大值操作,n为文档内容/>中包含的句子的总数量;
采用如下算式计算得到句子的评分/>:
式中为设定的数量权重值,/>为设定的类型权重值,/>为设定的位置权重值;
根据得到的各个句子的评分,选取每个文档中句子得分最高的若干个句子,作为该文档的关键句;
S3. 基于步骤S1获取的文档数据集和步骤S2得到的关键句,构建匹配数据集;具体包括如下步骤:
根据步骤S1获取的文档数据集,将其中的文档内容替换为步骤S2得到的关键句,从而构建得到匹配数据集/>为,其中/>为第i个文档对中第一文档的关键句,为第i个文档对中第二文档的关键句;
S4. 基于交叉编码器、双编码器和神经网络结构,构建长文本匹配初始模型;具体包括如下步骤:
所述的长文本匹配初始模型包括依次串联的交叉编码器、双编码器和前馈神经网络结构;
交叉编码器用于对输入的数据信息进行编码;
双编码器用于对交叉编码器输出的编码向量进行特征提取,并输出最终的匹配向量;
前馈神经网络结构用于将接收到的匹配向量进行处理,从而得到最终的匹配结果;
S5. 采用步骤S3构建的匹配数据集,对步骤S4构建的长文本匹配初始模型进行训练,得到长文本匹配模型;
S6. 采用步骤S5得到的长文本匹配模型,进行实际的长文本对的匹配判定。
2.根据权利要求1所述的基于编码器的长文本匹配方法,其特征在于所述的步骤S1,具体包括如下步骤:
获取的文档数据集S表示为,其中为第i个文档对中第一文档所包括的信息,/>为第i个文档对中第二文档所包括的信息,/>为第i个文档对的标签;/>为第i个文档对中第一文档的文档内容,/>为第i个文档对中第一文档的文档标题,/>为第i个文档对中第一文档的文档关键词;/>为第i个文档对中第二文档的文档内容,/>为第i个文档对中第二文档的文档标题,为第i个文档对中第二文档的文档关键词;N为文档数据集S中文档对的数量。
3.根据权利要求2所述的基于编码器的长文本匹配方法,其特征在于所述的步骤S4,具体包括如下步骤:
长文本匹配初始模型包括依次串联的交叉编码器、双编码器和前馈神经网络结构;
所述的交叉编码器采用预训练语言模型BERT;
基于孪生网络构建双编码器;双编码器包括内容层和匹配层;双编码器的输入为向量对,将向量/>和/>分别通过内容层进行语义特征的提取,得到语义特征向量对;然后匹配层用于计算向量/>和/>之间的点积向量和差向量,并将点积向量和差向量进行拼接,得到最终的双编码器的输出向量;
前馈神经网络结构采用单层前馈神经网络结构,用于将双编码器的输出向量进行处理,得到最终的长文本匹配结果。
4.根据权利要求3所述的基于编码器的长文本匹配方法,其特征在于所述的步骤S5,具体包括如下步骤:
A. 将匹配数据集按照设定的比例划分为训练集、验证集和测试集;设置迭代轮次变量,并初始化;设置最高F1分数变量,用于表示训练过程中记录的验证集上最高的F1分数,并初始化;
B. 设置训练的步数变量,并初始化;
C. 随机从训练集中选取若干样本;
D. 对于当前批次的若干样本:/>表示为,其中为当前批次样本的第i2个文档对中第一文档的关键句,/>为当前批次样本的第i2个文档对中第一文档的文档标题,/>为当前批次样本的第i2个文档对中第一文档的文档关键词,/>为当前批次样本的第i2个文档对中第二文档的关键句,为当前批次样本的第i2个文档对中第二文档的文档标题,/>为当前批次样本的第i2个文档对中第二文档的文档关键词,/>为当前批次样本的第i2个文档对的标签;
将、/>、/>、/>、/>和/>拼接,得到预训练语言模型BERT的输入/>为其中,/>为BERT模型输入格式中位于序列开头的分类标识符;/>为BERT模型输入格式中用于分隔句子的分隔标识符;
将输入到交叉编码器进行处理,获取编码后的输出向量/>为式中/>为交叉编码器编码后的/>分类标识符的输出向量;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的关键句;/>为交叉编码器编码后的/>分隔标识符的输出向量;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的关键句;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的文档标题;/>为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的文档标题;为交叉编码器编码后的当前批次样本的第i2个文档对中第一文档的文档关键词;为交叉编码器编码后的当前批次样本的第i2个文档对中第二文档的文档关键词;
E. 将步骤D得到的和/>以及/>和/>,分别输入到双编码器中,得到特征提取后的标题向量/>和特征提取后的关键句向量/>;
F. 将步骤E得到的和/>与步骤D得到的/>进行拼接,得到匹配向量h,然后将匹配向量h输入到分类器中,得到最终的长文本匹配预测结果;
G. 将同一样本连续输入匹配模型两次,并采用如下算式计算得到第一损失:式中/>为第一次输入后模型输出的预测概率分布;/>为第二次输入后模型输出的预测概率分布;
采用如下算式计算得到第二损失:式中为两次输入模型产生的两个预测概率分布之间的KL散度;
最后,计算得到总损失函数L为,/>为设定的权重参数;
H. 进行反向传播,得到各个参数的梯度;
I. 采用梯度下降算法更新各个参数;
J. 训练的步数变量增加1,并进行判断:
若当前的训练的步数变量的值为设定的记录间隔值的整数倍,则采用验证集对当前的匹配模型进行评估:计算当前训练步数下匹配模型在验证集上的F1分数,并再次进行判断:若当前训练步数下的F1分数大于最高F1分数变量的值,则将最高F1分数变量的值替换为当前训练步数下的F1分数的值,并保存当前的匹配模型的参数、当前训练步数下的F1分数和当前的训练步数;若当前训练步数下的F1分数小于或等于最高F1分数变量的值,则继续进行后续步骤,不对最高F1分数变量的值进行更新;
若当前的训练的步数变量的值不为设定的记录间隔值的整数倍,则继续进行后续步骤;
K. 重复步骤C~步骤J,直至遍历完训练集中的全部数据,当前训练轮次结束;
L. 重复步骤B~步骤K,直至训练轮次达到设定值,训练过程结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310466350.6A CN116186562B (zh) | 2023-04-27 | 2023-04-27 | 基于编码器的长文本匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310466350.6A CN116186562B (zh) | 2023-04-27 | 2023-04-27 | 基于编码器的长文本匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116186562A CN116186562A (zh) | 2023-05-30 |
CN116186562B true CN116186562B (zh) | 2023-07-21 |
Family
ID=86446524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310466350.6A Active CN116186562B (zh) | 2023-04-27 | 2023-04-27 | 基于编码器的长文本匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116186562B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116610795B (zh) * | 2023-07-14 | 2024-03-15 | 深圳须弥云图空间科技有限公司 | 文本检索方法及装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11983210B2 (en) * | 2020-06-16 | 2024-05-14 | Virginia Tech Intellectual Properties, Inc. | Methods and systems for generating summaries given documents with questions and answers |
CN112182166B (zh) * | 2020-10-29 | 2023-03-10 | 腾讯科技(深圳)有限公司 | 一种文本匹配方法、装置、电子设备及存储介质 |
CN112307208A (zh) * | 2020-11-05 | 2021-02-02 | Oppo广东移动通信有限公司 | 长文本的分类方法、终端及计算机存储介质 |
CN112598067A (zh) * | 2020-12-25 | 2021-04-02 | 中国联合网络通信集团有限公司 | 事件的情感分类方法、装置、电子设备及存储介质 |
CN112784031B (zh) * | 2021-01-29 | 2022-04-22 | 湖南大学 | 一种基于小样本学习的客服对话文本的分类方法和系统 |
CN113192630A (zh) * | 2021-05-10 | 2021-07-30 | 中南大学 | 一种基于文本分割的再入院预测方法 |
CN112988954B (zh) * | 2021-05-17 | 2021-09-21 | 腾讯科技(深圳)有限公司 | 文本分类方法、装置、电子设备和计算机可读存储介质 |
US20230019211A1 (en) * | 2021-06-30 | 2023-01-19 | Nvidia Corporation | Pretraining framework for neural networks |
CN113935312A (zh) * | 2021-09-24 | 2022-01-14 | 秒针信息技术有限公司 | 长文本匹配方法及装置、电子设备及计算机可读存储介质 |
CN114461804B (zh) * | 2022-02-10 | 2023-04-07 | 电子科技大学 | 一种基于关键信息与动态路由的文本分类方法、分类器及系统 |
CN114579704A (zh) * | 2022-03-03 | 2022-06-03 | 贝壳找房网(北京)信息技术有限公司 | 一种语义匹配方法及其装置 |
CN114925157A (zh) * | 2022-03-07 | 2022-08-19 | 武汉理工大学 | 一种基于预训练模型的核电站维修经验文本匹配方法 |
CN115130461A (zh) * | 2022-05-16 | 2022-09-30 | 腾讯科技(深圳)有限公司 | 一种文本匹配方法、装置、电子设备及存储介质 |
CN115203406A (zh) * | 2022-06-23 | 2022-10-18 | 浙江大学 | 一种基于RoBERTa模型的长文本信息立场检测方法 |
CN115203421A (zh) * | 2022-08-02 | 2022-10-18 | 中国平安人寿保险股份有限公司 | 一种长文本的标签生成方法、装置、设备及存储介质 |
CN115599915A (zh) * | 2022-10-19 | 2023-01-13 | 广西大学(Cn) | 基于TextRank与注意力机制的长文本分类方法 |
-
2023
- 2023-04-27 CN CN202310466350.6A patent/CN116186562B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN116186562A (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109791569B (zh) | 因果关系识别装置及存储介质 | |
CN113011189A (zh) | 开放式实体关系的抽取方法、装置、设备及存储介质 | |
CN110502626B (zh) | 一种基于卷积神经网络的方面级情感分析方法 | |
Kumar et al. | Towards the Explainability of Multimodal Speech Emotion Recognition. | |
CN114169330A (zh) | 融合时序卷积与Transformer编码器的中文命名实体识别方法 | |
CN112269868B (zh) | 一种基于多任务联合训练的机器阅读理解模型的使用方法 | |
CN113094578B (zh) | 基于深度学习的内容推荐方法、装置、设备及存储介质 | |
CN113315789B (zh) | 一种基于多级联合网络的Web攻击检测方法及系统 | |
CN116186562B (zh) | 基于编码器的长文本匹配方法 | |
CN113761893A (zh) | 一种基于模式预训练的关系抽取方法 | |
CN115759119B (zh) | 一种金融文本情感分析方法、系统、介质和设备 | |
CN116304066A (zh) | 一种基于提示学习的异质信息网络节点分类方法 | |
CN114997169B (zh) | 一种实体词识别方法、装置、电子设备及可读存储介质 | |
CN115408488A (zh) | 用于小说场景文本的分割方法及系统 | |
CN115687567A (zh) | 一种不需要标注数据的短文本搜索相似长文本方法 | |
CN115017879A (zh) | 文本对比方法、计算机设备及计算机存储介质 | |
CN115098673A (zh) | 基于变体注意力及层次结构的业务文书信息抽取方法 | |
CN112905793A (zh) | 一种基于Bilstm+Attention文本分类的案例推荐方法及系统 | |
CN116702753A (zh) | 基于图注意力网络的文本情感分析方法 | |
Jing et al. | Chinese text sentiment analysis based on transformer model | |
CN113781160B (zh) | 一种基于人工智能的商品推荐的方法 | |
CN113157914B (zh) | 一种基于多层循环神经网络的文档摘要提取方法及系统 | |
CN114692604A (zh) | 一种基于深度学习的方面级情感分类方法 | |
CN115017404A (zh) | 基于压缩空间句子选择的目标新闻话题摘要方法 | |
CN114610882A (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 |