进口pretrainedONNX网络
从文件中导入预训练的ONNX™(Open Neural Network Exchange)网络网
= importonnxnetwork(模数
)模数
.函数返回网络网
作为一个DAGNetwork
或dlnetwork
对象。
importONNXNetwork
要求ONNX模型格式的深度学习工具箱™转换器万博1manbetx支持包。如果未安装此支持包,则importONNXNetwork
提供下载链接。
笔记
默认情况下,importONNXNetwork
当软件不能将ONNX运算符转换为等效的内置MATLAB时,尝试生成一个自定义层®层。有关软件支持转换的运算符列表,请参阅万博1manbetx支持ONNX运算符转换为内置的万博1manbetxMATLAB层.
importONNXNetwork
将生成的自定义图层保存在包中+
.模数
importONNXNetwork
不会为每个ONNX运算符自动生成自定义层,该运算符不支持转换为内置MATLAB层。有关如何处理不支持的层的更多信息,请参阅万博1manbetx替代功能.
下载并安装ONNX模型格式支持包的深入学习工具箱转换器。万博1manbetx
类型importONNXNetwork
在命令行。
importONNXNetwork
如果未安装ONNX Model Format的Deep Learning Toolbox Converter,则该函数会在附加模块资源管理器中提供指向所需支持包的链接。要安装支持包,请单击该链接,然后单击万博1manbetx安装.从模型文件导入网络检查安装是否成功“simplenet.onnx”
如果安装了支持包,则函数返回万博1manbetxDAGNetwork
对象。
modelfile =“simplenet.onnx”;net = importonnxnetwork(modeloleile)
net = DAGNetwork with properties: Layers: [9×1 nnet.cnn.layer.Layer] Connections: [8×2 table] InputNames: {'imageinput'} OutputNames: {'ClassificationLayer_softmax1002'}
绘制网络架构图。
情节(净)
DAGNetwork
导入预训练的ONNX网络作为DAGNetwork
对象,并使用导入的网络对图像进行分类。
的ONNX模型squeezenet
卷积神经网络。
squeezeNet = squeezeNet;exportONNXNetwork (squeezeNet“挤压net.onnx”);
指定类名。
ClassNames = screezenet.layers(结束).classes;
导入pretrained挤压网.onnx
模型,并指定类。默认情况下,importONNXNetwork
将网络作为文件导入DAGNetwork
对象。
网= importONNXNetwork (“挤压net.onnx”,Classes=类名)
net = DAGNetwork with properties: Layers: [70×1 nnet.cnn.layer.Layer] Connections: [77×2 table] InputNames: {'data'} OutputNames: {'ClassificationLayer_prob'}
分析导入的网络。
分析网络(net)
阅读你想分类的图像,并显示图像的大小。图像是384 × 512像素,有三个颜色通道(RGB)。
我= imread (“peppers.png”);大小(我)
ans=1×3384 512 3
将图像调整为网络的输入大小。显示图像。
I = imresize(I,[227 227]);imshow(我)
使用导入的网络对图像进行分类。
标签=分类(净,我)
标签=分类甜椒
dlnetwork
导入预训练的ONNX网络作为dlnetwork
对象,并使用导入的网络对图像进行分类。
的ONNX模型squeezenet
卷积神经网络。
squeezeNet = squeezeNet;exportONNXNetwork (squeezeNet“挤压net.onnx”);
指定类名。
ClassNames = screezenet.layers(结束).classes;
导入pretrained挤压网.onnx
作为模型dlnetwork
对象。
网= importONNXNetwork (“挤压net.onnx”TargetNetwork =“DLN网络”)
net=dlnetwork,具有以下属性:层:[70×1 nnet.cnn.layer.layer]连接:[77×2表]可学习:[52×3表]状态:[0×3表]输入名称:{data'}输出名称:{probOutput'}初始化:1
阅读你想分类的图像,并显示图像的大小。图像是384 × 512像素,有三个颜色通道(RGB)。
我= imread (“peppers.png”);大小(我)
ans=1×3384 512 3
将图像调整为网络的输入大小。显示图像。
I = imresize(I,[227 227]);imshow(我)
将图像转换为adlarray.
.使用尺寸格式化图像“SSCB”
(空间、空间、通道、批次)。在这种情况下,批处理大小为1,您可以忽略它(“SSC”
)。
I_dlarray = dlarray(单(我),“SSCB”);
对样本图像进行分类,找到预测的标签。
概率=预测(净,I_dlarray);[~,标签]= max(概率);
显示分类结果。
Classnames(标签)
ans=分类甜椒
导入预训练的ONNX网络作为DAGNetwork
对象,并使用导入的网络对图像进行分类。导入的网络包含不支持转换为内置MATLAB层的ONNX运算符。万博1manbetx当您导入这些操作符时,软件会自动生成自定义层。
这个例子使用了helper函数findCustomLayers
.要查看此功能的代码,请参阅辅助函数.
指定要导入为的模型文件shufflenet
使用ONNX模型动物园中的操作符设置9。shufflenet
是一个卷积神经网络,训练了来自ImageNet数据库的100多万张图像。因此,该网络学习了丰富的特征表示范围广泛的图像。该网络可以将图像分为1000个对象类别,如键盘、鼠标、铅笔和许多动物。
modelfile =“shufflenet - 9. onnx”;
从导入类名squeezenet
,它还使用ImageNet数据库中的图像进行训练。
squeezeNet = squeezeNet;ClassNames = scriezenet.layers(结束).classnames;
进口shufflenet
.默认情况下,importONNXNetwork
将网络作为文件导入DAGNetwork
对象。如果导入的网络包含不支持转换为内置MATLAB层的ONNX操作符,则万博1manbetximportONNXNetwork
可以自动生成自定义图层来代替这些操作符。importONNXNetwork
将每个生成的自定义层保存为单独的.m
包中的文件+ shufflenet_9
在当前文件夹中。使用name-value参数指定包名PackageName
.
net = importonnxnetwork(模块,...Classes = ClassNames,PackageName =“shufflenet_9”)
net = DAGNetwork with properties: Layers: [173×1 nnet.cnn.layer.Layer] Connections: [188×2 table] InputNames: {'gpu_0_data_0'} OutputNames: {'ClassificationLayer_gpu_0_softmax_1'}
使用helper函数查找自动生成的自定义图层的索引findCustomLayers
,并显示自定义图层。
印第安纳州= findCustomLayers(净。层,“+shufflenet_9”);Net.Layers(Ind)
ans=16×1带层的层阵列:1'重塑至重塑1004'shufflenet_9.重塑至重塑1004 shufflenet_9.重塑至重塑1004 2'重塑至重塑1009'shufflenet_9.重塑至重塑1009.重塑至重塑1009.重塑至重塑1009.重塑至重塑1003'重塑至重塑1014'shufflenet_9.重塑至重塑1014_9.重塑为重塑者1014’重塑为重塑者1019’shufflenet’9.重塑为重塑者1019 shufflenet’9.重塑为重塑者1019 5’重塑为重塑者1024’shufflenet’9.重塑为重塑者1024 shufflenet’9.重塑为重塑者1024 shufflenet’9.重塑为重塑者1024’shufflenet’9.重塑为重塑pe_To_Reformelayer1029 7“Reforme_To_Reformelayer1034 shufflenet_9.Reforme_To_Reformelayer1034 8”Reforme_To_Reformelayer1039.Reforme_To_Reformelayer1039.Reforme_To_Reformelayer1039.Reforme_To_To_Reformelayer1039.Reforme_To_To_Reformelayer1039.Reformelayer1044’shufflenet_To ReformelayerueshapeLayer1044 10“重塑至重塑者1049”shufflenet 9.重塑至重塑者1049 shufflenet 9.重塑至重塑者1049 11“重塑至重塑者1054”shufflenet 9.重塑至重塑者1054 shufflenet 9.重塑至重塑者1054 shufflenet 9.重塑至重塑者1054 12“重塑至重塑者1059.重塑至重塑至重塑者1059.重塑至重塑至重塑者peLayer1059 13“重塑至重塑者1064”shufflenet\u 9.重塑至重塑者1064 shufflenet\u 9.重塑至重塑者1064 14“重塑至重塑者1069”shufflenet\u 9.重塑至重塑者1069 shufflenet\u 9.重塑至重塑者1069 15“重塑至重塑者1074”shufflenet\u 9.重塑至重塑至重塑者1074yer1074 16“重塑为重塑为重塑1079”shufflenet。重塑为重塑为重塑1079 shufflenet。重塑为重塑为重塑1079
阅读你想分类的图像,并显示图像的大小。图像是792 × 1056像素,有三个颜色通道(RGB)。
我= imread (“孔雀,jpg”);大小(我)
ans=1×3792 1056 3
将图像调整为网络的输入大小。显示图像。
I=imresize(I[224 224]);imshow(I)
输入到shufflenet
需要进一步预处理(有关详细信息,请参阅shuffle lenet在ONNX模型动物园)。重新归类图像。通过减去训练图像的平均值并除以训练图像的标准偏差来归一化图像。
I=重新缩放(I,0,1);平均值=[0.485 0.456 0.406];stdIm=[0.2290.2240.225];I=(I-重塑(平均值[13])。/重塑(标准偏差[13]);imshow(I)
使用导入的网络对图像进行分类。
标签=分类(净,我)
标签=分类孔雀
辅助函数
本节提供帮助器函数的代码findCustomLayers
在此示例中使用。findCustomLayers
返回指数
自定义图层的importONNXNetwork
自动生成。
作用indices = findcustomlayers(图层,packageName)s =什么([‘。’PackageName]);指数= 0(1、长度(小);为了i=1:长度(层)为了J = 1:长度(下半)如果strcmpi(类(层(i)),[PackageName(2:end)'.'S.m {j}(1:end-2)]) indices(j) = i;终止终止终止终止
导入具有多个输出的ONNX网络作为DAGNetwork
对象。
指定ONNX模型文件并导入预训练的ONNX模型。默认情况下,importONNXNetwork
将网络作为文件导入DAGNetwork
对象。
modelfile =“digitsMIMO.onnx”;net = importonnxnetwork(modeloleile)
net = DAGNetwork with properties: Layers: [19×1 nnet.cnn.layer.Layer] Connections: [19×2 table] InputNames: {'input'} OutputNames: {'ClassificationLayer_sm_1' 'RegressionLayer_fc_1_Flatten'}
网络具有两个输出层:一个分类层(classificationlayer_sm_1.
)分类数字和一个回归层(RegressionLayer_fc_1_Flatten
)来计算这些数字的预测角度的均方误差。绘制网络架构图。
地块(净)标题(“数字MIMO网络架构”)
要使用导入的网络进行预测,请使用预测
函数,并设置ReturnCategorical
选择真正的
.
模数
—ONNX模型文件的名称包含网络的ONNX模型文件的名称,指定为字符向量或字符串标量。该文件必须在当前文件夹中或在MATLAB路径上的一个文件夹中,或者必须包含文件的完整或相对路径。
例子:“cifarResNet.onnx”
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
是参数名称和价值
为对应值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
ImportOnXNetwork(模型文件,TargetNetwork=“dagnetwork”,GenerateCustomLayers=true,PackageName=“CustomLayers”)
导入网络模数
作为一个DAGNetwork
对象,并将自动生成的自定义层保存在包中+ CustomLayers.
在当前文件夹中。
发电层
—自定义层生成的选项真正的
或1.
(默认)|错误的
或0
用于自定义层生成的选项,指定为数字或逻辑1.
(真正的
)或0
(错误的
).如果你发电层
来真正的
,importONNXNetwork
当软件不能将ONNX运算符转换为等效的内置MATLAB层时,尝试生成一个自定义层。importONNXNetwork
将每个生成的自定义层保存为单独的.m
归档+
. 要查看或编辑自定义图层,请打开关联的PackageName
.m
文件。有关自定义层的更多信息,请参见深度学习自定义层.
例子:GenerateCustomLayers = false
TargetNetwork
—深度学习工具箱网络的目标类型“dagnetwork”
(默认)|“DLN网络”
深度学习工具箱网络的目标类型,具体为“dagnetwork”
或“DLN网络”
.功能importONNXNetwork
进口网络网
作为一个DAGNetwork
或dlnetwork
对象。
如果您将网络导入为DAGNetwork
对象,网
必须包括由ONNX模型指定的输入和输出层,或者使用name-value参数指定的输入和输出层InputDataFormats
,OutputDataFormats
,或OutputLayerType
.
如果您将网络导入为dlnetwork
对象,importONNXNetwork
附加customoutputlayer.
的每个输出分支的末尾网
,并可能附加aCustomInputLayer
在输入分支的开头。函数附加一个CustomInputLayer
如果输入数据格式或输入图像大小未知。有关这些层的数据格式的网络特定信息,请参阅CustomInputLayer
和customoutputlayer.
物体。有关如何解释深度学习工具箱输入和输出数据格式的信息,请参阅转换ONNX输入和输出张量到内置MATLAB层.
例子:TargetNetwork = " dlnetwork "
InputDataFormats
—网络输入的数据格式网络输入的数据格式,指定为字符向量、字符串标量或字符串数组。importONNXNetwork
尝试从ONNX文件解释输入数据格式。名称值参数InputDataFormats
是有用的,当importONNXNetwork
无法派生输入数据格式。
放inputdatafomats.
在ONNX输入Tensor排序中的数据格式。例如,如果您指定InputDataFormats
作为“BSSC”
,导入的网络有一个imageInputLayer
输入。了解更多信息importONNXNetwork
解释ONNX输入张量的数据格式以及如何指定InputDataFormats
有关不同的深度学习工具箱输入层,请参见转换ONNX输入和输出张量到内置MATLAB层.
如果指定空数据格式([]
或“
),importONNXNetwork
自动解释输入数据格式。
例子:InputDataFormats='BSSC'
例子:InputDataFormats = " BSSC "
例子:InputDataFormats = [" bcs”、“”、“公元前”)
例子:InputDataFormats={'BCSS',[],'BC'}
数据类型:烧焦
|字符串
|单间牢房
OutputDataFormats
—网络输出的数据格式网络输出的数据格式,指定为字符向量、字符串标量或字符串数组。importONNXNetwork
尝试从ONNX文件解释输出数据格式。name-value参数OutputDataFormats
是有用的,当importONNXNetwork
无法派生输出数据格式。
放OutputDataFormats
在ONNX输出Tensor的排序中进行数据格式。例如,如果您指定OutputDataFormats
作为“公元前”
,导入的网络有一个classificationLayer
输出欲了解更多有关如何importONNXNetwork
解释ONNX输出张量的数据格式以及如何指定OutputDataFormats
有关不同的深度学习工具箱输出层,请参见转换ONNX输入和输出张量到内置MATLAB层.
如果指定空数据格式([]
或“
),importONNXNetwork
自动解释输出数据格式。
例子:公元前OutputDataFormats = ' '
例子:OutputDataFormats =“公元前”
例子:OutputDataFormats = [" bcs”、“”、“公元前”)
例子:OutputDataFormats = {bcs,[],“公元前”}
数据类型:烧焦
|字符串
|单间牢房
图像输入大小
—第一次网络输入的输入图像大小第一个网络输入的输入图像的大小,指定为对应于[高度、宽度、通道]
对于二维图像和(高度、宽度、深度、渠道)
3 d图像。网络仅在ONNX模型在时使用此信息模数
不指定输入大小。
例子:ImageInputSize=[28 1]
对于2-D灰度输入图像
例子:imageInputSize = [224 224 3]
对于2-D颜色输入图像
例子:imageInputSize = [28 28 36 3]
用于三维彩色输入图像
OutputLayerType
—用于第一网络输出的图层类型“分类”
|“回归”
|“pixelclassification”
第一个网络输出的层类型,指定为“分类”
,“回归”
,或“pixelclassification”
.功能importONNXNetwork
附加分类输出层
,RegressionOutputLayer
,或像素分类层
(电脑视觉工具箱)对象到导入的网络体系结构的第一个输出分支的末端。附加一个像素分类层
(电脑视觉工具箱)对象需要计算机Vision Toolbox™。如果ONNX模型模数
指定输出层类型或指定TargetNetwork
作为“DLN网络”
,importONNXNetwork
忽略name-value参数OutputLayerType
.
例子:OutputLayerType =“回归”
类
—类输出层为第一网络输出“汽车”
(默认)|分类载体|字符串数组|字符向量的单元格数组用于第一个网络输出的输出层的类,指定为类别向量、字符串数组、字符向量的单元数组或“汽车”
.如果类
是“汽车”
, 然后importONNXNetwork
将类设置为分类(1:N)
,在那里N
为类数。如果指定字符向量的字符串数组或单元格数组str
, 然后importONNXNetwork
设置输出层的类为分类(str, str)
.如果您指定TargetNetwork
作为“DLN网络”
,importONNXNetwork
忽略name-value参数类
.
例子:类={0','1','3'}
例子:类=分类({'dog','cat'})
数据类型:烧焦
|分类
|字符串
|单间牢房
FoldConstants
—常数合并优化“深度”
(默认)|“浅”
|“没有任何”
恒定折叠优化,指定为“深度”
,“浅”
,或“没有任何”
.在将ONNX运算符转换为等效的内置MATLAB层期间,通过在ONNX初始化器(初始常量值)上计算操作,常量折叠优化了导入的网络架构。
如果ONNX网络包含软件无法转换为等效内置MATLAB层的操作员(请参阅支持ONNX运算符转换为内置的万博1manbetxMATLAB层)不断的折叠优化可以减少不受支持的层数。当你设定万博1manbetxFoldConstants
来“深度”
,与将参数设置为时相比,网络具有相同或更少的不支持层万博1manbetx“浅”
。但是,网络导入时间可能会增加。设置FoldConstants
来“没有任何”
禁用网络架构优化。
如果网络经过不断的折叠优化后仍然包含不支持的层,万博1manbetximportONNXNetwork
返回一个错误。在这种情况下,可以使用重要人物
或importonnxfunction.
.有关更多信息,请参见替代功能.
例子:FoldConstants=“浅”
网
—预训练的ONNX网络DAGNetwork
对象|dlnetwork
对象预训练的ONNX网络,作为DAGNetwork
或dlnetwork
对象。
指定TargetNetwork
作为“dagnetwork”
将网络导入为DAGNetwork
对象。在DAGNetwork
对象,您可以通过使用该标签来预测类标签分类
函数。
指定TargetNetwork
作为“DLN网络”
将网络导入为dlnetwork
对象。在dlnetwork
对象,您可以通过使用该标签来预测类标签预测
函数。将输入数据指定为adlarray.
使用正确的数据格式(有关更多信息,请参阅FMT.
的观点dlarray.
)。
importONNXNetwork
万博1manbetx支持ONNX版本如下:
该函数支持ONNX中间表示万博1manbetx版本6。
该函数支持ONNX操作符集万博1manbetx6到13。
笔记
如果导入导出的网络,则重新导入的网络的层可能与原始网络不同,因此可能不受支持。万博1manbetx
importONNXNetwork
万博1manbetx支持以下ONNX运算符进行转换为内置MATLAB层,具有一些限制。
ONNX运营商 | 深度学习工具箱层 |
---|---|
|
附加层 或nnet.onnx.layer.ElementwiseAffineLayer |
|
averagePooling2dLayer |
|
batchNormalizationLayer |
|
连接层 |
|
无(作为权重导入) |
|
convolution2dLayer |
|
TransposedConv2dlayer. |
|
dropoutLayer |
|
淋溶层 |
|
完全连接层 如果ONNX网络是循环的,则为nnet.onnx.layer.flattlayer 其次是convolution2dLayer |
|
globalAveragePooling2dLayer |
|
globalmaxpooling2dlayer. |
|
泥鳅 |
|
GroupnormalizationLayer. 具有numGroups 指定为“channel-wise” |
|
漏泄层 |
|
CrossChannelNormalizationLayer |
|
第一层 或bilstmLayer |
|
完全连接层 如果ONNX网络是循环的,则为convolution2dLayer |
|
maxPooling2dLayer |
|
multiplicationLayer |
|
雷卢耶 或clippedReluLayer |
|
sigmoidLayer |
|
|
|
附加层 |
|
Tanhlayer. |
*如果是垫
的属性卷积和多项式相乘
运算符是只有两个元素的向量(p1, p2)
,importONNXNetwork
进口卷积和多项式相乘
作为一个convolution2dLayer
使用name-value参数“填充”
指定为[p1,p2,p1,p2]
.
ONNX运营商 | ONNX导入器自定义层 |
---|---|
|
nnet.onnx.layer.ClipLayer |
|
nnet.onnx.layer.ElementwiseAffineLayer |
|
nnet.onnx.layer.flattlayer 或nnet.onnx.layer.Flatten3dLayer |
|
nnet.onnx.layer.IdentityLayer |
|
nnet.onnx.layer.ElementwiseAffineLayer |
|
nnet.onnx.layer.PReluLayer |
|
nnet.onnx.layer.flattlayer |
|
nnet.onnx.layer.ElementwiseAffineLayer |
ONNX运营商 | 图像处理工具箱™ |
---|---|
DepthToSpace |
depthToSpace2dLayer (图像处理工具箱) |
调整大小 |
resize2dLayer (图像处理工具箱)或调整3D图层的大小 (图像处理工具箱) |
空间深度 |
spaceToDepthLayer (图像处理工具箱) |
upsample. |
resize2dLayer (图像处理工具箱)或调整3D图层的大小 (图像处理工具箱) |
importONNXNetwork
尝试解释ONNX网络输入和输出张量的数据格式,然后将其转换为内置的MATLAB输入和输出层。有关解释的详细信息,请参阅表ONNX输入张量到深度学习工具箱层的转换和ONNX输出张量到MATLAB层的转换.
在深度学习工具箱中,每个数据格式字符必须是其中一个标签:
s
——空间
C
——频道
B
-批量观察
T
- 时间或序列
U
——未指明的
转换ONNX张量输入深度学习工具箱层
数据格式 | 资料解释 | 深度学习工具箱层 | ||
---|---|---|---|---|
ONNX输入张量 | MATLAB输入格式 | 形状 | 类型 | |
卑诗省 |
CB |
C-借-N数组,C是多少特征和N是观察的数量 | 特性 | 特征输入层 |
bcs ,BSSC ,CSS ,SSC |
SSCB |
H-借-W-借-C-借-N数字数组,H,W,C和N分别是图像的高度、宽度、通道数和观测次数吗 |
二维图像 | imageInputLayer |
BCSSS ,BSSSC ,包括 ,SSSC. |
SSSCB. |
H-借-W-借-D-借-C数字数组,H,W,D,C和N分别是图像的高度、宽度、深度、通道数和图像观察数 |
三维图像 | image3dinputlayer. |
未完待续 |
CBT |
C-借-s-借-N矩阵,在哪里C为序列特征的个数,s是序列长度,并且N是序列观测的数量 |
向量序列 | sequenceInputLayer |
TBCSS |
SSCBT |
H-借-W-借-C-借-s-借-N数组,H,W,C和N分别对应图像的高度、宽度和通道数量,s是序列长度,并且N是图像序列观测的次数吗 |
二维图像序列 | sequenceInputLayer |
TBCSS |
SSSCBT |
H-借-W-借-D-借-C-借-s-借-N数组,H,W,D, 和C对应于图像的高度,宽度,深度和数量,s是序列长度,并且N是图像序列观测的次数吗 |
三维图像序列 | sequenceInputLayer |
转换ONNX张量输出到MATLAB层
数据格式 | MATLAB层 | |
---|---|---|
ONNX输出张量 | MATLAB输出格式 | |
卑诗省 ,未完待续 |
CB ,CBT |
classificationLayer |
bcs ,BSSC ,CSS ,SSC ,BCSSS ,BSSSC ,包括 ,SSSC. |
SSCB ,SSSCB. |
像素分类层 (电脑视觉工具箱) |
TBCSS ,TBCSS |
SSCBT ,SSSCBT |
海退层 |
importONNXNetwork
不能在GPU上执行。然而,importONNXNetwork
导入预训练的深度学习神经网络作为DAGNetwork
或dlnetwork
对象,可以在GPU上使用。
如果您将网络导入为DAGNetwork
对象,您可以在CPU或GPU上使用分类
.使用name-value参数指定硬件需求执行环境
.对于具有多个输出的网络,使用预测
功能DAGNetwork
物体。
如果您将网络导入为DAGNetwork
对象,您可以在CPU或GPU上使用预测
.使用name-value参数指定硬件需求执行环境
.如果网络有多个输出,请指定name-value参数ReturnCategorical
作为真正的
.
如果您将网络导入为dlnetwork
对象,您可以在CPU或GPU上使用预测
.功能预测
如果输入数据或网络参数存储在GPU上,则在GPU上执行。
如果你使用minibatchqueue
对小批量输入数据进行处理和管理minibatchqueue
对象默认将输出转换为GPU阵列(如果有GPU可用)。
使用dlupdate.
转换可学习的参数的步骤dlnetwork
对象到GPU阵列。
dlnet=dlupdate(@gpuarray,dlnet)
您可以使用CPU或GPU来训练导入的网络列车网络
.要指定培训选项,包括执行环境的选项,请使用培训选项
函数。使用name-value参数指定硬件需求执行环境
.有关如何加速培训的更多信息,请参阅在gpu和云上并行扩展深度学习.
使用GPU需要并行计算工具箱™和支持的GPU设备。万博1manbetx有关支持设备的信息,请参阅万博1manbetxGPU版万博1manbetx本支持(并行计算工具箱).
若要使用预训练网络对新图像进行预测或传递学习,必须以用于训练导入模型的图像的预处理方式对图像进行预处理。最常见的预处理步骤是调整图像大小、减去图像平均值以及将图像从BGR图像转换为RGB。
有关用于训练和预测的预处理图像的更多信息,请参见深度学习的预处理图像.
ONNX模型格式的深入学习工具箱转换器提供三个函数来导入预训练的ONNX网络:importONNXNetwork
,重要人物
, 和importonnxfunction.
.
如果导入的网络包含不支持转换成内置MATLAB层的ONNX运算符(请参阅万博1manbetx支持ONNX运算符转换为内置的万博1manbetxMATLAB层)及importONNXNetwork
不生成自定义图层,则importONNXNetwork
返回错误。在这种情况下,您仍然可以使用重要人物
导入网络架构和权重或importonnxfunction.
将网络导入为ONNXParameters
对象和模型函数。
有关哪个导入函数最适合不同的场景的更多信息,请参见选择“功能导入ONNX预训练网络”.
类名
选项已被删除在R2021b中启动时出错
类名
被移除。使用类
代替。要更新代码,请替换类名
具有类
.
importONNXNetwork
无法从创建输入和输出图层ONNX文件信息R2021B中的行为更改
如果将ONNX模型导入ANDAGNetwork
对象时,导入的网络必须包括输入层和输出层。importONNXNetwork
尝试将输入和输出ONNX张量转换为内置的MATLAB层。当导入一些网络时importONNXNetwork
以前可以使用输入和输出内置MATLAB层,importONNXNetwork
现在可能会返回错误。在这种情况下,请执行以下操作之一以更新您的代码:
指定名称-值参数TargetNetwork
作为“DLN网络”
将网络导入为dlnetwork
对象。
使用名称-值参数InputDataFormats
,OutputDataFormats
, 和OutputLayerType
指定输入网络的输入和输出。
使用重要人物
将网络导入为带有占位符层的层图。
使用importonnxfunction.
将网络导入模型函数和一个ONNXParameters
对象。
importCaffeLayers
|进口咖啡网
|importKerasLayers
|importKerasNetwork
|重要人物
|exportONNXNetwork
|importonnxfunction.
|importTensorFlowNetwork
|importTensorFlowLayers
Tiene UnaVersiónModififada de Este Ejegro。¿desea abrir este ejegro ejemero con modififiones?
有一个对应于MATLAB的代码:
把它扔进introduciéndolo然后把它扔进MATLAB。Los navegadores web no admit comandos de MATLAB。
您还可以从以下列表中选择网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。