当前位置: 首页 > news >正文

台州网站建设维护网页设计与制作教程杨选辉

台州网站建设维护,网页设计与制作教程杨选辉,做母亲节网站的素材,网站建设 慕课目录 一、先吐槽 MLP 的 “笨办法”:为什么它处理图像不行? 二、CNN 的 “聪明思路”:靠两个原则抓住图像本质 1. 平移不变性:不管沃尔多在哪,我都认得他 2. 局部性:先看小范围,再拼大画面 …

目录

一、先吐槽 MLP 的 “笨办法”:为什么它处理图像不行?

二、CNN 的 “聪明思路”:靠两个原则抓住图像本质

1. 平移不变性:不管沃尔多在哪,我都认得他

2. 局部性:先看小范围,再拼大画面

三、CNN 的 “核心部件”:卷积层和池化层是怎么工作的?

1. 卷积层:用 “小窗口” 扫图,提取特征

补充:多通道、填充和步幅

2. 池化层:给图像 “降维”,保留关键特征

四、CNN 的 “进化史”:从 LeNet 到 VGG,越来越能打

1. LeNet(1995):CNN 的 “鼻祖”,处理手写数字

2. AlexNet(2012):CNN 的 “破局者”,赢了 ImageNet

3. VGG(2014):CNN 的 “规整派”,用重复块堆深度

五、CNN 的 “魔法”:自动学特征,不用人工标注

写在最后:打算动手搭个简单的 CNN 试试


为什么 CNN 能轻松分清猫狗?—— 我入门卷积神经网络的关键笔记

今天学卷积神经网络(CNN),终于搞懂了一个困扰我好久的问题:之前用多层感知机(MLP)处理图像时,不仅参数量大到离谱(3600 万像素的图要 36 亿参数),还总把猫的耳朵认成狗的尾巴 —— 原来 MLP 把图像展平成一维向量时,丢了最关键的 “空间信息”。而 CNN 就像给机器装了 “会看图像的眼睛”,既能抓住局部特征,又能大大减少参数。整理了我觉得最核心的知识点,用自己能看懂的话记下来,也帮和我一样刚入门的小伙伴捋捋逻辑。

一、先吐槽 MLP 的 “笨办法”:为什么它处理图像不行?

老师开篇先让我们算一道 “数学题”:用相机拍一张 RGB 猫图,算下来有 3600 万个像素(相当于 3600 万特征),如果用 100 个神经元的单隐藏层 MLP,参数量是 100×3600 万 = 36 亿 —— 这个数字比地球上猫狗的总数还多!

更关键的是,MLP 会把 28×28 的手写数字、3600 万像素的猫图,全拉成一条长长的一维向量。这就像把一幅拼图拆成碎片后打乱,再让你拼回去 —— 机器根本不知道 “左上角的像素和旁边的像素是相邻的”,自然抓不住 “猫的耳朵在脸上方”“狗的尾巴在身后” 这种空间关系。

这时候老师问:“那有没有一种方法,能让机器像人一样‘看’图像 —— 先看局部,再拼整体,还不用那么多参数?”—— 答案就是 CNN。

二、CNN 的 “聪明思路”:靠两个原则抓住图像本质

CNN 能处理图像,核心是靠两个贴近人类视觉习惯的原则,老师用 “找沃尔多” 的游戏举例子,一下子就懂了:

1. 平移不变性:不管沃尔多在哪,我都认得他

玩 “找沃尔多” 时,不管沃尔多在图片左上角还是右下角,我们只要看到 “红条纹衬衫、圆眼镜” 这些特征,就知道是他。CNN 也是这样 —— 前面的卷积层对 “猫耳朵”“狗鼻子” 这些特征的反应,不会因为特征在图像的哪个位置而改变。比如用一个 “检测猫耳朵” 的卷积核,不管猫耳朵在左还是右,这个卷积核都能识别出来,不用像 MLP 那样每个位置都设不同的权重。

2. 局部性:先看小范围,再拼大画面

我们看一张图时,不会一下子把整幅图塞进脑子里,而是先看 “这是一个边缘”“那是一块红色”,再慢慢拼成 “这是猫的脸”。CNN 的前面几层也只关注输入的局部区域,比如用 3×3 的卷积核,每次只看 9 个像素的小范围,不用在意远处像素的关系 —— 这样既符合视觉逻辑,又减少了需要计算的参数。

三、CNN 的 “核心部件”:卷积层和池化层是怎么工作的?

搞懂了原则,再看 CNN 的结构就很清晰了 —— 最关键的是 “卷积层” 和 “池化层”,老师用具体例子拆解得明明白白。

1. 卷积层:用 “小窗口” 扫图,提取特征

