一篇卷积神经网络的编年史

简介:

人工神经网络模型整体上的发展过程如下图所示:

一篇卷积神经网络的编年史

一篇卷积神经网络的编年史

上图对比了本文所述的各种神经网络之间,操作复杂度和精度之间的关系。

  LeNet5

1998, Yann LeCun 的 LeNet5。

图像特征分布在整个图像上。 

在具有很少参数的多个位置上提取类似特征时,具有可学习的参数的卷积是个比较有效的方法。 

在没有应用GPU的时候,能够保存参数和计算就成了一个关键优势。 

LeNet5并没有把每个像素都作为大型多层神经网络的一个输入,因为图像是高度空间相关的,如果用了这种方法,就不能很好地利用相关性。

LeNet5 的主要特征:

  • CNN 主要用这3层的序列: convolution, pooling, non-linearity;

  • 用卷积提取空间特征;

  • 由空间平均得到子样本;

  • 用 tanh 或 sigmoid 得到非线性;

  • 用 multi-layer neural network(MLP)作为最终分类器;

  • 层层之间用稀疏的连接矩阵,以避免大的计算成本。

一篇卷积神经网络的编年史

  Dan Ciresan Net

2010, Dan Claudiu Ciresan and Jurgen Schmidhuber 的 Dan Ciresan Net。

是比较早的GPU神经网络之一,在 NVIDIA GTX 280 图形处理器上实现了9层神经网络的前向后向计算。

  AlexNet

2012,Alex Krizhevsky 的 AlexNet。

是LeNet的一个更深和更广的版本,可以用来学习更复杂的对象。

AlexNet 的主要特征:

  • 用rectified linear units(ReLU)得到非线性;

  • 使用辍 dropout 技巧在训练期间有选择性地忽略单个神经元,来减缓模型的过拟合;

  • 重叠最大池,避免平均池的平均效果;

  • 使用 GPU NVIDIA GTX 580 可以减少训练时间,这比用CPU处理快了 10 倍,所以可以被用于更大的数据集和图像上。

一篇卷积神经网络的编年史

  OverFeat

2013年12月,Yann LeCun的纽约大学实验室的 OverFeat。

是AlexNet的衍生,提出了 learning bounding boxes。

  VGG

2015,牛津的 VGG。

率先在每个卷积层中使用更小的 3×3 filters,并将它们组合成卷积序列。

虽然小,但是多个3×3卷积序列可以模拟更大的接收场的效果。

这个想法也在最近的Inception和ResNet网络中有所应用。

  NiN

2014,Min Lin, Qiang Chen, Shuicheng Yan 的 NiN。

它的思想很简单但是很有效,使用1x1卷积给一个卷积层的特征提供了更多的组合性。

每个卷积之后使用空间MLP层,以便在另一层之前更好地组合特征,而没有使用原始像素作为下一层的输入。

可以有效地使用非常少的参数,在这些特征的所有像素之间共享。

一篇卷积神经网络的编年史

  GoogLeNet and Inception

2014,Google Christian Szegedy 的 GoogLeNet and Inception。

在昂贵的并行块之前,使用1×1卷积块(NiN)来减少特征数量,这通常被称为“瓶颈”,可以减少深层神经网络的计算负担。

它用一个没有 inception modules 的 stem 作为初始层。

用类似于NiN的平均池加上softmax分类器。

一篇卷积神经网络的编年史

  Inception V3 (and V2)

2015年2月,Christian 团队的 Inception V2,2015年12月,Inception V3。

在每个池之前,增加 feature maps,构建网络时,仔细平衡深度和宽度,使流入网络的信息最大化。

当深度增加时,特征的数量或层的宽度也有所增加。

在下一层之前,增加每一层的宽度来增多特征的组合性。

尽量只使用3x3卷积。

一篇卷积神经网络的编年史

  ResNet

2015,Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun 的 ResNet。

这个网络绕过了2层,可以被看作一个小的分类器,或者一个NiN 。

这也是第一次训练了大于100甚至1000层的网络。 

在每一层,通过使用更小output的1x1卷积来减少特征的数量,然后经过一个3x3 层,接着又是一个1x1卷积,这个方法可以保持少计算量,同时提供丰富的特征组合。

一篇卷积神经网络的编年史

  Xception

2016,François Chollet 的 Xception。

这个网络和 ResNet and Inception V4 一样有效,而且用了更简单优雅的结构 。

它有36个卷积阶段,和ResNet-34相似,不过模型和代码和ResNet一样简单,并且比Inception V4更易理解 。

这个网络在 Torch7/Keras / TF 都已经可以应用了。

一篇卷积神经网络的编年史

英文参考:

http://t.cn/R6V1ELT




====================================分割线================================


本文作者:AI研习社

本文转自雷锋网禁止二次转载,原文链接

