直接接着上一篇Blog:
[7] Routing networks: Adaptive selection of non-linear functions for multi-task learning (2017)
Routing networks and the challenges of modular and compositional computation (2019)
Conclusion:这篇文章和PathNet面对的问题比较接近,都是Multi-Task Learning,然后都是选择不同层不同的module,最大的区别就是使用RL来训练这个routing network,实际上和前面做VQA的文章方法类似。所以对于这篇文章,从大的方法论上我没有看到足够创新的地方,只能说其在RL的设计上有一些创新。有个问题是这篇文章一直觉得自己最大的不一样是选择一个module而不是选多个,很奇怪。实际上和mixture of experts没有本质区别。其实专门弄一个routing network并不是多好的事情,因为routing network本质上并没有和module有直接交互,只是大致学会每一个module是什么功能然后做出指派。
[8] Learning modular neural network policies for multi-task and multi-robot transfer.(2017)
Motivation: 这篇文章是Modularity在机器人上的典型应用。有不同的task,同时有不同的robot,那么是不是可以针对task训练一个module,针对robot也训练一个module,两种module任意组合就可以实现不同的效果?
Methodology:方法上很显然了,构建Task Modules和Robot Modules然后组合起来进行训练,通过一些工程上的方法实现稳定的训练。
Conclusion: 这篇文章的重要还是在于验证Modularity在Generalization上的有效性,并且可以肯定的说机器人要想实现泛化Generalization,就需要这样的modularity。不过这个是限定场景,已知module的组合方式,而我们更期待的是能够自主学会如何组合module,自主学会区分不同module的神经网络架构。
[9]Modular multitask reinforcement learning with policy sketches
Motivation & Methodology: 这篇文章可以说是VQA问题到机器人学习上的拓展了。通过所谓的Policy Sketch,类似于VQA中的Question,我们就可以构造对应的Modular Neural Network的组合,从而基于这个组合进行RL的训练。训练之后的module就具备generalization的效果。
Conclusion: 不管是这一篇还是上一篇文章,都是Modularity在机器人上的直接应用,存在问题很显然,都需要预先通过某种方式知道Layout。当然了,像这篇文章在实际情况中也是存在的,所以也同样是具备启发意义的。
[10]Systematic generalization: what is required and can it be learned (2018)
Introduction & Conclusion: 这篇文章属于验证性文章,我们一直说Modularity能实现Generalization,特别是Compositional/Systematic Generalization,但是没有专门对比一下。所以,这篇文章就构造了这样一个实验,非常简单的VQA实验,如上图,一张图里有很多字母,问题就问字母之间的相对位置。那么训练集和测试集的问题和字母的相对位置是不同的,这就导致神经网络必须具备Compositional generalization才能在测试集中解决的很好。那么,显而易见上图中是树形结构是最佳的模块化方式。这篇文章通过大量的实验证明说其他方法都不好,就这种最好。
总而言之,Modularity可以work的非常好,但是要work的好,网络的Layout很关键。这可能是废话,但是这篇文章专门做了这个分析也是棒棒的。
[11] Mcp: Learning composable hierarchical control with multiplicative compositional policies(2019)
Analysis:这篇文章依然是Modularity在机器人上的应用文章。作者提出了Multiplicative Compositional Policies,可以说是Mixture of Experts 的变种,由于policy输出Gaussian,所以,不像Mixture of Experts采用加权求和输出,而是对log likelihood 加权求和,因此,其形式为:
其中w是gating network输出的权重。
和前面的机器人应用相关文章类似,这篇文章先是假定有很多预先设定的任务既primitive,训练出很多个policy,然后再训练gating network:
这篇文章的idea可以说很简单,不过效果依然很酷。
[12] Multi-Task Reinforcement Learning with Soft Modularization (2020)
Analysis: 依然是机器人应用的文章,这一篇同样idea很简单,针对Multi-Task Learning的问题,直接输出一个routing的权重对不同的module进行soft组合。其实我不太明白,为什么这么简单的idea现在才有。这个idea也就是mixture of experts的拓展版。
因为是soft modularization,routing network和policy可以end-to-end 的训练,比起Pathnet也算是推进了一步。
小结
今天分析的很多文章都是应用型特别是面向机器人学习的文章,体现了Modularity的重要性。对于Modularity的研究,还有两个重要的方向:
- Independent Mechanism
- Modular Meta Learning
对于这两个主题,我们将分两个blog专门分析。
另外,Modularity在神经科学上也有广泛的研究,我们接下来的blog也会分析一下。
来源:oschina
链接:https://my.oschina.net/u/4312205/blog/3652132