我的研究方向是VQA视觉对话。这篇ViLBERT反复看了无数遍,代码都熟烂于心了。在我加入了我自己的研究方向并结合了vilbert的代码后取得了很高预测结果后我感叹不愧是facebook AI research的论文,太厉害了!
因为vilbert的数据不适合我现在的研究内容,我找了其他同样是facebook AI research的论文(不同的作者)的数据集并多次运行新的数据集的代码后我突然意识到这根本不是真正的人工智能!
先说一些vilbert的结构:
简单来说:先进行图片特征的提取:fast R-CNN。文本特征的提取:BERT。
然后分别进行图像特征和文本特征的自注意力+掩码。再进行文本和图像特征之间相互的多头注意力+掩码。这样就获得了文本特征(带了图像特征),图像特征(带了文本特征),融合特征这些特征值。
再进行类似transformer的手法进行encoder和decoder说白了还是注意力(q,k,v)的手段。
那么这个时候你可以输入任何的内容它都可以学习到相关的关系。
比如VQA:输入问题和图像,经过大量的数据训练后它能学到问题和图像的关系。
比如看图说话:输入图像和图像相关的话,它就能学到根据图像写一段话。