一、问题背景
??往往我们在将文本信息和图片信息进行Embedding表示之后,有时候我们需要进行语义信息的融合,我们常常使用简单的加法或点乘来进行信息融合,虽然加法和乘法交互看起来都挺自然而直观,但我们应该选择哪种方法? ??在阅读论文的时候,偶然发现了来自 AAAI2018年接受的 FiLM: Visual Reasoning with a General Conditioning Layer 论文,提出了一种可以嵌入到CNN模型中的通用网络层,用于多输入任务。例如,对于分类+回归的任务,有可能回归任务是基于分类结果的输出,分类结果不同,回归出来的值也不一样。该层不仅能够和传统卷积层一样以特征图为输入,还可以用分类结果的输出作为出入,来指导回归结果。
- 论文链接:https://arxiv.org/abs/1709.07871
- 代码地址:https://github.com/ethanjperez/film
??其中的FiLM模块是对加、乘操作做了一定的结合,它的模型结构如下所示,其中同时使用了加、乘操作:
二、加、乘操作的理解
??参考了Feature-wise transformations对这种条件仿射变换的理解,得出一下结论:
- 支持乘法交互的一个论点,是它们在学习输入之间的关系方面很有用,因为这些交互自然会识别**“匹配”**:相乘符号一致的元素比相乘不同的元素产生更大的值。这个特性就是
为什么经常使用点积来确定两个向量的相似程度 的原因。 - 支持加性交互的一个论点,是它们对于不太依赖两个输入的联合值的应用程序更自然,例如特征聚合或特征检测(即检查两个输入中的任何一个中是否存在特征)。
欢迎各位朋友在下方评论区提出其他不同的理解!
|