论文地址:https://arxiv.org/abs/2104.14721
一、问题提出
目前Image Captioning方法主要采用基于规则或基于CNN+RNN的方法。然而,在噪声图像和图像与少量可区分的特征上表现不佳。
在药物发现项目中,需要分析和利用已发表的实验数据。然而,大多数publishers不包括计算机可读的符号,如InChI, SMILES等,相反,它们包含类似于图1的结构图。
二、模型框架
1、 Encoder-Decoder Model
1)positional embedding:传统正弦和余弦函数:
2)Encoder: Vision Transformer
将图像x∈R(H×W ×C) reshape为patches,transformer潜在向量大小D,因此将patches dim线性投影映射到D维。添加cls token。
3)Decoder: Vanilla Transformer
tokenizer inchi字符串,包括275个tokens(<SOS>, <PAD> and <EOS>),损失为交叉熵损失:
利用自回归解码来预测上一步分子的InChI的下一个字母,并生成分子的结构
三、实验
数据集:240多万张具有相应InChI格式的图像。使用rdkit将SMILES字符串转换为InChI格式,为这些smiles生成图像(Kaggle比赛)。GDB-13:13个原子的C, N, O, S和Cl的小有机分子数据集,遵循简单的化学稳定性和合成可行性规则。
数据增强:生成另一个由合成图像组成的数据集。对于这些图像,使用rdkit来修改给定InChI字符串的图像。修改包括盐和胡椒噪声、删除一个原子、将双键转换为单键并引入新的artifacts
数据划分:训练集、测试集和验证集,分别包含70%、10%和20%的图像。
评估性能:使用Levenshtein距离(度量将一个字符串转换为另一个字符串所需的编辑次数)
模型过于简单,实验过于少,只是验证了transformer模型的性能在分子image captioning要优于CNN + RNN。21年的论文,可能是Vit出来不久就将follow一下吧,更像课堂上小组写的Demo。