首页> 中国专利> 文本处理方法、文本特征提取方法、装置、设备和介质

文本处理方法、文本特征提取方法、装置、设备和介质

摘要

提供了一种文本处理方法,涉及人工智能领域。该方法包括:将第一文本输入至预先训练的特征提取器,得到第一文本特征;将第二文本输入至所述预先训练的特征提取器,得到第二文本特征;获得所述第一文本特征和所述第二文本特征之间的相似度预测结果;其中,所述特征提取器包括N个循环编码器,每个所述循环编码器根据循环记忆机制和Transformer模型中的编码器构建获得,所述循环记忆机制用于根据上一时刻的状态信息和本次时刻的输入信息处理数据。还提供了一种文本特征提取方法,该方法包括:将第三文本输入至上述预先训练的特征提取器,得到第三文本特征。还提供了一种文本处理装置、文本特征提取装置、设备、存储介质和程序产品。

著录项

  • 公开/公告号CN114818654A

    专利类型发明专利

  • 公开/公告日2022-07-29

    原文格式PDF

  • 申请/专利权人 中国工商银行股份有限公司;

    申请/专利号CN202210506420.1

  • 发明设计人 林文杰;陆杨芳;温锐明;袁炜尧;

    申请日2022-05-10

  • 分类号G06F40/205;G06K9/62;G06F16/33;G06F16/35;G06N3/04;G06N3/08;

  • 代理机构中科专利商标代理有限责任公司;

  • 代理人张体南

  • 地址 100140 北京市西城区复兴门内大街55号

  • 入库时间 2023-06-19 16:09:34

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-07-29

    公开

    发明专利申请公布

说明书

技术领域

本公开涉及人工智能领域,更具体地涉及一种文本处理方法、文本特征提取方法、装置、设备、介质和程序产品。

背景技术

利用深度学习方法对文本进行处理,可以基于循环神经网络模型或基于卷积神经网络模型来实现。但是由于梯度弥散的问题,循环神经网络的结构在纵向深层堆叠上不能太深,导致失去了深层网络带来的正则化和强编码能力,泛化性能上限有限,不能够借助超大数据集进行提升。而卷积神经网络常用于图像,不适合处理文本的序列化数据结构。

发明内容

鉴于上述问题,本公开提供了一种文本处理方法、文本特征提取方法、装置、设备、介质和程序产品。

本公开实施例的一个方面提供了一种文本处理方法,包括:将第一文本输入至预先训练的特征提取器,得到第一文本特征,其中,所述第一文本包括用户输入的文本;将第二文本输入至所述预先训练的特征提取器,得到第二文本特征,其中,所述第二文本包括待与所述第一文本匹配的候选文本;获得所述第一文本特征和所述第二文本特征之间的相似度预测结果;其中,所述特征提取器包括N个循环编码器,N大于等于1,每个所述循环编码器根据循环记忆机制和Transformer模型中的编码器构建获得,所述循环记忆机制用于根据上一时刻的状态信息和本次时刻的输入信息处理数据。

根据本公开的实施例,所述将第一文本输入至预先训练的特征提取器,得到第一文本特征包括:将所述第一文本输入至N个所述循环编码器,得到所述第一文本特征;其中,对于任两个相邻的所述循环编码器,包括:利用前一个所述循环编码器处理所述第一文本而得到的输出,作为后一个所述循环编码器的输入。

根据本公开的实施例,输入数据通过第一文本获得,所述本次时刻包括第t时刻,所述上一时刻包括第t-1时刻,所述将所述第一文本输入至N个所述循环编码器,得到所述第一文本特征包括利用每个所述循环编码器处理输入数据,具体包括:利用所述编码器处理所述输入数据,得到第t时刻的当前输入信息,t大于等于1;利用所述循环记忆机制处理所述当前输入信息和所述输入数据的上一状态信息,得到每个所述循环编码器的第t时刻的当前输出,其中,所述上一状态信息在第t-1时刻获得。

根据本公开的实施例,所述得到每个所述循环编码器的第t时刻的当前输出包括:根据所述当前输入信息和所述上一状态信息,得到第t时刻的当前历史信息;根据所述当前输入信息和所述当前历史信息,得到第t时刻的当前状态信息;根据所述当前状态信息,得到所述当前输出。

