论文阅读_跨模态商品搜索FashionBERT

论文地址:https://arxiv.org/pdf/2005.09801v1.pdf

《FashionBERT: Text and Image Matching with Adaptive Loss for Cross-modal Retrieval》是一篇非常新的论文,于2020年5月20提交arxiv,文中在时尚领域使用自适应损失技术,实现了文本与图片的跨模态搜索(用文本搜图片、用图片搜文本)。

早期的跨模态搜索常将视觉和文本表示投影到一个共享的嵌入子空间中,以进行跨模态相似度计算,或者融合二者计算匹配分数。随着预训练模型的兴起,很多模型尝试用BERT作为backbone网络学习跨模式的信息表示。其中比较困难的问题在于如何抽取图像特征,作为BERT模型的输入,之前的主要方法是从RoI区域中提取特征,但效果并不好。

服饰图中一般只有一个核心物体,而模型一般提取多个物体,多个感兴趣区域互相重叠、图像中的非对象物体(如人脸)也被识别出来、文本中描述的样式和属性常常更多关注细节(如样式:波西米亚风格,属性:高领),而非针对“Object”级别。论文致力于更高层的特征表示,并通过自适应损失平衡多模型训练。最终用模型实现了图像文本匹配和跨模态搜索两项任务。

文中提出将图片切分成小块,这样可提取到更多细节,并且避免了重叠问题,它的空间顺序也可作为代入BERT模型时的位置信息。

论文的主要贡献有:

  • 描述了时尚领域文本和图像匹配的问题,并提出解决方法。
  • 提出将图像切分成小块并提取特征的方法,并使用自适应误差平衡多种子任务。
  • 使用公开数据集测试,证明了文中方法在时尚领域跨模态搜索的能力。
  • 展示了FashionBERT在实际应用中的效果和模型的细节。

方法

BERT模型

BERT是基于Attention的双向语言模型,它使用了Transformer的编码器部分,用大量数据预训练模型,将其迁移学习到其它任务中,并得到了很好的效果。它也可以用于跨模态的场景之中。

FashionBERT

文中提出的FashionBERT框架如下图所示,框架分为四部分:文本表示、图像表示、匹配到主干网(backbone),使用自适应损失训练模型。

文本表示
文本表示与传统的BERT网络一致,最终使用词嵌入、位置嵌入、段嵌入(指定功能,文本置为T,图像置为I)作为文本表示,在上图中用黄色表示。

图像表示
如图所示,不同于RoI方法,文中直接将图片切成了大小相等的块(patch),如果把整张图视为一段描述文字,则把每一小块视为文中的一个词(image token),使用如InceptionV3或ResNeXt-101图像卷积网络,提取小块的特征,将图的空间位置作为位置嵌入,从而也生成了BERT模型所需的词嵌入(每小块图像特征)、位置嵌入和段嵌入。在上图中用绿色表示。

匹配到主干网
将文本与图片特征用串联方式(concatenation)连接,作为FashionBERT的输入。与传统的BERT网络一致,在数据的开头部分加入[CLS]标记,在text和image之间加入[SEP]标记;训练过程中文本和图像单元通过self-attention产生联系。

使用自适应损失训练
文中使用三种任务训练模型,第一种任务是遮蔽文本中的部分信息,第二种任务是遮蔽图片中的部分信息,第三种是判断图片与文本是否属于同一类别(同一物品)。并提出自动调节三种任务权重的方法。

遮蔽文本中的部分信息Masked Language Modeling (MLM)是BERT中的标准方法,它遮蔽句中15%的词(token),用模型根据剩余的词计算被遮蔽的词具体应该是什么,从而建立上下文之间的联系。其损失函数如下:

其中是网络参数,D是训练数据,t是当前用于训练的实例,i是被遮蔽的词,反斜杠表示该词被遮蔽,即:在网络参数的条件下,遮蔽第i个词,根据上下文中的其它词计算该词是ti的概率。

图片遮蔽Masked Patch Modeling (MPM)与之同理,随机遮蔽10%的小块,将被遮蔽块的特征设置为0,用模型计算被遮蔽块特征的概率分布,然后最小化该块真实值与计算值的KL距离(KL-divergence),公式如下:

第三个任务是计算图片与文本是否匹配Text and Image Alignment (TIA),在[CLS]中设置其是否为同一物品,使用交叉熵计算误差,公式如下:

上式中t,p分别指文字和图片。y指是否属于同一物品。

模型需要优化上述三个误差函数:

每一个误差的占比w,w可动态调整,其具体算法如下:

使用该方法使模型效果有所提升,在测试中,不使用自适应调节方法时,每种误差各占比为1/3。

简言之,wi与li成正比,li误差越大,wi占比越高。从下图中可以看到,模型开始训练时,给TIA和MPM误差以更大权重,优化训练这两个模块,这是由于这两个模块相对MLM较新,需要更多训练;后期偏重MLM和MPL模型,可能由于这两个模块难度更大。

实验

实验使用了Fashion-Gen数据,其中包括67,666种时尚产品,每个产品有1-6个不同角度,共293,008张图片,进行两种实验,第一种实验测试图片和文本的匹配度,判断预测的准确率;第二种实验是跨模态搜索,从测试集中随机选择1000张图片和1000个文字,作为被搜索的内容,用与它同样的物品以及抽取100个其它物品组成备选项。分别测试用图搜字和用字搜图。

下图对比了FashionBERT与当前流行的跨模态模型的效果:

实验还证明,更深的BERT网络层次,更强的卷积网络能进一步提升模型效果,具体数据请见论文。

实际应用

作者将文中的技术用于实际的商品搜索场景之中(阿里巴巴)。具体应用时微调了模型结构,如下图所示,输入由三部分组成,分别是搜索字符串,商品标题和商品图片。

并与之前模型对比,效果如下:

其中BERT模型不使用图片数据,仅使用文字匹配;BERT+IMG未训练图片与文字之间的联系,VSL(Variable Sequence Length)模型不对字符串做pad补齐操作,相对比较节约时间。可以看到6层的模型比2层模型效果更好,但在实际应用中需要考虑模型运行速度,作者将进一步尝试简化版本的BERT模型。

你可能感兴趣的:(论文阅读_跨模态商品搜索FashionBERT)