从零开始人工智能Matlab案例-手写数字识别
创作时间:
作者:
@小白创作中心
从零开始人工智能Matlab案例-手写数字识别
引用
CSDN
1.
https://blog.csdn.net/weixin_31268759/article/details/145439196
手写数字识别是机器学习领域最经典的入门案例之一,MNIST数据集作为手写数字识别的标准数据集,包含了60000个训练样本和10000个测试样本。本教程将使用MATLAB的Deep Learning Toolbox,从零开始实现一个简单的卷积神经网络(CNN),完成对手写数字的识别任务。
案例目标
使用MATLAB的Deep Learning Toolbox训练一个神经网络,识别手写数字(0-9)。
步骤 1:准备数据
- 加载 MNIST 数据集
MATLAB 内置了 MNIST 数据集,可以直接加载。
% 加载训练数据和测试数据
[XTrain, YTrain] = digitTrain4DArrayData;
[XTest, YTest] = digitTest4DArrayData;
% 查看数据维度
disp(size(XTrain)); % 28x28x1x60000(28x28像素,单通道,6万张训练图)
% 随机显示25张训练图片
figure;
perm = randperm(numel(YTrain), 25);
for i = 1:25
subplot(5,5,i);
imshow(XTrain(:,:,:,perm(i)));
title(char(YTrain(perm(i)))); % 显示标签
end
步骤 2:构建神经网络
- 定义网络结构
构建一个简单的卷积神经网络(CNN)。
layers = [
imageInputLayer([28 28 1]) % 输入层(28x28x1的灰度图)
convolution2dLayer(3, 8, 'Padding', 'same') % 卷积层(3x3滤波器,8个通道)
batchNormalizationLayer % 批归一化
reluLayer % ReLU激活函数
maxPooling2dLayer(2, 'Stride', 2) % 最大池化层(2x2窗口,步长2)
convolution2dLayer(3, 16, 'Padding', 'same') % 第二层卷积(16个通道)
batchNormalizationLayer
reluLayer
maxPooling2dLayer(2, 'Stride', 2)
fullyConnectedLayer(10) % 全连接层(10个输出对应0-9)
softmaxLayer % Softmax分类
classificationLayer]; % 分类输出层
analyzeNetwork(layers); % 可视化网络结构
步骤 3:训练模型
- 设置训练参数
options = trainingOptions('sgdm', ... % 使用随机梯度下降
'InitialLearnRate', 0.01, ... % 初始学习率
'MaxEpochs', 5, ... % 训练5轮
'Shuffle', 'every-epoch', ... % 每轮打乱数据
'ValidationData', {XTest, YTest}, ... % 验证集
'Verbose', true, ... % 显示训练过程
'Plots', 'training-progress'); % 绘制训练曲线
- 开始训练
net = trainNetwork(XTrain, YTrain, layers, options);
步骤 4:测试模型
- 预测测试集
YPred = classify(net, XTest); % 对测试集分类
- 计算准确率
accuracy = sum(YPred == YTest) / numel(YTest);
disp(['测试集准确率: ', num2str(accuracy * 100), '%']);
% 预期结果:约95%以上(受训练轮数和网络复杂度影响)
- 查看混淆矩阵
figure;
confusionchart(YTest, YPred);
热门推荐
锁骨下三指处有隐痛和压痛?可能是这些原因
除息日股票交易的行情分析:策略与影响深度剖析
国际禁毒日:追寻禁毒先驱林则徐的脚步,警惕新型毒品危害
什么是车载发电?工作原理、类型及未来发展趋势全解析
细菌感染 VS 病毒感染,看这3点就能鉴别!
指纹传感器:初学者的终极指南
试用期被辞退赔偿金额是多少
世界中医药学会联合会发布三项重要标准立项通知
过量即变“毒丸”!这种“止咳神药”已列入管制,谨防滥用
人民日报推荐:养成自律体质的9种方法,建议永久收藏
离合、刹车、油门在驾驶中如何协调配合?怎样提高这种配合的熟练度?
优美的爱情句子(精选140句)
如何根据航模的飞行时间来选择合适C数的电池?
如何提高打字速度?
车上的ESP是什么意思?
C语言实现质因数分解:从入门到优化
分解质因数:概念、方法与应用
唐代宫廷美学:服饰、建筑与宴饮的辉煌
中医基础知识:脉诊
正月里的节日 “自古以来”就要热热闹闹过
中药调理的最佳服用时间是什么 服用中药期间注意事项
戴森V8吸尘器刷头浸水了会烧电机吗?
当数学遇上游戏!哈二十四中这场活动让“数学”活起来
台州市工业污水研磨废水处理设备原理与应用
购买高层住宅,到底应该选哪一层?内行建议:坚持“买三不买二”
孩子都已经自残了,为什么还有家长觉得“TA在装”?
茗茶冷知识分享,安吉白茶不是白茶?属于哪种茶呢?
排名分析|中国内地高校在2025年泰晤士高等教育世界大学排名中的表现
岱字取名寓意解析及好听名字推荐
颜色是中国人理解宇宙的要素