掌桥专利:专业的专利平台
掌桥专利
首页

符号生成系统的训练方法、装置、电子设备和存储介质

文献发布时间:2023-06-19 19:30:30


符号生成系统的训练方法、装置、电子设备和存储介质

技术领域

本发明涉及人工智能的语言处理技术领域,尤其涉及一种符号生成系统的训练方法、装置、电子设备和存储介质。

背景技术

随着科技的不断发展,人工智能在生活和工作中也越来越普及。现在的人工智能系统在对象识别、自然语言处理以及复杂游戏等任务中取得了显着的成功。但是其高级认知功能较弱。

为了使得人工智能系统具有更高级的认知功能,需要对人工智能系统进行再优化,如基于联结主义的人工智能系统在自然语言处理相关的任务方面已经取得了进展。但是由于其训练和学习依赖于人类创造的符号,这些符号未必真正适用于人工智能体自身的构造和其与外部世界交换的方式,使得人工智能系统的功用,特别是高级认知功能方面,反而会受到人类自然语言语义的影响和约束。

发明内容

本发明提供一种符号生成系统的训练方法、装置、电子设备和存储介质,用以解决现有技术中人工智能系统受人类自然语言语义的影响和约束的问题,使得具有更高的智能化。

本发明提供一种符号生成系统的训练方法,包括:

确定训练样本,并初始化所述训练样本对应的符号向量;

基于所述训练样本和所述符号向量对待训练的符号生成系统进行训练,并对所述符号向量进行更新;

在确定训练后的所述符号生成系统未收敛时,基于所述训练样本和更新后的所述符号向量对参数调节后的所述符号生成系统进行训练;

至训练后的所述符号生成系统收敛,得到训练好的所述符号生成系统。

根据本发明提供的一种符号生成系统的训练方法,所述确定训练样本,并初始化所述训练样本对应的符号向量,包括:

确定训练样本,并对所述训练样本进行类别划分,得到若干类别,且每一类别包含若干图像样本;

初始化每一个类别对应的符号向量,并基于类别将所述符号向量与所述训练样本中的每一图像样本进行关联,确定每一图像样本对应的初始化符号向量。

根据本发明提供的一种符号生成系统的训练方法,所述基于所述训练样本和所述符号向量对待训练的符号生成系统进行训练,并对所述符号向量进行更新,包括:

将所述训练样本中的每一图像样本与所述符号向量进行组合,得到若干组输入图像样本;

基于所述若干组输入图像样本对所述符号生成系统进行训练,并在训练完成时得到中间符号生成系统;

根据所述中间符号生成系统对所述训练样本中每一图像样本对应的初始化符号向量进行更新。

根据本发明提供的一种符号生成系统的训练方法,所述基于所述若干组输入图像样本对所述符号生成系统进行训练,并在训练完成时得到中间符号生成系统,包括:

将所述输入图像样本输入至所述符号生成系统中,输出得到所述输入图像样本对应的处理结果;

基于所述输入图像样本对应的初始化符号向量和所述处理结果,对所述符号生成系统进行参数调节,并在完成参数调节时得到中间符号生成系统。

根据本发明提供的一种符号生成系统的训练方法,所述在确定训练后的所述符号生成系统未收敛时,基于所述训练样本和更新后的所述符号向量对参数调节后的所述符号生成系统进行训练,包括:

在确定训练后的所述符号生成系统未收敛时,将所述训练样本与更新后的所述符号向量进行重新组合,得到重新组合后的若干组输入图像样本;

基于重新组合后的若干组输入图像样本,对所述中间符号生成系统进行训练。

根据本发明提供的一种符号生成系统的训练方法,所述方法还包括:

在确定训练后的所述符号生成系统是否收敛,包括以下任意一项:

根据当前训练序号与所设的次数阈值进行比较,确定是否收敛;

根据更新后的所述符号向量与相邻前一次更新后的符号向量进行对比,确定是否收敛。

根据本发明提供的一种符号生成系统的训练方法,所述根据更新后的所述符号向量与相邻前一次更新后的符号向量进行对比,确定是否收敛,包括:

基于同一图像样本,计算更新后的所述符号向量与相邻前一次更新后的符号向量进行相似度计算,得到相似度值;

