一种目标数据的预测方法和装置
文献发布时间:2023-06-19 10:32:14
技术领域
本发明涉及神经网络技术领域,特别是涉及一种目标数据的预测方法和装置。
背景技术
自然语言处理(Natural Language Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别。自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统。因而它是计算机科学的一部分。
自然语言处理可以应用于多个技术领域,例如,在语音识别领域中,对前文进行自然语言处理,从而预测出后文。在量化交易领域中,对历史价格进行自然语言处理,从而预测出未来价格。在智能推荐领域中,对用户过往浏览记录进行自然语言处理,从而预测出用户感兴趣的内容。
但是,目前常见的自然语言处理过程存在无法同时兼顾快速预测和捕获超长依赖的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种目标数据的预测方法和装置。
依据本发明的第一方面,提供了一种目标数据的预测方法,该方法包括:获取满足预设的长期依赖性条件的多个第一目标数据;将多个所述第一目标数据输入至训练完毕的神经网络模型中,输出第二目标数据;其中,所述第二目标数据与多个所述第一目标数据具有序列相关性;所述神经网络模型通过以下步骤训练得到:将样本数据集划分为多个批次的输入项,并按照批次的顺序将所述输入项输入至初始网络模型,根据膨胀卷积算法计算得到所述初始网络模型的输出项,根据所述输入项、所述输出项和损失函数对所述初始网络模型进行训练,得到所述神经网络模型。
可选地,所述将样本数据集划分为多个批次的输入项,包括:将所述样本数据集中的每个样本数据转换为样本向量;按照预设的长度,将全部所述样本向量划分为多个批次的所述输入项;其中,所述样本数据的数量除以所述长度等于所述批次的数量。
可选地,在所述将样本数据集划分为多个批次的输入项之后,所述方法还包括:分别将每个所述输入项向后偏移一位所述样本向量,并按照所述长度划分得到每个所述输入项对应的标注数据。
可选地,所述按照批次的顺序将所述输入项输入至初始网络模型,包括:将当前的所述输入项与所述初始网络模型中上一个网络层的所述输出项进行拼接;将拼接后的样本向量输入至所述初始网络模型中的当前网络层。
可选地,所述神经网络模型的网络层包含多个膨胀卷积层,每个膨胀卷积层的存储空间为所述长度与所述样本向量的维度相乘的矩阵空间。
依据本发明的第二方面,提供了一种目标数据的预测装置,该装置包括:获取模块,用于获取满足预设的长期依赖性条件的多个第一目标数据;输入模块,用于将多个所述第一目标数据输入至训练完毕的神经网络模型中,输出第二目标数据;其中,所述第二目标数据与多个所述第一目标数据具有序列相关性;所述装置还包括:训练模块,用于将样本数据集划分为多个批次的输入项,并按照批次的顺序将所述输入项输入至初始网络模型,根据膨胀卷积算法计算得到所述初始网络模型的输出项,根据所述输入项、所述输出项和损失函数对所述初始网络模型进行训练,得到所述神经网络模型。
可选地,所述训练模块,包括:样本转换模块,用于将所述样本数据集中的每个样本数据转换为样本向量;样本划分模块,用于按照预设的长度,将全部所述样本向量划分为多个批次的所述输入项;其中,所述样本数据的数量除以所述长度等于所述批次的数量。
可选地,所述训练模块,还包括:样本标注模块,用于在所述样本划分模块将全部所述样本向量划分为多个批次的所述输入项之后,分别将每个所述输入项向后偏移一位所述样本向量,并按照所述长度划分得到每个所述输入项对应的标注数据。
可选地,所述训练模块,包括:样本拼接模块,用于将当前的所述输入项与所述初始网络模型中上一个网络层的所述输出项进行拼接;将拼接后的样本向量输入至所述初始网络模型中的当前网络层。
可选地,所述神经网络模型的网络层包含多个膨胀卷积层,每个膨胀卷积层的存储空间为所述长度与所述样本向量的维度相乘的矩阵空间。
本发明实施例可以具有以下有益效果:
本发明实施例提供的一种目标数据的预测方法和装置,获取满足预设的长期依赖性条件的多个第一目标数据,将多个第一目标数据输入至训练完毕的神经网络模型中,输出第二目标数据。其中,多个第一目标数据与第二目标数据具有序列相关性。上述满足长期依赖性条件的多个第一目标数据可以理解为具有超长依赖关系的多个第一目标数据。也就是说,利用上述神经网络模型可以为具有超长依赖关系的多个第一目标数据,预测出具有序列相关性的第二目标数据。
而且,上述神经网络模型的训练步骤可以包含:将样本数据集划分为多个批次的输入项,并按照批次的顺序将输入项输入至初始网络模型,根据膨胀卷积算法计算得到初始网络模型的输出项,根据输入项、输出项和损失函数对初始网络模型进行训练,得到神经网络模型。也就是说,在上述神经网络模型的训练过程中,利用膨胀卷积算法根据输入项计算得到输出项。膨胀卷积算法具有计算速度快的优点,因此,上述神经网络模型也具有快速预测结果的优点。即上述神经网络模型可以快速地为第一目标数据预测第二目标数据。
综上所述,本发明实施例可以利用训练完毕的神经网络模型为具有超长依赖关系的多个第一目标数据,快速地预测出具有序列相关性的第二目标数据。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例一的一种目标数据的预测方法的流程示意图;
图2示出了本发明实施例二的一种神经网络模型的训练方法的流程示意图;
图3示出了本发明实施例的初始网络模型的网络结构示意图;
图4示出了本发明实施例的一种神经网络模型的网络结构示意图;
图5示出了本发明实施例三的一种目标数据的预测装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
实施例一
参照图1,图1示出了本发明实施例一的一种目标数据的预测方法的流程示意图。
本发明实施例提供的目标数据的预测方法,具体可以包含如下步骤。
步骤S101,获取满足预设的长期依赖性条件的多个第一目标数据。
在本发明的实施例中,第一目标数据可以为实际应用场景中的具体数据。例如,在银行、证券、快递和航班等应用场景中,第一目标数据可以为数字。而且,满足预设的长期依赖性条件的多个第一目标数据,可以为具有超长依赖关系的多个数字,如银行卡号中的数字、证券交易单号中的数字、快递单号中的数字、航班号中的数字等。通常而言,满足长期依赖性条件的多个第一目标数据,可以利用x(t)数据序列表示。其中,t为自然数,x(t)表示第t个第一目标数据。
步骤S102,将多个所述第一目标数据输入至训练完毕的神经网络模型中,输出第二目标数据。
在本发明的实施例中,训练完毕的神经网络模型可以通过以下步骤训练得到:将样本数据集划分为多个批次的输入项,并按照批次的顺序将输入项输入至初始网络模型,根据膨胀卷积算法计算得到初始网络模型的输出项,根据输入项、输出项和损失函数对初始网络模型进行训练,得到神经网络模型。上述神经网络模型用于为多个第一目标数据预测第二目标数据,而且,第二目标数据与多个第一目标数据具有序列相关性。例如,若多个第一目标数据为一句话中的前几个字,则第二目标数据可以为该一句话中的后一个字或者后几个字。又例如,若多个第一目标数据为一张银行卡号的前几个号码,则第二目标数据可以为该一张银行卡号的后一个号码或者后几个号码。
本发明实施例提供的一种目标对象目标数据的预测方法,获取满足预设的长期依赖性条件的多个第一目标对象目标数据,将多个第一目标对象目标数据输入至训练完毕的神经网络模型中,输出第二目标对象目标数据。其中,多个第一目标对象目标数据与第二目标对象目标数据具有序列相关性。上述满足长期依赖性条件的多个第一目标对象目标数据可以理解为具有超长依赖关系的多个第一目标对象目标数据。也就是说,利用上述神经网络模型可以为具有超长依赖关系的多个第一目标对象目标数据,预测出具有序列相关性的第二目标对象目标数据。
而且,上述神经网络模型的训练步骤可以包含:将样本数据集划分为多个批次的输入项,并按照批次的顺序将输入项输入至初始网络模型,根据膨胀卷积算法计算得到初始网络模型的输出项,根据输入项、输出项和损失函数对初始网络模型进行训练,得到神经网络模型。也就是说,在上述神经网络模型的训练过程中,利用膨胀卷积算法根据输入项计算得到输出项。膨胀卷积算法具有计算速度快的优点,因此,上述神经网络模型也具有快速预测结果的优点。即上述神经网络模型可以快速地为第一目标对象目标数据预测第二目标对象目标数据。
综上所述,本发明实施例可以利用训练完毕的神经网络模型为具有超长依赖关系的多个第一目标对象目标数据,快速地预测出具有序列相关性的第二目标对象目标数据。
实施例二
参照图2,图2示出了本发明实施例二的一种神经网络模型的训练方法的流程示意图。
本发明实施例提供的神经网络模型的训练方法,具体可以包含如下步骤。
步骤S201,获取样本数据集,并对样本数据集进行划分处理。
在本发明的实施例中,样本数据集可以包含多段文字、多个银行卡号、多个订单号等等。本发明的实施例以自然语言处理场景为例进行介绍,其他应用场景的样本数据集可以不相同,但是,针对样本数据集的划分处理的执行过程可以相互借鉴。因此,本发明实施例中的样本数据集x可以为如下一段文字:
“诗曰:混沌未分天地乱,茫茫渺渺无人见。自从盘古破鸿蒙,开辟从兹清浊辨。古覆载群生仰至仁,发明万物皆成善。欲知造化会元功,须看西游释厄传。斋盖闻天地之数,有十二万九千六百岁为一元。将一元分为十二会,乃子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥之十二支也。每会该一万八百岁。且就一日而论:子时得阳气,而丑则鸡鸣;寅不通光”
其中,每个文字或者标点都可以理解为样本数据集x中的样本数据。在获取到样本数据集x之后,将样本数据集x中的每个样本数据转换为样本向量x(i),样本向量x(i)表示第i个样本数据。i可以表示样本数据在样本数据集x中的序号。每个样本数据的维度为d,该维度可以理解为样本数据在计算机中的表示维度。
然后,按照预设的长度L,将样本数据集x中的全部样本向量x(i)划分为多个批次的输入项。具体地,可以将样本数据的数量N或者样本向量的数量N除以预设的长度L得到批次的数量N/L。预设的长度L即一个批次的输入项包含的样本向量的数量。
因此,上述样本数据集x可以划分得到如下几个批次的输入项:
第一批次:[诗曰:混沌未分天地乱,茫茫渺渺无人见。自从盘古破鸿蒙,开辟从兹清]
第二批次:[浊辨。古覆载群生仰至仁,发明万物皆成善。欲知造化会元功,须看西游]
第三批次:[释厄传。斋盖闻天地之数,有十二万九千六百岁为一元。将一元分为十二]
第四批次:[会,乃子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥之十二支也。]
第五批次:[每会该一万八百岁。且就一日而论:子时得阳气,而丑则鸡鸣;寅不通光]
以第一批次的输入项为例进行说明,其他批次的输入项的介绍可以参照第一批次的输入项的相关说明。在第一批次的输入项中,L即“诗”、“曰”、……、“清”的数量(包含文字和标点),也就是说,L=32。第一批次的输入项利用样本向量x(i)可以表示为x(1)、x(2)、x(3)、……、x(32)。需要说明的是,为了更容易理解本发明实施例,可以直接将样本向量中的i替换为样本数据本身,即x(1)替换为x(诗)、x(2)替换为x(曰)、x(3)替换为x(:)、……、x(32)替换为x(清)。因此,第一批次的输入项也可以表示为(诗)、x(曰)、x(:)、……、x(清)。
步骤S202,获取输入项的标注数据。
在本发明的实施例中,在获取上述各批次的输入项之后,可以分别将每个输入项向后偏移一位样本向量,并按照预设的长度划分得到每个批次的输入项对应的标注数据。
接上例,仍然以第一批次的输入项为例进行说明。在样本数据集x中,第一批次的输入项(诗)、x(曰)、x(:)、……、x(清),向后偏移一位样本向量,并按照预设的长度L划分得到第一批次的输入项对应的标注数据。即第一批次的输入项(诗)、x(曰)、x(:)、……、x(清)对应的标注数据为从x(曰)开始,一直到x(浊)的32个样本向量。
最终,第一批次的输入项为(诗)、x(曰)、x(:)、……、x(清)。第一批次的输入项对应的标注数据为x(曰)、x(:)、x(混)、……、x(清)。同理,可以获得其他批次的输入项对应的标注数据,本发明的实施例在此不再赘述。
各批次的输入项的标注数据可以作为各批次的输入项输入至神经网络模型,得到输出项的校准数据。也就是说,各批次的输入项输入至神经网络模型,得到的输出项与对应的标注数据进行比较,进而根据比较结果对神经网络模型的各网络层的网络参数进行调整,直至网络参数调整后的神经网络模型满足收敛条件,即各批次的输入项输入至网络参数调整后的神经网络模型之后,得到的输出项与对应的标注数据相同、相近或者相似度达到要求。
步骤S203,将各批次的输入项输入至初始网络模型,并根据膨胀卷积算法计算得到输出项。
在本发明的实施例中,初始网络模型可以包含多个网络层。网络层可以分为输入层、输出层和中间层。可以预先为每个中间层分配对应的存储空间。中间层的存储空间与输入项的存储空间一致,即中间层的存储空间为L﹡d的矩阵。如果初始网络模型具有M层的中间层(在实际应用中,M可以为6),则需要分配M﹡L﹡d的存储空间。
而且,本发明的实施例还可以为每个中间层设置一个对应的记忆层。记忆层的存储空间可以大于或等于中间层的存储空间。中间层的输入项可以复制到记忆层中,也就是说,记忆层可以作为中间层的备份。初始时,记忆层为空。
在本发明的一种示例性实施例中,初始网络模型除了输入层和输出层之外可以包含两层中间层。如图3所示,图3示出了初始网络模型的网络结构示意图。首先,可以将第一批次的输入项输入至输入层,第一批次的输入项从输入层输入至第一层中间层,第一层中间层的输出项可以复制到第一层中间层对应的记忆层。然后,将第一批次的输入项与记忆层中存储的第一层中间层的输出项进行拼接,将拼接后样本向量输入至第二层中间层,作为第二层中间层的输入项。也就是说,除了第一批次的输入项之外,可以将当前的输入项与初始网络模型中上一个网络层的输出项进行拼接,将拼接后的样本向量作为当前网络层的输入项输入至当前网络层。
在本发明的一种示例性实施例中,神经网络模型中的各中间层可以为膨胀卷积层,也就是说,每个膨胀卷积层的存储空间为L﹡d的矩阵。
步骤S204,根据损失函数对初始网络模型进行训练。
在本发明的实施例中,可以选择与应用场景对应的损失函数对初始网络模型进行训练,最终得到训练完毕的神经网络模型。
基于上述关于一种神经网络模型的训练方法的相关说明,下面介绍一种神经网络模型的网络结构。如图4所示,图4示出了一种神经网络模型的网络结构示意图。在图4中,神经网络模型的中间层可以包含两层膨胀卷积层。而且,针对每层膨胀卷积层,还对应设置有各自的记忆层。记忆层用于备份上一批次的输入项输入至膨胀卷积层,经过计算得到的输出项。例如,当前批次的输入项(当前输入)为x(i),上一批次的输入项(历史输入)为x’(i)。将x(i)和x’(i)拼接为
本发明的实施例训练了一种神经网络模型,该神经网络模型既可以低延时地计算得到输出项,又可以捕捉到具有超长依赖关系的输入项。
本发明的实施例将当前输入与历史输入进行拼接,作为当前网络层的输入项,实现了捕捉具有超长依赖关系的输入项的功能。
本发明的实施例可以采用不用应用场景下的损失函数对初始网络模型进行训练,得到针对不同应用场景下的神经网络模型,提升了神经网络模型的适用范围。
实施例三
参照图5,图5示出了本发明实施例三的一种目标数据的预测装置的结构示意图。所述装置具体可以包括如下模块:
获取模块51,用于获取满足预设的长期依赖性条件的多个第一目标数据;
输入模块52,用于将多个所述第一目标数据输入至训练完毕的神经网络模型中,输出第二目标数据;
其中,所述第二目标数据与多个所述第一目标数据具有序列相关性;
所述装置还包括:训练模块53,用于将样本数据集划分为多个批次的输入项,并按照批次的顺序将所述输入项输入至初始网络模型,根据膨胀卷积算法计算得到所述初始网络模型的输出项,根据所述输入项、所述输出项和损失函数对所述初始网络模型进行训练,得到所述神经网络模型。
在本发明的一种示例性实施例中,所述训练模块53,包括:
样本转换模块,用于将所述样本数据集中的每个样本数据转换为样本向量;
样本划分模块,用于按照预设的长度,将全部所述样本向量划分为多个批次的所述输入项;
其中,所述样本数据的数量除以所述长度等于所述批次的数量。
在本发明的一种示例性实施例中,所述训练模块53,还包括:
样本标注模块,用于在所述样本划分模块将全部所述样本向量划分为多个批次的所述输入项之后,分别将每个所述输入项向后偏移一位所述样本向量,并按照所述长度划分得到每个所述输入项对应的标注数据。
在本发明的一种示例性实施例中,所述训练模块53,包括:
样本拼接模块,用于将当前的所述输入项与所述初始网络模型中上一个网络层的所述输出项进行拼接;将拼接后的样本向量输入至所述初始网络模型中的当前网络层。
在本发明的一种示例性实施例中,所述神经网络模型的网络层包含多个膨胀卷积层,每个膨胀卷积层的存储空间为所述长度与所述样本向量的维度相乘的矩阵空间。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本发明的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
- 一种目标数据的预测方法和装置
- 一种基于少量问卷调查数据的多目标特征预测方法