目录
相关文章
|
1天前
|
机器学习/深度学习 自然语言处理 自动驾驶
CNN的魅力:探索卷积神经网络的无限可能
卷积神经网络(Convolutional Neural Networks, CNN)作为人工智能的重要分支,在图像识别、自然语言处理、医疗诊断及自动驾驶等领域展现了卓越性能。本文将介绍CNN的起源、独特优势及其广泛应用,并通过具体代码示例展示如何使用TensorFlow和Keras构建和训练CNN模型。
|
1天前
|
机器学习/深度学习 数据采集 数据可视化
深度学习实践:构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行分类
本文详细介绍如何使用PyTorch构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行图像分类。从数据预处理、模型定义到训练过程及结果可视化,文章全面展示了深度学习项目的全流程。通过实际操作,读者可以深入了解CNN在图像分类任务中的应用,并掌握PyTorch的基本使用方法。希望本文为您的深度学习项目提供有价值的参考与启示。
|
2天前
|
编解码 人工智能 文件存储
卷积神经网络架构:EfficientNet结构的特点
EfficientNet是一种高效的卷积神经网络架构,它通过系统化的方法来提升模型的性能和效率。
8 1
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
深入浅出卷积神经网络(CNN)的奥秘
【9月更文挑战第3天】在人工智能的浪潮中,卷积神经网络(CNN)无疑是最耀眼的明星之一。本文将通过浅显易懂的语言,带你一探CNN的核心原理和应用实例。从图像处理到自然语言处理,CNN如何改变我们对数据的解读方式?让我们一起走进CNN的世界,探索它的魅力所在。
|
1天前
|
机器学习/深度学习 人工智能 监控
深度学习浪潮中的轻舟:探索卷积神经网络的奥秘
在这个数据泛滥的时代,深度学习如同一艘巨轮,在知识的海洋中破浪前行。然而,在这艘巨轮上,有一个小小的角落常常被人忽视—那就是卷积神经网络(CNN)。本文将带领读者一探究竟,从CNN的核心概念到其在实际中的应用,我们将用通俗易懂的语言,揭开这一技术神秘面纱,让每一位对深度学习感兴趣的朋友都能轻松理解并应用CNN。
7 0
|
10天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)入门
【8月更文挑战第31天】在人工智能的浪潮中,深度学习以其强大的数据处理能力成为时代的宠儿。本文将引导你走进深度学习的核心组件之一——卷积神经网络(CNN),并带你一探其背后的奥秘。通过简明的语言和直观的代码示例,我们将一起构建一个简易的CNN模型,理解它在图像处理领域的应用,并探索如何利用Python和TensorFlow实现它。无论你是初学者还是有一定基础的开发者,这篇文章都将为你打开一扇通往深度学习世界的大门。
|
10天前
|
安全 Apache 数据安全/隐私保护
你的Wicket应用安全吗?揭秘在Apache Wicket中实现坚不可摧的安全认证策略
【8月更文挑战第31天】在当前的网络环境中,安全性是任何应用程序的关键考量。Apache Wicket 是一个强大的 Java Web 框架,提供了丰富的工具和组件,帮助开发者构建安全的 Web 应用程序。本文介绍了如何在 Wicket 中实现安全认证,
22 0
|
10天前
|
机器学习/深度学习 自动驾驶 算法框架/工具
深度学习中的卷积神经网络(CNN)入门
【8月更文挑战第31天】 本文旨在通过浅显易懂的方式,引导初学者步入卷积神经网络(CNN)的神秘世界。我们将从CNN的基础概念出发,逐步深入到其在图像处理中的应用实例,最后通过一个简单的Python代码示例,展示如何实现一个基础的CNN模型。无论你是编程新手还是深度学习领域的初探者,这篇文章都将为你打开一扇了解和掌握CNN的大门。
|
10天前
|
机器学习/深度学习 数据采集 TensorFlow
从零到精通:TensorFlow与卷积神经网络(CNN)助你成为图像识别高手的终极指南——深入浅出教你搭建首个猫狗分类器,附带实战代码与训练技巧揭秘
【8月更文挑战第31天】本文通过杂文形式介绍了如何利用 TensorFlow 和卷积神经网络(CNN)构建图像识别系统,详细演示了从数据准备、模型构建到训练与评估的全过程。通过具体示例代码,展示了使用 Keras API 训练猫狗分类器的步骤,旨在帮助读者掌握图像识别的核心技术。此外,还探讨了图像识别在物体检测、语义分割等领域的广泛应用前景。
7 0
|
10天前
|
机器学习/深度学习 人工智能 算法
深度学习中的卷积神经网络(CNN)入门
【8月更文挑战第31天】 在探索人工智能的奥秘时,我们常常被其背后的复杂算法所迷惑。本文旨在以浅显易懂的语言,带你走进深度学习的世界,特别是卷积神经网络(CNN)这一核心概念。我们将一起了解CNN的基本结构,它是如何工作的,以及为什么它在图像识别领域如此强大。通过简单的代码示例,你将学会如何搭建一个简单的CNN模型,并在自己的数据集上进行实验。无论你是编程新手还是深度学习初学者,这篇文章都将为你打开一扇通往高级人工智能应用的大门。
下一篇
DDNS