注:为了便于理解,我在翻译的时
候可能不完全遵循原文句子,部分内容经过理解使用了自己的表达;论文部分原文是英文,我也将其翻译了。
什么是胶囊网络?
胶囊网络是
Geoffrey Hinton
提出的一种新型神经网络结构,为了解决卷积神经网络
(ConvNets)
的一些缺点,提出了胶囊网络。
话不多说,来看看这个听起来就像「一颗一颗药摆在你面前」的网络是怎么样的。
卷积网络有平移不变性
平移不变性是什么呢?假设我们有一个可以分类猫的模型,你给这个模型看一张猫的图片,它会预测出这是一只猫。然后你把猫向左移一下,再展示给这个模型看,它依然会认为这是一只猫,而不会预测出其他的信息。
这样看来好像不错,意味着无论这只猫放在图片的哪个位置,我们的模型都能识别出这是一只猫,好像它表现得还不错。但是有的时候我们需要的是
平移同变性
。
也就是当我们给这个模型展示一张移动到右边的猫的图片时,模型预测的是一只移动到右边的猫;展示一张移动到左边的猫的图片时,模型预测的是一只移动到左边的猫。
为什么要
平移同变性
呢?一般我们给一个模型输入一张人脸的图片的时候,五官都是在正常的位置的,眼睛在眼睛的位置上,鼻子在鼻子的位置上。
但是我们如果把眼睛放在额头上,耳朵放在下巴那,一般的卷积神经网络还是会认为这是一张脸,因为它有
平移不变性
,也就是它只认为一张有鼻子有眼睛有嘴巴等特征的脸,就是人脸。让我们来看一下这样一张奇怪的人脸是怎样的。
如果
胶囊网络
像我们所说的那样有
平移同变性
,那么它就能够识别到人脸的某一部分与另一部分的相对位置不正确,并且把这一部分正确的标注出来:
卷积网络需要大量的数据来泛化
为了使卷积神经网络具有平移不变量,模型必须为每个不同的观测角度学习不同的滤波器,而这样就需要大量的数据来进行。
卷积网络在人类视觉系统上的表现很差
根据
Hinton
所说的,当视觉刺激被触发的时候,大脑里面有一种内在的机制,将低层次的视觉数据「导航」到它认为可以最好地处理这些数据的部分。而卷及网络使用多层滤波器来从底层可视数据中提取高级信息,所以这种
导航机制
就不存在了。
而且,当人类在看一个物体的时候,视觉系统会在坐标系上表示这个物体。就好比我们可以知道一个图形是不是给翻转了。
当我们看到上面的这个字母时,我们是会在脑里边默默地把他旋转到一个它们一般所放置的参考点,类似于: