基于交互式Transformer的图像-多语言字幕转换方法

allin2023-04-03  51


基于交互式transformer的图像-多语言字幕转换方法
技术领域
1.本发明属于人工智能领域,具体的说是一种基于交互式transformer的图像-多语言字幕转换方法。


背景技术:

2.近年来,图像-字幕转换技术在图像索引、智能教育以及(盲人)视觉辅助等方面有着广泛的应用。但是目前大多数图像-字幕转换工作都是针对单一语言的,尤其是英语,而忽略了世界上有大量的非英语母语人群。图像-字幕转换技术的好处也应该带给这些用户,因此图像-字幕转换技术需要支持多种语言。
3.目前一些工作通过为每一种语言设计一个独立的模型,然后组合多个模型达到支持多语言的目的,但是这种方法将导致整体参数随着支持语言数量的增加而线性增加,不利于实际部署和维护。tsutsui等人2017年发表的《using artificial tokens to control languages for multilingual image caption generation》开创性地提出使用了卷积神经网络作为编码器和循环神经网络作为解码器,通过变换人工标记训练模型,使得单一模型可以产生对图像的两种语言描述。但是,该模型中两种语言描述不能同时产生,并且循环神经网络作为骨干网络,模型不能并行训练,存在长期依赖问题。如何设计一个单一紧凑的模型使其能够同时生成对图像的多种语言描述仍是亟待解决的问题。


技术实现要素:

4.本发明是为了解决上述现有技术存在的不足之处,提出一种基于交互式transformer的图像-多语言字幕转换方法,以期能通过单一的模型同时生成对图像的多种语言描述,从而支持多种语言的高效转换。
5.本发明为达到上述发明目的,采用如下技术方案:
6.本发明一种基于交互式transformer的图像-多语言字幕转换方法的特点是按如下步骤进行:
7.步骤1、构建图像-多语言字幕数据集d={i,y,z};其中,i表示图像集,y表示由所述图像集i中每张图像所对应的若干个中文描述语句构成的中文字幕集合;z表示由所述图像集i中每张图像所对应的若干个英文描述语句构成的英文字幕集合;
8.步骤2、获取图像的vinvl特征表示;
9.采用vinvl模型对图像集i中的图像i进行处理,得到图像i的vinvl特征表示xi;
10.步骤3、获取文本的特征表示;
11.步骤3.1、基于中文字幕集合y和英文字幕集合z构建包含m1个词汇量的中文字典以及m2个词汇量的英文字典;
12.步骤3.2、计算中文字幕集合y中每个中文描述语句的文本特征表示,令图像i所对应的任意一个中文描述语句yi的中文文本特征表示记为其中,表示中文描述语句yi中的第k个中文词向量;k表示词向量总数;
13.计算英文描述语句集合z中每个英文描述语句的文本特征表示,令图像i所对应的任意一个英文描述语句zi的英文文本特征表示记为其中,表示英文描述语句zi中的第k个英文词向量;
14.步骤4、构建图像-多语言字幕模型,包括:编码器、解码器和生成器;
15.步骤4.1、所述编码器由l1个相同的编码模块依次连接而成,每个编码模块均由多头自注意网络和全连接前馈网络组成,且每个编码模块后均连接有残差操作层和正则化操作层;
16.所述图像i的vinvl特征表示xi输入所述编码器中,并经过依次经过l1个编码模块的处理后输出图像i的上下文区域特征
17.步骤4.2、所述解码器由l2个相同的解码模块依次连接而成,且每个解码模块均由交互模块、关系模块和前馈网络组成;所述交互模块由一个自注意模块、一个关系注意模块和一个融合模块组成;
18.步骤4.2.1、使用位置编码表示序列的顺序;
19.对第k个中文词向量和第k个英文词向量进行位置编码,分别得到第k个中文嵌入特征和第k个英文嵌入特征从而得到图像i所对应的任意一个中文描述语句的中文嵌入特征向量和图像i所对应的任意一个英文描述语句的英文嵌入特征向量
20.步骤4.2.2、将中文嵌入特征向量和英文嵌入特征向量拼接为向量后输入第一个解码模块中的交互模块进行交互学习,分别由自注意模块输出中文的内部表示h
icn-cn
和英文的内部表示h
ien-en
、由关系注意模块输出中-英的交互表示h
icn-en
和英-中的交互表示的h
ien-cn
,再将中文的内部表示h
icn-cn
、英文的内部表示h
ien-en
和中-英的交互表示h
icn-en
、英-中的交互表示h
ien-cn
输入融合模块中,并利用式(1)和式(2)的融合函数进行融合,从而得到图像i所对应的任意一个中、英文描述语句的高级表示h
icn
、h
ien

