最近开始做Referring Expression Comprehension方向的研究,很多论文看了以后就忘了,再解决相关问题时也想不起来论文的思路(可能读的时候就没看出来:)。为了跳出当前这种困境,我打算重新温习下读过的一些论文,并再写作的过程中整理相关思路,为以后有更好的idea打好坚实的基础。因此,带着这个目的,我的文章着眼于论文的思路、创新点以及可以借鉴的地方。废话不多说了,开始写文章!
MAttNet这篇文章属于two-stage的方法,即首先利用Faster-RCNN框架提取出各个objects对应的regions,再从这些objests中选出与expressions描述最详尽的object作为referent。 以往的two-stage方法中对于language主要是整体处理,而不关心各个成分的作用;所以以此为切入点,参考VQA等任务,作者将句子分割成不同的module(eg. subject, location, relationship),并根据不同的module对object feature进行不同的处理
总的来看,作者的实验部分还是相当solid的,文章中的各个点的对比基本都有涉及到。主要有一个地方我不是十分的确定,就是relationship module对模型的准确率提升很小,基本都在1%以下。。。当然,这对验证该模块的有效性来说应该算是足够了。 我个人认为,提升较小的原因有以下三点:
数据集较为简单,大部分expression仅凭subject及localization就可以确定object;如果有较为复杂的数据集,应该可以验证这个看法作者relationship模块设计不是很完美,仅仅考虑了距离最近的五个object中最重要的那个。这种方法很粗暴(scene graph方法的作者们哭晕在厕所),相当于已经假设关系中涉及的object都在自己的附近(虽然数据集中大部分确实如此),对于我来说还是不可取的作者在设计loss function时,也采用了contrast learning的思路,不过选取negative samples应该还可以有一定改进;并且要是能做个不采用contrast learning的对比就更好了(实际上是我不想做┑( ̄Д  ̄)┍)