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 条评论
登录 后参与评论

相关文章

来自专栏计算机视觉战队

深度学习近期总结分析

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

3698
来自专栏人工智能

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

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

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

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

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

5777
来自专栏机器学习算法与理论

逻辑回归与梯度下降详解

逻辑回归 Sigmoid函数: ? Sigmoid函数 梯度: ? 梯度的表达式 这个梯度是指:沿着x方向移动 ? 个单位,沿着y方向移动 ? 个...

2949
来自专栏机器学习算法工程师

深度学习以及卷积基础

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

4338
来自专栏杨熹的专栏

为什么要用交叉验证

本文结构: 什么是交叉验证法? 为什么用交叉验证法? 主要有哪些方法?优缺点? 各方法应用举例? ---- 什么是交叉验证法? 它的基本思想就是将原始数据(da...

5164
来自专栏老秦求学

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

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

1681
来自专栏奇点大数据

卷积神经网络对图片分类-下

接上篇:卷积神经网络对图片分类-中 9 ReLU(Rectified Linear Units) Layers 在每个卷积层之后,会马上进入一个激励层,调用一种...

29912
来自专栏人工智能

BP神经网络

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

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

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

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

2411

扫码关注云+社区

领取腾讯云代金券