研究者构建了一个名为悟空的新数据集 , 该数据集包含从网络收集的 1 亿个图文对 。 为了涵盖足够多样的视觉概念 , 悟空数据集是由包含 20 万个词条的查询列表里收集的 。 这个基础查询列表取自 Yan Song 等人的论文《Directional Skip-Gram: Explicitly Distinguishing Left and Right Context for Word Embeddings》 , 然后根据华为的海量新闻文本语料库中出现的中文单词和短语的频率进行过滤后所得 。
查询列表建好后 , 研究者在百度图片搜索每个查询 , 以获取图片 URL 列表和相应的标题信息 。 为了保持不同查询结果间的平衡 , 他们每个查询最多搜索 1000 个样本 。 然后使用先前获得的图像 URL 下载图像 , 最终共收集了 1.66 亿个图文对 。 然后按照惯例 , 研究者通过下文的一系列过滤策略来构建最终的悟空数据集 。 下图 2 显示了悟空数据集中的一些样本 。
文章图片
基于图像的过滤
研究者首先根据图像的大小和长宽比对数据进行过滤 。 只保留长或宽超过 200 像素且长宽比不超过 3 的图像 。 这种方式过滤掉了太小、太高或太宽的图像 , 因为这些图像在预训练期间经过上采样和方形裁剪等图像增强手段后 , 可能变成低分辨率 。
基于文本的过滤
其次 , 为了使选择的样本具有对应图像的高质量中文描述 , 研究者根据图像所附文本的语言、长度和频率对数据进行进一步过滤 。 具体来说 , 他们首先检查了语言和长度 , 保留了包含至少一个但少于 32 个汉字的句子 。 同时还会丢弃无意义的图像描述 , 例如「000.jpg」 。 之后 , 与太多图片配对的文字通常与图片内容无关 , 例如「查看源网页」(View source page)、「展开全文」(Expand text)、「摄影部落」(Photography community) 。 实际中 , 研究者将此阈值设置为 10 , 即丢弃掉在收集的整个语料库中出现超过 10 次的图文对 。
为了保护文本中出现的个人隐私 , 研究者将人名替换为特殊标记「< 人名 >」 , 此外 , 他们还构建了一个中文敏感词列表 , 包含敏感词的图文对也被丢弃 。
应用上述过滤策略后 , 研究者最终得到一个约 1 亿对的数据集 。 下表 2 显示了数据集的统计量:数据集文本中有 20,442 个唯一 token , 每个描述中的平均 token 数为 22 。
文章图片
在下图 3 中 , 研究者可视化了数据集中单词(由一个或多个 token 组成)的分布 。 然后 , 他们使用中文文本分词工具 Jieba 来截取单词并构建数据集的词云 。
文章图片
方法架构
文本 - 图像联合对齐
与最近经过充分验证的方法类似 , 研究者采用了对比预训练架构 , 如下图 1 所示 。 他们使用一个带有基于 Transformer 的文本和图像编码器的双流模型 。 这两个编码器将文本和视觉输入 token 转换为相同维度的嵌入 。 在这个学习到的联合嵌入空间中 , 研究者使用对比损失来鼓励成对的图像和文本具有相似的嵌入 , 而不成对的具有不同的嵌入 。
文章图片
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