21.h
ien
=h
ien-en
+λ1×
relu(h
ien-cn
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
22.h
icn
=h
icn-cn
+λ2×
relu(h
icn-en
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
23.式(1)和式(2)中,λ1,λ2表示两个控制参数;relu表示激活函数;
24.步骤4.2.3、由中、英文描述语句的高级表示h
icn
、h
ien
拼接为高级表示[h
icn
,h
ien
],并将图像i的上下文区域特征一起输入关系模块中,并由关系模块输出图像i及其对应的中英文描述语句的关系注意特征i
i-yizi;
[0025]
步骤4.2.4、将关系注意特征i
i-yizi输入前馈神经网络,并输出解码特征decoder
i,1

[0026]
步骤4.2.5、将第一个解码模块输出解码特征decoder
i,1
作为下一个解码模块的输入,并依次经过l2个解码模块的处理后,由第l2个解码模块的前馈神经网络输出最终的解码特征decoder
i,l2

[0027]
步骤4.3、生成对图像i的中、英文自然语言描述句子:
[0028]
步骤4.3.1、将最终的解码特征decoder
i,l2
中包含的图像i的中、英文语言描述的预测信息按维度拆为中文预测信息cn-decoder
i,l2
和英文预测信息en-decoder
i,l2

[0029]
将所述中文预测信息cn-decoder
i,l2
输入中文句子生成器,生成中文描述句子的预测特征cni;
[0030]
将所述英文预测信息en-decoder
i,l2
输入英文句子生成器,生成英文描述句子的预测特征eni;
[0031]
步骤4.3.2、在中、英字典中查找中、英文描述句子的预测特征cni,eni所对应的单词,从而生成中、英文自然语言描述句子y
′i,z
′i;
[0032]
步骤5、优化图像-多语言字幕模型:
[0033]
步骤5.1、在第一训练阶段时,基于所述图像-多语言字幕数据集d,通过最小化如式(1)所示的交叉熵损失loss来优化图像-多语言字幕模型:
[0034][0035]
式(3)中,θ表示学习参数;
[0036]
步骤5.2、在第二训练阶段时,基于式(6)所示的总梯度利用self-critical训练方法对优化后的图像-多语言字幕模型进行微调,从而得到最佳图像-多语言字幕模型:
[0037][0038][0039][0040]
式(4)~式(6)中,表示中文自然语言描述句子y

的梯度;表示英文自然语言描述句子z

的梯度;θ表示学习参数,r表示cider函数,b表示基础分数,n表示采样总数,y
′i表示图像i的中文自然语言描述句子,z
′n表示in的英文自然语言描述句子;
[0041]
步骤5.3、以最佳图像-多语言字幕模型实现对输入的任意图像输出其对应的中、英文语言字幕。
[0042]
与现有技术相比,本发明的有益效果在于:
[0043]
1、本发明通过一个基于交互式transformer的图像-多语言字幕转换方法,克服了现有技术中无法使用单一模型同时生成对图像的多种语言描述问题,节省了储存空间以及对计算机资源的占用,更有利于实际运用时的部署与维护。
[0044]
2、本发明通过使用transformerr作为骨干网,在训练期间整体处理一个句子,采用位置编码表示序列的顺序,使得模型能够并行训练,解决了长期依赖的问题,加快了语言转换速度。
[0045]
3、本发明通过交互模块,使多种目标语言之间相互学习、补充,获得更丰富的信息,提高了文本特征的有效性,提升了生成描述的准确性。
[0046]
4、本发明通过对支持的多种语言采用共享编码器网络参数和解码器骨干网络参
数,减少了需要存储的参数总数,节省了储存空间以及对计算机资源的占用。
[0047]
5、本发明通过self-critical强化训练,促进对模型的进一步微调,使得模型生成的描述结果更准确、更丰富多样。
附图说明
[0048]
图1为本发明图像-多语言字幕模型的框架图;
[0049]
图2为本发明自注意模块图。
[0050]
图3为本发明关系注意模块图。
[0051]
图4为本发明交互模块图。
[0052]
图5为本发明图像-多语言字幕模型训练流程图。
具体实施方式
[0053]
本实施例中,一种基于交互式transformer的图像-多语言字幕转换方法,是利用transformer模型,并综合考虑图像与文本特征,使用交互模块促进不同目标语言之间相互学习,提高模型生成描述的准确性,通过共享编码器网络参数和解码器骨干网络参数,减少了需要存储的模型参数总数,提升模型参数效率,最后通过self-critical强化训练,促进模型进一步微调,获得更准确、丰富多样的描述结果。如图1所示,模型的输入包括图像和文本信息,将图像传输到vinvl模块,得到图像的vinvl特征,将图像的vinvl特征输入编码器,经过l1个依次连接的编码模块,输出图像的上下文区域特征;将中、英文文本信息转换为文本特征,对文本特征进行位置编码;将位置编码后的文本特征与图像的上下文区域特征输入解码器,经过l2个依次连接的解码模块,输出解码特征;然后将解码特征输入中、英文句子生成器,生成中英文句子描述。具体的说,是按如下步骤进行:
[0054]
步骤1、构建图像-多语言字幕数据集d={i,y,z};其中,i表示图像集,y表示由图像集i中每张图像所对应的若干个中文描述语句构成的中文字幕集合;z表示由图像集i中每张图像所对应的若干个英文描述语句构成的英文字幕集合;本实施例中,使用的是ms coco数据集,该数据集包含丰富的图像资源,并且每张图像有5个英文描述。在此基础上,使用百度api对英文描述进行翻译,得到5个对应的中文描述,由此组成新的双语数据集,命名为coco-en-cn。
[0055]
步骤2、获取图像的vinvl特征表示;
[0056]
采用vinvl模型对图像集i中的图像i进行处理,得到图像i的vinvl特征表示xi;
[0057]
步骤3、获取文本的特征表示;
[0058]
步骤3.1、基于中文字幕集合y和英文字幕集合z,通过对文本数据进行分词、删除词频过低的单词,英文中将出现次数少于5次的单词舍去,中文中将出现次数少于10次的单词舍去,其余单词组成字典,构建包含m1个词汇量的中文字典以及m2个词汇量的英文字典;本实施例中,m1=9532,m2=9487。
[0059]
步骤3.2、计算中文字幕集合y中每个中文描述语句的文本特征表示,令图像i所对应的任意一个中文描述语句yi的中文文本特征表示记为其中,表示中文描述语句yi中的第k个中文词向量;k表示词向量总数,本实施例中,k=20;
[0060]
计算英文描述语句集合z中每个英文描述语句的文本特征表示,令图像i所对应的任意一个英文描述语句zi的英文文本特征表示记为其中,表示英文描述语句zi中的第k个英文词向量;
[0061]
步骤4、构建图像-多语言字幕模型,包括:编码器、解码器和生成器;
[0062]
步骤4.1、编码器由l1个相同的编码模块依次连接而成,每个编码模块均由多头自注意网络和全连接前馈网络组成,且每个编码模块后均连接有残差操作层和正则化操作层,本实施例中,l1=6;
[0063]
图像i的vinvl特征表示xi输入编码器中,并经过依次经过l1个编码模块的处理后输出图像i的上下文区域特征
[0064]
1、步骤4.2、解码器由l2个相同的解码模块依次连接而成,本实施例中,l2=1,且每个解码模块均由交互模块、关系模块和前馈网络组成;交互模块,如图4所示,由一个自注意模块(如图2所示)、一个关系注意模块(如图3所示)和一个融合模块组成,通过交互模块,使多种目标语言之间相互学习、补充,获得更丰富的信息,提高生成描述的准确性;两种语言共享编码器网络和解码器骨干网络,减少了需要存储的模型参数总数,提升模型参数效率,节省了计算资源。
[0065]
步骤4.2.1、使用位置编码表示序列的顺序;
[0066]
对第k个中文词向量和第k个英文词向量进行位置编码,分别得到第k个中文嵌入特征和第k个英文嵌入特征从而得到图像i所对应的任意一个中文描述语句的中文嵌入特征向量和图像i所对应的任意一个英文描述语句的英文嵌入特征向量
[0067]
步骤4.2.2、将中文嵌入特征向量和英文嵌入特征向量拼接为向量后输入第一个解码模块中的交互模块进行交互学习。分别由自注意模块输出中文的内部表示h
icn-cn
和英文的内部表示h
ien-en
、由关系注意模块输出中-英的交互表示h
icn-en
和英-中的交互表示的h
ien-cn
,再将中文的内部表示h
icn-cn
、英文的内部表示h
ien-en
和中-英的交互表示h
icn-en
、英-中的交互表示h
ien-cn
输入融合模块中,并利用式(1)和式(2)的融合函数进行融合,从而得到图像i所对应的任意一个中、英文描述语句的高级表示h
icn
、h
ien

[0068]hien
=h
ien-en
+λ1×
relu(h
ien-cn
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0069]hicn
=h
icn-cn
+λ2×
relu(h
icn-en
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0070]
式(1)和式(2)中,λ1,λ2表示两个控制参数,本实施例中,λ1=λ2=0.1;relu表示激活函数;
[0071]
步骤4.2.3、由中、英文描述语句的高级表示h
icn
、h
ien
拼接为高级表示[h
icn
,h
ien
],并将图像i的上下文区域特征一起输入关系模块中,并由关系模块输出图像i及其对应的中英文描述语句的关系注意特征i
i-yizi;
[0072]
步骤4.2.4、将关系注意特征i
i-yizi输入前馈神经网络,并输出解码特征decoder
i,1

[0073]
步骤4.2.5、将第一个解码模块输出解码特征decoder
i,1
作为下一个解码模块的输入,并依次经过l2个解码模块的处理后,由第l2个解码模块的前馈神经网络输出最终的解码特征decoder
i,l2

[0074]
步骤4.3、生成对图像i的中、英文自然语言描述句子:
[0075]
步骤4.3.1、将最终的解码特征decoder
i,l2
中包含的图像i的中、英文语言描述的预测信息按维度拆为中文预测信息cn-decoder
i,l2
和英文预测信息en-decoder
i,l2

[0076]
将中文预测信息cn-decoder
i,l2
输入中文句子生成器,生成中文描述句子的预测特征cni;
[0077]
将英文预测信息en-decoder
i,l2
输入英文句子生成器,生成英文描述句子的预测特征eni;
[0078]
步骤4.3.2、在中、英字典中查找中、英文描述句子的预测特征cni,eni所对应的单词,从而生成中、英文自然语言描述句子y
′i,z
′i;
[0079]
步骤5、优化图像-多语言字幕模型,图像-多语言字幕模型训练流程如图5所示:
[0080]
步骤5.1、在第一训练阶段时,基于图像-多语言字幕数据集d,通过最小化如式(1)所示的交叉熵损失loss来优化图像-多语言字幕模型:
[0081][0082]
式(3)中,θ表示学习参数;
[0083]
设置第一阶段最大迭代次数epoch_number1=15,利用反向传播和梯度下降法对目标函数loss进行训练,本实施例中,梯度下降法采用学习率,指数衰减率的adam优化算法,当迭代次数达到epoch_number1时,停止训练,使得目标函数loss达到最小。
[0084]
步骤5.2、在第二训练阶段时,基于式(6)所示的总梯度利用self-critical训练方法对优化后的图像-多语言字幕模型进行微调,从而得到最佳图像-多语言字幕模型:
[0085][0086][0087][0088]
式(4)中,表示中文自然语言描述句子y

的梯度;式(5)中,表示英文自然语言描述句子z

的梯度;θ表示学习参数,r表示cider函数,b表示基础分数,n表示采样总数,in表示图像集i中采样的第n个图像,y
′n表示in的中文自然语言描述句子,z
′n表示in的英文自然语言描述句子;
[0089]
设置第二阶段最大迭代次数epoch_number2=15,利用self-critical进一步进行微调,当迭代次数达到epoch_number2时,停止训练。
[0090]
步骤5.3、以最佳图像-多语言字幕模型实现对输入的任意图像输出其对应的中、英文语言字幕。
[0091]
综上所述,本方法更适用于在实际资源有限的环境中,比如移动设备,若采用为每一种语言设计一个独立模型,存储多个大型神经网络模型来支持多种语言是不切实际的。但通过单一模型支持多种语言,节省了储存空间以及对计算机资源的占用,提高了模型效率,更有利于实际运用时的部署与维护。

技术特征:
1.一种基于交互式transformer的图像-多语言字幕转换方法,其特征是,按如下步骤进行:步骤1、构建图像-多语言字幕数据集d={i,y,z};其中,i表示图像集,y表示由所述图像集i中每张图像所对应的若干个中文描述语句构成的中文字幕集合;z表示由所述图像集i中每张图像所对应的若干个英文描述语句构成的英文字幕集合;步骤2、获取图像的vinvl特征表示;采用vinvl模型对图像集i中的图像i进行处理,得到图像i的vinvl特征表示x
i
;步骤3、获取文本的特征表示;步骤3.1、基于中文字幕集合y和英文字幕集合z构建包含m1个词汇量的中文字典以及m2个词汇量的英文字典;步骤3.2、计算中文字幕集合y中每个中文描述语句的文本特征表示,令图像i所对应的任意一个中文描述语句y
i
的中文文本特征表示记为其中,表示中文描述语句y
i
中的第k个中文词向量;k表示词向量总数;计算英文描述语句集合z中每个英文描述语句的文本特征表示,令图像i所对应的任意一个英文描述语句z
i
的英文文本特征表示记为其中,表示英文描述语句z
i
中的第k个英文词向量;步骤4、构建图像-多语言字幕模型,包括:编码器、解码器和生成器;步骤4.1、所述编码器由l1个相同的编码模块依次连接而成,每个编码模块均由多头自注意网络和全连接前馈网络组成,且每个编码模块后均连接有残差操作层和正则化操作层;所述图像i的vinvl特征表示x
i
输入所述编码器中,并经过依次经过l1个编码模块的处理后输出图像i的上下文区域特征步骤4.2、所述解码器由l2个相同的解码模块依次连接而成,且每个解码模块均由交互模块、关系模块和前馈网络组成;所述交互模块由一个自注意模块、一个关系注意模块和一个融合模块组成;步骤4.2.1、使用位置编码表示序列的顺序;对第k个中文词向量和第k个英文词向量进行位置编码,分别得到第k个中文嵌入特征和第k个英文嵌入特征从而得到图像i所对应的任意一个中文描述语句的中文嵌入特征向量和图像i所对应的任意一个英文描述语句的英文嵌入特征向量步骤4.2.2、将中文嵌入特征向量和英文嵌入特征向量拼接为向量后输入第一个解码模块中的交互模块进行交互学习,分别由自注意模块输出中文的内部表示h
icn-cn
和英文的内部表示h
ien-en
、由关系注意模块输出中-英的交互表示h
icn-en
和英-中的交互表示的h
ien-cn
,再将中文的内部表示h
icn-cn
、英文的内部表示h
ien-en
和中-英的交互表示h
icn-en
、英-中的交互表示h
ien-cn
输入融合模块中,并利用式(1)和式(2)的
融合函数进行融合,从而得到图像i所对应的任意一个中、英文描述语句的高级表示h
icn
、h
ien
:h
ien
=h
ien-en
+λ1×
relu(h
ien-cn
)
ꢀꢀꢀꢀ
(1)h
icn
=h
icn-cn
+λ2×
relu(h
icn-en
)
ꢀꢀꢀꢀ
(2)式(1)和式(2)中,λ1,λ2表示两个控制参数;relu表示激活函数;步骤4.2.3、由中、英文描述语句的高级表示h
icn
、h
ien
拼接为高级表示[h
icn
,h
ien
],并将图像i的上下文区域特征一起输入关系模块中,并由关系模块输出图像i及其对应的中英文描述语句的关系注意特征i
i-y
i
z
i
;步骤4.2.4、将关系注意特征i
i-y
i
z
i
输入前馈神经网络,并输出解码特征decoder
i,1
;步骤4.2.5、将第一个解码模块输出解码特征decoder
i,1
作为下一个解码模块的输入,并依次经过l2个解码模块的处理后,由第l2个解码模块的前馈神经网络输出最终的解码特征decoder
i,l2
;步骤4.3、生成对图像i的中、英文自然语言描述句子:步骤4.3.1、将最终的解码特征decoder
i,l2
中包含的图像i的中、英文语言描述的预测信息按维度拆为中文预测信息cn-decoder
i,l2
和英文预测信息en-decoder
i,l2
;将所述中文预测信息cn-decoder
i,l2
输入中文句子生成器,生成中文描述句子的预测特征cn
i
;将所述英文预测信息en-decoder
i,l2
输入英文句子生成器,生成英文描述句子的预测特征en
i
;步骤4.3.2、在中、英字典中查找中、英文描述句子的预测特征cn
i
,en
i
所对应的单词,从而生成中、英文自然语言描述句子y
i

,z
i

;步骤5、优化图像-多语言字幕模型:步骤5.1、在第一训练阶段时,基于所述图像-多语言字幕数据集d,通过最小化如式(1)所示的交叉熵损失loss来优化图像-多语言字幕模型:式(3)中,θ表示学习参数;步骤5.2、在第二训练阶段时,基于式(6)所示的总梯度利用self-critical训练方法对优化后的图像-多语言字幕模型进行微调,从而得到最佳图像-多语言字幕模型:多语言字幕模型:多语言字幕模型:式(4)~式(6)中,表示中文自然语言描述句子y

的梯度;表示英文自然语言描述句子z

的梯度;θ表示学习参数,r表示cider函数,b表示基础分数,n表示采样总数,y
i

表示图像i的中文自然语言描述句子,z

n
表示i
n
的英文自然语言描述句子;
步骤5.3、以最佳图像-多语言字幕模型实现对输入的任意图像输出其对应的中、英文语言字幕。

技术总结
本发明公开了一种基于交互式Transformer的图像-多语言字幕转换方法,其步骤包括:1.构建图像-多语言字幕数据集,2.获取图像的VinVL特征表示,3.获取文本的特征表示,4.采用图像特征与文本特征训练图像-多语言字幕模型,5.利用训练好的图像-多语言字幕模型,实现对图像的多种语言描述。本发明的文本信息涉及中英文两种语言,能够综合利用文本与视觉信息,实现图像到多语言字幕的转换,从而支持多种语言的高效转换。的高效转换。的高效转换。


技术研发人员:胡珍珍 徐月圆 周愿恩 洪日昌 汪萌
受保护的技术使用者:合肥工业大学
技术研发日:2022.04.20
技术公布日:2022/7/5
转载请注明原文地址: https://www.8miu.com/read-8728.html

最新回复(0)