根据本公开的实施例,所述获得所述第一文本特征和所述第二文本特征之间的相似度预测结果包括:将所述第一文本特征和所述第二文本特征输入至预先训练的匹配交互层,得到匹配置信度矩阵;根据所述匹配置信度矩阵计算所述相似度预测结果。

根据本公开的实施例,所述预先训练的匹配交互层中包括匹配权重矩阵和映射权重矩阵,所述将所述第一文本特征和所述第二文本特征输入至预先训练的匹配交互层,得到匹配置信度矩阵包括:基于所述匹配权重矩阵、所述第一文本特征和所述第二文本特征计算得到第一匹配矩阵;基于所述映射权重矩阵、所述第一文本特征和所述第二文本特征计算得到第二匹配矩阵;基于所述第一匹配矩阵和第二匹配矩阵得到所述匹配置信度矩阵。

根据本公开的实施例,所述根据所述匹配置信度矩阵计算所述相似度预测结果包括:将所述匹配置信度矩阵输入至预先训练的双向长短期记忆网络层,得到第一中间特征;将所述第一中间特征输入至预先训练的多层感知机层,得到第二中间特征;根据所述第二中间特征得到所述相似度预测结果。

根据本公开的实施例,文本处理模型包括所述特征提取器、所述匹配交互层、所述双向长短期记忆网络层和所述多层感知机层,在将所述第二文本输入至所述预先训练的特征提取器之前,还包括训练文本处理模型,具体包括:将第一训练文本和第二训练文本输入至所述文本处理模型;利用所述文本处理模型中的所述特征提取器、所述匹配交互层、所述双向长短期记忆网络层和所述多层感知机层处理所述第一训练文本和所述第二训练文本,得到训练预测结果;根据所述训练预测结果和相似度标签之间的对比损失,训练所述文本处理模型。

根据本公开的实施例,在将第一文本输入至预先训练的特征提取器之前,还包括训练所述特征提取器,具体包括:利用第一训练集对所述特征提取器进行预训练,其中,所述第一训练集中包括至少两个训练文本;利用第二训练集对预训练后得到的所述特征提取器进行微调,其中,所述第二训练集中包括至少两个训练文本,所述第二训练集中的训练文本数量小于所述第一训练集中的训练文本数量。

根据本公开的实施例,所述第二训练集包括第三训练文本,所述利用第二训练集对预训练后得到的所述特征提取器进行微调包括:对第三训练文本中的M个词语进行掩码处理,其中,所述M个词语用于表征所述第三训练文本的语义信息,M大于等于1;根据掩码处理后的所述第三训练文本,对预训练后得到的所述特征提取器进行微调。

根据本公开的实施例,在对第三训练文本中的M个词语进行掩码处理之前,还包括确定所述M个词语,具体包括:在所述语义信息不发生改变的情况下,从所述第三训练文本中抽取最少数量的词语作为所述M个词语。

本公开实施例的另一个方面提供了一种文本特征提取方法,包括:将第三文本输入至如上所述的预先训练的特征提取器,得到第三文本特征,其中,所述第三文本包括用户输入的搜索内容或待分类内容。

本公开实施例的另一方面提供了一种文本处理装置,包括:第一特征模块,用于将第一文本输入至预先训练的特征提取器,得到第一文本特征,其中,所述第一文本包括用户输入的文本;第二特征模块,用于将第二文本输入至所述预先训练的特征提取器,得到第二文本特征,其中,所述第二文本包括待与所述第一文本匹配的候选文本;相似度模块,用于获得所述第一文本特征和所述第二文本特征之间的相似度预测结果;其中,所述特征提取器包括N个循环编码器,N大于等于1,每个所述循环编码器根据循环记忆机制和Transformer模型中的编码器构建获得,所述循环记忆机制用于根据上一时刻的状态信息和本次时刻的输入信息处理数据。

本公开实施例的另一方面提供了一种文本特征提取装置,包括:第三特征模块,用于将第三文本输入至如上所述的预先训练的特征提取器,得到第三文本特征,其中,所述第三文本包括用户输入的搜索内容或待分类内容。

本公开实施例的另一方面提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行如上所述的方法。

本公开实施例的另一方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如上所述的方法。

本公开实施例的另一方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上所述的方法。

