VGG和GoogLeNet inception

01 介绍

googlenet和vggnet这两个模型是在AlexNet后人工神经网络方面研究的又一里程碑,也是许多论文和博客中用来和提出的新方法进行对比的baseline。理解这两个网络并且明白它们的优劣对走在机器学习之路上的小伙伴们来说是非常重要的。这两类模型结构有一个共同特点是Go deeper,但是在具体实现上却有很大差异。

02 VGG

vgg[1]继承了lenet以及alexnet的一些框架,尤其是跟alexnet框架非常像,vgg也是5个group的卷积、2层fc图像特征、一层fc分类特征,可以看做和alexnet一样总共8个part,vgg论文中给出了A~E这五种配置,卷积层数从8到16递增。由于VGG-Net的所有 convolutional layer 使用同样大小的 convolutional filter,大小为 3 x 3,所以它的深度比较容易扩展,同时结构也比较简单。其具体结构参数如表1所示:

表1.vgg模型

03 GoogLeNet

与VGG不同的是,Goog[2]做了更大胆的网络上的尝试,为了获得高质量的模型,它也从增加模型的深度(层数)或者是其宽度(层核或者神经元数)这两方面考虑了,但是在这种思路下会出现两个缺陷(1.参数太多,容易过拟合,若训练数据集有限;2.网络越大计算复杂度越大,难以应用;3.网络越深,梯度越往后穿越容易消失,难以优化模型)。而GoogLeNet通过新的结构设计,在增加深度和宽度的同时避免了以上问题:

1、深度

GoogLeNet采用了22层网络,为了避免上述提到的梯度消失问题,GoogLeNet巧妙的在不同深度处增加了两个loss来保证梯度回传消失的现象。结构如图1所示:

图1.GoogLeNet网络模型

2、宽度

Inception的网络,将1x1,3x3,5x5的conv和3x3的pooling,stack在一起,一方面增加了网络的width,另一方面增加了网络对尺度的适应性,但是如果简单的将这些应用到feature map上的话,concat起来的feature map厚度将会很大,所以为了避免这一现象提出的inception具有如下结构,在3x3前,5x5前,max pooling后分别加上了1x1的卷积核起到了降低feature map厚度的作用,这也使得虽然googlenet有22层但是参数个数要少于alexnet和vgg。inception的具体结构如图2所示。

图2.Inception结构

04 总结

综上所述,vgg网络更简单粗暴,在Alexnet的基础上不停地加卷基层,扩展神经网络的深度,并且取得了较好的效果,也让人们认识到加深网络是提高模型质量的一个有效途径。但它同时也面临着参数太多,训练较慢,梯度消失等问题。而GoogLeNet则通过增加在不同层算loss和提出inception结构两种方式,不仅加深了网络,同时也加宽了网络,并且减少了参数个数。

05 参考资料

[1]Very deep convolutional networks for large-scale image recognization. https://arxiv.org/pdf/1409.1556v6.pdf

[2]Going deeper with convolutions.

https://www.cs.unc.edu/~wliu/papers/GoogLeNet.pdf

原文发布于微信公众号 - 人工智能LeadAI(atleadai)

原文发表时间:2018-01-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏智能算法

机器学习三人行(系列八)----神奇的分类回归决策树(附代码)

系列五我们一起学习并实战了支持向量机的分类和回归,见下面链接: 机器学习三人行(系列七)----支持向量机实践指南(附代码) 今天,我们一起学习下决策树算法,该...

29412
来自专栏AI科技大本营的专栏

哪个才是解决回归问题的最佳算法?线性回归、神经网络还是随机森林?

编译 | AI科技大本营 参与 | 王珂凝 编辑 | 明 明 【AI科技大本营导读】现在,不管想解决什么类型的机器学习(ML)问题,都会有各种不同的算法可以供你...

3307
来自专栏SIGAI学习与实践平台

反向传播算法推导-卷积神经网络

原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不能用于商业目的。

1231
来自专栏机器学习算法全栈工程师

深度学习以及卷积基础

作者:石文华 编辑:龚 赛 介 绍 ? 深度学习是机器学习的一个分支,是基于数据来学习表示数据的一组算法。下面我们列出最受欢迎的一些深度学习算法。 卷...

3948
来自专栏人工智能

BP神经网络

BP(Back Propagation)神经网络是1986年由以Rumelhart和McCelland为首的科学家小组提出的,是一种按误差逆传播算法训练的多层前...

2259
来自专栏https://www.cnblogs.com/L

【深度学习篇】---CNN和RNN结合与对比,实例讲解

CNN和RNN几乎占据着深度学习的半壁江山,所以本文将着重讲解CNN+RNN的各种组合方式,以及CNN和RNN的对比。

1563
来自专栏人工智能

课后作业(二):如何用一个只有一层隐藏层的神经网络分类Planar data

来源:sandipanweb 编译:Bot 编者按:之前,论智曾在TOP 10:初学者需要掌握的10大机器学习(ML)算法介绍了一些基础算法及其思路,为了与该帖...

1636
来自专栏计算机视觉战队

深度学习近期总结分析

希望想认真阅读的你可以听着这首悦耳的歌O(∩_∩)O 一、背景介绍 普通的深度学习监督算法主要是用来做分类,如图1(1)所示,分类的目标是要识别出图中所示是一只...

3218
来自专栏老秦求学

决策树(ID3,C4.5,CART)原理以及实现

决策树是一种基本的分类和回归方法.决策树顾名思义,模型可以表示为树型结构,可以认为是if-then的集合,也可以认为是定义在特征空间与类空间上的条件概率分布.

811
来自专栏用户2442861的专栏

CNN神经网络的直观解释

卷积神经网络(ConvNets 或者 CNNs)属于神经网络的范畴,已经在诸如图像识别和分类的领域证明了其高效的能力。卷积神经网络可以成功识别人脸、物体和交通信...

942

扫码关注云+社区