将所述相似度值与相似度阈值进行比较,确定是否收敛;

其中,

若所述相似度值大于或者等于所述相似度阈值,则确定收敛;

若所述相似度值小于所述相似度阈值,则确定未收敛。

本发明还提供一种符号生成系统的训练装置,包括:

样本处理模块,用于确定训练样本,并初始化所述训练样本对应的符号向量;

第一训练模块,用于基于所述训练样本和所述符号向量对待训练的符号生成系统进行训练,并对所述符号向量进行更新;

第二训练模块,用于在确定训练后的所述符号生成系统未收敛时,基于所述训练样本和更新后的所述符号向量对参数调节后的所述符号生成系统进行训练;

存储记录模块,用于至训练后的所述符号生成系统收敛,得到训练好的所述符号生成系统。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的符号生成系统的训练方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的符号生成系统的训练方法。

本发明提供的符号生成系统的训练方法、装置、电子设备和存储介质,在符号生成系统的训练过程中,确定训练样本,同时针对训练样本中每一个图像样本初始化相应的符号向量,然后通过图像样本与符号向量的组合用于对符号生成系统的训练,同时在每一次训练时对符号向量进行更新处理,进而根据更新后的符号向量对符号生成系统进行训练,直到训练后的符号生成系统收敛,以得到训练好的符号生成系统。实现了在训练过程中首先针对训练样本构建初始符号向量,然后在训练过程中对符号向量进行更新,并作用于符号生成系统的训练,提高了符号生成系统自动生成符号向量的能力和准确性,降低自然语言对符号生成系统约束,提高了符号生成系统的高级认知能力。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的符号生成系统的训练方法的流程示意图;

图2是本发明提供的符号生成系统的结构示意图;

图3是本发明提供的符号生成系统中信号处理的示意图;

图4是本发明提供的符号生成系统的另一结构示意图;

图5是本发明提供的对符号生成系统进行训练的步骤的流程示意图;

图6是本发明提供的符号生成系统的又一结构示意图;

图7是本发明提供的符号生成系统的训练装置的结构示意图;

图8是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合图1-图6描述本发明的符号生成系统的训练方法。

图1是本发明提供的符号生成系统的训练方法的流程示意图,如图1所示,该方法包括步骤101至步骤104。

步骤101,确定训练样本,并初始化训练样本对应的符号向量。

在对智能体的符号生成系统进行训练时,首先需要得到用于进行训练的相关数据。具体地,通过确定用于进行训练的训练样本,进而基于所确定的训练样本对需要进行训练的符号生成系统进行训练,同时在确定训练样本时,可以对训练样本设置相对应的初始化的符号向量,将每个图像样本均与符号向量相对应,其中,训练样本可以是图像、视频流、音频流、文本或者运动知觉信息流中的任意一种。

示例性地,符号生成系统是一个语言系统,与人类的自然语言系统相似。对于人类而言,在进行交流时,通过基于自然语言中不同符号向量的组合实现人与人之间的交流。同样的,为了使得智能体有自己的独立的语言系统,首先构建智能体所对应的符号生成系统,然后通过不断的学习和优化生成智能体所使用的符号生成系统。

在进行训练的过程中,在确定了训练样本之后,可以对每一个图像样本符号向量的设置,然后通过训练样本和所设置的符号向量实现对所构建的符号生成系统的训练。

对于所构建的符号生成系统,可以如图2所示,图2是本发明提供的符号生成系统的结构示意图。其中该符号生成系统包括:任务处理(task solving module ,TS)网络,可以是不同类型的网络类型,用以执行特定任务;情景处理(the context-dependentprocessing module, CDP)网络,用于根据不同的情景输入进行灵活处理,将符号向量连接到TS网络中,具体地,在基于训练样本和符号向量对图2所示的结构系统进行训练时,将符号输入至CDP网络中,以及将图像样本输入至TS网络中,然后TS网络会根据输入的图像样本和CDP网络输入的信息进行处理得到输出结果。进而在进行训练时,基于所确定的训练样本对所构建的符号生成系统进行训练和网络参数的调整。