上述一个或多个实施例具有如下有益效果:在Transformer模型中的编码器基础上增加了循环记忆机制来构建循环编码器,可以根据上一时刻的状态信息和本次时刻的输入信息处理数据,从而具有历史信息缓存能力,能够实现纵向上较深的深层堆叠,适合处理文本的序列化数据结构,在一定程度上缓解文本处理过程中提取语义不完整的问题。从而利用特征提取器能够获得第一文本和第二文本各自的较为完整的语义,获得更为准确的相似度预测结果。

附图说明

通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:

图1示意性示出了根据本公开实施例的适于实现文本处理方法或文本特征提取方法的应用场景图;

图2示意性示出了根据本公开实施例的循环编码器的结构示意图;

图3示意性示出了根据本公开实施例的特征提取器的结构示意图;

图4示意性示出了根据本公开实施例的特征提取器训练方法的流程图;

图5示意性示出了根据本公开实施例的微调阶段的流程图;

图6示意性示出了根据本公开实施例的文本处理模型的结构示意图;

图7示意性示出了根据本公开实施例的文本处理模型的训练方法的流程图;

图8示意性示出了根据本公开实施例的文本处理方法的流程图;

图9示意性示出了根据本公开实施例的数据处理的流程图;

图10示意性示出了根据本公开实施例的计算第t时刻的当前输出的流程图;

图11示意性示出了根据本公开实施例的计算相似度预测结果的流程图;

图12示意性示出了根据本公开实施例的得到匹配置信度矩阵的流程图;

图13示意性示出了根据本公开的另一实施例的计算相似度预测结果的流程图;

图14示意性示出了根据本公开实施例的文本处理装置的结构框图;

图15示意性示出了根据本公开实施例的适于实现文本处理方法或文本特征提取方法的电子设备的方框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

相关技术中,除基于循环神经网络或基于卷积神经网络来进行文本处理之外,可以基于预训练模型来实现文本处理,但是对于字符的输入数量有限制。例如BERT(Bidirectional Encoder Representations from Transformers)模型支持最多输入510个字符。对长文档的文本处理,即长文本处理,可能远远超出510个字符。在BERT模型的一种处理方式中,采用分段法(Pooling法)将长文本转化成可被处理的形式。具体而言,将整个长文档拆分成多个固定长度的分段(segment),每个segment的字符数不超过510,再通过BERT模型计算每个segment的向量表示,最后池化得到文档向量。由于各个segment是固定分片,每个segment之间没有关联性,对于长文本而言会导致segment的语义不完整问题。

本公开的实施例提供了一种文本处理方法、文本特征提取方法、装置、设备、介质和程序产品。该文本处理方法包括:将第一文本输入至预先训练的特征提取器,得到第一文本特征,其中,第一文本包括用户输入的文本。将第二文本输入至预先训练的特征提取器,得到第二文本特征,其中,第二文本包括待与第一文本匹配的候选文本。获得第一文本特征和第二文本特征之间的相似度预测结果。其中,特征提取器包括N个循环编码器,N大于等于1,每个循环编码器根据循环记忆机制和Transformer模型中的编码器构建获得,循环记忆机制用于根据上一时刻的状态信息和本次时刻的输入信息处理数据。

根据本公开的实施例,在Transformer模型中的编码器基础上增加了循环记忆机制构建循环编码器,可以根据上一时刻的状态信息和本次时刻的输入信息处理数据,从而具有历史信息缓存能力,能够适合处理文本的序列化数据结构,在一定程度上缓解文本处理过程中提取语义不完整的问题。从而利用特征提取器能够获得第一文本和第二文本各自的较为完整的语义,获得更为准确的相似度预测结果。

本公开实施例的文本处理方法、文本特征提取方法、装置、设备、介质和程序产品可以应用于金融领域中的文本检索、新闻推荐、文本聚类、文本去重或机器翻译等方面。也可用于除金融领域之外的任意领域,本公开实施例的文本处理方法、文本特征提取方法、装置、设备、介质和程序产品的应用领域不做限定。

图1示意性示出了根据本公开实施例的适于实现文本处理方法或文本特征提取方法的应用场景图。

如图1所示,根据该实施例的应用场景100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。

终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

以下将基于图1描述的场景,通过图2~图13对本公开实施例的文本特征提取方法和文本处理方法进行详细描述。

图2示意性示出了根据本公开实施例的循环编码器的结构示意图。图3示意性示出了根据本公开实施例的特征提取器的结构示意图。

如图2所示,循环编码器200包括Transformer的Encoder(即编码器)模块210和循环记忆模块220。

