新网工在YESLAB   

IT技术专业学习平台
IT人才专业服务提供商

 

VUE考试注册预约电话:010-82608710

全国热线:400-004-8626

人工智能|02 遇见Alex Net

首页    技术博文    计算机视觉    人工智能|02 遇见Alex Net

每当谈及目前最热门的人工智能与深度学习,就不得不提到一位名叫Geoffrey Hinton的传奇。他坚守着自己的信念,度过了神经网络的寒冬,并在2012年的ImageNet Large Scale Visual Recognition Competition (ILSVRC)上神经网络大放异彩,而Alex Net这一深度卷积神经网络结构也将深度学习一词带入所有人的视野。

Geoffrey Hinton

1947年Geoffrey Hinton生于英国的温布尔顿,回顾Hinton对神经网络的主要贡献,一方面在于将反向传播应用于多层神经网络,以及发明了玻尔兹曼机,而另一方面Hinton也是一位非常好的导师,他培育出了很多人工智能强将,故世人称Hinton为“AI教父”。关于Hinton的整个家族还有更多辉煌等待你查阅,今天的主角Alext Net正是由Hinton和他的一位学生Alex Krizhevsky一起创造的。

GeoffreyHinton

图片:Geoffrey Hinton

ILSVRC

ILSVRC比赛是使用ImageNet数据的子集。至ILSVRC2017,比赛共分为图像目标定位、图像目标检测,以及视频目标检测三个大类。而图像目标定位中又分为图像目标分类与图像目标定位两个子任务,在2012年的ILSVRC比赛中,这两个子任务就是当时的两个主要任务。整个ImageNet拥有超过1500万的标记图片,共分为22000个属类,而ILSVRC比赛数据是取其中的1000类,每一类超过1000张图片。Alex Net取胜的图像分类项目,其判定结果包含对TOP1以及TOP5的判断,TOP1就是指测试结果总输出的概率第一的属类如果正确,才算这个结果判断正确,而TOP5就是指测试结果中取前5个概率的结果,如果正确结果属于其中,那么就算这个测试结果正确。计算完所有测试结果的平均TOP1和TOP5就有了最后的成绩。

ILSVRC

图片:ILSVRC

Alex Net结构

Alex Net是继LeNet之后的经典卷积网络模型,在当时拥有让人叹为观止的计算量,我们先来看看Alex Net庞大的网络结构与相应数据:

  • 6亿3000万个神经元之间的链接;

  • 6000万学习参数,主要为权重;

  • 65万个神经元;

  • 5个卷积层;

  • 3个最大池化层;

  • 3个全连接层。

AlexNet

图片:Alex Net 结构

上图就是Alex Net的网络结构,主要包含8个需要训练的层,前5层为卷积层,后3层为全连接层。其中Cov1和Cov2之后均为LRN层,而这两个LRN层之后与Cov5之后都是最大池化层,ReLU激活算法应用每一层后面。单单看着精心设计的架构就让人觉得很了不起,而更需要膜拜的是论文中谈到的技术细节,这些技术细节正式需要推荐给目前正在看本文的你学习并掌握的技能,真正的创造力正是源于被不断被思考并发明出来的技术细节。

Alex Net 技术细节

  • ReLU Nonlinearity

Sigmoid与tanh函数被广泛应用于神经网络神经元激活算法,但当网络深度逐渐增加时,其存在负值与激活集中在中间区域的特点,使得深度神经网络的训练效果反而变差;而使用ReLU作为卷积神经网络的激活函数,其效果就超过了Sigmoid。下图实线为ReLU,虚线为tanh,网络结构是4层的卷积神经网络。

img1img2
 

图片: ReLU与tanh比较 

  • Training on Multiple GPUs

使用两个GTX 580 GPU作为训练硬件,并且把不同的网络部分跑在不同的GPU上,提高训练速度的同时也改善了成绩。

  • Local Response Normalization

img3
 

在神经生物学有一个概念叫作侧抑制(lateral inhibitio),指被激活的神经元抑制相邻神经元。通过将相邻神经元的激活信号经过一定的处理来干扰目前正在激活的神经元产生的激活值,会避免RuLU无上界带来的问题,这就是LRN层技术,测试其改善了Alex Net的成绩,其数学公式如下:

img4

简单来说,公式中的a就是原本在位置(x , y)的神经元激活值,而经过后面一大串的干扰,最后得到侧抑制之后的激活值b,详细的解释在Yeslab相应课程中讲解。

  • Overlapping Pooling

这个技术是指重叠池化,一个标准的传统池化是有多大的池化区域就走多大的步长,而重叠池化是指步长小于区域大小,即总有一部分数据被多次池化,这样可以减少过拟合,也提高了Alex Net的成绩。

  • Data Augmentation

训练时从原始图像(256×256)中截取224×224大小的区域。由于每张图片包含32×32个这样的区域,因此一张图片可以生成32×32张图片,然后对产生的所有图片进行水平翻转使图片数量×2,最后结果是每一张图片都变成了2048张图片,数据量暴增。这就解决了数据不够的问题,减少过拟合,并提高泛化能力。

测试时以图片4个角落点和1个中心点,共5个点为获取点同理截图, 也进行水平翻转,每一张测试图片就变为10张图片,对这10张图片的分类结果求平均值得到最后的预测值。

最后还对图片进行PCA处理,并对主成份做标准差为0.1的高斯干扰。至此便是Alex Net的主要内容,还望有兴趣的读者能精心仔细阅读原论文,相信你能获得与发现的不止于此。

img5

图片:Alex Net论文标题

不灭的创造力

对神经网络的执着,让Hinton绝不会止步于已经创造的辉煌,他仍然希望自己能够理解更多神经网络背后的内容。2017年Go North会议上,Hinton对其团队创造的胶囊神经网络做了简单的解释。这个并不简单的胶囊网络技术却极有可能在未来终结目前当红的卷积神经网络。 在遭遇多次业内冷水后, Hinton团队于2017年11月发表了论文《Dynamic Routing Between Capsules》 并证明胶囊网络在MNIST数据集以及Muti-MNIST数据集均获得了突破性的结果,如果你对胶囊网络感兴趣,可以翻看我在Yeslab公众号早期的文章。

img6
(The End)

 

 

2018年9月25日 13:56
浏览量:0
收藏