示例性地,TS网络可以是不同网络结构和模型,具体取决于任务类型,CDP网络的灵感来自前额叶皮层(PFC)的结构,将符号向量输入转换为适当的控制信号,以调制TS网络的处理过程。如图3所示,图3是本发明提供的符号生成系统中信号处理的示意图,其中图3中CDP网络的输入与TS网络的输入和输出与图2中所描述的相同。CDP网络

在具体实验中,TS网络可以包括两个部分:特征提取器和分类器。对于其结构可以采用预训练的卷积神经网络(CNN),即来自Torchvision库43的ResNet18模块作为特征提取器。特征提取器通过标识层将特征输出到分类器。其中,分类器可以由一个三层感知机[512-100-10]组成,该感知机使用ReLU函数作为激活函数的神经元。分类器的输出层由两个神经元组成,分别用[0,1]表示“是”和[1,0]表示 “否”,并使用交叉熵作为损失函数。

另外,为了与TS网络中分类器的结构相匹配,CDP网络也由[512-100-10]全连接层组成,CDP网络中神经元的激活函数可以是segmoid,它产生从0到1的输出控制信号。TS网络可以由ResNet34的特征提取器和[512-100-100-100]全连接分类器组成,CDP网络可以由[200-200-512-100-100-100]的全连接层组成,CDP网络中的最后四层将控制信号输出到TS网络中的分类器。

以使用该符号生成系统的智能体用于进行图像识别为例,在进行训练时,可以通过CIFAR100数据集的方式确定训练样本,由于此时所确定的图像分为100类,此时在初始化训练样本对应的符号向量时,针对不同的类别初始化一个对应的符号向量,比如此时可以随机生成100个的20维向量分配给每个类别,以作为每一个类别所对应的符号向量。当然也可以通过其他的方式确定训练样本。

在使用CIFAR100图像作为符号生成系统的训练样本时,CIFAR100数据集包含5,000张训练图像和10000张测试图像(32×32像素,带颜色),包含100个分类,各类的词向量采用fastText库。具体来说,该数据集包含200万字向量,长度为300,通过库提供的工具,从数据集中提取的CIFAR100中类别的单词向量的长度减少到20,每个矢量的大小在被送入CDP网络之前被放大十倍。

具体地,在确定训练样本时,若对于所确定的训练样本没有预先进行分类等操作,那么在确定训练样本,并在进行符号向量初始化时,包括:确定训练样本,并对训练样本进行类别划分,得到若干类别,且每一类别包含若干图像样本;初始化每一个类别对应的符号向量,并基于类别将符号向量与训练样本中的每一图像样本进行关联,确定每一图像样本对应的符号向量。

示例性地,在确定了训练样本时,首先对训练样本中所包含的图像样本进行类别划分,得到不同类别所对应的一个图像样本集合,然后初始化每一个类别所对应的符号向量,也就是针对每一个类别设置一个符号向量,然后将所设置的符号向量与类别中的图像样本进行关联,即确定每一个图像样本所对应的初始化的符号向量。

需要说明的是,对于初始化设置的符号向量,是否可以正确的代表个图像样本是不一定的,需要在后续针对符号生成系统训练的过程中,实时对此时初始化的符号向量进行优化。

在完成对训练样本的分类之后,针对类别初始化设置相应的符号向量进行关联。进而以基于完成符号向量设置的训练样本对相应的符号生成系统进行训练和优化处理。

步骤102,基于训练样本和符号向量对待训练的符号生成系统进行训练,并对符号向量进行更新。

在完成对训练样本的符号向量初始化设置之后,将会基于训练样本和所设置的符号向量对待训练的符号生成系统进行训练,其中符号生成系统的网络结构可以如图2所示。

具体地,在进行训练时,基于训练样本和所设置的符号向量对符号生成系统进行训练,并且在每完成一次训练时均得到当前训练结束时所对应的符号生成系统,然后可以通过确定此时所得到的符号生成系统是否收敛,并在确定收敛时即结束训练,而在未收敛时将需要继续进行训练。

在基于训练样本和符号向量对符号生成系统进行训练时,除了在当前次训练后得到训练后的符号生成系统,即完成当前次训练时的参数调节,还需要实时对进行训练时所使用的符号向量进行更新。