Encoder模块210可以至少包括多头自注意力(Multi-Head Self Attention)层、两个求和归一化(Add&Norm)层和前馈网络Feed Forward层。

例如,给定一句话或一个段落作为输入数据(Inputs),先进行input embedding操作,即将Inputs中的文本转换为对应的词向量。然后,进行Positional encoding操作,进行位置编码。最后输入到Encoder结构210中进行处理。

循环记忆模块220根据循环记忆机制构建,能够缓存segment历史信息。通过对segment历史信息的缓存和门机制的控制,循环编码器200能够在一定程度上缓解segment语义不完整的问题。循环编码器200可以称为Recurrent-Encoder,简称为rEncoder。

示例性地,循环编码器200根据自然语言处理模型Transformer的Encoder来构建,一方面可以实现纵向上较深的深层堆叠得到大模型结构,另一方面可以得到输出为定长向量,能够方便进行后续处理。

如图3所示,特征提取器300可以认为是一种深度学习模型,其包括堆叠后的N个循环编码器(rEncoder)200,N为大于等于1的整数。类似于长短期记忆神经网络,特征提取器300中的rEncoder可以使用上一时刻的信息,加上本次时刻的输入信息共同处理数据。

图4示意性示出了根据本公开实施例的特征提取器训练方法的流程图。

如图4所示,该实施例的特征提取器训练方法包括操作S410~操作S420。其中,预训练是指预先训练模型的过程。微调就是将预训练过的模型作用于特定场景的数据集,并使参数适应该数据集的过程。

在操作S410,利用第一训练集对特征提取器进行预训练,其中,第一训练集中包括至少两个训练文本。

示例性地,特征提取器的训练采用大模型的训练模式,分为预训练和微调两个阶段。特征提取器在预训练阶段的目标是训练一个特征表示能力足够强大的特征提取器,可以采用大模型训练的互联网公开数据库中的大量数据作为第一训练集。

在操作S420,利用第二训练集对预训练后得到的特征提取器进行微调,其中,第二训练集中包括至少两个训练文本,第二训练集中的训练文本数量小于第一训练集中的训练文本数量。

示例性地,在预训练或微调阶段,可以利用交叉熵损失函数计算训练样本与标签之间的损失,根据损失的收敛程度确定训练效果。

示例性地,将根据特定场景采样得到的数据集作为第二训练集进行微调。特定场景包括新闻、文学、财报或评论等场景。

根据本公开的实施例,利用预训练和微调两个阶段训练特征提取器,能够得到对于特定场景的文本具有较强特征提取能力的特征提取器。

图5示意性示出了根据本公开实施例的微调阶段的流程图。

如图5所示,操作S420中对预训练后的特征提取器进行微调包括操作S510~操作S520。其中,第二训练集包括第三训练文本,第三训练文本可以是第二训练集中的任一个。

在操作S510,对第三训练文本中的M个词语进行掩码处理,其中,M个词语用于表征第三训练文本的语义信息,M大于等于1。

根据本公开的实施例,在对第三训练文本中的M个词语进行掩码处理之前,还包括确定M个词语,具体包括:在语义信息不发生改变的情况下,从第三训练文本中抽取最少数量的词语作为M个词语。

训练特征提取器是为了提高对文档最佳语义的特征提取能力。为了实现特征提取器的最佳语义提取训练,数据集在采样完成后,基于最佳语义原则进行标注。最佳语义原则是指标签信息包含文档(例如一句话或一段话)完整语义的最短描述。

在一些实施例中,特征提取器训练过程中掩盖一些词语,让特征提取还原出来,从而让特征提取器学习到句子的结构语义信息。

表1

表1示意性示出了特征提取器的输入数据的结构。其中,是输入的开始标志,…[mask]…表示输入,[mask]表示掩膜,表示结束标志。预训练阶段和微调阶段不同的是,微调阶段被掩盖的词语通过在原句子中的顺序组合,能够得到句子的完整语义,即根据最短语义原则实现的最短语义掩码。而预训练阶段则采用随机掩盖策略。

根据本公开的实施例,一个segment中的文本包括多个词语,有些词语对语义没有影响,如语气词或虚词等,对该些词掩码的效果不理想,若对该些词进行标注会增大工作量或计算资源。通过最短语义原则得到M个词语,并根据最短语义掩码对M个词语进行掩码处理,可以减少对于训练样本标注的工作量。

