序言
卷积神经网络 (
Convolutional Neural Networks, CNNs
\text{Convolutional Neural Networks, CNNs}
Convolutional Neural Networks, CNNs )的兴起,不仅深刻改变了计算机视觉领域,其设计灵感更是深深植根于神经科学的沃土之中。自
20
20
20 世纪
60
60
60 年代以来,神经科学家对视觉系统的研究揭示了生物体如何高效处理复杂视觉信息的奥秘,尤其是大脑中视觉皮层对图像特征进行层次化抽象的能力。这一发现激发了计算机科学家与工程师的灵感,他们尝试模仿这一过程,通过构建人工神经网络来模拟并优化图像识别与理解的能力,卷积神经网络便是这一探索的杰出成果。
卷积神经网络的神经科学基础
历史背景
卷积网络也许是生物学启发人工智能的最为成功的故事。虽然卷积网络已经被许多其他领域指导,但是神经网络的一些关键设计原则来自神经科学。 卷积网络的历史始于神经科学实验,远早于相关计算模型的发展。
神经生理学家
David Hubel
‾
\underline{\text{David Hubel}}
David Hubel 和
Torsten Wiesel
‾
\underline{\text{Torsten Wiesel}}
Torsten Wiesel 合作多年,为了确定关于哺乳动物视觉系统如何工作的许多最基本的事实 (
Hubel and Wiesel, 1959, 1962, 1968
\text{Hubel and Wiesel, 1959, 1962, 1968}
Hubel and Wiesel, 1959, 1962, 1968 )。 他们的成就最终获得了诺贝尔奖。 他们的发现对当代深度学习模型有最大影响的是基于记录猫的单个神经元的活动。 他们观察了猫的脑内神经元如何响应投影在猫前面屏幕上精确位置的图像。 他们的伟大发现是,处于视觉系统较为前面的神经元对非常特定的光模式(例如精确定向的条纹)反应最强烈,但对其他模式几乎完全没有反应。 他们的工作有助于表征大脑功能的许多方面,这些方面超出了我们讨论的范围。 从深度学习的角度来看,我们可以专注于简化的,卡通形式的大脑功能视图 。 在这个简化的视图中,我们关注被称为
V1
\text{V1}
V1 的大脑的一部分,也称为主要视觉皮层 (
primary visual cortex
\text{primary visual cortex}
primary visual cortex )。
V1
\text{V1}
V1 是大脑对视觉输入开始执行显著高级处理的第一个区域。在该卡通视图中,图像是由光到达眼睛并刺激视网膜(眼睛后部的光敏组织)形成的。视网膜中的神经元对图像执行一些简单的预处理,但是基本不改变它被表示的方式。然后图像通过视神经和称为外侧膝状核的脑部区域。这些解剖区域的主要作用是仅仅将信号从眼睛传递到位于头后部的
V1
\text{V1}
V1 。 卷积网络层被设计为描述
V1
\text{V1}
V1 的三个性质:
V1
\text{V1}
V1 布置在空间图中。
它实际上具有二维结构来反映视网膜中的图像结构。 例如,到达视网膜下半部的光仅影响
V1
\text{V1}
V1 相应的一半。 卷积网络通过用二维映射定义特征的方式来描述该特性。
V1
\text{V1}
V1 包含许多简单细胞 (
simple cell
\text{simple cell}
simple cell )。
简单细胞的活动在某种程度上可以概括为在一个小的空间位置接受域内的图像的线性函数。 卷积网络的检测器单元被设计为模拟简单细胞的这些性质。
V1
\text{V1}
V1 还包括许多复杂细胞 (
complex cell
\text{complex cell}
complex cell )。
这些细胞响应类似于由简单细胞检测的那些特征,但是复杂细胞对于特征的位置微小偏移具有不变性。 这启发了卷积网络的池化单元。 复杂细胞对于照明中的一些变化也是不变的,不能简单地通过在空间位置上池化来刻画。 这些不变性激发了卷积网络中的一些跨通道池化策略,例如
maxout
\text{maxout}
maxout 单元 (
Goodfellow et al., 2013b
\text{Goodfellow et al., 2013b}
Goodfellow et al., 2013b )。 虽然我们最了解
V1
\text{V1}
V1 ,但是一般认为相同的基本原理也适用于视觉系统的其他区域。
在我们视觉系统的卡通试图中,当我们逐渐深入大脑时,遵循池化的基本探测策略被反复执行。 当我们穿过大脑的多个解剖层时,我们最终找到了响应一些特定概念的细胞,并且这些细胞对输入的很多种变换都具有不变性。 这些细胞被昵称为‘‘祖母细胞 ’’——这个想法是一个人可能有一个神经元,当看到他祖母的照片时该神经元被激活,无论祖母是出现在照片的左边或右边,无论照片是她的脸部的特写镜头还是她的全身照,也无论她处在光亮还是黑暗中,等等。 这些祖母细胞已经被证明确实存在于人脑中,在一个被称为内侧颞叶(niè yè) 的区域 (
Quiroga et al., 2005
\text{Quiroga et al., 2005}
Quiroga et al., 2005 )。
研究人员测试了单个神经元是否会响应名人的照片。 他们发现了后来被称为 “
Halle Berry
\text{Halle Berry}
Halle Berry 神经元’’ 的神经元:由
Halle Berry
\text{Halle Berry}
Halle Berry 的概念激活的单个神经元。 当一个人看到
Halle Berry
\text{Halle Berry}
Halle Berry 的照片,
Halle Berry
\text{Halle Berry}
Halle Berry 的图画,甚至包含单词“
Halle Berry
\text{Halle Berry}
Halle Berry ’’ 的文本时,这个神经元会触发。 当然,这与
Halle Berry
\text{Halle Berry}
Halle Berry 自己无关;其他神经元响应
Bill Clinton, Jennifer Aniston
\text{Bill Clinton, Jennifer Aniston}
Bill Clinton , Jennifer Aniston 等的出现。 这些内侧颞叶神经元 比现代卷积网络更通用,它们在读取名称时不会自动推广到识别人或对象。
与卷积网络的最后一层特征上最接近的类比是称为颞下皮质 (
IT
\text{IT}
IT )的脑区。 当查看一个对象时,信息从视网膜经
LGN
\text{LGN}
LGN 流到
V1
\text{V1}
V1 ,然后到
V2
\text{V2}
V2 ,
V4
\text{V4}
V4 ,然后是
IT
\text{IT}
IT 。 这发生在瞥见对象的前
100ms
\text{100ms}
100ms 内。 如果允许一个人继续观察对象更多的时间,那么信息将开始向后流动,因为大脑使用自上而下的反馈来更新较低级脑区中的激活。 然而,如果我们打断人的注视,并且只观察前
100ms
\text{100ms}
100ms 内的大多数前向激活导致的放电率,那么
IT
\text{IT}
IT 被证明与卷积网络非常相似。 卷积网络可以预测
IT
\text{IT}
IT 放电率,并且在执行对象识别任务时与人类(时间有限的情况)非常类似 (
DiCarlo, 2013
\text{DiCarlo, 2013}
DiCarlo, 2013 )。 话虽如此,卷积网络和哺乳动物的视觉系统之间还是有许多区别 。这些区别有一些是计算神经科学家 所熟知的,但超出了我们讨论的范围。还有一些区别尚未知晓,因为关于哺乳动物视觉系统如何工作的许多基本问题仍未得到回答。简要列表如下:
人眼大部分是非常低的分辨率,除了一个被称为中央凹 (
fovea
\text{fovea}
fovea ) 的小块。
中央凹仅观察保持在手臂长度的拇指大小的区域。 虽然我们觉得我们可以看到高分辨率的整个场景,但这是由我们的大脑的潜意识部分创建的错觉,因为它缝合了我们瞥见的若干个小区域。 大多数卷积网络实际上接收大的全分辨率的照片作为输入。 人类大脑控制几次眼动,称为扫视 (
saccade
\text{saccade}
saccade ),以瞥见场景中最显眼的或任务相关的部分。 将类似的关注机制 融入深度学习模型是一个活跃的研究方向。 在深度学习的背景下,关注机制对于自然语言处理是最成功的 。已经研发了几种具有视觉机制的视觉模型,但到目前为止还没有成为主导方法 (
Larochelle and Hinton, 2010; Denil et al., 2012
\text{Larochelle and Hinton, 2010; Denil et al., 2012}
Larochelle and Hinton, 2010; Denil et al., 2012 )。 人类视觉系统集成了许多其他感觉。
例如听觉,以及像我们的心情和想法一样的因素。 卷积网络迄今为止纯粹是视觉的 。 人类视觉系统不仅仅用于识别对象。
它能够理解整个场景,包括许多对象和对象之间的关系,以及处理我们的身体与世界交互所需的丰富的三维几何信息。 卷积网络已经应用于这些问题中的一些,但是这些应用还处于起步阶段。 即使像
V1
\text{V1}
V1 这样简单的大脑区域也受到来自较高级别的反馈的严重影响。反馈已经在神经网络模型中被广泛地探索,但还没有被证明提供了引人注目的改进。 虽然前馈
IT
\text{IT}
IT 放电频率刻画了与卷积网络特征很多相同的信息,但是仍不清楚中间计算的相似程度。
大脑可能使用非常不同的激活和池化函数 。 单个神经元的激活 可能不能用单个线性过滤器 的响应来很好地表征。 最近的
V1
\text{V1}
V1 模型涉及对每个神经元的多个二次过滤器 (
Rust et al., 2005
\text{Rust et al., 2005}
Rust et al., 2005 )。 事实上,我们的 ‘‘简单细胞’’ 和 ‘‘复杂细胞’’ 的卡通图片可能并没有区别;简单细胞和复杂细胞可能是相同种类的细胞,但是它们的 ‘‘参数’’ 使得它们能够实现从我们所说的 ‘‘简单’’到 ‘‘复杂’’ 的连续的行为。 还值得一提的是,神经科学很少告诉我们该如何训练卷积网络。
具有跨多个空间位置的参数共享的模型结构,可以追溯到早期关于视觉的联结主义模型 (
Marr and Poggio, 1976
\text{Marr and Poggio, 1976}
Marr and Poggio, 1976 ),但是这些模型没有使用现代的反向传播算法和梯度下降。 例如,(
Fukushima, 1980
\text{Fukushima, 1980}
Fukushima, 1980 ) 结合了现代卷积网络的大多数模型结构设计元素,但依赖于层次化的无监督聚类算法。
Lang and Hinton (1988)
\text{Lang and Hinton (1988)}
Lang and Hinton (1988) 引入反向传播来训练时延神经网络 (
time delay neural network, TDNN
\text{time delay neural network, TDNN}
time delay neural network, TDNN )。
使用当代术语来说,
TDNNs
\text{TDNNs}
TDNNs 是用于时间序列的一维卷积网络。 用于这些模型的反向传播不受任何神经科学观察的启发,并且被一些人认为是生物不可信的。 在基于使用反向传播训练的
TDNNs
\text{TDNNs}
TDNNs 成功之后,
LeCun et al. (1989)
\text{LeCun et al. (1989)}
LeCun et al. (1989) 通过将相同的训练算法应用于应用于图像的
2
2
2 维卷积来发展现代卷积网络。 到目前为止,我们已经描述了简单细胞对于某些特征是如何呈现粗略的线性和选择性,复杂细胞是如何更加的非线性,并且对于这些简单细胞特征的某些变换具有不变性,并且在选择性和不变性之间交替的层叠可以产生对非常特定现象的祖母细胞。
我们还没有精确描述这些单个细胞检测到了什么。 在深度非线性网络 中,可能难以理解单个细胞的功能。 第一层中的简单细胞相对更容易分析,因为它们的响应由线性函数驱动。 在人工神经网络 中,我们可以直接显示卷积核的图像,来查看卷积层的相应通道是如何响应的。 在生物神经网络 中,我们不能访问权重本身。 相反,我们在神经元自身中放置一个电极,在动物视网膜前显示几个白噪声图像样本,并记录这些样本中的每一个是如何导致神经元激活的。 然后,我们可以对这些响应拟合线性模型,以获得近似的神经元权重。这种方法被称为反向相关 (
reverse correlation
\text{reverse correlation}
reverse correlation )(
Ringach and Shapley, 2004
\text{Ringach and Shapley, 2004}
Ringach and Shapley, 2004 )。 反向相关向我们表明,大多数的
V1
\text{V1}
V1 细胞具有由
Gabor
函数
(Gabor function)
‾
\underline{\textbf{Gabor 函数}(\text{Gabor function)}}
Gabor 函数 ( Gabor function ) 所描述的权重。
Gabor
\text{Gabor}
Gabor 函数描述在图像中的
2
2
2 维点处的权重。我们可以认为图像是
2
2
2 维坐标
I
(
x
,
y
)
I(x,y)
I ( x , y ) 的函数。 类似地,我们可以认为简单细胞是在图像中的一组位置采样,这组位置由一组
x
x
x 坐标
X
\mathbb{X}
X 和一组
y
y
y 坐标
Y
\mathbb{Y}
Y 来定义,并且使用的权重
w
(
x
,
y
)
w(x,y)
w ( x , y ) 也是位置的函数。 从这个观点来看,简单细胞对于图像的响应由下式给出:
s
(
I
)
=
∑
x
∈
X
∑
y
∈
Y
w
(
x
,
y
)
I
(
x
,
y
)
)
s(I)=\sum\limits_{x\in\mathbb{X}}\sum\limits_{y\in\mathbb{Y}}w(x,y)I(x,y))
s ( I ) = x ∈ X ∑ y ∈ Y ∑ w ( x , y ) I ( x , y ))
—
公式1
\quad\textbf{---\footnotesize{公式1}}
— 公式 1 特别地,
w
(
x
,
y
)
w(x,y)
w ( x , y ) 采用
Gabor
\text{Gabor}
Gabor 函数的形式:
w
(
x
,
y
;
α
,
β
x
,
β
y
,
f
,
ϕ
,
x
0
,
y
0
,
τ
)
=
α
e
(
−
β
x
x
′
2
−
β
y
y
′
2
)
cos
(
f
x
′
+
ϕ
)
w(x,y;\alpha,\beta_x,\beta_y,f,\phi,x_0,y_0,\tau)=\alpha e^{(-\beta_x x^{\prime 2} - \beta_y y^{\prime 2} )}\cos(fx^\prime+\phi)
w ( x , y ; α , β x , β y , f , ϕ , x 0 , y 0 , τ ) = α e ( − β x x ′2 − β y y ′2 ) cos ( f x ′ + ϕ )
—
公式2
\quad\textbf{---\footnotesize{公式2}}
— 公式 2 其中,
x
′
=
(
x
−
x
0
)
cos
(
τ
)
+
(
y
−
y
0
)
sin
(
τ
)
x^\prime=(x-x_0)\cos(\tau)+(y-y_0)\sin(\tau)
x ′ = ( x − x 0 ) cos ( τ ) + ( y − y 0 ) sin ( τ )
—
公式3
\quad\textbf{---\footnotesize{公式3}}
— 公式 3 以及,
y
′
=
−
(
x
−
x
0
)
sin
(
τ
)
+
(
y
−
y
0
)
cos
(
τ
)
y^\prime=-(x-x_0)\sin(\tau)+(y-y_0)\cos(\tau)
y ′ = − ( x − x 0 ) sin ( τ ) + ( y − y 0 ) cos ( τ )
—
公式4
\quad\textbf{---\footnotesize{公式4}}
— 公式 4 这里,
α
\alpha
α ,
β
x
\beta_x
β x ,
β
y
\beta_y
β y ,
f
f
f ,
ϕ
\phi
ϕ ,
x
0
x_0
x 0 ,
y
0
y_0
y 0 ,
τ
\tau
τ 都是控制
Gabor
\text{Gabor}
Gabor 函数性质的参数。图例1 给出了
Gabor
\text{Gabor}
Gabor 函数在不同参数集上的一些例子。 参数
x
0
x_0
x 0 ,
y
0
y_0
y 0 和
τ
\tau
τ 定义坐标系。
我们平移和旋转
x
x
x 和
y
y
y 来得到
x
′
x^\prime
x ′ 和
y
′
y^\prime
y ′ 。 具体地,简单细胞会响应以点
(
x
0
,
y
0
)
(x_0,y_0)
( x 0 , y 0 ) 为中心的图像特征,并且当我们沿着从水平方向旋转
τ
\tau
τ 弧度的线移动时,简单细胞将响应亮度的变化。 作为
x
′
x^\prime
x ′ 和
y
′
y^\prime
y ′ 的函数,函数
w
w
w 会响应当我们沿着
x
′
x^\prime
x ′ 移动时的亮度变化。它有两个重要的因子:
一个是
Gaussian
\text{Gaussian}
Gaussian 函数。 另一个是余弦函数。
Gaussian
\text{Gaussian}
Gaussian 因子
α
−
(
β
x
x
′
2
−
β
y
y
′
2
)
\alpha^{-(\beta_x x^{\prime 2} - \beta_y y^{\prime 2} )}
α − ( β x x ′2 − β y y ′2 ) 可以被视为阈值项,用于保证简单细胞仅对接近
x
′
x^\prime
x ′ 和
y
′
y^\prime
y ′ 都为零点处的值响应。
换句话说,接近细胞接受域的中心。 尺度因子
α
\alpha
α 调整简单细胞响应的总的量级。 而
β
x
\beta_x
β x 和
β
y
\beta_y
β y 控制接受域消退的速度。 余弦因子
cos
(
f
x
′
+
ϕ
)
\cos(fx^\prime+\phi)
cos ( f x ′ + ϕ ) 控制简单细胞如何响应延
x
′
x^\prime
x ′ 轴的亮度改变。参数
f
f
f 控制余弦的频率,
ϕ
\phi
ϕ 控制它的相位偏移。 合在一起,简单细胞的这个卡通视图意味着,简单细胞对在特定位置处、特定方向上、特定空间频率的亮度进行响应。
当图像中的光波与细胞的权重具有相同的相位时,简单细胞是最兴奋的。 这种情况发生在当图像亮时,它的权重为正,而图像暗时,它的权重为负。 当光波与权重完全异相时,简单细胞被抑制——当图像较暗时,它的权重为正;较亮时,它的权重为负。 复杂细胞的卡通视图是它计算包含两个简单细胞响应的
2
2
2 维向量的
L
2
L^2
L 2 范数:
c
(
I
)
=
s
0
(
I
)
2
+
s
1
(
I
)
2
c(I)=\sqrt{s_0(I)^2+s_1(I)^2}
c ( I ) = s 0 ( I ) 2 + s 1 ( I ) 2
。
一个重要的特殊情况是当
s
1
s_1
s 1 和
s
0
s_0
s 0 具有除
ϕ
\phi
ϕ 以外都相同的参数,并且
ϕ
\phi
ϕ 被设置为使得
s
1
s_1
s 1 与
s
0
s_0
s 0 相位相差四分之一周期时。 在这种情况下,
s
0
s_0
s 0 和
s
1
s_1
s 1 形成正交对 (
quadrature pair
\text{quadrature pair}
quadrature pair )。 当
Gaussian
\text{Gaussian}
Gaussian 重新加权的图像
I
(
x
,
y
)
e
(
−
β
x
x
′
2
−
β
y
y
′
2
)
I(x,y)e^{(-\beta_x x^{\prime 2} - \beta_y y^{\prime 2} )}
I ( x , y ) e ( − β x x ′2 − β y y ′2 ) 包含具有频率
f
f
f 、在方向
τ
\tau
τ 上、接近
(
x
0
,
y
0
)
(x_0,y_0)
( x 0 , y 0 ) 的高振幅正弦波时,用先前方法定义的复杂细胞会响应,并且不管该波的相位偏移 。 换句话说,复杂细胞对于图像在方向
τ
\tau
τ 上的微小变换或者翻转图像(用白色代替黑色,反之亦然)具有不变性。 神经科学和机器学习之间最显著的对应关系,是从视觉上比较机器学习模型学得的特征与使用
V1
\text{V1}
V1 得到的特征 。
Olshausen and Field (1996)
\text{Olshausen and Field (1996)}
Olshausen and Field (1996) 说明,一个简单的无监督学习算法,稀疏编码,学习的特征具有与简单细胞类似的接收域。从那时起,我们发现,当应用于自然图像时,极其多样的统计学习算法学习类
Gabor
\text{Gabor}
Gabor 函数的特征。 这包括大多数深度学习算法,它们在其第一层中学习这些特征。 图例2 给出了一些例子。因为如此众多不同的学习算法学习边缘检测器,所以很难仅基于学习算法学得的特征,来断定哪一个特定的学习算法是 ‘‘正确’’ 的大脑模型(虽然,当应用于自然图像时,如果一个算法不能学得某种检测器时,它能够作为一种否定标志)。 这些特征是自然图像的统计结构的重要部分,并且可以通过许多不同的统计建模方法来重新获得。 可以参考 (
Hyv
a
¨
rinen et al., 2009
\text{Hyvärinen et al., 2009}
Hyv a ¨ rinen et al., 2009 ) 来获得自然图像统计领域的综述。
总结
卷积神经网络通过引入局部连接、权重共享以及池化等机制,有效模拟了生物视觉系统对信息的分层处理模式。局部连接减少了参数数量,提高了计算效率;权重共享则使得网络能够学习到图像中的平移不变性特征;池化操作则进一步增强了网络的鲁棒性,能够处理图像中的微小形变。这些特性共同作用下,
CNN
\text{CNN}
CNN 不仅能够在处理大规模图像数据时展现出卓越的性能,还推动了图像分类、目标检测、图像分割等任务的飞速发展。因此,卷积神经网络不仅是计算机视觉领域的里程碑式进展,更是神经科学与计算机科学交叉融合的典范,展示了跨学科合作在推动科技进步中的巨大潜力。
往期内容回顾
卷积神经网络 - 基本卷积函数的变体篇 卷积神经网络 - 池化(Pooling)篇
参考资料
百度百科 - 颞叶