快捷搜索:  汽车  科技

卷积神经网络结构分析(卷积神经网络生物启发模型)

卷积神经网络结构分析(卷积神经网络生物启发模型)注意那里使用的术语:相同神经元的相同副本。这基于人类大脑如何运作的过程。通过使用相同的大脑记忆点,人类可以发现并识别模式,而无需重新学习这个概念。例如,无论我们看到什么角度,我们都会识别上面数字的身份。"在最基本的情况下,卷积神经网络可以被认为是一种使用相同神经元的许多相同拷贝的神经网络。这允许网络拥有大量神经元并表达计算大型模型,同时保持实际参数的数量 - 描述神经元行为方式的值 - 需要相当小的学习。"但是如果图像变形了,就像上面的数字一样呢?前馈神经网络仅在数字位于图像中间时才能正常工作,但当数字位于略微偏离位置时会突然失败。换句话说,网络只知道一种模式。这在现实世界中显然没有用,因为真实数据集总是很脏并且未经处理。因此,在输入图像不完美的情况下,我们需要改进我们的神经网络。 值得庆幸的是,卷积神经网络来救援!那么卷积神经网络到底是什么?根据Google Brain的研究科学家Chr

前馈神经网络不能这样做,但卷积神经网络可以!因为它拥有平移不变性 --- 即使对象的外观在某种程度上有所不同,它仍然可将对象识别正确。这才是卷积神经网络的神奇之处!

卷积神经网络结构分析(卷积神经网络生物启发模型)(1)

你能认出上图中的人吗?如果你是科幻小说的粉丝,你会立刻意识到他们是来自JK罗琳全球现象哈利波特系列丛书的哈利,罗恩和赫敏。这张照片是"哈利波特与死亡圣器"第一部分中的一个场景 - 哈利,罗恩和赫敏正在审讯小偷蒙杜格斯弗莱彻,他们早先被精灵多比和克雷切尔捕获。嗯,我知道这是因为我看过这部电影并多次读过这本书!但是,如果您或我这样理解计算机需要什么呢?让我们明确地考虑所有必须要有意义的知识:

  • 你认识到这是一群人的形象,并明白他们在一个房间里。
  • 你知道有一堆报纸和一张带椅子的长木桌,所以位置很可能是厨房或公共起居室。
  • 你可以从构成他脸上眼镜的几个像素中认出黑头发的哈利波特
  • 同样地,你认识Ron Weasley,因为他的红头发和Hermione Granger因为她的长发。
  • 你认识到另一个秃头穿着老式服装的男人,这表明他年纪大了。
  • 你认识到其他2个不是人类的生物(Dobby和Kreacher),即使你不熟悉它们。你已经使用了它们的高度,面部结构,身体测量,以及你对正常人的外表的了解。
  • 哈利,罗恩和赫敏正在审问那个秃头男人。你得出这个是因为你知道他们的身体姿势正对着他,你感觉到他们的视力出现了疑惑,你也看到赫敏手里拿着魔杖(魔杖是哈利波特魔法世界的法宝)。
  • 你明白秃头男人感到害怕。鉴于他的双手遮住胸口,你明白他隐藏着某些东西。你开始推理在这个场景之后即将展开的事件的影响,并对将揭示什么秘密感到好奇。
  • 这两个生物正在向哈利和罗恩望去。看起来,他们试图说些什么。换句话说,你在推理这些生物的心态。哇,你可以成为一个心灵读者!

我可以继续,但这里的重点是,当你看到图片时,你已经在那一秒中使用了大量的信息。有关场景的2D和3D结构的信息,视觉元素,如人的身份,他们的行为,甚至他们的想法。你想一想场景的动态,并猜测接下来会发生什么。所有这些事情都汇集在一起​​,让你了解场景。

令人难以置信的是,人类大脑如何展开仅由R,G,B值组成的图像。电脑怎么样?我们怎样才能开始编写一个可以推理场景的算法,就像我上面那样?我们如何才能获得可以支持我们所做推论的正确数据?

卷积神经网络结构分析(卷积神经网络生物启发模型)(2)

计算机视觉领域解决了这个问题,因为机器学习研究人员一直在广泛关注物体检测问题。有很多东西使得难以识别物体:图像分割/变形,光照,可供性,视点,巨大的尺寸等。特别是,计算机视觉研究人员使用神经网络通过将许多简单的神经元链接在一起来解决复杂的物体识别问题。在传统的前馈神经网络中,图像被馈送到网络中,神经元处理图像并将它们分类为真假可能性的输出。听起来很简单,真的可以吗