在操作S520,根据掩码处理后的第三训练文本,对预训练后得到的特征提取器进行微调。

根据本公开的实施例,可以采用少量样本训练方式完成微调。

本公开实施例提供的文本特征提取方法,包括:将第三文本输入至预先训练的特征提取器300,得到第三文本特征。其中,所述第三文本包括用户输入的搜索内容或待分类内容。如图3所示,每个循环编码器根据循环记忆机制和Transformer模型中的编码器构建获得,循环记忆机制用于根据上一时刻的状态信息和本次时刻的输入信息处理数据。

一些实施例中,在用户输入搜索内容后,可以提取出语义特征作为第三文本特征。然后,根据第三文本特征与候选内容进行匹配。最后,根据匹配结果展示目标内容,以实现语义检索功能。例如用户输入一段对贷款业务的描述,通过对该段描述提取语义特征,可以返回符合该段描述的一个或多个贷款业务信息。

另一些实施例中,可对用户在网络爬取的评论、新闻或财报等待分类内容,进行主题识别、抽取或聚类等分类操作。以对某金融业务的评论为例,可以对各条评论进行语义特征提取。然后,基于语义特征实现评论观点抽取与分析,从而分析出该金融业务的优点和不足。

根据本公开的实施例,将第三文本输入至预先训练的特征提取器300,得到第三文本特征包括:将第三文本输入至N个循环编码器,得到第三文本特征。N个循环编码器相串联处理输入数据,对于任两个相邻的循环编码器,包括:利用前一个循环编码器处理第一文本而得到的输出,作为后一个循环编码器的输入。

参照图2和图3,以任一个循环编码器举例,进一步说明得到第三文本特征的过程。其中,本次时刻包括第t时刻,上一时刻包括第t-1时刻。

示例性地,对第三文本进行Input Embedding和Positional Encoding处理,得到输入数据。其中,一些实施例中,第三文本可以是长文本,在第三文本的基础上可以得到多个segment。根据每个segment中词语之间的顺序和各个segment在长文本中的顺序,作为时间轴,每个时刻对应某个词语。在一些实施例中,第三文本可以是一个segment,其中词语之间的顺序作为时间轴。在初始时刻(t=0),根据长文本中第三文本的上一个segment得到上一状态信息,例如根据上一个segment的最后一个词语得到的状态信息。其中,上一状态信息包括上一时刻的词语及上一时刻之前的所有词语的综合语义信息。

接着,利用编码器处理输入数据,得到第t时刻的当前输入信息x

具体地,根据当前输入信息x

其中,tanh表示双曲正切函数,W