卷积层的核心是 “卷积核”(也叫滤波器),可以理解成一个小窗口。比如用 3×3 的卷积核在图像上滑动,每次把窗口里的像素和卷积核的数值相乘再相加,得到一个新的像素值 —— 这个过程就是 “卷积”,能提取出图像的特定特征。

  • 边缘检测:用一个中间是 8、周围是 - 1 的 3×3 卷积核,扫过图像后,能把明暗交界的边缘凸显出来(比如猫的轮廓);
  • 高斯模糊:用数值中间大、周围小的卷积核,扫过图像后能让画面变模糊,去掉噪声;
  • 锐化:用中间是 2、周围是 - 1 的卷积核,能让图像的细节更清晰(比如猫的胡须)。

还有个超重要的点是 “参数共享”:一个卷积核扫完整幅图,只用一套权重,不用像 MLP 那样每个像素都配权重。比如 3×3 的卷积核只有 9 个参数,不管图像多大,这 9 个参数就能提取同一类特征 —— 这就是 CNN 参数量少的关键!

补充:多通道、填充和步幅
  • 多通道:彩色图有 RGB 三个通道,卷积时每个通道都要有对应的卷积核,最后把三个通道的结果加起来,得到一个输出通道。如果想提取多种特征(比如同时提边缘和颜色),就用多个卷积核,输出多个通道;
  • 填充:卷积后图像会变小(比如 3×3 卷积核扫 5×5 图像,输出是 3×3),边缘的像素只被扫到一次,容易丢失信息。填充就是在图像周围加一圈 0,让输出大小和输入一样,保护边缘信息;
  • 步幅:卷积核每次滑动的步数。步幅 1 就是每次挪 1 个像素,步幅 2 就是挪 2 个像素 —— 步幅越大,输出图像越小,计算越快(比如 224×224 的图用步幅 2,很快就能缩小到 112×112)。

2. 池化层:给图像 “降维”,保留关键特征

卷积层输出的特征图还是有点大,池化层的作用就是 “压缩”—— 在小窗口里做简单计算,减少像素数量,同时保留重要特征。老师讲了两种常用的池化:

  • 最大池化:比如 2×2 的窗口,取窗口里 4 个像素的最大值。比如猫耳朵区域有 “10、2、3、5”,取 10—— 这样能突出最明显的特征(比如边缘的亮度),还能让模型对微小的位置变化不敏感;
  • 平均池化:取窗口里的平均值,比如 “10、2、3、5” 取 5—— 输出更平滑,适合需要保留整体亮度的场景。

比如 LeNet 里用 2×2 平均池化,步幅 2,能把 28×28 的特征图缩小到 14×14,计算量一下子少了一半,还不丢关键特征。

四、CNN 的 “进化史”:从 LeNet 到 VGG,越来越能打

老师说,CNN 的发展是 “站在巨人肩膀上”,从简单到复杂,每一代都解决了上一代的问题。我整理了三个最关键的架构:

1. LeNet(1995):CNN 的 “鼻祖”,处理手写数字

LeNet 是最早的 CNN 之一,专门用来识别手写数字(MNIST 数据集),结构很简单:

  • 卷积编码器:2 个卷积层(5×5 卷积核)+2 个平均池化层,先提取边缘、线条这些特征;
  • 全连接密集块:3 个全连接层,最后输出 10 个类别(对应 0-9)。

它的缺点是层数少、参数量小,处理不了复杂的彩色图像,但为后来的 CNN 打下了基础 —— 就像 “第一个吃螃蟹的人”,证明了 CNN 处理图像的可行性。

2. AlexNet(2012):CNN 的 “破局者”,赢了 ImageNet

2012 年 AlexNet 在 ImageNet 竞赛里一战成名,把错误率从 26% 降到 15%,彻底改变了计算机视觉的方向。它其实是 “更大更深的 LeNet”,但做了三个关键改进:

  • 用 ReLU 代替 sigmoid:sigmoid 在输入太大或太小时会 “梯度消失”,训练不动;ReLU 输入大于 0 就输出本身,小于 0 就输出 0,梯度不容易消失,训练更深的网络也没问题;
  • 加了 Dropout:训练时随机 “关掉” 一部分神经元,避免模型死记硬背训练数据(过拟合);
  • 用最大池化:比 LeNet 的平均池化更能保留突出特征,比如猫的耳朵、狗的眼睛。

AlexNet 有 8 层(5 个卷积层 + 3 个全连接层),处理 3×224×224 的彩色图,参数量虽然大,但比 MLP 少多了 —— 它证明了 CNN 能处理复杂的自然图像。

