ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

importCaffeNetwork

事前学習済みたたみ込みニューラル ネットワーク モデルを Caffe からインポート

構文

net = importCaffeNetwork(protofile,datafile)
net = importCaffeNetwork(protofile,datafile,'InputSize',sz)
net = importCaffeNetwork(___,Name,Value)

説明

net = importCaffeNetwork(protofile,datafile) は、Caffe [1] から事前学習済みのネットワークを SeriesNetwork オブジェクトとしてインポートします。この関数は、.prototxt ファイル protofile によって指定されているアーキテクチャと、.caffemodel ファイル datafile によって指定されているネットワークの重みを持つ事前学習済みのネットワークを返します。

この関数には、Neural Network Toolbox™ Importer for Caffe Models サポート パッケージが必要です。このサポート パッケージがインストールされていない場合、関数によってダウンロード用リンクが表示されます。

Caffe Model Zoo [2] から事前学習済みのネットワークをダウンロードできます。

net = importCaffeNetwork(protofile,datafile,'InputSize',sz) は、事前学習済みのネットワークを返し、入力データのサイズを指定します。.prototxt ファイルで入力データのサイズが指定されていない場合、入力サイズを指定しなければなりません。

net = importCaffeNetwork(___,Name,Value) は、前の構文のいずれかを使用し、1 つ以上のペアの引数 Name,Value によって追加オプションが指定されたネットワークを返します。

すべて折りたたむ

Neural Network Toolbox Importer for Caffe Models サポート パッケージをダウンロードしてインストールします。

必要なサポート パッケージをダウンロードするには、コマンド ラインに importCaffeNetwork と入力します。

importCaffeNetwork

Neural Network Toolbox Importer for Caffe Models サポート パッケージがインストールされていない場合、関数によってアドオン エクスプローラーに必要なサポート パッケージへのリンクが表示されます。サポート パッケージをインストールするには、リンクをクリックして、[インストール] をクリックします。

インポートするファイルを指定します。

protofile = 'digitsnet.prototxt';
datafile = 'digits_iter_10000.caffemodel';

ネットワークをインポートします。

net = importCaffeNetwork(protofile,datafile)
net = 

  SeriesNetwork with properties:

    Layers: [7×1 nnet.cnn.layer.Layer]

入力引数

すべて折りたたむ

ネットワーク アーキテクチャが含まれる .prototxt ファイルの名前。文字ベクトルとして指定します。MATLAB® パス上のフォルダー内の現在のフォルダーに protofile が含まれていなければならず、そうでなければこのファイルの絶対パスまたは相対パスを含めなければなりません。

.prototxt ファイルによって入力データのサイズが指定されていない場合、入力引数 sz を使用してサイズを指定しなければなりません。

importCaffeNetwork によって、Caffe の層のタイプが次のとおりである系列ネットワークのみをインポートできます。

  • 入力

  • データ

  • たたみ込み

  • ReLU

  • 局所応答正規化 (LRN)

  • プーリング

  • 内積

  • ドロップアウト

  • ソフトマックス損失

  • ユークリッド損失

ネットワークに他のタイプの層が含まれる場合、エラーが返されます。

この関数は、include-phase TEST を使用して protofile によって指定されている層のみをインポートします。この関数は、include-phase TRAIN を使用して protofile によって指定されている層を無視します。

ソルバーの定義はインポートできません。

例: 'digitsnet.prototxt'

データ型: char

ネットワークの重みが含まれる .caffemodel ファイルの名前。文字ベクトルとして指定します。MATLAB パス上のフォルダー内の現在のフォルダーに datafile が含まれていなければならず、そうでなければこのファイルの絶対パスまたは相対パスを含めなければなりません。重みのないネットワーク層をインポートするには、importCaffeLayers を参照してください。

例: 'digits_iter_10000.caffemodel'

データ型: char

入力データのサイズ。行ベクトルとして指定します。入力データの高さ、幅、およびチャネル数に対応する 2 個または 3 個の整数値のベクトル [h,w] または [h,w,c] を指定します。

例: [28 28 1]

データ型: double

名前/値のペアの引数

オプションの引数 Name,Value のコンマ区切りペアを指定します。Name は引数名で、Value は対応する値です。Name は一重引用符 (' ') で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を、任意の順番で指定できます。

例: importCaffeNetwork(protofile,datafile,'AverageImage',I,'ClassNames',{'A','B','C'}) は、ゼロ中心正規化用の平均イメージ I を使用して、事前学習済みのネットワークをインポートし、クラス名を 'A''B'、および 'C' に指定します。

すべて折りたたむ

ゼロ中心正規化用の平均イメージ。行列として指定します。イメージを指定する場合、入力データと同じサイズのイメージを指定しなければなりません。イメージを指定しない場合、.prototxt ファイル (存在する場合) に指定されているデータが使用されます。そうでない場合、この関数はネットワークのイメージ入力層の Normalization プロパティを 'none' に設定します。

データ型: single

ネットワークの出力層に関連付けられたクラス名。文字ベクトルのセル配列によって指定します。

例: {'0','1','2','3','4','5','6','7','8','9'}

データ型: cell

出力引数

すべて折りたたむ

インポートされた事前学習済みの Caffe ネットワーク。SeriesNetwork オブジェクトとして返されます。トゥルーカラー イメージを分類する Caffe ネットワークは、BGR イメージの入力を想定しています。MATLAB にインポートした場合、イメージ入力層には RGB イメージを入力する必要があります。

参照

[1] Caffe. http://caffe.berkeleyvision.org/

[2] Caffe Model Zoo. http://caffe.berkeleyvision.org/model_zoo.html

R2017a で導入

この情報は役に立ちましたか?