主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

vgg16

VGG-16畳み込みニューラルネットワーク

説明

VGG-16は,深さが16層の畳み込みニューラルネットワークです。100年万枚を超えるイメージで学習させた事前学習済みのネットワークを,ImageNetデータベース[1]から読み込むことができます。この事前学習済みのネットワークは,イメージを1000個のオブジェクトカテゴリ(キーボード,マウス,鉛筆,多くの動物など)に分類できます。結果として,このネットワークは広範囲のイメージに対する豊富な特徴表現を学習しています。ネットワークのイメージ入力サイズは224 x 224です。MATLAB®の他の事前学習済みのネットワークについては,事前学習済みの深層ニューラルネットワークを参照してください。

分类を使用すると,VGG-16ネットワークを使用して新しいイメージを分類できます。GoogLeNetを使用したイメージの分類の手順に従って,GoogLeNetをVGG-16に置き換えます。

新しい分類タスクでネットワークの再学習を行うには,新しいイメージを分類するための深層学習ネットワークの学習の手順に従い,GoogLeNetの代わりにVGG-16を読み込みます。

= vgg16は,ImageNetデータセットで学習させたVGG-16ネットワークを返します。

この関数には,深度学习工具箱™模型VGG-16网络サポートパッケージが必要です。このサポートパッケージがインストールされていない場合,関数によってダウンロード用リンクが表示されます。

= vgg16(“权重”,“imagenet”は,ImageNetデータセットで学習させたVGG-16ネットワークを返します。この構文は,网= vgg16と等価です。

= vgg16(“权重”,“没有”は,未学習のVGG-16ネットワークアーキテクチャを返します。未学習のモデルは,サポートパッケージを必要としません。

すべて折りたたむ

深度学习工具箱模型VGG-16网络サポートパッケージをダウンロードしてインストールします。

コマンドラインでvgg16と入力します。

vgg16

深度学习工具箱模型VGG-16网络サポートパッケージがインストールされていない場合,関数によってアドオンエクスプローラーに必要なサポートパッケージへのリンクが表示されます。サポートパッケージをインストールするには,リンクをクリックして,[インストール]をクリックします。コマンドラインでvgg16と入力して,インストールが正常に終了していることを確認します。

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

ディープネットワークデザイナーを使用してネットワークを可視化します。

deepNetworkDesigner (vgg16)

ディープネットワークデザイナーで[新規]をクリックし,事前学習済みの他のネットワークを探索します。

ネットワークをダウンロードする必要がある場合は,[インストール]をクリックしてアドオンエクスプローラーを開きます。

事前学習済みのVGG-16畳み込みニューラルネットワークを読み込み,層およびクラスを確認します。

vgg16を使用して事前学習済みのVGG-16ネットワークを読み込みます。出力SeriesNetworkオブジェクトです。

网= vgg16
net = SeriesNetwork属性:层:[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卷积2563 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 ReLU ReLU 18“pool3”马克斯池2 x2马克斯池步(2 - 2)和填充[0 0 0 0]19 conv4_1卷积512 3 x3x256旋转步[1]和填充[1 1 1 1]20 ' relu4_1 ReLU ReLU 21 conv4_2卷积512 3 x3x512旋转步[1]和填充[1 1 1 1]22‘relu4_2 ReLU ReLU 23 conv4_3卷积512 3 x3x512旋转步[1]和填充[1 11 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分类数组金鱼,大白鲨,虎鲨,锤头,电鳐,黄貂鱼,公鸡,母鸡,鸵鸟

出力引数

すべて折りたたむ

事前学習済みのVGG-16畳み込みニューラルネットワーク。SeriesNetworkオブジェクトとして返されます。

未学習のVGG-16畳み込みニューラルネットワークアーキテクチャ。配列として返されます。

参照

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

Russakovsky, O., Deng J., Su H.等。“图像网络大规模视觉识别挑战”。国际计算机视觉杂志。115卷,2015年3期,页211-252

[3] Simonyan, Karen和Andrew Zisserman。arXiv:1409.1556 (2014)

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

拡張機能

R2017aで導入