主要内容

负载Pretrained网络代码生成

您可以生成代码pretrained卷积神经网络(CNN)。提供网络代码生成器,加载SeriesNetwork(深度学习工具箱),DAGNetwork(深度学习工具箱),yolov2ObjectDetector(计算机视觉工具箱),ssdObjectDetector(计算机视觉工具箱),或dlnetwork(深度学习工具箱)对象从训练网络。

加载一个网络通过使用coder.loadDeepLearningNetwork

你可以从任何网络加载网络对象,支持通过使用生成代码金宝appcoder.loadDeepLearningNetwork。您可以指定从MAT-file网络。MAT-file必须只包含网络加载。

例如,假设您创建一个训练有素的网络对象myNet通过使用trainNetwork(深度学习工具箱)函数。然后,你通过输入保存工作空间保存。这将创建一个文件matlab.mat包含网络对象。加载网络对象myNet,输入:

网= coder.loadDeepLearningNetwork (“matlab.mat”);

您还可以指定网络通过提供一个函数,返回一个pretrained的名字SeriesNetwork,DAGNetwork,yolov2ObjectDetector,或ssdObjectDetector对象,如:

例如,网络负载对象通过输入:

网= coder.loadDeepLearningNetwork (“googlenet”);

深度学习工具箱™函数在前面的列表要求你安装一个支持包的功能。金宝app看到Pretrained深层神经网络(深度学习工具箱)

指定一个网络对象代码生成

如果你通过使用生成代码codegen或应用程序,加载在你的入口点函数通过使用网络对象coder.loadDeepLearningNetwork。例如:

函数= myNet_predict(中)% # codegen持续的mynet;如果isempty (mynet) mynet = coder.loadDeepLearningNetwork (“matlab.mat”);结束=预测(mynet,);

可用pretrained网络支持包等功能金宝appalexnet,inceptionv3,googlenet,resnet,您可以直接指定包的支持功能,例如,通过写作金宝appmynet = googlenet

接下来,生成代码的入口点函数。例如:

cfg = coder.gpuConfig (墨西哥人的);cfg。TargetLang =“c++”;cfg。DeepLearningConfig = coder.DeepLearningConfig (“cudnn”);codegenarg游戏{(224224 3,“单”)}配置cfgmyNet_predict

指定一个dlnetwork对象的代码生成

假设您有一个pretraineddlnetwork网络对象mynet.matMAT-file。预测的反应网络,在MATLAB创建一个入口点函数®在这段代码中所示。

函数= myDLNet_predict(在)dlIn = dlarray (,SSC的);持续的dlnet;如果isempty (dlnet) dlnet = coder.loadDeepLearningNetwork (“mynet.mat”);结束国防后勤局=预测(dlnet dlIn);一个= extractdata (dlA);结束

在本例中,输入和输出myDLNet_predict简单数据类型的吗dlarray对象在创建函数。的extractdata(深度学习工具箱)的方法dlarray对象返回的数据dlarray国防后勤局的输出myDLNet_predict。输出一个具有相同的数据类型作为底层数据类型国防后勤局。这个入口点设计具有以下优点:

  • 更容易与独立的代码生成工作流集成等静态的,动态库,或可执行文件。

  • 的输出的数据格式extractdata函数有相同的订单(“SCBTU”在MATLAB环境和生成的代码。

  • 墨西哥人工作流程提高了性能。

  • 简化模型金宝app®工作流使用MATLAB函数块模型本身不支持金宝app金宝appdlarray对象。

接下来,生成代码的入口点函数。例如:

cfg = coder.gpuConfig (“自由”);cfg。TargetLang =“c++”;cfg。DeepLearningConfig = coder.DeepLearningConfig (“cudnn”);codegenarg游戏{(224224 3,“单”)}配置cfgmyDLNet_predict

另请参阅

功能

对象

相关的话题