示例性地,在进行第一次训练时,所使用的进行训练的数据包括训练样本和初始化的符号向量,那么在完成第一次训练之后,将会对初始化的符号向量进行更新,以重新确定各图像样本所对应的符号向量,也就是此时在完成第一次训练后,进行符号向量的更新,并且对于更新后的符号向量将会替换初始所设置的符号向量。

而在当前进行训练的序号为第二次训练时,此时与训练样本相对应的符号向量是进行过一个更新的,同时在基于训练样本进行第二次训练之后,会对时此所使用的符号向量进行再一次的更新。如,初始符号向量经过第一次训练更新为符号向量1,那么在进行了第二次训练之后,在进行更新时符号向量1会被更新为此时所对应的符号向量2,以此类推,在需要进行训练时,每完成训练时均会进行符号向量的更新。

另外,对于符号生成系统还可以进行嵌入,也就是将一个符号生成系统嵌入到另一个符号生成系统中得到一个新的符号生成系统,具体可以如图4所示,图4是本发明提供的符号生成系统的另一结构示意图,在图4所示的符号生成系统中,在由一个CDP网络和一个TS网络组成的符号生成系统上,连接一个CDP网络组成一个新的符号生成系统。在实际应用中,还可以在图4所示的符号生成系统上进行系统的扩展,如将图4所示的符号生成系统作为一个整体,嵌入到符号生成系统中。

参照图5,图5是本发明提供的对符号生成系统进行训练的步骤的流程示意图,其中该步骤包括步骤501至步骤503。

步骤501、将训练样本中的每一图像样本与符号向量进行组合,得到若干组输入图像样本;

步骤502、基于若干组输入图像样本对符号生成系统进行训练,并在训练完成时得到中间符号生成系统;

步骤503、根据中间符号生成系统对训练样本中每一图像样本对应的初始化符号向量进行更新。

具体地,在基于训练样本和初始化的符号向量进行训练时,首先需要将训练样本中的每一图像样本与符号向量进行组合,得到若干组输入图像样本,其中输入图像样本中包含一个图像样本和一个符号向量,且该图像样本与该符号向量可以不是预先设置好的关联,然后根据组合得到的若干组输入图像样本对符号生成系统进行训练,并且针对于每一次训练都会生成一个参数调节后的符号生成系统,在此将其称为中间符号生成系统,同时还会基于所得到的中间符号生成系统进行符号向量的更新处理。

需要说明的是,对于每次训练后所生成的进行了参数调节的符号生成系统,还可以进行收敛性的判断,也就是对于每次训练后的符号生成系统确定是否收敛,进而在确定收敛时结束训练,反之则需要继续训练。同时,在训练过程中,可以将符号向量的长度设置为20,即每个符号向量包含20个实数元素,然后在训练中,还可以设置学习速率,如可以将符号向量和网络参数设置为以0.0001的学习速率进行训练。

示例性地,训练样本中,基于类别对应初始化设置有相应的符号向量,即一个类别对应一个符号向量,但是训练样本的数量远大于类别的数量,也就是对于训练样本,多个图像样本标准关联一个符号向量。而在进行组合的时候,通过随机将图像样本与符号向量进行组合,也就是所得到的输入图像样本中的图像样本与符号向量可以是标准关联,也可以是不相关的,但是在进行训练时,对于输入的每一个图像样本,其所对应的标准关联的符号向量是已知的。

比如,类别1对应符号向量1,且类别1包含有图像样本1、图像样本2、......、图像样本100,那么符号向量1标准关联的图像样本为:图像样本1、图像样本2、......、图像样本100。但是在进行随机组合生成输入图像样本时,此时所得到的组合可以是(图像样本1,符号向量1),还可以是(图像样本201、符号向量1)。

在进行训练时,对于组合正确的输入图像样本,系统输出端被赋予[0,1]的标签或者是其他形式的奖励信号,而对于组合错误的输入图像样本,系统输出端被赋予[1,0]的标签信号或者是其他形式的惩罚信号。通过将所有的输入图像样本进行输入,系统不断的对符号生成系统中的参数以及符号向量进行优化和调整,进而使其输出结果与赋予的标签相一致或获得尽可能多的奖励。

