[神经网络]1.7-Using neural nets to recognize handwritten digits-Toward deep learning(翻译)

Toward deep learning(走向深度学习)

虽然我们的神经网络给出了令人印象深刻的表现,表现的有点神秘。他自动更改网络中的权重和偏差。这意味着我们不立即解释网络如何做。我们是否可以找到一些分类手写数字的原则?并且基于这些原则,使得我们的网络更好呢?

把这些问题更为明显,假设几十年后,神经网络将引导人工智能(AI)。我们将会明白智能的网络是如何工作的?也许网络会对我们不透明,也就是我们不理解权重和偏差,因为他们是自动学习的。在早期的人工智能研究人员希望建立的人工智能可以帮助我们理解智能的原则或许是人脑的工作方式。但或许结果将会我们最终理解大脑和人工智能的工作方式!

为解决这些问题,让我们重新思考在本章开始时所给出的人工神经元的解释,作为一个衡量证据的方法。假设我们要确定一个图像是否显示为人脸:
[神经网络]1.7-Using neural nets to recognize handwritten digits-Toward deep learning(翻译)_第1张图片
我们将用和识别手写数字的方法来处理这个问题-将图像的像素作为神经元的输入,和一个单一输出神经元,显示“是的,这是脸”或者”不是,这不是脸”。

假设我们这么做了,但是这里没有使用到学习算法。相反,我们将自己手动的设计一个网络去选择合适的权重和偏差。那我们该怎么去做呢?现在我们先忘记神经网络,我们可以用一个启发式的方法,将该问题分解成几个子问题:图像是否有一个眼睛在左上方?它是否有一个眼睛在右上方?中间有一个鼻子吗?它有一个口在底部中间?上面有头发?等等。

如果有些子问题的答案是“是的”,或甚至是”可能是的”,那么我们将认为图像是脸。相反,如果大多数问题的答案是“不”,那么图像可能不是一个脸。

当然,这只是一个粗略的启发式,存在许多问题。也许这个人是秃头,所以他没有头发。也许我们只能看到脸的一部分,或者脸在一个角上,面部特征模糊。不过,启发式建议,如果我们可以使用神经网络求解子问题,然后结合网络的子问题建立一个脸检测的神经网络。这是一个可能的架构,用矩阵来表示子问题。注意它不是一个现实的方法来解决脸检测问题;想法,它帮助我们直觉的建立网络的功能。体系结构如下:
[神经网络]1.7-Using neural nets to recognize handwritten digits-Toward deep learning(翻译)_第2张图片
子网络可以分解是合理的。假设我们考虑一个问题:“有一个眼睛在左上角?”这个问题可以分解成这样的问题:”有眉毛吗?”,”有睫毛吗?”,”有一个虹膜吗?”等等问题。当然,这些问题可以包括位置信息,比如,”在左上角的眉毛,虹膜上面吗?”。这一系列事情,但让我们保持简单。“是否有眼睛在左上角”可以分解成:
[神经网络]1.7-Using neural nets to recognize handwritten digits-Toward deep learning(翻译)_第3张图片
这些问题可以通过多个层进一步被分解。最终,这些子网络一起工作,这样就简单地在单个像素的层次上回答问题。例如,这些问题可能关于在图像的特定点上是否存在简单的图像。单一神经元连接到图像的原始像素可以回答这样的问题。

最终的结果是一个网络打破了一个非常复杂的问题-图像是否展示了脸在单像素点水平上被回答。它通过一系列的层包括最初的一些层和后来建立的一些更加复杂的层。这种多层结构的网络-2层或多层隐藏层-被称为深层神经网络(deep neural networks)。

当然,我还没有说如何递归分解成子网络。手工设计网络中的权重和偏差是不实际的。相反,我们希望使用的学习算法可以自动的从训练数据中学习权重和偏差以及层次的概念。上世纪80年代和90年代的研究人员尝试使用随机梯度下降法和反向传播算法来训练网络。不幸的是,除了一些特殊的架构,可行,大多数的是不可行。网络学习的太缓慢。

自2006年以来,一系列技术以及被开发出来来学习深度神经网络。这些深度学习技术是基于随机梯度下降法和反向传播算法,而且还引进了一些新的想法。这些技术能够训练更深的(更大的)网络-现在人们训练的网络有5到10个隐藏层。并且,结果表明在许多问题上。它的性能远远好于浅层神经网络(单一隐藏层的网络)。当然,其原因是深层网络建立了一个更加复杂概念层次。这有点像传统的编程语言使用模块化的设计和抽象的思想,使复杂的计算机程序的创建。深层网络和浅层网络的比较有点像可以调用函数的语言和不能调用函数的语言。抽象在神经网络采用不同的形式,而不是在传统的编程中,但它同样重要。

至此,第一章翻译结束。

你可能感兴趣的:([神经网络]1.7-Using neural nets to recognize handwritten digits-Toward deep learning(翻译))