γ=σ(W

其中,σ表示sigmoid函数,W

根据当前输入信息x

其中,α表示当前输入信息x

α=σ(W

其中,σ表示sigmoid函数,W

根据当前状态信息h

y

其中,σ表示sigmoid函数,W

根据本公开的实施例,上一状态信息h

根据本公开的实施例,特征提取器具有大模型的强特征提取能力,能够更好的提取文档的特征,提高文本检索的准确性。Recurrent Encoder具有历史信息缓存能力,能够在一定程度上缓解segment语义不完整的问题。相比普遍使用的RNN类模型,采用Transformer Encoder的模型能够更有效的利用超大数据集进行训练,提升文本检索能力的上限,特别是提升对于长文档的检索能力。

示例性地,在上述特征提取器300的基础上,基于孪生网络的思想,构建文本处理模型。其中,孪生网络是指包含两个结构相同、权重共享的子网络,子网络各自接收一个输入,并输出对应的表示,然后通过计算两个表示的距离得到两个输入之间的语义关系。

图6示意性示出了根据本公开实施例的文本处理模型的结构示意图。

如图6所示,文本处理模型包括两个特征提取器(即Extrator)、匹配交互(Matching Interaction Layer,简称为MIL)层、双向长短期记忆网络(Bi-Direction LongShort Term Memory,简称为BiLSTM)层、多层感知机层(Multi-Layer Perceptron,简称为MLP)和SoftMax层。在一些实施例中,可以用sigmod层替代SoftMax层。

图7示意性示出了根据本公开实施例的文本处理模型的训练方法的流程图。

如图7所示,该实施例的文本处理模型的训练方法包括操作S710~操作S730。

在操作S710,将第一训练文本和第二训练文本输入至文本处理模型。

表2

表2示意性示出了文本处理模型的输入格式,P(第一训练文本)和Q(第二训练文本)是需要计算相似度的句子。score是手工标签的P和Q的相似度置分标签。

在操作S720,利用文本处理模型中的特征提取器、匹配交互层、双向长短期记忆网络层和多层感知机层处理第一训练文本和第二训练文本,得到训练预测结果。

参照图6,首先,句子P和Q通过特征提取器进行特征提取。

然后,分别将基于P和Q得到的文本特征输入至MIL层。MIL层被配置为接收两个特征提取器输出的文本特征,计算两者的匹配置信度矩阵。

示例性地,匹配置信度矩阵F根据如下式5)计算获得:

其中u和v分别表示句子P、Q的特征,M和

接着,将匹配置信度矩阵输入至BiLSTM层。BiLSTM层被配置为处理匹配置信度矩阵,得到第一中间特征。BiLSTM层对匹配置信度矩阵进行挤压得到一个定长特征向量,即第一中间特征。

接着,将第一中间特征输入至MLP层。MLP层被配置为处理第一中间特征,得到第二中间特征。

最后,将第二中间特征输入至SoftMax层。SoftMax层被配置为基于SoftMax函数处理第二中间特征,得到相似度预测结果。

在操作S730,根据训练预测结果和相似度标签之间的对比损失,训练文本处理模型。

示例性地,可以利用SmoothL1损失函数计算对比损失。根据损失的收敛程度判断训练效果。

在一些实施例中,可以先将特征提取器训练完成后,训练得到的特征提取器可以在训练集上收敛,具有足够的特征提取能力。再参与到文本处理模型的训练中。在另一些实施例中,可以将未训练的特征提取器参与到文本处理模型的训练过程中,由于文本处理模型采取端到端的训练方式,在文本处理模型训练完成后,即认为特征提取器也训练完成。

在训练完成文本处理模型后,可以利用该模型进行文本处理,下面进一步介绍。

图8示意性示出了根据本公开实施例的文本处理方法的流程图。

如图8所示,该实施例的文本处理方法包括操作S810~操作S830。

在操作S810,将第一文本输入至预先训练的特征提取器,得到第一文本特征,其中,第一文本包括用户输入的文本。

在操作S820,将第二文本输入至预先训练的特征提取器,得到第二文本特征,其中,第二文本包括待与第一文本匹配的候选文本。

示例性地,参照图6,第一文本(P)和第二文本(Q)可以分别输入两个特征提取器。在另一些实施例中,也可以先将第一文本输入至一个特征提取器,在得到第一文本特征后,再将第二文本输入至该特征提取器。

示例性地,文本检索又称为自然语言检索,指不对文档进行任何标引,直接通过计算机以自然语言中的词条匹配查找目标数据。在文本检索场景中,第一文本可以是用户输入的搜索文本,如关键词、句子、段落或多个段落组成的长文本。第二文本可以是搜索引擎的搜索范围内的候选文本,如本地数据库存储的内容或在互联网上获得的内容。

在操作S830,获得第一文本特征和第二文本特征之间的相似度预测结果。

参照图6,相似度预测结果可以通过SoftMax层输出,其可以包括利用SoftMax函数计算得到的概率值。另一些实施例中,相似度预测结果可以通过sigmod层输出,其可以包括利用sigmod函数计算得到的概率值。

根据本公开的实施例,在Transformer模型中的编码器基础上增加了循环记忆机制来构建循环编码器,可以根据上一时刻的状态信息和本次时刻的输入信息处理数据,从而具有历史信息缓存能力,能够实现纵向上较深的深层堆叠,适合处理文本的序列化数据结构,在一定程度上缓解文本处理过程中提取语义不完整的问题。从而利用特征提取器能够获得第一文本和第二文本各自的较为完整的语义,获得更为准确的相似度预测结果。

参照上述利用特征提取器处理第三文本得到第三文本特征的过程,下面以处理第一文本举例,再次说明利用特征提取器得到第一文本特征的过程。

根据本公开的实施例,将第一文本输入至预先训练的特征提取器,得到第一文本特征包括:将第一文本输入至N个循环编码器,得到第一文本特征。其中,对于任两个相邻的循环编码器,包括:利用前一个循环编码器处理第一文本而得到的输出,作为后一个循环编码器的输入。通过N个循环编码器串联处理输入数据,可以实现纵向上较深的深层堆叠,具有深层网络的正则化和强编码能力,泛化性能较好。

图9示意性示出了根据本公开实施例的数据处理的流程图。

如图9所示,将第一文本输入至N个循环编码器,得到第一文本特征包括利用每个循环编码器处理输入数据,具体可以包括操作S910~操作S920。

在操作S910,利用编码器处理输入数据,得到第t时刻的当前输入信息x(t),t大于等于1。

示例性地,对首个循环编码器而言,其处理的输入数据是对第一文本进行InputEmbedding和Positional Encoding处理得到的。对于非首个循环编码器而言,其处理的输入数据是前一个循环编码器的输出。

示例性地,将第一文本中词语之间的顺序作为时间轴。

在操作S920,利用循环记忆机制处理当前输入信息x(t)和输入数据的上一状态信息h

图10示意性示出了根据本公开实施例的计算第t时刻的当前输出的流程图。

如图10所示,操作S920中得到每个循环编码器的第t时刻的当前输出包括操作S1010~操作S1030。

在操作S1010,根据当前输入信息x

在操作S1020,根据当前输入信息x

在操作S1030,根据当前状态信息h

示例性地,获得第二文本特征的过程与获得第一文本特征的过程相同,在此不做赘述。

图11示意性示出了根据本公开实施例的计算相似度预测结果的流程图。

如图11所示,操作S230中获得第一文本特征和第二文本特征之间的相似度预测结果包括操作S1110~操作S1120。

在操作S1110,将第一文本特征和第二文本特征输入至预先训练的匹配交互层,得到匹配置信度矩阵,可参照式6)获得。