卷积神经网络结构分析(卷积神经网络生物启发模型)(3)

但是如果图像变形了,就像上面的数字一样呢?前馈神经网络仅在数字位于图像中间时才能正常工作,但当数字位于略微偏离位置时会突然失败。

换句话说,网络只知道一种模式。这在现实世界中显然没有用,因为真实数据集总是很脏并且未经处理。因此,在输入图像不完美的情况下,我们需要改进我们的神经网络。

值得庆幸的是,卷积神经网络来救援!

卷积过程

那么卷积神经网络到底是什么?根据Google Brain的研究科学家Chris Olah的说法:

"在最基本的情况下,卷积神经网络可以被认为是一种使用相同神经元的许多相同拷贝的神经网络。这允许网络拥有大量神经元并表达计算大型模型,同时保持实际参数的数量 - 描述神经元行为方式的值 - 需要相当小的学习。"

卷积神经网络结构分析(卷积神经网络生物启发模型)(4)

注意那里使用的术语:相同神经元的相同副本。这基于人类大脑如何运作的过程。通过使用相同的大脑记忆点,人类可以发现并识别模式,而无需重新学习这个概念。例如,无论我们看到什么角度,我们都会识别上面数字的身份。

前馈神经网络不能这样做,但卷积神经网络可以!因为它拥有平移不变性 --- 即使对象的外观在某种程度上有所不同,它仍然可将对象识别正确。这才是卷积神经网络的神奇之处!

在非常简单的解释中,卷积过程的工作方式如下:

  • 首先CNN使用滑动窗口搜索将图像分成重叠的图像块。
  • 然后CNN将每个图像块馈送到小的神经网络中,对每个块使用相同的权重。
  • 然后CNN将每个图块的结果保存到新的输出数组中。
  • 之后,CNN对输出数组进行下采样以减小其大小。
  • 最后但并非最不重要的是,在将大图像缩小为小阵列之后,CNN预测图像是否匹配。
历史背景

CNNs的推广主要得益于Yann LeCun的努力,他现在是Facebook的AI研究主任。20世纪90年代初,LeCun在贝尔实验室工作,贝尔实验室是当时世界上最负盛名的研究实验室之一,并建立了一个检查识别系统来读取手写数字。有一个在1993年可以追溯到一个非常酷的视频中LeCun显示系统如何工作的权利在这里。该系统实际上是进行端到端图像识别的整个过程。将得到的纸张他于1998年与Leon Bottou,Patrick Haffner和Yoshua Bengio合着,推出了卷积网以及他们建立的完整的端到端系统。这是一篇很长的论文,所以我会在这里快速总结一下。上半部分描述了卷积网,显示了它的实现,并提到了与该技术相关的所有其他内容(我将在下面的CNN架构部分介绍)。下半部分展示了如何将卷积网与语言模型相结合。例如,当您阅读一段英文文本时,您可以在英语语法之上构建一个系统,以提取作为该语言一部分的最可能的解释。最重要的是,您可以构建CNN系统并对其进行训练以同时进行识别和分割,并为语言模型提供正确的输入。

卷积神经网络结构分析(卷积神经网络生物启发模型)(5)

CNN架构

我们来讨论卷积神经网络的体系结构。我们正在使用输入图像。我们执行一系列卷积 池操作,然后是一些完全连接的层。如果我们执行多类分类,则输出为softmax。每个CNN中有4个基本构建块:卷积层、非线性(ReLU激活)、池化层和完全连接层。

卷积神经网络结构分析(卷积神经网络生物启发模型)(6)

1 - 卷积层

这里我们从输入图像中提取特征:

  • 我们通过使用小方块输入数据学习图像特征来保持像素之间的空间关系。这些输入数据的平方也称为过滤器或内核。
  • 通过在图像上滑动滤波器并计算点积而形成的矩阵称为特征图。 我们拥有的过滤器数量越多,提取的图像特征就越多,我们的网络就越能识别出看不见的图像中的模式
  • 我们的特征映射的大小由深度(使用的滤波器数),步幅(在输入矩阵上滑动的像素数)和零填充(在边界周围用0填充输入矩阵)控制。

卷积神经网络结构分析(卷积神经网络生物启发模型)(7)

2 - 非线性:

对于任何类型的神经网络都很强大,它需要包含非线性。LeNet使用Sigmoid Non-Linearity,它取实数值并将其压缩到0到1之间的范围内。特别是,大的负数变为0,大的正数变为1.但是,S形非线性有一对主要缺点:(i)Sigmoids饱和并杀死梯度,(ii)Sigmoids收敛慢,(iii)Sigmoid输出不以零为中心。

更强大的非线性操作是ReLU,代表整流线性单元。它是一种元素智能操作,将要素图中的所有负像素值替换为0.我们通过ReLU激活函数传递卷积层的结果。几乎所有基于CNN的架构后来都使用了ReLU,就像我在下面讨论的AlexNet一样。

3 - 池层

在此之后,我们执行池操作以减少每个要素图的维度。这使我们能够减少网络中的参数和计算次数,从而控制过度拟合。

CNN使用max-pooling,其中它定义了一个空间邻域,并从该窗口内的整流特征映射中获取最大元素。在汇集层之后,我们的网络对输入图像中的小变换,失真和转换变得不变。

卷积神经网络结构分析(卷积神经网络生物启发模型)(8)

4 - 完全连接的层

在卷积和池化层之后,我们添加了几个完全连接的层来包装CNN架构。卷积和池化层的输出表示输入图像的高级特征。FC层使用这些功能根据训练数据集将输入图像分类为各种类。除了分类,添加FC层还有助于学习这些功能的非线性组合。

从更大的角度来看,CNN架构完成了两项主要任务:特征提取(卷积 池化层)和分类(完全连接层)。一般来说,我们拥有的卷积步骤越多,我们的网络能够学会识别的功能就越复杂。

进一步的发展

从那时起,CNN已经以各种形式进行了改造,以适应不同的自然语言处理,计算机视觉和语音识别环境。稍后我将在本文中介绍一些值得注意的行业应用,但首先让我们讨论一下CNN在计算机视觉中的用法。识别从网上下载的彩色照片中的真实对象比识别手写数字要复杂得多。类的数量是百倍,像​​素的数百倍,三维场景的二维图像,需要分割的杂乱场景,以及每个图像中的多个对象。CNN将如何发展以应对这些挑战?

2012年,斯坦福大学计算机视觉小组组织了ILSVRC-2012竞赛(ImageNet大规模视觉识别挑战赛) - 计算机视觉领域面临的最大挑战之一。它基于ImageNet,这是一个拥有大约120万个高分辨率训练图像的数据集。测试图像没有初始注释,算法必须生成标签,指定图像中存在的对象。从那时起,每年都有来自顶尖大学,创业公司和大公司的团队竞争在数据集上声称拥有最先进的表现。

卷积神经网络结构分析(卷积神经网络生物启发模型)(9)

第一届比赛的获胜者Alex Krizhevsky(NIPS 2012)构建了一个由Yann LeCun(称为AlexNet)开创的非常深刻的卷积神经网络。与LeNet相比,AlexNet更深,每层有更多的过滤器,并且还配备了堆叠卷积层。查看下面的AlexNet架构,您可以确定它与LeNet之间的主要区别:

  • 处理层和可训练层的数量: AlexNet包括5个卷积层,3个最大池层和3个完全连接层。LeNet只有2个卷积层,2个最大池层和3个完全连接层。
  • ReLU非线性: AlexNet使用ReLU,而LeNet使用logistic sigmoid。ReLU有助于减少AlexNet的训练时间,因为它比传统的后勤sigmoid功能快几倍。
  • 使用 dropout : AlexNet使用dropout层来解决训练数据过度拟合的问题。LeNet不使用这样的概念。
  • 多样化的数据集:虽然LeNet只接受过识别手写数字的培训,但AlexNet受过训练,可以使用ImageNet数据,这些数据在尺寸,颜色,角度,语义等方面更加丰富。

AlexNet成为开创性的"深度"CNN,以84.6%的准确率赢得了比赛,而第二名模型(仍使用LeNet中的传统技术而非深层架构)仅达到73.8%的准确率。

卷积神经网络结构分析(卷积神经网络生物启发模型)(10)

从那时起,这场比赛已成为引入最先进计算机视觉模型的基准领域。特别是,已经有许多使用深度卷积神经网络作为其骨干架构的竞争模型。在ImageNet竞赛中取得优异成绩的最受欢迎的包括:(2013),(2014),(2014),(2015),(2016)等。这些架构逐年深入和深入。

应用

