LeNet-5:手写数字识别经典CNN

配套讲解视频,点击下方名片获取

20 世纪 90 年代,计算机已经能识别文本,但图片识别很困难。比如银行支票的手写数字识别,传统方法需要人工设计规则,费时费力且精度不高。
于是,Yann LeCun 及其团队提出了 LeNet-5——一种可以自动从图片中提取特征的卷积神经网络。
1、LeNet-5 的总体思路
1.1 一个生活化比喻
想象你是一个验钞员:

  1. 拿到一张钞票(输入图片)
  2. 先用放大镜找细节(卷积层)
  3. 缩小视野,专注主要花纹(池化层)
  4. 再看更复杂的组合图案(深层卷积)
  5. 大脑分析所有线索,判断真假(全连接层 + 分类器)
    1.2 模型的三大核心步骤
  6. 特征提取(卷积层 + 池化层)
  7. 特征组合(更深的卷积)
  8. 分类决策(全连接层 + Softmax)
    [图片]

暂时无法在飞书文档外展示此内容
2、每一层的作用
2.1 C1 卷积层

  • 目标:找到低级特征(边缘、线条、简单形状)
  • 操作:6 个 5×5 滤镜,每个滤镜学会不同的模式
  • 类比:摄影师用不同滤镜拍摄同一场景,捕捉不同细节
    2.2 S2 平均池化层
  • 目标:缩小图像尺寸,保留主要信息,减少计算量
  • 类比:看缩略图——虽然小了,但主体还在
    2.3 C3 卷积层
  • 目标:组合前面的低级特征,形成高级特征(曲线、交叉)
  • 特别之处:并不是所有输入都连接到每个输出,减少参数量
    2.4 S4 平均池化层
  • 同 S2,再次降维,减少计算量
    2.5 C5 卷积层
  • 卷积核大小等于输入大小(5×5),所以每个卷积核看到整个输入
  • 相当于全连接,但参数更少
    2.6 F6 全连接层
  • 把提取到的特征重新组合,准备分类
  • 输出 84 个神经元,类似人脑做最后的综合判断
    2.7 输出层
  • Softmax 输出 10 个概率
  • 最高概率对应最终分类结果
    3、LeNet-5 的优点与局限
    3.1 优点
  • 特征自动提取
  • 参数量小(~6 万),对硬件要求低
  • 思路清晰,是现代 CNN 的模板
    3.2 局限
  • 激活函数使用 Sigmoid/tanh,训练容易梯度消失
  • 只能处理小尺寸灰度图像
  • 池化方式是平均池化(现代更常用最大池化)

4、实战项目

A285-lenets5模型实现手写数字识别实时画板手写预测

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/98017.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/98017.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在 C# 中将文本转换为 Word 以及将 Word 转换为文本

在现代软件开发中,处理文档内容是一个非常常见的需求。无论是生成报告、存储日志,还是处理用户输入,开发者都可能需要在纯文本与 Word 文档之间进行转换。有时需要将文本转换为 Word,以便生成结构化的 .docx 文件,使内…

Open SWE:重构代码协作的智能范式——从规划到PR的全流程自动化革命

在软件开发的演进史上,工具链的每一次革新都深刻重塑着开发者的工作方式。LangChain AI推出的Open SWE,作为首个开源的异步编程代理,正在重新定义代码协作的边界——它不再仅仅是代码生成工具,而是构建了从代码库分析、方案规划、代码实现到拉取请求创建的端到端自动化工作…

【ARDUINO】通过ESP8266控制电机【待测试】

需求 通过Wi-Fi控制Arduino驱动的3V直流电机。这个方案使用外部6V或9V电源,ESP8266作为Wi-Fi模块,Arduino作为主控制器,L298N作为电机驱动器。 手机/电脑 (Wi-Fi客户端) | | (Wi-Fi) | ESP8266 (Wi-Fi模块, AT指令模式) | | (串口通信) | A…

cuda编程笔记(18)-- 使用im2col + GEMM 实现卷积

我们之前介绍了cudnn调用api直接实现卷积,本文我们探究手动实现。对于直接使用for循环在cpu上的实现方法,就不过多介绍,只要了解卷积的原理,就很容易实现。im2col 的核心思想im2col image to column把输入 feature map 的每个卷积…

Loopback for Mac:一键打造虚拟音频矩阵,实现跨应用音频自由流转

