全称 | Bidirectional Encoder Representations from Transformers | | |
区别于传统Transformer | 使用 双向 (bidirectional) self-attention | 集成了 BERT, Transformer-based model for NLP, object proposals systems such as Faster-RCNN | |
预训练数据集 | wiki | COCO image caption dataset | VisualBERT: In order to learn associations between images and text, we consider … where detailed semantics of an image are expressed in natural language. |
预训练任务1 | MLM (masked language model, Masked LM) | MLM: 掩盖文本的部分内容,模型基于其余文本和图片内容预测掩盖词 | MLM: 随机掩盖输入句子中的一些token,目的是基于他的上下文预测被掩盖的词,最终是表示能够融合上下文的含义 |
预训练任务2 | NSP (next sentence prediction) | Sentence-image prediction task: 判断文本和图片是否匹配 | NSP: 预测句子B是否是句子A的下一句 |
预训练 (pre-training) 阶段 | 在不同的无监督任务(MLM &NSP )上训练 输入是未标注的句子样本,输出:[CLS]位置输出NSP 任务的结果,其他对应位置输出MLM 的结果 | BERT参数初始化模型 -> 在coco上预训练 -> 在任务数据集上预训练 | VisualBERT-Task-Specific Pre-Training: 使用任务数据集做MLM预训练任务,有助于模型适应新的目标领域 |
微调 (fine-tuning) 阶段 | 先用预训练的参数初始化模型,再使用下游任务的数据集微调所有参数 | 接在预训练阶段之后,仿照BERT微调 | BERT有开源的预训练模型,直接加载即可在自己的任务上微调;Transformers上有VisualBERT的预训练模型,可加载 |
embedding | WordPiece embeddings with a 30000 token vocabulary | | |
文本输入表示 | token embedding + segment embedding + position embedding | token embedding + segment embedding + position embedding | |
图片输入表示 | - | visual feature representation + segment embedding + position embedding | |
对于图片的处理 | - | 使用object proposals systems 抽取的 图片特征 作为无序序列输入 (非完整图片) | VisualBERT:每个数据集使用不同的“standard object detector” 以生成region proposals 和 region features;其解释这么做的原因 “We do not use grid-level features from ResNet152 because it results in longer sequences and longer training time” |
segment embedding | 区分句子A和句子B | 区分文本和图片 | |
position embedding | 与句子的token顺序一致 | 图片的position embedding 是 对齐的单词的position embedding 的总和 | VisualBERT-VCR:The dataset also provides alignments between words and bounding regions that are referenced to in the text, which we utilize by using the same position embeddings for matched words and regions. |
应用于下游任务时的epoch | 2~4 | 10~12 | |
应用于下游任务时的学习率 | 2e-5 3e-5 5e-5 | 2e-5 5e-5 | |