3. VGG(2014):CNN 的 “规整派”,用重复块堆深度

VGG 的思路更简单:把 “3×3 卷积 + 2×2 最大池化” 做成一个 “VGG 块”,然后重复这个块,堆出更深的网络(比如 VGG16 有 16 个卷积层,VGG19 有 19 个)。

它的优点是结构规整,容易理解和复现 —— 比如 VGG16 的流程是:输入 224×224×3→2 个 VGG 块(输出 56×56×128)→3 个 VGG 块(输出 28×28×256)→3 个 VGG 块(输出 14×14×512)→3 个全连接层→输出 1000 类(ImageNet 的类别数)。

老师说,VGG 告诉我们 “更深的网络不一定更复杂,重复简单的模块也能提升性能”—— 这也影响了后来的 ResNet、GoogLeNet 等架构。

五、CNN 的 “魔法”:自动学特征,不用人工标注

最让我觉得神奇的是 CNN 的 “特征学习能力”。以前用传统方法处理图像,得人工设计特征(比如用边缘检测算子、颜色直方图),费时又不准;而 CNN 能自己从数据里学特征,而且是分层学的:

  • 浅层卷积层:学底层特征,比如边缘、颜色、小斑块(就像我们看图像先看到的线条);
  • 中层卷积层:学中层特征,比如条纹、纹路、形状(比如猫的耳朵形状、狗的身体轮廓);
  • 高层卷积层:学高层语义特征,比如眼睛、鼻子、尾巴(最后能直接认出 “这是猫”“那是狗”)。

这和人类的视觉系统特别像 —— 我们也是从 “这是一条线” 慢慢到 “这是一个物体”,不用别人教 “什么是边缘”,自己就能悟出来。

写在最后:打算动手搭个简单的 CNN 试试

今天学完最大的感受是:CNN 不是 “黑盒子”,它的每个部件都有明确的作用 —— 卷积层提特征、池化层降维、全连接层做分类,而且思路特别贴近人类的视觉习惯。以前觉得 “识别图像” 是很高深的技术,现在发现只要理解了 “参数共享”“局部性” 这些核心原则,就不难入门。

接下来打算用 PyTorch 搭一个简化版的 LeNet,先试试识别 MNIST 手写数字,再挑战一下用 CNN 做猫狗分类 —— 毕竟光懂理论不行,动手练了才记得牢。如果和我一样刚入门,建议先从 LeNet 入手,搞懂卷积层和池化层的工作原理,再往 AlexNet、VGG 上靠,这样学起来会轻松很多~

http://www.dtcms.com/a/544983.html

相关文章:

  • 动力网站移动端模板网站建设价格
  • Windows 10终止服务支持:企业IT安全迎来重大考验
  • Mac os安装Easyconnect卡在正在验证软件包
  • 手机网站免费模板下载门户网站 销售
  • 学习和掌握RabbitMQ及其与springboot的整合实践(篇二)
  • Flink、Storm、Spark 区别
  • 当 AI Agent 遇上工作流编排:微软 Agent Framework 的 Workflow 深度解析
  • 5步构建多模式内容策略:统一品牌信息,最大化内容影响力
  • STP 转换为 3DXML 的技术指南及迪威模型网在线转换推荐
  • 如何建设视频网站好的网站设计题目
  • 深入理解 Vite 开发服务器的 Local 与 Network 地址
  • 免费建立网站的网站吗免费软件视频
  • 和利时 PLC 配网
  • 时间序列数据预测:14种机器学习与深度学习模型
  • 手机网站编程语言finecms
  • 第六部分:VTK进阶(第178章 网格质量评估vtkMeshQuality)
  • 多模态+CLIP | 视觉语言交互的终极形态?CLIP融合AIGC与持续学习,重塑多模态AI边界
  • Linux下CMake工具使用与Makefile生成完全指南
  • 关系型数据库、非关系型数据库、结构化数据、半结构化数据、非结构化数据、OLAP、OLTP的关系和区分
  • 成都市成华区建设局网站拐角型布局网站
  • java 文本内容 相似度比对
  • 切换jdk17
  • 定制型网站 成功案例网站建设费 税前扣除吗
  • 【SpringMVC】SpringMVC 请求与响应全解析:从 Cookie/Session 到状态码、Header 配置
  • 兰州网站建设ulezhi郑州网站建设培训短期班
  • 8.1.2 大数据方法论与实践指南-埋点实现方式分类
  • 7.1.5 大数据方法论与实践指南-日志系统+监控报警
  • Node.js Stream:深入理解与高效使用
  • 7.1.1 大数据方法论与实践指南-数仓元数据平台(数据地图)
  • 网站建设会计处理重庆网络公司产品设计