卷积神经网络

理解CNN卷积层与池化层计算

二次信任 提交于 2019-11-26 00:25:01
概述 深度学习中CNN网络是核心,对CNN网络来说卷积层与池化层的计算至关重要,不同的步长、填充方式、卷积核大小、池化层策略等都会对最终输出模型与参数、计算复杂度产生重要影响,本文将从卷积层与池化层计算这些相关参数出发,演示一下不同步长、填充方式、卷积核大小计算结果差异。 一:卷积层 卷积神经网络(CNN)第一次提出是在1997年,杨乐春(LeNet)大神的一篇关于数字OCR识别的论文,在2012年的ImageNet竞赛中CNN网络成功击败其它非DNN模型算法,从此获得学术界的关注与工业界的兴趣。毫无疑问学习深度学习必须要学习CNN网络,学习CNN就必须明白卷积层,池化层等这些基础各层,以及它们的参数意义,从本质上来说,图像卷积都是离散卷积,图像数据一般都是多维度数据(至少两维),离散卷积本质上是线性变换、具有稀疏与参数重用特征即相同参数可以应用输入图像的不同小分块,假设有3x3离散卷积核如下: 假设有 5x5的图像输入块 步长为1(strides=1) 填充方式为VALID(Padding=VALID) 卷积核大小filter size=3x3 则它们的计算过程与输出如下 假设这个时候我们修改步长为2、填充方式为SAME,卷积核大小不变(strides=2 Padding=SAME filter size=3x3),则计算过程与输出变为如下:

VGG卷积神经网络模型解析

僤鯓⒐⒋嵵緔 提交于 2019-11-26 00:20:38
VGG卷积神经网络模型解析 一:VGG介绍与模型结构 VGG全称是Visual Geometry Group属于牛津大学科学工程系,其发布了一些列以VGG开头的卷积网络模型,可以应用在人脸识别、图像分类等方面,分别从VGG16~VGG19。VGG研究卷积网络深度的初衷是想搞清楚卷积网络深度是如何影响大规模图像分类与识别的精度和准确率的,最初是VGG-16号称非常深的卷积网络全称为(GG-Very-Deep-16 CNN),VGG在加深网络层数同时为了避免参数过多,在所有层都采用3x3的小卷积核,卷积层步长被设置为1。VGG的输入被设置为224x244大小的RGB图像,在训练集图像上对所有图像计算RGB均值,然后把图像作为输入传入VGG卷积网络,使用3x3或者1x1的filter,卷积步长被固定1。VGG全连接层有3层,根据卷积层+全连接层总数目的不同可以从VGG11 ~ VGG19,最少的VGG11有8个卷积层与3个全连接层,最多的VGG19有16个卷积层+3个全连接层,此外VGG网络并不是在每个卷积层后面跟上一个池化层,还是总数5个池化层,分布在不同的卷积层之下,下图是VGG11 ~GVV19的结构图: 考虑到整个网络的精简结构显示,ReLU激活函数并没有被显示在上述结构中。上述结构中一些说明: conv表示卷积层 FC表示全连接层 conv3表示卷积层使用3x3 filters

SGD与Adam识别MNIST数据集

元气小坏坏 提交于 2019-11-25 22:05:41
几种常见的优化函数比较: https://blog.csdn.net/w113691/article/details/82631097 1 ''' 2 基于Adam识别MNIST数据集 3 ''' 4 import torch 5 import torchvision 6 import torchvision.transforms as transform 7 import torch.nn 8 from torch.autograd import Variable 9 10 ''' 11 神经网络层级结构: 12 卷积层Conv1,Conv2() 13 最大池化层 MaxPool2d() 14 损失函数 ReLU() 15 参数: 16 卷积神经网络的卷积层参数:------输入通道数、输出通道数、卷积核大小、卷积核移动步长和Padding的值 17 Conv2d(input_channels,output_channels,kernel_size,stride,padding); 18 最大池化层参数:------池化窗口大小、移动步长 19 MaxPool2d(kernel_size,stride) 20 方法: 21 1.torch.nn.Sequential()用作参数序列化,神经网络模块会按照传入Suquential构造器顺序依次被添加到计算图中执行 22 2

Collaborative Spatioitemporal Feature Learning for Video Action Recognition

六月ゝ 毕业季﹏ 提交于 2019-11-25 18:58:52
Collaborative Spatioitemporal Feature Learning for Video Action Recognition 摘要 时空特征提取在视频动作识别中是一个非常重要的部分。现有的神经网络模型要么是分别学习时间和空间特征(C2D),要么是不加控制地联合学习时间和空间特征(C3D)。 作者提出了一个新颖的neural操作,它通过在可学习的参数上添加权重共享约束来将时空特征encode collaboratively。 特别地,作者沿着体积视频数据的三个正交视图进行二维卷积,这样分别学到了空间表观线索和时间动作线索。 通过在不同视角共享卷积核,空间和时间特征可以协作地被学习到并且互相优化,然后通过加权求和融合互补特征,加权求和的系数是端到端学习到的。 算法性能达到了state-of-the-art的效果并在Moments in Time Challenge2018中夺冠。 基于在不同视角中学到的系数,作者量化了空间和时间特征的贡献,这个分析为模型提供了一定的可解释性,也许为将来的视频识别算法设计提供了一定的指导。 一、引言 时空特征的联合学习对于动作识别任务非常关键,空间特征的提取与图像识别任务类似,可以很轻松地提取出来,但是仍有两个问题没有被解决,一个是如何去学习时间特征,另一个问题是如何将空间特征和时间特征很好地结合起来。解决上述问题有几种尝试:1