虚拟音频设备创建 模拟物理设备:Loopback允许用户在Mac上创建虚拟音频设备,这些设备可被系统及其他应用程序识别为真实硬件,实现音频的虚拟化传输。多源聚合:支持将麦克风、应用程序(如Skype、Zoom、GarageBand、Logic…

深入解析Django重定向机制

概述 核心是一个基类 HttpResponseRedirectBase,以及两个具体的子类 HttpResponseRedirect(302 临时重定向)和 HttpResponsePermanentRedirect(301 永久重定向)。它们都是 HttpResponse 的子类,专门用于告诉…

【Java实战⑳】从IO到NIO:Java高并发编程的飞跃

目录一、NIO 与 IO 的深度剖析1.1 IO 的局限性1.2 NIO 核心特性1.3 NIO 核心组件1.4 NIO 适用场景二、NIO 核心组件实战2.1 Buffer 缓冲区2.2 Channel 通道2.3 Selector 选择器2.4 NIO 文件操作案例三、NIO2.0 实战3.1 Path 类3.2 Files 类3.3 Files 类高级操作3.4 NIO2.0 实战…

OpenCV 实战:图像模板匹配与旋转处理实现教程

目录 一、功能概述:代码能做什么? 二、环境准备:先搭好运行基础 1. 安装 Python 2. 安装 OpenCV 库 3. 准备图像文件 三、代码逐段解析:从基础到核心 1. 导入 OpenCV 库 2. 读取图像文件 3. 模板图像旋转:处理…

一、cadence的安装及入门教学(反相器的设计与仿真)

一、Cadence的安装 1、安装VMware虚拟机 2、安装带有cadence软件的Linux系统 注:网盘链接 分享链接:https://disk.ningsuan.com.cn/#s/8XaVdtRQ 访问密码:11111 所有文件压缩包及文档密码: Cadence_ic 3、安装tsmc18工艺库…

用ai写了个UE5插件

文章目录实际需求1.头文件2.源文件3.用法小结实际需求 这个需求来源于之前的一个项目,当时用了一个第三方插件,里边有一些绘制线段的代码,c层用的是drawdebugline,当时看底层,觉得应该没问题,不应该在rele…

机器学习从入门到精通 - 强化学习初探:Q-Learning到Deep Q-Network实战

机器学习从入门到精通 - 强化学习初探:从 Q-Learning 到 Deep Q-Network 实战 一、开场白:推开强化学习这扇门 不知道你有没有过这种感觉 —— 盯着一个复杂的系统,既想让它达到某个目标,又苦于无法用传统规则去精确描述每一步该怎…

【OpenHarmony文件管理子系统】文件访问接口解析

OpenHarmony文件访问接口(filemanagement_file_api) 概述 OpenHarmony文件访问接口(filemanagement_file_api)是开源鸿蒙操作系统中的核心文件系统接口,为应用程序提供了完整的文件IO操作能力。该项目基于Node-API&…

云手机运行是否消耗自身流量?

云手机运行是否消耗自身流量,取决于具体的使用场景和设置:若用户在连接云手机时,使用的是家中Wi-Fi、办公室局域网等非移动数据网络,那么在云手机运行过程中,基本不会消耗用户自身的移动数据流量,在家中连接…

JavaSe之多线程

一、多线程基本了解 1、多线程基本知识 1.进程:进入到内存中执行的应用程序 2.线程:内存和CPU之间开通的通道->进程中的一个执行单元 3.线程作用:负责当前进程中程序的运行.一个进程中至少有一个线程,一个进程还可以有多个线程,这样的应用程序就称之为多线程程序 4.简单理解…

产品月报|睿本云8月产品功能迭代

睿本云8月更新已陆续上线! 睿本云8月产品月报,点击查收👇小程序支付成功弹窗广告、企业会员增加卡券销售和卡券退货模块、工厂端可批量新增多门店订货单、门店端和工厂端新增“极速订货”、商品调拨业务支持自定义多种流程配置等功能迭代更新…

融云:当我们谈论 AI 重构业务时,我们到底在谈论什么

所有业务都值得用 AI 重新做一次。 这句话正在从一句鼓舞人心的口号,演变为一场无人可避的商业现实。AI 带来的结构性机会,意味着企业有机会从根本上重构成本、效率与体验的曲线。但这一切最终都要回到一个无比务实的问题上: AI 究竟如何在我…

org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1异常

org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length 1异常问题解决一、问题背景二、错误现象三、原因分析核心问题:字符集不匹配四、解决过程试错路径记录五、最终方案1.创建launch.json文件,修改VSCode…

【C语言】深入理解指针(5)

目录 sizeof和strlen 1.sizeof 2.strlen 3. sizeof 和 strlen 的对比 sizeof和strlen 1.sizeof sizeo正名:sizeof是操作符,不是函数,sizeof是操作符,括号内如果有计算不会进行计算sizeof 是操作符,用于计算变量所…

动态代理设计模式

JDK动态代理实现 动态代理利用了JDK API,动态地在内存中构建代理对象,从而实现对目标对象的代理功能.动态代理又被称为JDK代理或接口代理. 静态代理与动态代理的区别: 静态代理在编译时就已经实现了,编译完成后代理类是一个实际的class文 动态代理是在运行时动态生成的,即编译…

《Html泛型魔法学院:用霍格沃茨风格网页教授集合框架》

一、项目概述 这个创意教学网页,将Java泛型与集合框架知识融入霍格沃茨魔法世界主题。通过沉浸式UI设计和交互式代码练习,让抽象的技术概念变得生动有趣。主要技术栈包括: HTML5语义化结构Tailwind CSS框架Font Awesome图标库纯JavaScript交…