在操作S1120,根据匹配置信度矩阵计算相似度预测结果。

根据本公开的实施例,利用匹配交互层先计算出第一文本特征和第二文本特征之间的关联部分,并通过匹配置信度矩阵进行表征,便于后续进行处理,提高相似度计算结果的准确性。

图12示意性示出了根据本公开实施例的得到匹配置信度矩阵的流程图。

如图12所示,操作S1110中得到匹配置信度矩阵包括操作S1210~操作S1230。预先训练的匹配交互层中包括匹配权重矩阵和映射权重矩阵,

在操作S1210,基于匹配权重矩阵、第一文本特征和第二文本特征计算得到第一匹配矩阵。

参照式6),第一匹配矩阵可通过“u

在操作S1220,基于映射权重矩阵、第一文本特征和第二文本特征计算得到第二匹配矩阵。

参照式6),第二匹配矩阵可通过

在操作S1230,基于第一匹配矩阵和第二匹配矩阵得到匹配置信度矩阵。

图13示意性示出了根据本公开的另一实施例的计算相似度预测结果的流程图。

如图13所示,操作S1120中根据匹配置信度矩阵计算相似度预测结果包括操作S1310~操作S1330。

在操作S1310,将匹配置信度矩阵输入至预先训练的双向长短期记忆网络层,得到第一中间特征。

在操作S1320,将第一中间特征输入至预先训练的多层感知机层,得到第二中间特征。

在操作S1330,根据第二中间特征得到相似度预测结果。

参照图6,可以将第二中间特征输入至SoftMax层。SoftMax层被配置为基于SoftMax函数处理第二中间特征,得到相似度预测结果。

基于上述特征提取器训练方法,本公开还提供了一种特征提取器训练装置。

根据本公开的实施例,特征提取器训练装置包括预训练模块和微调模块。

预训练模块可以执行操作S410,用于利用第一训练集对特征提取器进行预训练,其中,第一训练集中包括至少两个训练文本。

微调模块可以执行操作S420,用于利用第二训练集对预训练后得到的特征提取器进行微调,其中,第二训练集中包括至少两个训练文本,第二训练集中的训练文本数量小于第一训练集中的训练文本数量。

微调模块还可以执行操作S510~操作S520,在此不做赘述。其中,在对第三训练文本中的M个词语进行掩码处理之前,还包括确定M个词语,具体包括:在语义信息不发生改变的情况下,从第三训练文本中抽取最少数量的词语作为M个词语。

基于上述文本特征提取方法,本公开还提供了一种文本特征提取装置。

