AI学习——卷积神经网络(CNN)入门
作为人类,我们天生擅长“看”东西:一眼就能认出猫狗、分辨红绿灯、读懂朋友的表情……但计算机的“眼睛”最初是一片空白。直到卷积神经网络(CNN)的出现,计算机才真正开始理解图像。今天,我们就用最通俗的语言,揭开CNN的神秘面纱。
一、为什么需要CNN?
假设你给计算机一张1000x1000像素的猫图,传统处理方式是这样的:
- 暴力拆解:把图片拆成100万个像素点,每个点是一个数字(0~255)。
- 直接塞进神经网络:每个像素都连接到下一层的神经元 →参数爆炸!
致命缺陷:
- 计算量太大(100万像素 × 1000神经元 = 10亿参数!)
- 无法理解“猫耳朵出现在左上角还是右下角”其实是同一特征。
CNN的突破:模仿人类视觉,从局部到整体、分层理解图像。
二、CNN的三大核心思想
2.1. 局部感知:像放大镜一样观察
传统方法:每次看整张图片 → 信息过载。
CNN的智慧:
用一个小窗口(如3x3)在图片上滑动,每次只看一个小区域。
例子:就像你辨认猫耳朵时,不会同时盯着尾巴和胡须,而是先聚焦局部。


2.2. 参数共享:同一特征,一次学习
传统方法问题:如果猫耳朵出现在不同位置,网络要反复学习。
CNN的解决:
用同一个“检测器”(卷积核)扫描整个图片。
例子:你学会“三角形是猫耳朵”后,无论猫在图片左边还是右边,都能认出耳朵。
2.3. 降维抽象:抓住重点,忽略细节
- 池化层的作用:压缩数据量,保留关键信息。
- 最大池化:取小区域内的最大值(保留最显著特征)。
- 平均值池化:取小区域的平均值。
例子:看漫画时,细节被简化,但轮廓依然能让你认出角色。

▲ 最大池化:4x4区域 → 2x2输出,保留每个区域最大值
三、CNN的工作流程:层层抽象,化繁为简
假设识别一张“猫图”,CNN的思考过程如下:
1、**第一层(边缘检测)**:
发现垂直线、水平线、斜线 → 勾画出猫耳朵的轮廓。
2、**第二层(纹理组合)**:
将线条组合成毛发纹理、眼睛轮廓。
3、**第三层(部件识别):
识别出耳朵、胡须、尾巴等器官。
4、最后一层(整体判断)**:
综合所有特征 → 输出“猫”的概率为90%。
网络越深,特征越抽象(从边缘到物体部件)
四、CNN的“武器库”:关键组件详解
4.1. 卷积核(Filter)
本质:一个数字矩阵(如3x3),用来提取特定特征。
例子:
检测垂直边缘的卷积核:
[-1, 0, 1
-1, 0, 1
-1, 0, 1]
在图片上滑动计算,高亮显示垂直线条区域。
4.2. 激活函数:ReLU
作用:让网络具备非线性判断能力。
公式:输出 = max(0, 输入)
解读:
负数不重要,直接归零;正数保留 → 突出关键特征。

▲ ReLU函数图像(负数归零,正数保留)
4.3. 全连接层:最后的“决策者”
作用:将提取的特征汇总,判断属于哪一类。
例子:
输入:耳朵特征(0.9)、胡须(0.8)、尾巴(0.7)。
输出:猫(90%)、狗(5%)、其他(5%)。
五、CNN为什么比传统方法强?
| 传统神经网络 | CNN |
|---|---|
| 处理整张图片,参数爆炸 | 局部连接,参数少90%以上 |
| 猫在左/右要重新学习 | 参数共享,位置无关 |
| 只能学习简单特征 | 分层抽象,自动组合复杂特征 |
六、CNN的实际应用:改变世界的技术
1、医疗影像:
从X光片中识别肿瘤边缘 → 分析形状 → 辅助医生判断良恶性。
2、自动驾驶:
实时检测车道线、行人、交通灯 → 综合决策刹车或转向。
3、人脸解锁:
提取五官轮廓、皮肤纹理 → 匹配数据库中的用户特征。
4、艺术创作:
风格迁移(如将照片变成梵高画风)、AI绘画。
七、动手体验:3分钟感受CNN的力量
在线工具推荐(百度):
TensorFlow Playground:拖动滑块调整卷积层、池化层,实时观察分类效果。
CNN Explainer:交互式可视化CNN每一层的运作。
小白也能玩:
尝试增加卷积层 → 观察特征如何从边缘变成复杂图案。
去掉池化层 → 看看计算量会不会爆炸。
八、常见问题解答
Q1:CNN只能处理图片吗?
不!CNN也可用于视频(时间序列)、音频(频谱图)、甚至文本(单词矩阵)。
Q2:为什么需要多层卷积?
单层只能识别简单特征(如边缘),多层才能组合出复杂概念(如“猫脸”)。
Q3:CNN会被其他技术取代吗?
CNN仍是图像领域的基石,但Transformer等新模型正在融合其优势,未来可能是多技术协作。
结语:让机器拥有“视觉智慧”
从识别猫狗到辅助癌症诊断,CNN让计算机真正学会了“看”世界。它的设计灵感源自人类视觉,却又超越了生物局限。下一次当你刷脸解锁手机时,不妨想想:这背后正是无数个卷积核在默默工作,从像素中编织出智能的奇迹。
延伸阅读:
书籍:《深度学习入门:基于Python的理论与实现》
视频:3Blue1Brown的CNN科普
论文:AlexNet——CNN里程碑之作
相关文章:
AI学习——卷积神经网络(CNN)入门
作为人类,我们天生擅长“看”东西:一眼就能认出猫狗、分辨红绿灯、读懂朋友的表情……但计算机的“眼睛”最初是一片空白。直到卷积神经网络(CNN)的出现,计算机才真正开始理解图像。今天,我们就用最通俗的…...
双指针算法-day14(分组循环)
1.最长奇偶子数组 题目 解析 分组循环模板: 简单来说: 第一步:指针遍历找到满足条件的开头下标,并用 start i 记录开头;第二步:指针不断右移寻找满足条件的最长子数组;第三步:更新…...
Linux基础开发工具--gdb的使用
目录 安装准备: 1. 背景 2. 开始使用 3. 做一个Linux第一个小程序-进度条 安装准备: 对于gdb的学习使用,为了方便大家学习,我建议大家先安装一个cgdb进行学习,这样方便观察操作与学习gdb。 用以下…...
垃圾回收算法(Garbage Collection)深度解析
垃圾回收算法(Garbage Collection)深度解析 核心思想 垃圾回收核心目标: 定位存活对象 、回收死亡对象可达性分析算法、空间复用优化 生死判定原理 可达性分析法(Reachability Analysis) 通过GC Roots(…...
基于Matlab实现语音识别算法(源码+数据)
语音识别技术是现代信息技术中的一个重要领域,特别是在人机交互、智能设备、智能家居、自动驾驶等多个领域有着广泛应用。MATLAB作为一种强大的数值计算和数据可视化环境,因其易用性和丰富的库支持,常被用来实现复杂的算法,包括语…...
RabbitMQ的高级特性介绍(一)
消息确认机制 ⽣产者发送消息之后, 到达消费端之后, 可能会有以下情况: a. 消息处理成功 b. 消息处理异常 RabbitMQ向消费者发送消息之后, 就会把这条消息删掉, 那么第二种情况, 就会造成消息丢失。 那么如何确保消费端已经成功接收了, 并正确处理了呢? 为了保证消息从队列…...
QML开发入门1--安装QT6.8和新建第一个QtQuickApplication
1.下载在线安装工具 qt-online-installer-windows-x64-4.8.1.exe 2.安装 注:可能官网qt安装很慢。需要使用国内镜像源。推荐阿里镜像 qt-online-installer-windows-x64-4.8.1.exe --mirror https://mirrors.aliyun.com/qt3.配置QT关键配置 3.1 无法编译 注&#…...
指令系统2(Load/Store 指令)
一. Load/Store 指令 1. 前变址 前变址指令是在读取或存储数据时,先根据基址寄存器(Rn)与偏移量(offset)计算出有效地址,再进行数据操作。相关指令及示例如下: LDR R0, [R1, #4]:从…...
【实战案例】用STAR+3W模型拆解电商支付系统设计文档
各位开发者朋友,上次分享了结构化写作的黄金公式后,很多同学反馈需要更具象的落地方法。今天通过真实电商支付系统案例,手把手教你用STAR3W模型写出可执行的设计文档! 结构化写作的「黄金公式」 STAR原则 3W模型 Situation&…...
C#使用SnsPictureBox.dll绘制点,线段、圆、折线、多边形、测量尺等多种图形。
CSDN下载地址:https://download.csdn.net/download/sns1991sns/87726867 gitee下载地址:https://gitee.com/linsns/SnsPictrueBox 支持2种绘制方式:响应式和等待式。 一、使用响应式绘制图形 1、在窗口构造函数里添加绘制图形的完成响应函数 public…...
如何让节卡机器人精准对点?
如何让节卡机器人精准对点? JAKA Zu 软件主界面主要由功能栏、开关栏、菜单栏构成。 菜单栏:控制柜管理,机器人管理与软件管理组成。主要功能为对控制柜关机、APP 设置、机器人本体设 置、控制柜设置、连接机器人和机器人显示等功能。 开关…...
文转语音好用的平台
一、国外平台推荐 第一梯队:全球头部服务 Amazon Polly(AWS) 特点:支持 70语言/方言,提供神经语音(NTTS)和标准语音,可克隆声音(Voice Designer)。平台&…...
常见JavaScript页面部分内容显示/隐藏设置总结
项目中经常遇到通过js判断对页面中某一部分进行显示/隐藏设置的场景,经常使用的是display,有时也会使用visibility、opacity,为此,特意查询了相关内容,对其进行了一下汇总记录下: 除了 display,…...
在 Spring Boot 中调用 AnythingLLM 的发消息接口
整体逻辑: 自建系统的web UI界面调用接口: 1.SpringBoot接口:/anything/chatMessageAnything 2.调用anythingLLM - 调用知识库deepseek r1 . Windows Installation ~ AnythingLLMhttps://docs.anythingllm.com/installation-desktop/windows http://localhost:3…...
TextView、AppCompatTextView和MaterialTextView该用哪一个?Android UI 组件发展史与演进对照表
在 Android 开发中,UI 组件一直在不断演进,从最初的原生组件,到 Support Library(AppCompat 兼容库),再到如今的 Material Design 组件。这篇文章将梳理 Android UI 组件的发展历史,并提供详细的…...
[GHCTF 2025]Popppppp[pop链构造] [php原生类的利用] [双md5加密绕过]
题目 <?php error_reporting(0);class CherryBlossom {public $fruit1;public $fruit2;public function __construct($a) {$this->fruit1 $a;}function __destruct() {echo $this->fruit1;}public function __toString() {$newFunc $this->fruit2;return $new…...
2025.3.20总结
阅读:《时间贫穷》第二章,里面讲到,运动,多行善事,体验自然,都会增强自我效能感,是对抗时间焦虑的强有力的方式。 花时间运动是值得的,公司每周三都是运动周,把运动视作…...
Tr0ll2靶机详解
一、主机发现 arp-scan -l靶机ip:192.168.55.164 二、端口扫描、漏洞扫描、目录枚举、指纹识别 2.1端口扫描 nmap --min-rate 10000 -p- 192.168.55.164发现21端口的ftp服务开启 以UDP协议进行扫描 使用参数-sU进行UDP扫描 nmap -sU --min-rate 10000 -p- 19…...
制造业数字化转型,汽车装备制造企业数字化转型案例,智能制造数字化传统制造业数字化制造业数字化转型案例
《某制造业企业信息化整体解决方案》PPT展示了一个汽车装备企业的整体信息化解决方案,阐述了该企业的业务特点和现状,主要包括按订单生产、多级计划和产品跟踪等,分析了信息化建设的主要困难,如信息管理手工化、过程数据追溯困难、…...
PyTorch模型转ONNX例子
参考:(optional) Exporting a Model from PyTorch to ONNX and Running it using ONNX Runtime — PyTorch Tutorials 2.6.0cu124 documentation import numpy as np import torch.utils.model_zoo as model_zoo import torch.onnx import torch.nn as nn import t…...
科技云报到:AI Agent打了个响指,商业齿轮加速转动
科技云报到原创。 3月16日,百度旗下文心大模型4.5和文心大模型X1正式发布。目前,两款模型已在文心一言官网上线,免费向用户开放。 同时,文心大模型4.5已上线百度智能云千帆大模型平台,企业用户和开发者登录即可调用AP…...
【蓝桥杯python研究生组备赛】005 数学与简单DP
题目1 01背包 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi,价值是 wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入格式 第一行两个整数&a…...
Chapter 4-16. Troubleshooting Congestion in Fibre Channel Fabrics
Show FCS Ie Example 4-17 shows the NX-OS command show fcs ie on Cisco MDS switches. 例 4-17 显示了 Cisco MDS 交换机上的 NX-OS 命令 show fcs ie。 Example 4-17 NX-OS command show fcs ie on Cisco MDS switches MDS9706-C# show fcs ie IE List for VSAN: 20 --…...
抖音视频数据获取实战:从API调用到热门内容挖掘
在短视频流量为王的时代,掌握抖音热门视频数据已成为内容运营、竞品分析及营销决策的关键。本文将手把手教你通过抖音开放平台API获取视频详情数据,并提供完整的代码实现及商业化应用思路。 一、抖音API权限申请与核心接口 抖音API需企业资质认证&…...
大白话读懂java对象创建的过程
1. java对象创建流程(大白话版) 咱们java对象被创建的过程大致如下,即: 在 JVM 中对象的创建,从⼀个 new 指令开始: 首先检查这个指令的参数是否能在常量池中定位到⼀个类的符号引用检查这个符号引用代表…...
Ubutu20.04安装docker与docker-compose
系统:20.04.6 LTS (Focal Fossa)" 1.配置apt源(在/etc/apt/sources.list中输入以下内容) # deb cdrom:[Ubuntu 20.04.6 LTS _Focal Fossa_ - Release amd64 (20230316)]/ focal main restricted deb http://mirrors.aliyun.com/ubuntu/ focal main restricted …...
AI图像理解技术的演进
在CLIP等现代多模态模型出现之前,早期的图生文技术主要依赖人工标注的ImageNet等数据集,但其技术路线与当前方法存在本质差异。 一、传统图生文技术的标注依赖 ImageNet的核心地位 在2012-2020年间,ImageNet的1,400万张人工标注图像ÿ…...
STM32 —— MCU、MPU、ARM、FPGA、DSP
在嵌入式系统中,MCU、MPU、ARM、FPGA和DSP是核心组件,各自在架构、功能和应用场景上有显著差异。以下从专业角度详细解析这些概念: 一、 MCU(Microcontroller Unit,微控制器单元) 核心定义 集成系统芯片&a…...
aiosignal
文章目录 安装 一、关于 aiosignal Github : https://github.com/aio-libs/aiosignal官方文档:https://aiosignal.aio-libs.org/gitter聊天:https://gitter.im/aio-libs/Lobby许可证 : Apache 2 aiosignal 管理 asyncio 项目中回调的项目。 Signal是已…...
在 VSCode 远程开发环境下使用 Git 常用命令
在日常开发过程中,无论是单人项目还是团队协作,Git 都是版本管理的利器。尤其是在使用 VSCode 连接远程服务器进行代码开发时,Git 不仅能帮助你管理代码版本,还能让多人协作变得更加高效。本文将介绍一些常用的 Git 命令ÿ…...