因此在对符号生成系统进行训练得到中间符号生成系统时,包括:将输入图像样本输入至符号生成系统中,输出得到输入图像样本对应的处理结果;基于输入图像样本对应的初始化符号向量和处理结果,对符号生成系统进行参数调节,并在完成参数调节时得到中间符号生成系统。

具体地,在完成图像样本与符号向量的随机组合之后,将所得到的输入图像样本输入到符号生成系统中,符号生成系统根据所接收的图像样本会输出一个输出符号向量,然后将输出符号向量与图像样本对应的初始化符号向量作为符号生成系统参数优化的依据,实现符号生成系统参数的调节。

然后,在基于所有的输入组合完成对符号生成系统的当前次训练之后,此时也就完成了对符号生成系统中参数的一次优化和调节,此时会得到一个中间符号生成系统,也就是符号生成系统进行参数优化后所生成的。

进而在进行符号向量的更新时,此时直接将训练样本作为中间符号生成系统的输入,中间符号生成系统通过处理输出得到训练样本中每一个图像样本此时所对应的符号向量。对应此时所得到的符号向量,将会与对应的图像样本进行标准关联。

由前述描述可知,在完成对训练样本的符号向量初始化时,会基于所初始化的符号向量建立与图像样本的标准关联,比如(图像样本1,符号向量1),此时在通过训练,完成对符号向量的更新,若此时图像样本1出的符号向量为符号向量a,那么此时的标准关联即为(图像样本1,符号向量a)。也就是在更新时,是对初始化的符号向量的调节。

在完成当前次的训练之后,若训练后的符号生成系统未收敛,则需要继续进行训练,而为了提高训练的效率和准确性,每一次训练完成时都会进行符号向量更新,使得进行训练所使用的符号向量与图像样本更加接近。同时不断的训练,符号生成系统可以自动的进行符号向量的生成,可以有效的降低符号生成系统对人类自然语言的依赖,减少人类自然语言对符号生成系统的约束。

步骤103,在确定训练后的符号生成系统未收敛时,基于训练样本和更新后的符号向量对参数调节后的符号生成系统进行训练。

在每完成一次训练时,均可以进行收敛判断,确定训练后的符号生成系统是否收敛,若收敛则确定训练结束,反正则需要继续进行训练。具体地,在确定训练后的符号生成系统未收敛时,将根据训练样本和更新后的符号向量再次对符号生成系统进行训练。

示例性地,在完成相邻前一次训练后的符号生成系统未收敛时,需要针对相邻前一次训练后的符号生成系统再次进行训练,而此时在进行训练时,训练样本可以保持不变,但是此时训练样本中每一个图像样本对应的符号向量会发生改变,具体基于相邻前一次训练后的符号生成系统进行更新所得到。

在进行再次训练时,具体包括:在确定训练后的符号生成系统未收敛时,将训练样本与更新后的符号向量进行重新组合,得到重新组合后的若干组输入图像样本;基于重新组合后的若干组输入图像样本,对中间符号生成系统进行训练。

实际上,再次训练的过程与第一次/相邻前一次进行训练的方式相同,通过将训练样本与更新后的符号向量进行重新的随机组合,得到若干组输入图像样本,进而根据所得到的输入图像样本对前一次训练后的符号生成系统进行再训练,同时在训练之后也会进行符号向量的更新。由于每次训练的方式都相同,因此在此不做具体描述,具体可以参照步骤102所描述的各实施例。

在一实施例中,每次训练之后都会确定训练后的符号生成系统是否收敛,具体地,在确定训练后的符号生成系统是否收敛,包括以下任意一项:

根据当前训练序号与所设的次数阈值进行比较,确定是否收敛;

根据更新后的符号向量与相邻前一次更新后的符号向量进行对比,确定是否收敛。

在进行收敛判断时,可以依据所描述的两种方式进行判断,第一种通过设定训练次数,第二种通过预测准确率进行判断。具体地,在确定是否收敛时,可以根据当前序号与所设定的训练次数的阈值进行比较,来确定是否收敛,其中在当前训练序号等于所设定的次数阈值时确定收敛,反之则确定不收敛。此时由于是基于训练次数确定是否收敛,因此在训练时对训练次数进行标序,以记录完成的训练的次数。