CNN架构继续在计算机视觉领域占据突出地位,其架构优势为下面提到的许多应用和任务提供了速度,准确性和培训方面的改进:

· 在对象检测中, CNN是最流行的模型背后的主要架构。在这些模型中,网络假设对象区域,然后使用这些区域提案中的每一个的顶部CNN对它们进行分类。现在,这是许多物体检测模型的主要管道,部署在自动驾驶汽车,智能视频监控,面部检测等。

  1. 对象跟踪中, CNN已广泛用于视觉跟踪应用。例如,鉴于CNN在离线大型图像存储库中进行了预训练,由韩国浦项研究所团队开发的可以学习判别性显着性图,以便在空间和局部可视化目标。另一个例子是,这是一种在跟踪过程中自动重新学习最有用的特征表示的解决方案,以便精确地调整外观变化,姿势和比例变化,同时防止漂移和跟踪失败。
  2. 物体识别方面,来自法国INRIA和MSR的团队开发了一种,仅依赖于图像标签,但可以从包含多个对象的杂乱场景中学习。另一个例子是,一种由牛津人开发的纹理描述符,用于解决纹理识别中的杂乱问题。
  3. 语义分割中,是由香港的一组研究人员开发的基于CNN的网络,用于将丰富的信息整合到图像分割过程中。另一方面,加州大学伯克利分校的研究人员构建了并超越了语义分割领域的最新技术。最近,是一个深度完全卷积神经网络,在语义像素分割的内存和计算时间方面非常有效。
  4. 视频和图像字幕中,最重要的发明是加州 大学伯克利分校的,它结合了CNN和RNN(循环神经网络)来处理大规模的视觉理解任务,包括活动识别,图像字幕和视频描述。 。它已经被YouTube的数据科学团队大量部署,以了解每天上传到平台的大量视频。

卷积神经网络结构分析(卷积神经网络生物启发模型)(11)

CNN还在Vision之外发现了许多新颖的应用,特别是自然语言处理和语音识别:

  • 自然语言处理:在机器翻译领域,的使用CNN来实现最先进的精确度,速度是复发神经系统的9倍。在句子分类领域,纽约大学的Yoon Kim 并在7项任务中的4项中对最新技术进行了改进。在问答环境中,来自滑铁卢和马里兰州的一些研究人员。他们发现CNN的答案比以前的算法更好。
  • 语音识别:CNN是用于减少光谱变化和建立声学特征中的光谱相关性以用于自动语音识别的非常有效的模型。结合CNN与隐马尔可夫模型/高斯混合模型的混合语音识别系统已经在各种基准测试中获得了最先进的结果。蒙特利尔大学的研究人员通过将分层CNN与CTC(连接主义时间分类)相结合,提出了一种与现有基线系统相竞争。微软的团队使用CNN来降低语音识别性能的错误率。他们的模型能够对说话者和环境变化保持不变的准确性。

卷积神经网络结构分析(卷积神经网络生物启发模型)(12)

结论

让我们再次重温哈利波特图像的例子,看看我如何使用CNN来识别它的特征:

  • 首先,我在整个原始图像上传递一个滑动窗口,并将每个结果保存为一个单独的微小图片块。通过这样做,我将原始图像转换为多个大小相同的小图像图块
  • 然后,我将每个图像块馈送到卷积层,并为同一原始图像中的每个图块保持相同的神经网络权重
  • 接下来,我将每个图块的结果保存到与原始图像相同排列的新阵列中。
  • 然后,我使用max-pooling来减小数组的大小。例如,我可以查看每个2 x 2平方的数组并保留最大数字
  • 在进行下采样后,然后将小阵列送入完全卷积层进行预测,比如是否是Harry,Ron,Hermione,精灵,报纸,椅子等的图像
  • 经过训练,我现在有信心对我的形象做出预测!

正如您在本文中所看到的,卷积神经网络在塑造深度学习历史方面发挥了重要作用。受大脑研究的启发,与大多数其他神经网络相比,CNN在深度学习(视觉,语言,语音)的商业应用中表现得非常好。它们已被许多机器学习从业者用于赢得学术和行业竞赛。

对CNN架构的研究以如此快的速度发展,比如使用较少的权重/参数,自动学习和推广输入对象的特征,对象位置不变和图像/文本/语音失真......毫无疑问是最流行的神经网络技术,CNN是任何想要进入深度学习领域的人必须知道的。

猜您喜欢: