您可以在CPU或GPU上使用经过训练的卷积神经网络(ConvNet, CNN)预测班级成绩或数字响应。使用GPU需要并行计算工具箱™和CUDA®使英伟达®GPU具有3.0或更高的计算能力。方法指定硬件要求ExecutionEnvironment
名称-值对参数。
语法
YPred =预测(净,X)
YPred =预测值(净值,X,名称,值)
输入参数
网
-训练有素的网络
SeriesNetwork
对象
训练过的网络,指定为SeriesNetwork
对象返回的trainNetwork
函数。
X
-输入数据
单幅图像的三维阵列| 4-D阵列|ImageDatastore
对象|表
输入数据时,指定为单个图像的数组,图像的4-D数组,图像存储为ImageDatastore
中的图像或图像路径表格
.
如果
X
是单个图像,则尺寸对应于图像的高度、宽度和通道。如果
X
是图像的数组,那么前三个维度对应图像的高度、宽度和通道,第四个维度对应图像的编号。存储为
ImageDatastore
对象。有关此数据类型的更多信息,请参见ImageDatastore
.一个表,其中第一列包含图像路径或图像。
数据类型:单
|双
|表格
名称-值对实参
“MiniBatchSize”,256年
指定小批处理大小为256。
指定可选的逗号分隔的pair名称,值
论点。的名字
参数名称和价值
对应的值。的名字
必须出现在单引号内(' '
).
“MiniBatchSize”
-用于预测的小批次的大小
128(默认)|整数
用于预测的小批量的大小,指定为整数。更大的迷你批处理大小需要更多的内存,但导致更快的预测。
例子:“MiniBatchSize”,256年
数据类型:单
|双
“ExecutionEnvironment”
-硬件资源预测
“汽车”
(默认)|“图形”
|“cpu”
硬件资源预测
要运行网络,指定为逗号分隔的对,由“ExecutionEnvironment”
和以下其中之一:
“汽车”
—如果有图形处理器,请使用图形处理器,否则使用CPU。“图形”
—使用GPU。要使用GPU,必须有并行计算工具箱和支持cuda的NVIDIA GPU,具有3.0或更高的计算能力。如果没有合适的GPU,预测
返回一个错误消息。“cpu”
—使用CPU。
例子:“ExecutionEnvironment”、“cpu的
数据类型:字符
输出参数
YPred
-预测分数或反应
n——- - - - - -k矩阵|h——- - - - - -w——- - - - - -c——- - - - - -n数字数组
预测分数,作为以下之一返回:
对于一个分类问题,
Ypred
是一个n——- - - - - -k矩阵,n观察的次数和k是类的数量。对于回归问题,格式为
Ypred
取决于训练数据中响应的格式。Ypred
可以是n——- - - - - -r数值矩阵,n观察的次数和r是回复的数量吗
h——- - - - - -w——- - - - - -c——- - - - - -n数值数组,其中n观察的次数和h——- - - - - -w——- - - - - -c大小是一个单一的响应
例子
使用训练过的ConvNet预测输出分数
加载样例数据。
[XTrain,TTrain] = digitTrain4DArrayData;
digitTrain4DArrayData
将数字训练集加载为4-D数组数据。XTrain
是一个28 × 28 × 1 × 4940数组,其中28是图像的高度,28是图像的宽度。1为通道数,4940为手写数字合成图像数。TTrain
包含每个观察结果的标签的分类向量。
构建卷积神经网络体系结构。
layers = [imageInputLayer([28 28 1]);convolution2dLayer (20);reluLayer ();maxPooling2dLayer (2“步”2);fullyConnectedLayer (10);softmaxLayer ();classificationLayer ()];
将随机梯度下降的选项设置为默认设置。
options = trainingOptions(“个”);
训练网络。
rng(1) net = trainNetwork(XTrain,TTrain,layers,options);
单CPU训练。初始化图像归一化。|=========================================================================================| | 时代| |迭代时间| Mini-batch | Mini-batch |基地学习| | | | | | |精度损失速率(秒) | |=========================================================================================| | 1 | 1 | 0.56 | 2.3028 | 11.72% | 0.0100 | | 2 | 50 | 17.07 | 2.2653 | 30.47% | 0.0100 | | 3 | 100 | 33.83 | 1.5949 | 48.44% | 0.0100 | | 150 | | 50.75 | 1.2292 | 58.59% | 0.0100 | | 6 | 200 |68.65 | 1.0559 | 64.06% | 0.0100 | | 7 | 250 | 86.97 | 1.0304 | 64.06% | 0.0100 | | 8 | 300 | 104.85 | 0.7178 | 78.12% | 0.0100 | | 9 | 350 | 122.68 | 0.6900 | 78.12% | 0.0100 | | 11 | 400 | 139.96 | 0.5104 | 85.94% | 0.0100 | | 12 | 450 | 156.90 | 0.4311 | 89.06% | 0.0100 | | 13 | 500 | 173.84 | 0.2796 | 92.19% | 0.0100 | | 15 | 550 | 190.99 | 0.2389 | 96.09% | 0.0100 | | 16 | 600 | 207.15 | 0.2566 | 92.97% | 0.0100 | | 17 | 650 | 223.88 | 0.1773 | 96.88% | 0.0100 | | 18 | 700 | 240.29 | 0.1260 | 99.22% | 0.0100 | | 20 | 750 | 256.88 | 0.1297 | 100.00% | 0.0100 | | 21 | 800 | 273.22 | 0.1080 | 97.66% | 0.0100 | | 22 | 850 | 290.02 | 0.1176 | 98.44% | 0.0100 | | 24 | 900 | 306.83 | 0.0762 | 100.00% | 0.0100 | | 25 | 950 | 323.40 | 0.0774 | 100.00% | 0.0100 | | 26 | 1000 | 340.14 | 0.0877 | 99.22% | 0.0100 | | 27 | 1050 | 357.61 | 0.0645 | 99.22% | 0.0100 | | 29 | 1100 | 373.88 | 0.0624 | 100.00% | 0.0100 | | 30 | 1150 | 390.18 | 0.0488 | 100.00% | 0.0100 | | 30 | 1170 | 396.74 | 0.0816 | 99.22% | 0.0100 | |=========================================================================================|
在测试集中运行经过训练的网络并预测分数。
(XTest, tt) = digitTest4DArrayData;YTestPred = predict(net,XTest);
预测
,默认使用cuda支持的GPU,在可用的情况下具有3.0的计算能力。你也可以选择跑步预测
在CPU上使用“ExecutionEnvironment”、“cpu的
名称-值对参数。
显示测试数据中的前10个图像,并与来自的预测进行比较预测
.
tt (1:10,:)
Ans = 10×1分类数组0 0 0 0 0 0 0 0 0 0 0 0
YTestPred (1:10,:)
ans = 10×10单矩阵列1至7 0.9993 0.0000 0.0002 0.0003 0.0000 0.0001 0.8579 0.0000 0.0551 0.0003 0.0000 0.0000 0.0002 0.0000 0.0000 0.0000 0.0000 0.9558 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.9558 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0060 0.9616 0.0000 0.0041 0.0001 0.0000 0.0000 0.0000 0.0004 0.9915 0.0000 0.0005 0.0000 0.0000 0.0000 0.00000 0.0016 0.9733 0.0000 0.0003 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.9126 0.0000 0.0016 0.0002 0.0003 0.0007 0.0001 0.9409 0.00000.0102 0.0020 0.0001 0.0001 0.0278 Columns 8 through 10 0.0000 0.0000 0.0002 0.0001 0.0035 0.0690 0.0000 0.0000 0.0001 0.0000 0.0010 0.0372 0.0002 0.0335 0.0002 0.0000 0.0044 0.0020 0.0000 0.0016 0.0001 0.0000 0.0000 0.0000 0.0000 0.0012 0.0833 0.0000 0.0143 0.0047
tt
中图像对应的数字XTest
.的列YTestPred
包含预测
对图像包含特定数字的概率的估计。也就是说,第一列包含给定图像是数字0的概率估计,第二列包含图像是数字1的概率估计,第三列包含图像是数字2的概率估计,以此类推。你们可以看到预测
他对正确数字的估计概率几乎为1,而其他数字的估计概率几乎为0。预测
正确估计前10个观测值为数字0。
算法
如果图像数据包含南
年代,预测
通过网络传播它们。如果网络有ReLU层,这些层会忽略南
s.然而,如果网络没有ReLU层,则预测
返回nan作为预测。
在R2016a中介绍
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。