同时,在进行收敛判断时还可以基于更新后的符号向量与相邻前一次更新的符号向量进行对比,以确定是否收敛。此时在确定是否收敛时,可以将两个符号向量进行相似度计算,进而根据相似度值确定是否收敛。具体地,包括:基于同一图像样本,计算更新后的符号向量与相邻前一次更新后的符号向量进行相似度计算,得到相似度值;将相似度值与相似度阈值进行比较,确定是否收敛;其中,若相似度值大于或者等于相似度阈值,则确定收敛;若相似度值小于相似度阈值,则确定未收敛。

此时在进行收敛判断时,训练样本中包含有一定数量的图像样本,且在训练过程中进行符号向量的优化时,针对每一个图像样本所对应的符号向量都会进行更新和优化。在整个训练过程中,为了保证符号生成系统可以更加准确的进行使用,训练的次数越多越好,而通常情况下,训练次数的越多也会使得训练结果更加满足使用需求。因此除了设置训练次数作为收敛条件,还可以通过准确性的判断确定是否收敛,具体通过计算相邻两次更新使得符号向量之间的相似度,而具体的相似度计算方式不限。

通过相似度的判断,相似度越高说明越满足使用需求,因此可以通过设置一个相似度阈值,通过比较实现收敛的判断。比如,首先设置一个相似度阈值95%,然后设置一个达成率95%,其中达成率是指所有的图像样本对应的符号向量在进行相似度计算时,满足相似度值大于95% 的图像样本的占比达到95%及以上。

当然,在实际的应用中,确定训练后的模型/系统是否收敛的方式有很多种,除了包含上述描述的两种方式,还可以是其他的方式,比如参数的调节百分比,具体不做限制。

步骤104,至训练后的符号生成系统收敛,得到训练好的符号生成系统。

在整个的训练过程中,在确定训练后的符号生成系统收敛时,将会得到训练好的符号生成系统。具体地,确定是否收敛的可以依据步骤103中所描述的收敛方式,进而在确定收敛时得到训练好的符号生成系统。

进一步地,在得到了训练好的符号生成系统之后,可以根据实际的使用需求应用在各种不同的场景中。对于训练好的符号生成系统,与人类自然语言系统相似,在将其使用在任意一个智能体上,如智能机器人,智能体将拥有自己对的一个语言系统,进而在交互的过程中基于所使用的符号生成系统实现交互,比如对话或者移动等。

对于训练好的符号生成系统,可以基于输入的信息自动生成相应的符号向量,同时可以通过不同符号向量的组合生成相应的新功能,而不同的功能会对应一个符号向量,也就是,对于训练好的符号生成系统,可以进行符号向量的扩展,基于已有的符号向量进行不同的组合,在生成新功能的同时生成相应的新符号向量。

而在进行符号向量的学习和生成时,以符号生成系统用于进行图像识别为例,在训练样本为CIFAR100数据及上确定的,此时可以只使用数据集的99个类

其中,

其中,

最后为了保证准确性,可以进行相应的测试,如在CIFAR100测试集上进行了测试,此时的测试集可以包括新类的100张图像与旧类的2000张图像。

通过上述的训练和学习的方式,不需要改变和调整符号生成系统的结构,也可以实现符号向量的学习和生成。

另外在进行符号向量的学习和生成时,某些类别(例如,蜜蜂,比目鱼,键盘和蠕虫)的符号向量不能通过使用在学习其他类别中获得的知识来很好地推断出来。而这些符号向量可能在“核心符号向量集”中,它可以用来组合其他符号向量,但不能用其他的符号向量组合得到。因此对于这一类符号向量可以进行优先学习。

对于整个符号生成系统来说,与人类的自然语言系统相似,不同的符号向量之间会存在有一定的关系,比如类别相似的符号向量可以构成一个集群,例如可以形成人、动物、树木、水果、家具和汽车等集群,再比如基于符号向量所对应的信息之间的多维关系联系,也可以形成相应的集群,例如前景形状(例如蛇和蠕虫)、前景颜色(例如甜椒和向日葵)、背景(例如蘑菇和蜗牛)、共同发生(例如棕榈树、云和海、郁金香和蝴蝶)等,在训练好之后,可以自主的对符号向量进行上述处理。