根据本公开的实施例,文本特征提取装置包括第三特征模块。第三特征模块用于将第三文本输入至预先训练的特征提取器,得到第三文本特征,其中,所述第三文本包括用户输入的搜索内容或待分类内容。特征提取器包括N个循环编码器,N大于等于1,每个循环编码器根据循环记忆机制和Transformer模型中的编码器构建获得,循环记忆机制用于根据上一时刻的状态信息和本次时刻的输入信息处理数据。

基于上述文本处理模型训练方法,本公开还提供了一种文本处理模型训练装置。

根据本公开的实施例的,文本处理模型训练装置包括文本输入模块、文本处理模块和模型训练模块。

文本输入模块可以执行操作S710,用于将第一训练文本和第二训练文本输入至文本处理模型。

文本处理模块可以执行操作S720,用于利用文本处理模型中的特征提取器、匹配交互层、双向长短期记忆网络层和多层感知机层处理第一训练文本和第二训练文本,得到训练预测结果。

模型训练模块可以执行操作S730,用于根据训练预测结果和相似度标签之间的对比损失,训练文本处理模型。

基于上述文本处理方法,本公开还提供了一种文本处理装置。以下将结合图14对该装置进行详细描述。

图14示意性示出了根据本公开实施例的文本处理装置的结构框图。

如图14所示,该实施例的文本处理装置1400包括第一特征模块1410、第二特征模块1420和相似度模块1430。

第一特征模块1410可以执行操作S810,用于将第一文本输入至预先训练的特征提取器,得到第一文本特征,其中,第一文本包括用户输入的文本。

第一特征模块1410还用于将第一文本输入至N个循环编码器,得到第一文本特征。其中,对于任两个相邻的循环编码器,包括:利用前一个循环编码器处理第一文本而得到的输出,作为后一个循环编码器的输入。

第一特征模块1410还可以执行操作S910~操作S920,操作S1010~操作S1030,在此不做赘述。

第二特征模块1420可以执行操作S820,用于将第二文本输入至预先训练的特征提取器,得到第二文本特征,其中,第二文本包括待与第一文本匹配的候选文本。

相似度模块1430可以执行操作S830,用于获得第一文本特征和第二文本特征之间的相似度预测结果。

相似度模块1430可以执行操作S1110~操作S1120,操作S1210~操作S1220,操作S1310~操作S1320,在此不做赘述。

需要说明的是,装置部分实施例中各模块/单元/子单元等的实施方式、解决的技术问题、实现的功能、以及达到的技术效果分别与方法部分实施例中各对应的步骤的实施方式、解决的技术问题、实现的功能、以及达到的技术效果相同或类似,在此不再赘述。

根据本公开的实施例,特征提取器训练装置、文本特征提取装置、文本处理模型训练装置或文本处理装置中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。

根据本公开的实施例,特征提取器训练装置、文本特征提取装置、文本处理模型训练装置或文本处理装置中的至少一个模块可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,特征提取器训练装置、文本特征提取装置、文本处理模型训练装置或文本处理装置中的至少一个模块可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

图15示意性示出了根据本公开实施例的适于实现文本处理方法或文本特征提取方法的电子设备的方框图。

如图15所示,根据本公开实施例的电子设备1500包括处理器1501,其可以根据存储在只读存储器(ROM)1502中的程序或者从存储部分1508加载到随机访问存储器(RAM)1503中的程序而执行各种适当的动作和处理。处理器1501例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器1501还可以包括用于缓存用途的板载存储器。处理器1501可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

在RAM 1503中,存储有电子设备1500操作所需的各种程序和数据。处理器1501、ROM 1502以及RAM 1503通过总线1504彼此相连。处理器1501通过执行ROM 1502和/或RAM1503中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,程序也可以存储在除ROM 1502和RAM 1503以外的一个或多个存储器中。处理器1501也可以通过执行存储在一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。

根据本公开的实施例,电子设备1500还可以包括输入/输出(I/O)接口1505,输入/输出(I/O)接口1505也连接至总线1504。电子设备1500还可以包括连接至I/O接口1505的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1506。包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1507。包括硬盘等的存储部分1508。以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至I/O接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入存储部分1508。

本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的。也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。

根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1502和/或RAM 1503和/或ROM 1502和RAM 1503以外的一个或多个存储器。

本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的方法。

在该计算机程序被处理器1501执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。

在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分1509被下载和安装,和/或从可拆卸介质1511被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。

在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被处理器1501执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。

根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号