用官方的帮助文档的程序识别手写数字集test里面的图片

以下是代码:

clc;clear;close all;
digitDatasetPath = fullfile('C:\Users\86151\Desktop\mnist_data_jpg\新建文件夹');
imds = imageDatastore(digitDatasetPath, ...'IncludeSubfolders',true, ...'LabelSource','foldernames');
figure
numImages = 10000;
perm = randperm(numImages,20);
for i = 1:20subplot(4,5,i);imshow(imds.Files{perm(i)});
end
% % splitEachLabel 将 digitData 中的图像文件拆分为两个新的数据存储,imdsTrain 和 imdsTest。
numTrainingFiles = 750;
[imdsTrain,imdsTest] = splitEachLabel(imds,numTrainingFiles,'randomize');% % 定义卷积神经网络架构。
layers = [ ...imageInputLayer([28 28 1])convolution2dLayer(5,20)reluLayermaxPooling2dLayer(2,'Stride',2)fullyConnectedLayer(10)softmaxLayerclassificationLayer];
% % 将选项设置为具有动量的随机梯度下降的默认设置。 将最大 epoch 数设置为 20,并以 0.0001 的初始学习率开始训练。
options = trainingOptions('sgdm', ...'MaxEpochs',20,...'InitialLearnRate',1e-4, ...'Verbose',false, ...'ExecutionEnvironment','cpu',...'Plots','training-progress');
% % 训练网络
net = trainNetwork(imdsTrain,layers,options);
save('CNNshuzi','net');%保存训练好的神经网络
% % 在未用于训练网络的测试集上运行经过训练的网络,并预测图像标签(数字)。
YPred = classify(net,imdsTest);
YTest = imdsTest.Labels;
% % 计算精度。 准确率是测试数据中与分类匹配的真实标签数量与测试数据中图像数量的比值。
accuracy = sum(YPred == YTest)/numel(YTest)

这是分别用GPU和CPU训练的过程

还有就是最后预测精度那里每次准确率accuracy都是百分之十几,YPred里面的标签都是1,明明训练的时候验证的正确率都很高

最后写了一个测试的程序,基本也都能识别出来

clc;clear
%%Load the train model
load('CNNshuzi','net');
%%See details of the architecture
net.Layers
%%Read the image to classify
[file,path]=uigetfile('*');
image=fullfile(path,file);
I=imresize(imread(image),[28,28]);
filetic
%Adjust size of the image
sz=net.Layers(1).InputSize;
%I=I(1:sz(1),1:sz(2),1:sz(3));%Classify the image
label = classify(net,I)
%Show the image and the classification results
figure('Name','识别结果','NumberTitle','off');
imshow(I);title(['\bf',label]),xlabel(['\bf',label]);

2021年12月22日
是GPU版本的问题。重新下了一个matlab2021的,使用cpu训练就没有出现问题了。

