关于那篇disentangled representation的best paper,我想说说自己的观点,但我并不是说这篇文章糟糕,相反我从第一次看到这篇文章就觉得它在disentangled representation learning领域很有价值,所以在本题下面属于跑题的回答,只是大家对这篇paper讨论的比较多,所以单独聊聊。

首先是disentangled representation的定义。目前并没有一个普遍认可的formal定义,但普遍接受的非正式定义如下:

  • A disentangled representation should separate the distinct, informative factors of variations in the data.
  • Single latent units are sensitive to changes in single generative factors, while being relatively invariant to changes in other factors (Y. Bengio et al., 2013).
  • A change in a single underlying factor of variation [公式] should lead to a change in a single factor in the learned representation [公式] (Locatello et al., 2019).

大家可能会质疑为什么我们要纠结于把不同的factor独立的映射到representation vector中的不同维呢?也许对于某些task,比如一些分类问题,这一点并不影响complexity,即,entangled representation同样可能达到相同的complexity,比如最简单的等价变换。但是disentangled representation在有些task中确实有用,比如RL task,机器人从环境中学出一些disentangled representations能够与那些compact features describing its surrounding「一一对应」,那么当它面对一些不同的task,比如让它捡起一个红色的物体/捡起一个方形的物体,它便可以只利用表征中的少数几维来帮助完成这个任务,比如只需要position and color/shape。如果只学出了等价的entangled representation,便无法实现这一点。这是我们做disentangled representation learning的motivation的例子。参考Suter et al., 2019 introduction部分。

目前有一些工作在尝试对disentangled representation做严格定义,比如Higgins et al. (2018)从group theory,Suter et al. (2019)从causality。但都是基于上面的informal定义formalize.

明确了以上的事情,回到这篇文章。我认为作者基于目前对disentangled representation的定义,challenge了目前研究中一些假设,非常critical and solid,态度十分端正。大概从beta-vae开始,近两年disentangled representation learning有一些工作甚至有了套路,对某个生成模型的目标函数做些修改,称这样可以disentangle,在一些toy dataset上show一下实验结果traversal基本就结束了。这篇paper使得大家在做相关研究时,不得不去触及essential problems,做一些更有价值的工作。

以上只是我浅显的见解,希望大家批评指正。

PS. 欢迎大家讨论以下问题

请介绍Causality和Disentanglement作为机器学习的promising领域? - 知乎 https://www.zhihu.com/question/325432144


前面匿名用户提到 disentanglement representation 那篇 best paper 有意见,我也是对这篇文章有点意见,我下面要去得罪人了。

首先一点,他开篇数学就写错了,随便定义一个映射,然后概率密度处处相等,测度论学的挺好的(我希望我没看错):

当然,这个只是小问题,实验做的也是够辛苦的,态度满分呀。

大概意思我能理解,就是过了 decoder 以后,哪怕过了一层, disentanglement 就不会 disentanglement 了,导致这个原因是因为 disentanglement 定义有问题呀,谁特么拿矢量一个分量去定义 factor,以前看一堆文章全都是分量去相关性解耦做 disentanglement 我立马不想看了 ,难道不知道任何线性空间做幺正变换本质没变呀,你说拿特征矢量作为 factor 我或者没啥意见。

其实,也可以靠这条路去定义的 https://arxiv.org/pdf/1812.02230.pdf,当然,我觉得这篇文章格局还是不行,没啥干货,限定太多了,稍微涉及语义的表征立马定义不出来,路都走不下去。

额。。虽然深度学习时代,大部分数学都没用,做好实验才行,但也别这么仗著自家机器多,这么随便搞理论嘛。。。。。每天这么烧 GPU,就不怕环保局找你们麻烦吗?


MixHop: Higher-Order Graph Convolutional Architectures via Sparsified Neighborhood Mixing

https://arxiv.org/pdf/1905.00067.pdf

这一篇 好水啊

咱已经有attention了为啥还要纠结究竟要mix几个邻居。

而且看poster的时候感觉作者还挺迷之自信……


讨论解耦表示的最佳论文就是一篇糟糕的论文。它完全没有意识到网路作为对数据的表示,其结构应该完全是relational的,是不应该依赖于任何绝对坐标系的。论文做给出的等价表示的不可区分的例子,恰恰说明了网路应该具有的坐标变换下的不变性特征。作者是拿著正确的论据,得到了一个错误的结论。

所以,这是一篇糟糕的很有意义的论文,把这个糟糕的结论作为一个悖论来重新阐述,就可以得到完全不糟糕的结论。

正在整理思路准备写个和这个问题有关的东西。没有看懂思路的同学不必费神了,看懂了的同学就不要和我抢了,我都准备了好久了。


说一个我感觉有点水的文章:

Making Convolutional Networks Shift-Invariant Again

这文章通篇证明了一件事:CNN下采样导致的混叠会降低性能(之前也有文章说过),我们建议在下采样之前加低通滤波。

我不否认文章的工作量很大,尤其是在很多应用方向都做了实验,说明了"移不变"的CNN可以在相关方向获得更好的性能。但是,本文的方法实在是太过于"直白"了。只要是出现stride&>=2的运算单元。全部加上一个高斯核进行低通滤波。个人觉得这个方法只要学过信号与系统,数字信号处理,数字图像处理中任意一门课的人都会想到,只是至今无人会这么做而已。不过也可能本文的意义就是想说明,一个简单的抗混叠就可以提高CNN的泛化能力,希望大家多多关注这个点。


被 NeurIPS18 和 ICLR19 拒掉的那些, 感觉很多都已经 tweak 的不成样子了....目测 deep rl session就是重灾区. fb 上有直播录像可以看.


推荐阅读:
相关文章