主要内容

vgg16

VGG-16卷积神经网络

  • VGG-16网络架构

描述

VGG-16是一个16层的卷积神经网络。您可以从ImageNet数据库中加载经过100多万张图像训练的网络的预训练版本[1].预训练的网络可以将图像分类为1000个对象类别,例如键盘、鼠标、铅笔和许多动物。因此,该网络已经学习了广泛图像的丰富特征表示。该网络的图像输入大小为224 * 224。用于MATLAB中更多的预训练网络®,请参阅预训练的深度神经网络

你可以使用分类使用VGG-16网络对新图像进行分类。遵循以下步骤使用GoogLeNet分类图像用VGG-16取代GoogLeNet。

要在新的分类任务上重新训练网络,请遵循训练深度学习网络对新图像进行分类加载vg -16而不是GoogLeNet。

例子

= vgg16返回一个经过ImageNet数据集训练的vg -16网络。

此功能需要深度学习工具箱™模型用于VGG-16网络金宝app支持包。如果没有安装此支金宝app持包,则该函数将提供下载链接。

= vgg16(“权重”,“imagenet”返回一个经过ImageNet数据集训练的vg -16网络。这个语法等价于Net = vgg16

= vgg16(“权重”,“没有”返回未经训练的VGG-16网络架构。未经训练的模型不需要支持包。金宝app

例子

全部折叠

下载并安装深度学习工具箱模型用于VGG-16网络金宝app支持包。

类型vgg16在命令行。

vgg16

如果深度学习工具箱模型用于VGG-16网络金宝app支持包未安装,则该函数在外接程序资源管理器中提供到所需支持包的链接。要安装支持包,请单击链接,然后金宝app单击安装.通过输入检查安装是否成功vgg16在命令行。

vgg16
ans = SeriesNetwork with properties: Layers: [41×1 nnet.cnn.layer.Layer]

使用深度网络设计器可视化网络。

deepNetworkDesigner (vgg16)

通过单击在深度网络设计器中探索其他预训练的网络

深度网络设计器开始页显示可用的预训练网络

如果需要下载网络,请在需要下载的网络上暂停,然后单击安装打开附加组件资源管理器。

加载一个预先训练好的VGG-16卷积神经网络,并检查层和类。

使用vgg16加载预训练好的vg -16网络。输出是一个SeriesNetwork对象。

Net = vgg16
net = SeriesNetwork with properties: Layers: [41×1 nnet.cnn.layer.Layer]

命令查看网络结构财产。网络共有41层。有16个具有可学习权重的层:13个卷积层和3个完全连接层。

网层
ans = 41x1带有层的层数组:224 x224x3输入的图像输入图像2”zerocenter“正常化”conv1_1卷积64子集要旋转步[1]和填充[1 1 1 1]3‘relu1_1 ReLU ReLU 4 conv1_2卷积64 3 x3x64旋转步[1]和填充[1 1 1 1]5‘relu1_2 ReLU ReLU 6“pool1”马克斯池2 x2马克斯池步(2 - 2)和填充[0 0 0 0]7 conv2_1卷积128 3 x3x64旋转步[1]和填充(1 1 1)8“relu2_1”ReLU ReLU 9 conv2_2卷积128 3 x3x128旋转步[1]和填充[1 1 1 1]10“relu2_2”ReLU ReLU 11“pool2”马克斯池2 x2马克斯池步(2 - 2)和填充[0 0 0 0]12 conv3_1卷积256 3 x3x128旋转步[1]和填充[1 1 1 1]13的relu3_1 ReLU ReLU 14 conv3_2卷积256 3 x3x256旋转步[1]和填充[1 1 1 1]15 ' relu3_2 ReLU ReLU 16 conv3_3卷积256 3 x3x256旋转步[1]和填充[1 1 1 1]17 relu3_3 ReLUReLU 18 'pool3' Max Pooling 2x2 max pooling with stride [2 2] and padding [0 0 0 0] 19 'conv4_1' Convolution 512 3x3x256 convolutions with stride [1 1] and padding [1 1 1 1] 20 'relu4_1' ReLU ReLU 21 'conv4_2' Convolution 512 3x3x512 convolutions with stride [1 1] and padding [1 1 1 1] 22 'relu4_2' ReLU ReLU 23 'conv4_3' Convolution 512 3x3x512 convolutions with stride [1 1] and padding [1 1 1 1] 24 'relu4_3' ReLU ReLU 25 'pool4' Max Pooling 2x2 max pooling with stride [2 2] and padding [0 0 0 0] 26 'conv5_1' Convolution 512 3x3x512 convolutions with stride [1 1] and padding [1 1 1 1] 27 'relu5_1' ReLU ReLU 28 'conv5_2' Convolution 512 3x3x512 convolutions with stride [1 1] and padding [1 1 1 1] 29 'relu5_2' ReLU ReLU 30 'conv5_3' Convolution 512 3x3x512 convolutions with stride [1 1] and padding [1 1 1 1] 31 'relu5_3' ReLU ReLU 32 'pool5' Max Pooling 2x2 max pooling with stride [2 2] and padding [0 0 0 0] 33 'fc6' Fully Connected 4096 fully connected layer 34 'relu6' ReLU ReLU 35 'drop6' Dropout 50% dropout 36 'fc7' Fully Connected 4096 fully connected layer 37 'relu7' ReLU ReLU 38 'drop7' Dropout 50% dropout 39 'fc8' Fully Connected 1000 fully connected layer 40 'prob' Softmax softmax 41 'output' Classification Output crossentropyex with 'tench' and 999 other classes

如果需要查看网络学习到的类的名称,可以查看分类输出层(最后一层)的属性。通过指定前10个元素来查看前10个类。

net.Layers(结束). class (1:10)
ans =10×1分类数组Tench金鱼大白鲨虎鲨锤头电鳐黄貂鱼公鸡母鸡鸵鸟

输出参数

全部折叠

预训练的VGG-16卷积神经网络返回为SeriesNetwork对象。

未经训练的VGG-16卷积神经网络架构,返回作为一个数组中。

参考文献

[1]ImageNet.http://www.image-net.org

[2] Russakovsky, O., Deng, J., Su, H.等。“ImageNet大规模视觉识别挑战。”国际计算机视觉杂志(IJCV).115卷,第3期,2015年,第211-252页

Simonyan, Karen, Andrew Zisserman。“用于大规模图像识别的非常深度卷积网络”arXiv预印本arXiv:1409.1556(2014)。

[4]用于大规模视觉识别的超深度卷积网络http://www.robots.ox.ac.uk/~vgg/research/very_deep/

扩展功能

在R2017a中引入