图像描述生成方法、模型训练方法、设备和存储介质与流程

文档序号:14992089发布日期:2018-07-20 22:27阅读:103来源:国知局
本发明实施例涉及机器学习
技术领域
:,特别涉及一种图像描述生成方法、模型训练方法、设备和存储介质。
背景技术
::随着图像识别技术的发展,通过算法就能将图像的内容信息转化为图像的文字描述。相关的一种图像描述生成方法包括:首先通过编码器,如特征提取模型,对获取到的目标图像进行编码,生成目标图像的全局特征向量和标注向量集合,然后输入目标图像的全局特征向量和标注向量集合至解码器,如计算模型,最后得到目标图像的描述信息。相关技术提供的图像描述生成方法中,解码器的输入参数只包括目标图像的全局特征向量和标注向量集合,也即解码器的输入参数只包括目标图像的图像信息,容易导致生成的图像描述信息不够准确。技术实现要素:为了解决现有技术中存在的问题,本发明实施例提供了一种图像描述生成方法、模型训练方法、终端和存储介质。技术方案如下:根据本发明实施例的第一方面,提供一种图像描述生成方法,该方法包括:获取目标图像;生成所述目标图像的第一全局特征向量和第一标注向量集合;输入所述目标图像至匹配模型,通过所述匹配模型生成所述目标图像的第一多模态特征向量;所述匹配模型为根据训练图像和所述训练图像的参考图像描述信息训练得到的模型;根据所述第一多模态特征向量、所述第一全局特征向量和所述第一标注向量集合,生成所述目标图像的目标图像描述信息。根据本发明实施例的第二方面,提供一种模型训练方法,用于训练如第一方面所述的所述匹配模型和计算模型,该方法包括:获取训练图像的全局特征向量和标注向量集合,以及所述训练图像的参考图像描述信息的文本特征向量;根据所述全局特征向量和所述文本特征向量训练匹配模型。根据本发明实施例的第三方面,提供了一种生成设备,所述生成设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的图像描述生成方法。根据本发明实施例的第四方面,提供了一种训练设备,所述训练设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第二方面所述的模型训练方法。根据本发明实施例的第五方面,提供了一种计算机存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的图像描述生成方法。根据本发明实施例的第六方面,提供了一种计算机存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第二方面所述的模型训练方法。本发明实施例提供的技术方案带来的有益效果是:通过输入目标图像至匹配模型,得到目标图像的多模态特征向量,由于匹配模型为根据训练图像和训练图像的参考图像描述信息训练得到的模型,因此通过匹配模型生成的多模态特征向量包含预测的文本信息;再将包含预测的文本信息的多模态特征向量输入至计算模型,使得通过计算模型生成的目标图像描述信息更为准确,达到了提高生成的图像描述信息的准确率的效果。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明各个实施例提供的图像描述生成方法和模型训练方法所涉及的实施环境的示意图;图2是本发明一个实施例提供的模型训练方法的方法流程图;图3是本发明一个实施例提供的图像描述生成方法的方法流程图;图4是本发明一个实施例提供的图像描述生成方法的流程图;图5是本发明一个实施例提供的图像描述生成装置的结构示意图;图6是本发明一个实施例提供的模型训练装置的结构示意图;图7是本发明一个实施例提供的终端的框图;图8是本发明一个实施例提供的服务器的结构示意图。具体实施方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。为了便于描述,下述先对各个实施例中所涉及的术语做简单介绍。cnn(convolutionneuralnetwork,卷积神经网络),是一种直接从图像底层的像素特征开始,逐层对图像进行特征提取的前馈神经网络,是编码器最常用的实现模型,负责将图像编码成向量。rnn(recurrentneuralnetwork,递归神经网络),是一种具有固定权值、外部输入和内部状态的神经网络,可以将其看作是以权值和外部输入为参数,关于内部状态的行为动力学。rnn是解码器最常用的实现模型,负责将编码器生成的图像向量翻译成图像的文字描述。lstm(long-short-termmemory,长短时记忆),是一种时间递归神经网络,用于处理和预测时间序列中间隔或者延迟相对较长时间的重要事件,属于一种特殊的rnn。注意力机制(attentionmechanism),常被运用在rnn上。带有注意力机制的rnn,在每次处理目标图像的部分像素时,都会根据当前状态的前一个状态所关注的目标图像的部分像素去处理,而不是根据目标图像的全部像素,可以减少任务的处理复杂度。sgd(stochasticgradientdescent,随机梯度下降),是一种最小化目标函数的方法,在每次迭代一个或者一批新的样本时,只考虑将当前样本点的损失趋于最小而不考虑其他样本点,且每迭代一个或者一批新的样本就会更新一次目标函数中的所有参数。交叉熵代价函数(cross-entropycostfunction),是一种用来计算神经网络的预测分布与实际分布之间的误差的方法,在反向传播训练神经网络的过程中,若预测分布与实际分布之间的误差越大,则对神经网络的各种参数的调整幅度越大。请参考图1,其示出了本发明各个实施例提供的图像描述生成方法和模型训练方法所涉及的实施环境的示意图,如图1所示,该实施环境包括:训练设备110和生成设备120。训练设备110是指用于训练描述生成模型的设备。该描述生成模型用于根据训练图像和其所对应的参考图像描述信息生成训练图像的描述信息。实际实现时,该训练设备110可以为诸如电脑终端、手机终端和服务器之类的可以实现复杂算法的设备。可选地,该描述生成模型包括特征提取模型、匹配模型和计算模型。特征提取模型用于根据训练图像生成训练图像的全局特征向量和标注向量集合,以及根据训练图像的参考图像描述信息生成对应的文本向量;匹配模型用于根据特征提取模型获取到全局特征向量和文本特征向量生成训练图像的多模态特征向量;计算模型用于根据匹配模型生成的多模态特征向量,以及特征提取模型生成的全局特征向量和标注向量集合,生成训练图像的描述信息。实际实现时,训练设备110会根据生成的描述信息和训练图像的参考图像描述信息不断地训练描述生成模型中的计算模型。生成设备120是指用于根据描述生成模型生成目标图像的描述信息的设备。实际实现时,该生成设备120可以为诸如电脑终端、手机终端和服务器之类的可以实现复杂算法的设备。可选地,训练设备110和生成设备120可以为同一个设备,也可以为不同的设备。若训练设备110和生成设备120为同一个设备,则生成设备120中的描述生成模型即为自身预先训练并存储的模型;若训练设备110和生成设备120为不同的设备,则生成设备120中的描述生成模型可以为从训练设备110中获取的训练设备110训练得到的模型。请参考图2,其示出了本发明一个实施例提供的模型训练方法的方法流程图,本实施例以该模型训练方法用于图1所示的训练设备中来举例说明。如图2所示,该模型训练方法可以包括:步骤201,获取训练图像的全局特征向量和标注向量集合,以及训练图像的参考图像描述信息的文本特征向量。训练图像为预先设置的用于训练的图像,全局特征向量为描述训练图像的整体特征的具有预设长度的向量,标注向量集合为多个描述训练图像的子区域特征的向量的集合,训练图像的参考图像描述信息为预先设置的用于描述对应的训练图像的文本信息。其中,训练图像可以包括至少一张图像,且实际实现时,为了增加训练样本进而提高训练准确度,训练图像可以包括多张,每个训练图像的参考图像描述信息可以为3至5个语句且每个语句都为能单独描述该训练图像的完整内容的语句。可选地,可以通过特征提取模型获取训练图像的全局特征向量和标注向量集合,以及训练图像的参考图像描述信息的文本特征向量。特征提取模型包括两个部分,其中,获取全局特征向量和标注向量集合的步骤包括:通过特征提取模型的第一部分对训练图像进行编码,生成训练图像的全局特征向量和标注向量集合;获取文本特征向量的步骤包括:通过特征提取模型的第二部分对训练图像的参考图像描述信息进行编码,生成对应的文本特征向量。可选地,第一部分可以为预先训练好的cnn,cnn包括多个卷积层和多个全连接层,则可以通过cnn的最后一个全连接层生成全局特征向量,并通过cnn的第四个卷积层生成标注向量集合,比如,第一部分为vgg(visualgeometrygroup,视觉几何组)网络。全连接层为输出层的每个神经元和输入层的每个神经元都连接的网络层。可选地,第二部分可以通过费舍尔向量fishervector技术对训练图像的参考图像描述信息进行编码。实际实现时,可以先通过第一部分生成全局特征向量和标注向量集合,之后通过第二部分生成文本特征向量,也可以先通过第二部分生成文本特征向量,之后通过第一部分生成全局特征向量和标注向量集合,还可以在通过第一部分生成全局特征向量和标注向量集合的同时,通过第二部分生成文本特征向量。步骤202,根据全局特征向量和文本特征向量训练匹配模型,并通过训练得到的匹配模型生成训练图像的多模态特征向量。匹配模型包括两个部分,其中,第一部分用于将全局特征向量转化成全局特征匹配向量,第二部分用于将文本特征向量转化成文本特征匹配向量。可选地,第一部分可以为第一神经网络,第二部分可以为第二神经网络,并且,第一神经网络,和/或,第二神经网络可以为全连接多层神经网络。下述除特殊说明外,均以匹配模型的第一部分为第一神经网络且第二部分为第二神经网络来举例说明。将所有训练图像的全局特征匹配向量和每一个训练图像对应的所有文本特征匹配向量映射到第一神经网络的隐含空间,在这个隐含空间中计算每一个全局特征匹配向量和每一个文本特征匹配向量的匹配度也即比较每一个全局特征匹配向量和每一个文本特征匹配向量的相似度,并根据匹配度调整每一个全局特征匹配向量和每一个文本特征匹配向量的位置关系,也即训练匹配模型,使得描述同一个训练图像的全局特征匹配向量和文本特征匹配向量的距离比较近,描述不同训练图像的全局特征匹配向量和文本特征匹配向量的距离比较远,以及,使得描述同一个训练图像的文本特征匹配向量彼此之间的距离比较近。可选地,在调整过程中可以采用排序损失(rank-loss)方法获取全局特征匹配向量和文本特征匹配向量在分布上的目标损失函数,并通过sgd对目标损失函数进行处理。其中,判断匹配模型是否训练完毕的条件包括:检测训练过程中目标损失函数的值是否变化;若目标损失函数的值不变,则匹配模型训练完毕。在匹配模型训练完毕后,将训练图像再次输入至第一神经网络,得到训练图像的多模态特征向量。步骤203,输入多模态特征向量、全局特征向量和标注向量集合至计算模型,得到训练图像的图像描述信息。实际实现时,计算模型包括n个深度网络,n为正整数,则本步骤包括:根据多模态特征向量、全局特征向量、标注向量集合和这n个深度网络,生成图像描述信息。其中,n个深度网络中的至少一个深度网络的输入参数包括拼接向量,当第i个深度网络的输入参数包括拼接向量时,若i=1,则拼接向量为多模态特征向量和标注向量集合拼接得到的向量,若i>1,则拼接向量为第i-1个深度网络的输出向量和多模态特征向量拼接得到的向量,1≤i≤n。比如,计算模型只包括一个深度网络,则该深度网络的输入参数包括拼接向量,且拼接向量为多模态特征向量和标注向量集合拼接得到的向量;又比如,计算模型包括三个深度网络,其中,第3个深度网络的输入参数包括拼接向量,则该拼接向量为第2个深度网络的输出向量和多模态特征向量拼接得到的向量。可选地,这n个深度网络可以为带注意力机制的lstm,也可以为gru(gatedrecurrentunit,门控性循环单元),还可以为其他的rnn。为了便于描述,下述以这n个深度网络为带注意力机制的lstm且n=2来举例说明,则根据多模态特征向量、全局特征向量、标注向量集合和这n个深度网络,生成图像描述信息的具体步骤包括:第一,将多模态特征向量m和标注向量集合a拼接,得到第一拼接向量a'。将多模态特征向量m和标注向量集合a拼接,仅为形式上的加法拼接,比如,多模态特征向量m的长度为n1,标注向量集合a的长度为n2,则第一拼接向量a'的长度为n1+n2。实际实现时,在拼接过程中,通常把标注向量集合a放在上方,而把多模态特征向量m放在下方。第二,输入第一拼接向量a'和全局特征向量至第1个深度网络,得到第一输出向量h(t)。当深度网络为带注意力机制的lstm时,第1个深度网络可以表示为一个带内部状态的函数:h(t)=lstm(0,h(t-1),a')。其中,h(t)为经过当前时间步骤t之后lstm的隐含状态也即lstm中间隐层记忆单元的激活函数的输出值,h(t-1)是经过前一个时间步骤t-1之后lstm的隐含状态。第三,将第一输出向量h(t)和多模态特征向量m拼接,得到第二拼接向量a"。将第一输出向量h(t)和多模态特征向量m拼接,同第一步骤中的方法类似,也为形式上的加法拼接,在此不再赘述。实际实现时,在两次拼接过程中,多模态特征向量m所在的位置应保持一致,比如,两次拼接都为将多模态特征向量m放在下方。第四,输入第二拼接向量a"至第2个深度网络,得到图像描述信息。当深度网络为带注意力机制的lstm时,第2个深度网络也可以表示为一个带内部状态的函数,但不同的是,h(t)=lstm(x(t),h(t-1),a”)。其中,在每一个时间步骤t时,第2个深度网络的输入包括参考图像描述信息中第t个字的嵌入向量(embeddingvector)x(t)。对于在每一个时间步骤t时输出的h(t),采用线性回归方法对图像描述信息中的下一个生成的字进行预测,得到对应的中文字,最后得到图像描述信息。图像描述信息为一个能单独描述该训练图像的完整内容的语句。可选地,该线性回归方法可以为softmax回归方法。步骤204,若参考图像描述信息和生成的图像描述信息不匹配,则根据图像描述信息和参考图像描述信息训练计算模型。判断生成的图像描述信息与训练图像的参考图像描述信息是否匹配,也即计算两者的误差,实际实现时,采用交叉熵代价函数来计算预测的字的分布和真实的字的分布之间的误差,并通过sgd不断地调整计算模型中的各类参数,对计算模型进行优化也即训练计算模型,直至损失函数的值不再发生变化,也即两者的误差值无法再减小。综上所述,本实施例提供的模型训练方法,通过根据训练图像和其所对应的参考图像描述信息训练匹配模型,使得通过训练完毕后的匹配模型生成的多模态特征向量包含预测的文本信息;再将包含预测的文本信息的多模态特征向量输入至计算模型,使得通过计算模型生成的训练图像的描述信息更为准确;最后根据较为准确的描述信息和参考图像描述信息训练计算模型;达到了提高描述生成模型生成的图像描述信息的准确率的效果。请参考图3,其示出了本发明一个实施例提供的图像描述生成方法的方法流程图,本实施例以该图像描述生成方法用于图1所示的生成设备中来举例说明。如图3所示,该图像描述生成方法可以包括:在训练设备训练描述生成模型完毕后,生成设备会获取该描述生成模型。可选地,生成设备获取该描述生成模型的步骤可以包括:发送获取请求至训练设备,接收训练设备返回的描述生成模型,或者,接收训练设备主动发送的描述生成模型。步骤301,获取目标图像。可选地,可以读取预先存储的目标图像。其中,目标图像可以为自身采集并保存的图像,也可以为预先从其他设备中获取并保存的图像,还可以为预先从网络中下载并保存的图像。当然,实际实现时,还可以发送图像获取请求至其他设备,接收其他设备返回的目标图像;或者,接收其他设备主动发送的目标图像。实际实现时,目标图像一般与训练图像为不同的图像。步骤302,生成目标图像的第一全局特征向量和第一标注向量集合。输入目标图像至特征提取模型,其中,在生成图像描述的过程中,只需通过特征提取模型中的第一部分对目标图像进行编码,生成目标图像的第一全局特征向量和第一标注向量集合即可。步骤303,输入目标图像至匹配模型,通过匹配模型生成目标图像的第一多模态特征向量;匹配模型为根据训练图像和训练图像的参考图像描述信息训练得到的模型。实际实现时,通过训练完毕的匹配模型的第一部分对目标图像进行编码,生成目标图像的第一多模态特征向量。由于本实施例中的匹配模型为上述实施例中已经训练完毕的匹配模型,因此,生成的多模态特征向量包含预测的文本信息。步骤304,根据第一多模态特征向量、第一全局特征向量和第一标注向量集合,生成目标图像的目标图像描述信息。实际实现时,通过输入第一多模态特征向量、第一全局特征向量和第一标注向量集合至计算模型,得到目标图像描述信息。其中,本实施例中的计算模型为上述实施例中根据训练图像的图像描述信息和参考图像描述信息训练得到的计算模型。可选地,计算模型包括n个深度网络,n为正整数,则本步骤包括:根据第一多模态特征向量、第一全局特征向量、第一标注向量集合和这n个深度网络,生成图像描述信息。其中,n个深度网络中的至少一个深度网络的输入参数包括拼接向量,当第i个深度网络的输入参数包括拼接向量时,若i=1,则拼接向量为第一多模态特征向量和第一标注向量集合拼接得到的向量,若i>1,则拼接向量为第i-1个深度网络的输出向量和第一多模态特征向量拼接得到的向量,1≤i≤n。可选地,这n个深度网络可以为带注意力机制的lstm,也可以为其他的rnn。为了便于描述,下述以这n个深度网络为带注意力机制的lstm且n=2来举例说明,则根据第一多模态特征向量、第一全局特征向量、第一标注向量集合和这n个深度网络,生成图像描述信息的具体步骤包括:第一,将第一多模态特征向量m和第一标注向量集合a拼接,得到第一拼接向量a'。第二,输入第一拼接向量a'和第一全局特征向量至第1个深度网络,得到第一输出向量h(t)。第三,将第一输出向量h(t)和第一多模态特征向量m拼接,得到第二拼接向量a"。第四,输入第二拼接向量a"至第2个深度网络,得到目标图像描述信息。当深度网络为带注意力机制的lstm时,第2个深度网络同样可以表示为一个带内部状态的函数:h(t)=lstm(x(t),h(t-1),a”)。但不同的是,在每一个时间步骤t时,根据第2个深度网络的输出h(t)计算目标图像描述信息中下一个生成的中文字的分布,再通过贪心搜索算法或者束搜索(beamsearch)算法确定下一个生成的中文字,并将其作为在下一个时间步骤t+1时函数h(t)的输入向量x(t),经过不断地递归运算后,最终得到完整的目标图像描述信息。步骤304的具体实施过程同上述实施例中的步骤203类似,在此不再赘述。上述实施例提供的图像描述生成方法,通常用于需要具备图像检索功能的设备中。在描述生成模型训练完毕后,该设备会采集大量的目标图像,通过已经训练好的描述生成模型为每一个目标图像生成其所对应的目标图像描述信息,并将目标图像与目标图像描述信息以一一对应的方式存储在设备的数据库中。当用户需要查询某个或者某些图像时,只需输入所需查询的图像的图像描述信息即可,输入的图像描述信息可以为至少一个描述图像内容的关键词,也可以为一句完整的文字描述。该设备会根据用户输入的图像描述信息,在数据库中查找是否存在与之相关的目标图像描述信息,进而找到对应的目标图像,并将找到的目标图像提供给用户。可选地,计算模型通常包括2个基于注意力机制的lstm网络,如图4所示,下述以目标图像为图像1来举例说明上述图像描述生成方法的具体步骤。第一,获取目标图像。图像1为设备在日常生活中采集得到的图像,图像1的图像内容为“一群人围坐在餐桌前拍合照”。第二,输入目标图像至特征提取模型,通过特征提取模型的第一部分对目标图像进行编码,得到目标图像的全局特征向量和标注向量集合。第三,输入目标图像至训练完毕的匹配模型,通过该匹配模型的第一部分对目标图像进行编码,得到目标图像的多模态特征向量。其中,该匹配模型为根据训练图像和训练图像的参考图像描述信息训练得到的模型。第四,将匹配模型输出的多模态特征向量和特征提取模型输出的标注向量集合拼接,得到第一拼接向量,并将第一拼接向量和全局特征向量输入至第1个深度网络,得到第一输出向量。第五,将多模态特征向量和第一输出向量拼接,得到第二拼接向量,并将第二拼接向量输入至第2个深度网络。在每一个时间步骤t时,根据输出向量h(t)计算目标图像描述信息中下一个生成的中文字的分布,再通过贪心搜索算法或者束搜索算法确定下一个生成的中文字,并将其作为在下一个时间步骤t+1时函数h(t)的输入向量x(t),比如,在第一个时间步骤时,根据输出向量h(1)计算第一个生成的字的分布,再通过算法确定第一个生成的字为“一”,并将“一”作为第二个时间步骤中函数h(2)的输入向量x(2),同样根据输出向量h(2)计算第二个生成的字的分布,再通过算法确定第二个生成的字为“群”,并将“群”作为第三个时间步骤中函数h(3)的输入向量x(3),以此类推,经过不断地递归运算后,最终得到完整的目标图像描述信息“一群人围坐在餐桌前拍合照”。综上所述,本实施例提供的图像描述生成方法,通过输入目标图像至匹配模型,得到目标图像的多模态特征向量,由于匹配模型为根据训练图像和训练图像的参考图像描述信息训练得到的模型,因此通过匹配模型生成的多模态特征向量包含预测的文本信息;再将包含预测的文本信息的多模态特征向量输入至计算模型,得到目标图像描述信息,使得生成的目标图像描述信息更为准确,达到了提高生成的图像描述信息的准确率的效果。需要说明的第一点是,本实施例对上述步骤302和303的先后执行顺序并不做限定,只需在步骤304之前执行即可。实际实现时,也可以先执行步骤303,再执行步骤302,还可以在执行步骤302的同时,执行步骤303。需要说明的第二点是,若上述各个实施例提供的描述生成模型运用在英文场合,则通过描述生成模型生成的目标图像描述信息为英文形式的描述信息,而当用户需要查询某个或者某些图像时,向设备输入的所需查询的图像的图像描述信息,也皆为英文形式的关键词或者文字描述。因此,生成目标图像描述信息的过程会发生微小的变化,下述仍以目标图像为图像1,且计算模型为2个带注意力机制的lstm网络来举例说明,具体步骤包括:第一,获取目标图像,图像1为设备在日常生活中采集得到的图像,图像1的图像内容为“agroupofpeoplearesittingatthetableandtakingaphoto”。第二,输入目标图像至特征提取模型,通过特征提取模型的第一部分对目标图像进行编码,生成目标图像的全局特征向量和标注向量集合。第三,输入目标图像至训练完毕的匹配模型,通过该匹配模型的第一部分对目标图像进行编码,生成目标图像的多模态特征向量。其中,该匹配模型为根据训练图像和训练图像的参考图像描述信息训练得到的模型。第四,将匹配模型输出的多模态特征向量和特征提取模型输出的标注向量集合拼接,得到第一拼接向量,并将第一拼接向量和全局特征向量输入至第1个深度网络,得到第一输出向量。第五,将多模态特征向量和第一输出向量拼接,得到第二拼接向量,并将第二拼接向量输入至第2个深度网络。在每一个时间步骤t时,根据输出向量h(t)计算目标图像描述信息中下一个生成的英文单词的分布,再通过贪心搜索算法或者束搜索算法确定下一个生成的英文单词,并将其作为在下一个时间步骤t+1时函数h(t)的输入向量x(t),比如,在第一个时间步骤时,根据输出向量h(1)计算第一个生成的英文单词的分布,再通过算法确定第一个生成的英文单词为“a”,并将“a”作为第二个时间步骤中函数h(2)的输入向量x(2),同样根据输出向量h(2)计算第二个生成的英文单词的分布,再通过算法确定第二个生成的英文单词为“group”,并将“group”作为第三个时间步骤中函数h(3)的输入向量x(3),以此类推,经过不断地递归运算后,最终得到完整的目标图像描述信息“agroupofpeoplearesittingatthetableandtakingaphoto”。请参考图5,其示出了本发明一个实施例提供的图像描述生成装置的结构示意图,如图5所示,该图像描述生成装置可以包括:获取模块510和生成模块520。获取模块510,用于获取目标图像;生成模块520,用于生成所述目标图像的第一全局特征向量和第一标注向量集合;所述生成模块520,还用于输入所述获取模块510获取到的所述目标图像至匹配模型,通过所述匹配模型生成所述目标图像的第一多模态特征向量;所述匹配模型为根据训练图像和所述训练图像的参考图像描述信息训练得到的模型;所述生成模块520,还用于根据所述第一多模态特征向量、所述第一全局特征向量和所述第一标注向量集合,生成所述目标图像的目标图像描述信息。综上所述,本实施例提供的图像描述生成装置,通过输入目标图像至匹配模型,得到目标图像的多模态特征向量,由于匹配模型为根据训练图像和训练图像的参考图像描述信息训练得到的模型,因此通过匹配模型生成的多模态特征向量包含预测的文本信息;再将包含预测的文本信息的多模态特征向量输入至计算模型,使得通过计算模型生成的目标图像描述信息更为准确,达到了提高生成的图像描述信息的准确率的效果。基于上述实施例提供的图像描述生成装置,可选的,所述装置还包括:所述生成模块520,还用于输入所述第一多模态特征向量、所述第一全局特征向量和所述第一标注向量集合至计算模型,得到所述目标图像描述信息;所述计算模型为根据所述训练图像的图像描述信息和所述参考图像描述信息训练得到的模型。可选的,所述计算模型包括n个深度网络,n为正整数,所述装置还包括:所述生成模块520,还用于根据所述第一多模态特征向量、所述第一全局特征向量、所述第一标注向量集合和所述n个深度网络,生成所述目标图像描述信息;其中,所述n个深度网络中的至少一个深度网络的输入参数包括拼接向量,当第i个深度网络的输入参数包括所述拼接向量时,若i=1,则所述拼接向量为所述第一多模态特征向量和所述第一标注向量集合拼接得到的向量,若i>1,则所述拼接向量为第i-1个深度网络的输出向量和所述第一多模态特征向量拼接得到的向量,1≤i≤n。可选的,所述n=2,所述装置还包括:拼接模块;拼接模块,用于将所述第一多模态特征向量和所述第一标注向量集合拼接,得到第一拼接向量;所述生成模块520,还用于输入所述第一拼接向量和所述第一全局特征向量至第1个深度网络,得到第一输出向量;所述拼接模块,还用于将所述第一输出向量和所述第一多模态特征向量拼接,得到第二拼接向量;所述生成模块520,还用于输入所述第二拼接向量至第2个深度网络,得到所述目标图像描述信息。可选的,所述装置还包括:训练模块;所述获取模块510,还用于获取所述训练图像的第二全局特征向量和第二标注向量集合,以及所述训练图像的参考图像描述信息的文本特征向量;训练模块,用于根据所述第二全局特征向量和所述文本特征向量训练所述匹配模型。可选的,所述装置还包括:所述生成模块520,还用于通过训练得到的匹配模型生成所述训练图像的第二多模态特征向量;所述生成模块520,还用于输入所述第二多模态特征向量、所述第二全局特征向量和所述第二标注向量集合至计算模型,得到所述训练图像的图像描述信息;所述训练模块,还用于在所述参考图像描述信息和生成的所述图像描述信息不匹配时,根据所述图像描述信息和所述参考图像描述信息训练所述计算模型。需要说明的是:上述实施例提供的图像描述生成装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图像描述生成装置和图像描述生成方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。请参考图6,其示出了本发明一个实施例提供的模型训练装置的结构示意图,如图6所示,该模型训练装置用于训练如上述实施例中所述的匹配模型和计算模型,该装置可以包括:获取模块610和训练模块620。获取模块610,用于获取训练图像的全局特征向量和标注向量集合,以及所述训练图像的参考图像描述信息的文本特征向量;训练模块620,用于根据所述全局特征向量和所述文本特征向量训练匹配模型。综上所述,本实施例提供的模型训练装置,通过根据训练图像和其所对应的参考图像描述信息训练匹配模型,使得通过训练完毕后的匹配模型生成的多模态特征向量包含预测的文本信息;再将包含预测的文本信息的多模态特征向量输入至计算模型,使得通过计算模型生成的训练图像的描述信息更为准确;最后根据较为准确的描述信息和参考图像描述信息训练计算模型;达到了提高描述生成模型生成的图像描述信息的准确率的效果。基于上述实施例提供的模型训练装置,可选的,所述装置还包括:生成模块;生成模块,用于通过训练得到的匹配模型生成所述训练图像的多模态特征向量;所述生成模块,还用于输入所述多模态特征向量、所述全局特征向量和所述标注向量集合至计算模型,得到所述训练图像的图像描述信息;所述训练模块620,还用于在所述参考图像描述信息和生成的所述图像描述信息不匹配时,根据所述图像描述信息和所述参考图像描述信息训练所述计算模型可选的,所述计算模型包括n个深度网络,n为正整数,所述装置还包括:所述生成模块,还用于根据所述多模态特征向量、所述全局特征向量、所述标注向量集合和所述n个深度网络,生成所述图像描述信息;其中,所述n个深度网络中的至少一个深度网络的输入参数包括拼接向量,当第i个深度网络的输入参数包括所述拼接向量时,若i=1,则所述拼接向量为所述多模态特征向量和所述标注向量集合拼接得到的向量,若i>1,则所述拼接向量为第i-1个深度网络的输出向量和所述多模态特征向量拼接得到的向量,1≤i≤n。可选的,所述n=2,所述装置还包括:拼接模块;拼接模块,用于将所述多模态特征向量和所述标注向量集合拼接,得到第一拼接向量;所述生成模块,还用于输入所述第一拼接向量和所述全局特征向量至第1个深度网络,得到第一输出向量;所述拼接模块,还用于将所述第一输出向量和所述多模态特征向量拼接,得到第二拼接向量;所述生成模块,还用于输入所述第二拼接向量至第2个深度网络,得到所述图像描述信息。需要说明的是:上述实施例提供的模型训练装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的模型训练装置和模型训练方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端或者服务器中的计算机可读存储介质。该计算机可读存储介质存储有至少一条指令、至少一段程序、代码集或指令集,并且,当该计算机可读存储介质用于生成设备中时,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述实施例中的图像描述生成方法;当该计算机可读存储介质用于训练设备中时,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述实施例中的模型训练方法。图7其示出了本发明一个实施例提供的终端700的框图,该终端可以包括射频(rf,radiofrequency)电路701、包括有一个或一个以上计算机可读存储介质的存储器702、输入单元703、显示单元704、传感器705、音频电路706、无线保真(wifi,wirelessfidelity)模块707、包括有一个或者一个以上处理核心的处理器708、以及电源709等部件。本领域技术人员可以理解,图7中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:rf电路701可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器708处理;另外,将涉及上行的数据发送给基站。通常,rf电路701包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(sim,subscriberidentitymodule)卡、收发信机、耦合器、低噪声放大器(lna,lownoiseamplifier)、双工器等。此外,rf电路701还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(gsm,globalsystemofmobilecommunication)、通用分组无线服务(gprs,generalpacketradioservice)、码分多址(cdma,codedivisionmultipleaccess)、宽带码分多址(wcdma,widebandcodedivisionmultipleaccess)、长期演进(lte,longtermevolution)、电子邮件、短消息服务(sms,shortmessagingservice)等。存储器702可用于存储软件程序以及模块,处理器708通过运行存储在存储器702的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器702还可以包括存储器控制器,以提供处理器708和输入单元703对存储器702的访问。输入单元703可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元703可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器708,并能接收处理器708发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元703还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元704可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元704可包括显示面板,可选的,可以采用液晶显示器(lcd,liquidcrystaldisplay)、有机发光二极管(oled,organiclight-emittingdiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器708以确定触摸事件的类型,随后处理器708根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图7中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。终端还可包括至少一种传感器705,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。音频电路706、扬声器,传声器可提供用户与终端之间的音频接口。音频电路706可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路706接收后转换为音频数据,再将音频数据输出处理器708处理后,经rf电路701以发送给比如另一终端,或者将音频数据输出至存储器702以便进一步处理。音频电路706还可能包括耳塞插孔,以提供外设耳机与终端的通信。wifi属于短距离无线传输技术,终端通过wifi模块707可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了wifi模块707,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。处理器708是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器708可包括一个或多个处理核心;优选的,处理器708可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器708中。终端还包括给各个部件供电的电源709(比如电池),优选的,电源可以通过电源管理系统与处理器708逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源709还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器708会运行存储在存储器702中的至少一条指令,从而实现上述各个方法实施例中所提供的图像描述生成方法,和/或,模型训练方法。请参考图8,其示出了本发明一个实施例提供的服务器的结构示意图。该服务器用于实施上述各个实施例中所提供的图像描述生成方法,和/或,模型训练方法。具体来讲:所述服务器800包括中央处理单元(cpu)801、包括随机存取存储器(ram)802和只读存储器(rom)803的系统存储器804,以及连接系统存储器804和中央处理单元801的系统总线805。所述服务器800还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(i/o系统)806,和用于存储操作系统813、应用程序814和其他程序模块815的大容量存储设备807。所述基本输入/输出系统806包括有用于显示信息的显示器808和用于用户输入信息的诸如鼠标、键盘之类的输入设备809。其中所述显示器808和输入设备809都通过连接到系统总线805的输入输出控制器810连接到中央处理单元801。所述基本输入/输出系统806还可以包括输入输出控制器810以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器810还提供输出到显示屏、打印机或其他类型的输出设备。所述大容量存储设备807通过连接到系统总线805的大容量存储控制器(未示出)连接到中央处理单元801。所述大容量存储设备807及其相关联的计算机可读介质为服务器800提供非易失性存储。也就是说,所述大容量存储设备807可以包括诸如硬盘或者cd-rom驱动器之类的计算机可读介质(未示出)。不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括ram、rom、eprom、eeprom、闪存或其他固态存储其技术,cd-rom、dvd或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器804和大容量存储设备807可以统称为存储器。根据本发明的各种实施例,所述服务器800还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器800可以通过连接在所述系统总线805上的网络接口单元811连接到网络812,或者说,也可以使用网络接口单元811来连接到其他类型的网络或远程计算机系统(未示出)。所述存储器还包括至少一条指令,且经配置以由一个或者一个以上处理器执行。上述至少一条指令包含用于执行上述各个实施例所提供的图像描述生成方法,和/或,模型训练方法的指令。应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”(“a”、“an”、“the”)旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1