原地址 https://www.mathworks.com/help/deeplearning/ref/trainnetwork.html
net = trainNetwork(imds,layers,options)
net = trainNetwork(ds,layers,options)
net = trainNetwork(X,Y,layers,options)
net = trainNetwork(sequences,Y,layers,options)
net = trainNetwork(tbl,layers,options)
net = trainNetwork(tbl,responseName,layers,options)
[net,info] = trainNetwork(___)
使用trainNetwork训练卷积神经网络(ConvNet,CNN),长短期记忆(LSTM)网络,或双向LSTM(BiLSTM)网络的深度学习分类和回归的问题。您可以在CPU或GPU上训练网络。对于图像分类和图像回归,您可以使用多个GPU或并行进行训练。使用GPU,多GPU和并行选项需要Parallel Computing Toolbox™。要使用深层学习GPU,你还必须有一个CUDA ®启用NVIDIA ® GPU计算能力3.0或更高版本。使用指定培训选项,包括用于执行环境的选项trainingOptions。
net = trainNetwork(imds,layers,options) 为图像分类问题训练网络。图像数据存储区 imds存储输入的图像数据, layers定义网络体系结构,并 options定义训练选项。net = trainNetwork(ds,layers,options) 使用数据存储训练网络ds。对于具有多个输入的网络,请将此语法与组合或转换后的数据存储区结合使用。net = trainNetwork(X,Y,layers,options) 为图像分类和回归问题训练网络。数字数组X包含预测变量,并 Y包含分类标签或数字响应。net = trainNetwork(sequences,Y,layers,options) 训练网络以解决序列分类和回归问题(例如LSTM或BiLSTM网络),其中sequences 包含序列或时间序列预测变量并Y包含响应。对于分类问题,Y是分类向量或分类序列的单元格数组。对于回归问题,Y是目标矩阵或数字序列的单元格数组。net = trainNetwork(tbl,layers,options) 为分类和回归问题训练网络。该表 tbl包含数字数据或数据的文件路径。预测变量必须位于的第一列中tbl。有关目标或响应变量的信息,请参见tbl。net = trainNetwork(tbl,responseName,layers,options) 为分类和回归问题训练网络。预测变量必须位于的第一列中tbl。该 responseName参数指定在响应变量tbl。[net,info] = trainNetwork(___) 还可以使用先前语法中的任何输入参数返回有关训练的信息。将数据作为ImageDatastore对象加载。
digitDatasetPath = fullfile(matlabroot,'toolbox','nnet',... 'nndemos','nndatasets','DigitDataset');imds = imageDatastore(digitDatasetPath,... 'IncludeSubfolders',true,... 'LabelSource','foldernames');数据存储区包含10,000个从0到9的数字合成图像。这些图像是通过对使用不同字体创建的数字图像应用随机转换而生成的。每个数字图像为28 x 28像素。数据存储区每个类别包含相等数量的图像。
显示数据存储中的某些图像。
figurenumImages = 10000;perm = randperm(numImages,20);for i = 1:20 subplot(4,5,i); imshow(imds.Files{perm(i)});end
指定卷积神经网络架构。对于回归问题,请在网络末端包括一个回归层。
layers = [ ... imageInputLayer([28 28 1]) convolution2dLayer(5,20) reluLayer maxPooling2dLayer(2,'Stride',2) fullyConnectedLayer(10) softmaxLayer classificationLayer];指定网络训练选项。将初始学习速率设置为0.001。
options = trainingOptions('sgdm',... 'InitialLearnRate',0.001,... 'Verbose',false,... 'Plots','training-progress');训练网络。
net = trainNetwork(imdsTrain,layers,options);
通过评估测试数据的预测准确性来测试网络的性能。使用predict预测验证图像的旋转角度。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删