单元六 · AI项目工坊

第29课 手写数字识别

任务场景
任务场景:手写数字识别

一、学习目标

  • 了解手写数字识别的基本流程。
  • 认识数据准备、网络结构与训练评价。
  • 能在组件中体验识别并分析结果。

二、情境导入

为什么计算机能认出你手写的「8」?

数据、模型结构与训练过程怎样影响识别率?

三、核心讲解

本课学习路径:

1准备数据
2搭建网络并训练
3调用模型识别

1.准备数据

手写数字识别常用规范化的灰度图像数据集;数据覆盖不同书写风格很重要。

训练数据:带标签的手写样本(0–9);多样本、多写法有助于模型泛化。
  • 了解样本如何被表示成像素矩阵
  • 思考:只有一种笔迹的数据会导致什么问题
  • 区分训练集与测试集的作用

想一想:为什么要把一部分数据留作测试,而不是全部拿去训练?

2.搭建网络并训练

可用神经网络学习从像素到类别的映射;训练中通过损失反馈更新参数。

训练过程:反复输入样本、比较预测与标签、调整参数,使识别错误逐渐减少。
  • 观察层数、神经元数量等对效果的影响
  • 过拟合:训练很好但测试很差时意味着什么
  • 记录准确率随训练的变化

想一想:如果把标签贴错(把 3 标成 8),模型会学到什么?

3.调用模型识别

训练完成后,输入新手写数字,模型输出类别或概率;可分析易混数字。

推理识别:用训练好的参数处理新样本,得到预测结果。
  • 在 MNIST 等识别组件中手写并查看结果
  • 总结:哪些数字最容易被混淆(如 4/9)
  • 讨论改进:更多数据、数据增强或结构调整

想一想:识别错了时,你更该怪「字写得太草」还是检查模型与数据?两者如何兼顾?

弄清以上要点后,再进入下方动手体验,用实际操作验证。

四、动手体验 · MixAI 组件

请在下列组件中完成操作,至少体验一个并记录现象。

组件 model_mnist_digit_recognition — 在框内完成操作

五、课堂总结

  • 手写数字识别依赖标注数据、模型训练与推理调用。
  • 要用测试集评价,并分析易混类别以改进。

六、拓展提升

  • 手写一组易混数字,统计识别率,并提出一条改进数据或书写规范的建议。

测评

对照本课学习目标作答(客观题练习);选出后点「检查」。答错会显示简短说明。

  1. 训练手写数字识别模型,通常需要:

  2. 训练与推理的区别是:

  3. 判断:训练准确率很高就一定说明模型在新字迹上也一定很好。

本节小结

回顾本课要点,完成动手体验与测评。记住:手写数字识别。