在一实施例中,由于训练好的符号生成系统相当于人类的自然语言系统,完成训练得到训练好的不同符号生成系统,存在着差异性,如智能体的符号生成系统与人类的自然语言系统的差异,会使得无法实现交互,而为了实现不同符号生成系统之间的交互,可以对符号生成系统进行结构的调整和优化训练,此时符号生成系统可以如图6所示,图6是本发明提供的符号生成系统的又一结构示意图。

针对于包含有该符号生成系统智能体,为了实现与其他智能体或者人类的交互,需要将当前的符号生成系统与其他智能体的符号生成系统或者人类自然语言系统进行对齐,以两个智能体应用两个不同的符号生成系统为例,此时在符号生成系统中引入一个译入(translating-in,TI)网络和译出(translating-out,TO)网络,使得两个智能体之间可以进行交互,通过将一个智能体中出现的符号向量集映射到另一个智能体的符号向量集,实现智能体之间的交互。

示例性地,对于智能体A和智能体B,分别所拥有的符号系统不同,因此在进行交互的时候,智能体A在接收到智能体B的交互语音时,智能体A的译入模块对所接收到的交互语音进行处理,以转变为智能体A所能识别的信息,然后基于智能体A的译出模块进行输出。对于智能体B,在接收到智能体A的输出时,也采用相同的方式进行处理,以实现智能体A和智能体B之间的交互。

为了可以实现两个智能体之间的交互,需要预先对译入网络和译出网络进行训练,以其中一个智能体(第一智能体,另一个为第二智能体,且第二智能体可以是人类)为例,在进行对齐时,第一智能体中的TI网络将第二智能体生成的符号向量映射到第一智能体生成的符号向量。比如用所有100个类训练第二智能体,用99个类训练第一智能体,在用共有的99个类的符号向量完成第一智能体中的TI模块的训练后,第一智能体被要求使用来自第二智能体给出的(翻译的)符号向量指令来识别未经训练的类别。而该过程可以根据事件情况进行若干轮次的训练。

经过对第一智能体的TI网络的训练,第一智能体可将第二智能体生成的符号向量映射到第一智能体生成的符号向量。根据训练符号生成系统的过程,第二智能体为所有图片类别

为了生成足够的图像样本用于训练,通过符号向量操纵方法扩展第二智能体的符号向量数据集,将每个类别的符号向量拓展至97个,其中,在进行扩展时,在对第二智能体的符号生成系统进行初始训练之后,将其网络参数固定,然后通过符号向量的学习实现对符号向量的扩展。训练第一智能体的TI网络时,第一智能体的TI网络将第二智能体

本发明实施例提供的方法,在符号生成系统的训练过程中,确定训练样本,同时针对训练样本中每一个图像样本初始化相应的符号向量,然后通过图像样本与符号向量的组合用于对符号生成系统的训练,同时在每一次训练时对符号向量进行更新处理,进而根据更新后的符号向量对符号生成系统进行训练,直到训练后的符号生成系统收敛,以得到训练好的符号生成系统。实现了在训练过程中首先针对训练样本构建初始符号向量,然后在训练过程中对符号向量进行更新,并作用于符号生成系统的训练,提高了符号生成系统自动生成符号向量的能力和准确性,降低自然语言对符号生成系统约束,提高了符号生成系统的高级认知能力。

下面对本发明提供的符号生成系统的训练装置进行描述,下文描述的符号生成系统的训练装置与上文描述的符号生成系统的训练方法可相互对应参照。

图7是本发明提供的符号生成系统的训练装置的结构示意图,如图7所示,该符号生成系统的训练装置700包括:

样本处理模块701,用于确定训练样本,并初始化训练样本对应的符号向量;

第一训练模块702,用于基于训练样本和符号向量对待训练的符号生成系统进行训练,并对符号向量进行更新;

