如何提取网络架构的先验知识?为它画幅素描吧!( 四 )

神经网络的模块性

一个模块化的神经网络由数个独立的神经网络模块组成,它们只通过「将某个模块的输出作为另一个模块输入」这样的方式来传递信息。这种思想启发了许多实用架构的出现,比如 Neural Modular Networks、Capsule Neural Networks 和 PathNet。我们也可以拆分其它经典的神经网络架构,把它们看作模块化的网络,并应用我们的方法。比如,卷积神经网络(Convolutional Neural Networks,CNNs)通常被认为是以模块化的方式工作的,网络在低层检测出图像中基本的概念和属性,而在较高层检测更加复杂的物体。在这种观点下,各种卷积核就对应于各种模块。在下图中,我们给出了模块化网络一个形象的描述。

如何提取网络架构的先验知识?为它画幅素描吧!

上图是用模块化神经网络进行图像处理过程的一个形象的图示。数据从底端经过蓝色方框代表的模块流向顶端。请注意,在较低层中,模块对应的是一些基本的元素(比如图像的边缘);而较高层的模块对应着更加复杂的物体(比如人或者猫)。我们还应该注意,在这个想象的模块化网络中,检测脸的模块的输出有足够的通用性,使它能够同时被检测人和检测猫的模块所利用。

推荐阅读