主要内容

coder.loadDeepLearningNetwork

深層学習ネットワ,クモデルの読み込み

説明

= coder.loadDeepLearningNetwork (文件名は,文件名垫子ファeconrルに保存された事前学習済みの深層学習SeriesNetwork(深度学习工具箱)オブジェクト,DAGNetwork(深度学习工具箱)オブジェクト,yolov2ObjectDetector(计算机视觉工具箱)オブジェクト,ssdObjectDetector(计算机视觉工具箱)オブジェクト,またはdlnetwork(深度学习工具箱)オブジェクトを読み込みます。文件名は,単一のSeriesNetworkオブジェクト,DAGNetworkオブジェクト,yolov2ObjectDetectorオブジェクト,ssdObjectDetectorオブジェクト,またはdlnetworkオブジェクトが含まれた,matlab®パス上に存在する有効なmatファescルでなければなりません。垫ファルには,読み込まれるネットワクのみが含まれていなければなりません。

= coder.loadDeepLearningNetwork (functionnameは,事前学習済みの深層学習SeriesNetworkオブジェクト,DAGNetworkオブジェクト,yolov2ObjectDetectorオブジェクト,ssdObjectDetectorオブジェクト,またはdlnetworkオブジェクトを返す関数を呼び出します。functionnameは,SeriesNetworkオブジェクト,DAGNetworkオブジェクト,yolov2ObjectDetectorオブジェクト,ssdObjectDetectorオブジェクト,またはdlnetworkオブジェクトを返す,matlabパス上に存在する関数の名前でなければなりません。

= coder.loadDeepLearningNetwork (___network_nameは,net = code . loaddeeplearningnetwork(文件名)と同じですが,ネットワークから生成されるc++クラスに名前を付けるためのオプションを指定しています。network_nameは,垫ファイルに保存されているネットワークオブジェクトの記述名か,関数の参照先のネットワークオブジェクトの記述名です。ネットワ,クの名前は,c++の有効な識別子である字符型でなければなりません。

ネットワ,クオブジェクト推論からコ,ドを生成する場合,この関数を使用します。この関数は,このネットワ,クからc++クラスを生成します。クラス名はmatファescル名または関数名から派生します。

メモ

coder.loadDeepLearningNetworkの入力引数は,コンパ。

すべて折りたたむ

関数coder.loadDeepLearningNetworkを使用してVGG-16系列ネットワ,クを読み込み,このネットワ,クのc++コ,ドを生成します。

事前学習済みのVGG-16ネットワクを含むmatファルを取得します。

url =“//www.tianjin-qmedu.com/万博1manbetxsupportfiles/gpucoder/cnn_models/VGG/vgg16.mat”;websave (“vgg16.mat”url);

関数coder.loadDeepLearningNetworkを使用してvgg16.matを永続mynetSeriesNetworkオブジェクトに読み込むエントリポ@ @ント関数myVGG16を作成します。

函数out = myVGG16(in)持续的mynet;如果mynet = code . loaddeeplearningnetwork (mynet)“vgg16.mat”“myVGGnet”);结束Out = predict(mynet,in);

この永続オブジェクトによって,入力に対して预测メソッドを呼び出す関数のそれ以降の呼び出し時に,ネットワークオブジェクトの再構成と再読み込みが回避されます。

事前学習済みのVGG-16ネットワクの入力層は,サズが224年x224x3の▪▪メ▪▪ジを受け入れます。以下のコド行を使用してグラフィックスファルから入力メジを読み取り,そのサズを224年x224に変更します。

In = imread(“peppers.png”);In = imresize(In,[224,224]);

Mexコ,ド生成用にcoder.config構成オブジェクトを作成し,タ,ゲット言語をc++に設定します。この構成オブジェクトでは,targetlib“mkldnn”にしてDeepLearningConfigを設定します。関数codegenは,matlab関数入力のサ;ズ,クラス,および実数/複素数を決定しなければなりません。arg游戏オプションを使用して,エントリポaaplント関数の入力のサaaplズを指定します。配置オプションを使用してコ,ド構成オブジェクトを渡します。

CFG = code .config(墨西哥人的);cfg。TargetLang =“c++”;cfg。DeepLearningConfig =编码器。DeepLearningConfig (“mkldnn”);codegenarg游戏{(224224 3 uint8)}配置cfgmyVGG16报告

codegenコマンドはすべての生成されたファ@ @ルをcodegenフォルダ,に配置します。このフォルダには,エントリポント関数myVGG16.cppのc++コード,ヘッダーファイル,畳み込みニューラルネットワーク(CNN)のc++クラス定義を含むソースファイル,重みファイル,およびバイアスファイルが含まれます。

入力▪▪メ▪▪ジでVGG-16预测を呼び出し,上位5の予測されたラベルを表示します。

predict_scores = myVGG16_mex(in);[scores,indx] = sort(predict_scores,“下”);net = code . loaddeeplearningnetwork (“vgg16.mat”);classNames = net.Layers(end).Classes;disp(类名(indx (1:5)));
甜椒黄瓜杂货店橡子南瓜胡桃南瓜

関数coder.loadDeepLearningNetworkを使用してresnet50系列ネットワ,クを読み込み,このネットワ,クからcuda®コ,ドを生成します。

関数coder.loadDeepLearningNetworkを使用してDeep Learning Toolbox™のルボックス関数resnet50を呼び出すエントリポ@ @ント関数resnetFunを作成します。この関数は事前学習済みのResNet-50ネットワ,クを返します。

函数out = resnetFun(in)持续的mynet;如果mynet = code . loaddeeplearningnetwork (mynet)“resnet50”“myresnet”);结束Out = predict(mynet,in);

この永続オブジェクトによって,入力に対して预测メソッドを呼び出す関数のそれ以降の呼び出し時に,ネットワークオブジェクトの再構成と再読み込みが回避されます。

事前学習済みのResNet-50ネットワクの入力層は,サズが224年x224x3の▪▪メ▪▪ジを受け入れます。グラフィックスファ▪▪ルから入力▪▪メ▪ジを読み取り,そのサ▪▪ズを224年x224に変更するには,次のコ,ド行を使用します。

In = imread(“peppers.png”);In = imresize(In,[224,224]);

Mexコ,ド生成用にcoder.gpuConfig構成オブジェクトを作成し,タ,ゲット言語をc++に設定します。関数codegenは,matlab関数入力のサ;ズ,クラス,および実数/複素数を決定しなければなりません。arg游戏オプションを使用してエントリポ超市超市ント関数の入力のサ超市超市ズを指定し,配置オプションを使用してコ,ド構成オブジェクトを渡します。

cfg = code . gpuconfig (墨西哥人的);cfg。TargetLang =“c++”;cfg。DeepLearningConfig =编码器。DeepLearningConfig (“cudnn”);codegenarg游戏{(224224 3 uint8)}配置cfgresnetFun报告

codegenコマンドはすべての生成されたファ@ @ルをcodegenフォルダ,に配置します。ここには,エントリポresnetFun.cuのCUDAコード,ヘッダーファイル,畳み込みニューラルネットワーク(CNN)のc++クラス定義を含むソースファイル,重みファイル,およびバイアスファイルが含まれます。

入力引数

すべて折りたたむ

事前学習済みのSeriesNetworkオブジェクト,DAGNetworkオブジェクト,yolov2ObjectDetectorオブジェクト,ssdObjectDetectorオブジェクト,またはdlnetworkオブジェクトを含むmatファescルの名前を指定します。

この入力引数はコンパ@ @ル時の定数でなければなりません。

デ,タ型:字符串

事前学習済みのSeriesNetworkオブジェクト,DAGNetworkオブジェクト,yolov2ObjectDetectorオブジェクト,ssdObjectDetectorオブジェクト,またはdlnetworkオブジェクトを返す関数の名前を指定します。

この入力引数はコンパ@ @ル時の定数でなければなりません。

デ,タ型:字符串

垫子ファ@ルに保存されたネットワ@クオブジェクトの記述名。これは,c++の有効な識別子である字符型でなければなりません。

この入力引数はコンパ@ @ル時の定数でなければなりません。

デ,タ型:字符

出力引数

すべて折りたたむ

ネットワ,ク推論。SeriesNetworkオブジェクト,DAGNetworkオブジェクト,yolov2ObjectDetectorオブジェクト,ssdObjectDetectorオブジェクト,またはdlnetworkオブジェクトとして返されます。

制限

  • coder.loadDeepLearningNetworkは複数のネットワ、クを含むmatファ、ルの読み込みをサポ、トしていません。

  • 垫ファルには,読み込まれるネットワクのみが含まれていなければなりません。

拡張機能

C/ c++コ,ド生成
MATLAB®Coder™を使用してCおよびc++コドを生成します。

Gpuコ,ド生成
GPU编码器™を使用してNVIDIA GPU®のためのCUDA®コードを生成します。

バ,ジョン履歴

R2017bで導入