用matlab卷积神经网络遇到的问题——gpu和cpu的结果不一样,最后的预测结果也有问题相关推荐

  1. 卷积神经网络代码 Matlab,卷积神经网络matlab程序

    cnn卷积神经网络用什么语言来写pascial . 200+这个是hintonmatlab代码的C++改写版.convnetjs-Star,SAE,首选的肯定是LIBSVM这个库;RBM#47.Dee ...

  2. 深度卷积神经网络CNNs的多GPU并行框架及其应用

    摘要:本文是腾讯深度学习系列文章之一,主要聚焦于腾讯深度学习平台(Tencent Deep Learning Platform)中深度卷积神经网络Deep CNNs的多GPU模型并行和数据并行框架. ...

  3. Matlab卷积神经网络(CNN)手写数字识别(一)

    今天买的书到了,开始接触卷积神经网络,展示书中内容~ Matlab卷积神经网络手写数字识别(一) 机器学习的基本流程 加载Matlab自带数据集 机器学习的基本流程 在机器学习中,一般将数据集划分为两 ...

  4. 深度卷积神经网络CNNs的多GPU并行框架 及其在图像识别的应用

    FROM: http://www.csdn.net/article/2014-08-08/2821116 将深度卷积神经网络(Convolutional Neural Networks, 简称CNNs ...

  5. MATLAB卷积神经网络cnn,Matlab编程之——卷积神经网络CNN代码解析

    deepLearnToolbox-master是一个深度学习matlab包,里面含有很多机器学习算法,如卷积神经网络CNN,深度信念网络DBN,自动编码AutoEncoder(堆栈SAE,卷积CAE) ...

  6. MATLAB卷积神经网络股票预测,AQF研报精选|人工智能选股之卷积神经网络

    一.AQF研报摘要 卷积神经网络引领深度学习的发展,能够运用于多因子选股 卷积神经网络(CNN)是目前最为成熟的深度学习模型,是近年来人工智能蓬勃发展的重要推手之一,其主要特点是通过卷积和池化操作进行 ...

  7. 【GRU时序预测】基于matlab卷积神经网络结合门控循环单元CNN-GRU时间序列预测【含Matlab源码 2287期】

    ⛄一.CNN-GRU数据预测 1 理论基础 1.1 CNN算法 负荷序列数据为一维数据,用一维卷积核对数据进行卷积处理,以获取数据的特征. 现设定卷积核的维度为3,移动步长为1,对输入数据进行卷积,以 ...

  8. 基于Matlab卷积神经网络垃圾分类识别系统

    可回收垃圾的循环利用对我国经济的可持续发展有着重要意义.当前的垃圾回收需要人们手动分类垃 圾,找到一种自动分类垃圾的方法,提高垃圾回收的效率,不仅会产生显著的社会效益,而且有巨大的经济效 益.为了提高 ...

  9. 【LSTM预测】基于卷积神经网络结合双向长短时记忆CNN-BiLSTM(多输入单输出)数据预测含Matlab源码

    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信.

最新文章

  1. python 从网络URL读取图片并直接处理的代码
  2. 全国计算机等级考试题库二级C操作题100套(第38套)
  3. aws ec2 选择可用区_AWS Messaging Services:选择合适的服务
  4. hbase filter原理_HBase应用|HBase在移动广告监测产品中的应用
  5. html画布360图案填充_在Photoshop中创建带有图案的抽象设计
  6. Spark : ContextCleaner清理器
  7. 我看ITIL在中国(六):如何建设有中国特色的IT运维管理平台【三】
  8. vue v-html 动态内容样式无效解决方法
  9. 第八届泰迪杯B题特等奖比赛论文——基于Mask R-CNN及Yolov4的电力巡检中绝缘子缺陷研究
  10. 高可靠性——TSN (Time Sensitive Network 时间敏感网络) 802.1Qci 协议介绍
  11. java程序中,如何设置周一为一周的开始?如何设置周一为一周的第一天? 或者说,如何理解java的setFirstDayOfWeek()方法?
  12. 雪球: 关于股票的经典书籍有哪些推荐
  13. 九大遥感目标检测数据集(附下载链接)
  14. Stata画出数据的时间序列折线图和拟合趋势线
  15. 对过去五年工作经历的总结
  16. MFC 创建模态与非模态对话框
  17. js关闭当前页面/关闭当前窗口/移动端 代码
  18. MySQL入门:数据库是什么 | SQL是什么 | MySQL是什么
  19. 《电脑音乐制作实战指南:伴奏、录歌、MTV全攻略》——1.8 MIDI音乐录音前的音量设置...
  20. nginx网络服务配置

热门文章

  1. Latex如何输入极限
  2. ArcMap从中国行政区划中提取区县边界shape文件
  3. 日记侠:如何发朋友圈,才能成为KOL?
  4. 卖茶女的套路,你防不住
  5. 如何使用PHP启动电报机器人
  6. 节能减排新纪元,节能评估专业技能人才势如破竹
  7. SQL Server 本地数据库连接
  8. python制作安装包_Python简单安装包制作
  9. 中国进出口银行运维的精细化管理
  10. 基于方寸微安全存储芯片T620在USB3.0U盘/移动硬盘上的应用