第二训练模块703,用于在确定训练后的符号生成系统未收敛时,基于训练样本和更新后的符号向量对参数调节后的符号生成系统进行训练;

存储记录模块704,用于至训练后的符号生成系统收敛,得到训练好的符号生成系统。

本发明提供的符号生成系统的训练装置,在符号生成系统的训练过程中,确定训练样本,同时针对训练样本中每一个图像样本初始化相应的符号向量,然后通过图像样本与符号向量的组合用于对符号生成系统的训练,同时在每一次训练时对符号向量进行更新处理,进而根据更新后的符号向量对符号生成系统进行训练,直到训练后的符号生成系统收敛,以得到训练好的符号生成系统。实现了在训练过程中首先针对训练样本构建初始符号向量,然后在训练过程中对符号向量进行更新,并作用于符号生成系统的训练,提高了符号生成系统自动生成符号向量的能力和准确性,降低自然语言对符号生成系统约束,提高了符号生成系统的高级认知能力。

基于上述实施例,图像样本处理模块701还用于:

确定训练样本,并对训练样本进行类别划分,得到若干类别,且每一类别包含若干图像样本;

初始化每一个类别对应的符号向量,并基于类别将符号向量与训练样本中的每一图像样本进行关联,确定每一图像样本对应的初始化符号向量。

基于上述实施例,第一训练模块702还用于:

将训练样本中的每一图像样本与符号向量进行组合,得到若干组输入图像样本;

基于若干组输入图像样本对符号生成系统进行训练,并在训练完成时得到中间符号生成系统;

根据中间符号生成系统对训练样本中每一图像样本对应的初始化符号向量进行更新。

基于上述实施例,第一训练模块702还用于:

将输入图像样本输入至符号生成系统中,输出得到输入图像样本对应的处理结果;

基于输入图像样本对应的初始化符号向量和处理结果,对符号生成系统进行参数调节,并在完成参数调节时得到中间符号生成系统。

基于上述实施例,第二训练模块703还用于:

在确定训练后的符号生成系统未收敛时,将训练样本与更新后的符号向量进行重新组合,得到重新组合后的若干组输入图像样本;

基于重新组合后的若干组输入图像样本,对中间符号生成系统进行训练。

基于上述实施例,符号生成系统的训练装置700还包括一模块,用于:

在确定训练后的符号生成系统是否收敛,包括以下任意一项:

根据当前训练序号与所设的次数阈值进行比较,确定是否收敛;

根据更新后的符号向量与相邻前一次更新后的符号向量进行对比,确定是否收敛。

基于上述实施例,符号生成系统的训练装置700还包括一模块,用于:

基于同一图像样本,计算更新后的符号向量与相邻前一次更新后的符号向量进行相似度计算,得到相似度值;

将相似度值与相似度阈值进行比较,确定是否收敛;

其中,

若相似度值大于或者等于相似度阈值,则确定收敛;

若相似度值小于相似度阈值,则确定未收敛。

图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行符号生成系统的训练方法,该方法包括:确定训练样本,并初始化训练样本对应的符号向量;基于训练样本和符号向量对待训练的符号生成系统进行训练,并对符号向量进行更新;在确定训练后的符号生成系统未收敛时,基于训练样本和更新后的符号向量对参数调节后的符号生成系统进行训练;至训练后的符号生成系统收敛,得到训练好的符号生成系统。

此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的符号生成系统的训练方法,该方法包括:确定训练样本,并初始化训练样本对应的符号向量;基于训练样本和符号向量对待训练的符号生成系统进行训练,并对符号向量进行更新;在确定训练后的符号生成系统未收敛时,基于训练样本和更新后的符号向量对参数调节后的符号生成系统进行训练;至训练后的符号生成系统收敛,得到训练好的符号生成系统。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法所提供的符号生成系统的训练方法,该方法包括:确定训练样本,并初始化训练样本对应的符号向量;基于训练样本和符号向量对待训练的符号生成系统进行训练,并对符号向量进行更新;在确定训练后的符号生成系统未收敛时,基于训练样本和更新后的符号向量对参数调节后的符号生成系统进行训练;至训练后的符号生成系统收敛,得到训练好的符号生成系统。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术分类

06120115932779