卷积神经网络(CNN)入门学习笔记

什么是 CNN?

CNN,全称 卷积神经网络(Convolutional Neural Network) ,是一种专门用来处理图片、语音、文本等结构化数据的神经网络。

它模仿人眼识别图像的方式:
从局部到整体,一步步提取特征,最后做出判断。

什么叫"卷积"?

卷积这个词,来源于数学中的卷积操作

简单说,就是用一个小方块(卷积核)在图片上滑动,把相邻像素做个"加权求和",用来提取特定特征。

比如:

  • 检测边缘
  • 识别线条
  • 找出颜色块

CNN 结构组成

CNN 通常由以下几部分组成:

  1. 卷积层(Convolutional Layer)
  2. 激活函数(Activation Function)
  3. 池化层(Pooling Layer)
  4. 全连接层(Fully Connected Layer)
  5. 输出层(Output Layer)

CNN 常见术语速查表

专有名词 含义
卷积核(Filter) 提取局部特征的小方块
步长(Stride) 卷积核每次移动的格子数
填充(Padding) 给图像边缘补零,避免尺寸缩小
激活函数 增强模型非线性能力,常用 ReLU
池化 降维、保留关键信息,防止过拟合
全连接层 将所有特征组合分类
损失函数 衡量预测值和真实值的差距

图片识别

图片识别-Neuron Versin

李宏毅老师: 《机器学习》 学习笔记

overall

输入是一张图片,输出是图片的分类: cat/dog...

计算每一个像素--判断是否是cat

Cverservation 1 - 不需要观察整张图片

只观察一张图片特定的几个部分,如下面例子中的: 鸟嘴/鸟眼/鸟爪

Simplification 1 - Typical Setting
  1. kernel size (卷积核(filter)): 3 * 3
  2. all channels
  3. stride(步长)=1 :每次移动一个像素,沿着水平+垂直方向移动
  4. padding :就是在输入特征图(图片或序列)边缘周围补上额外像素(通常是 0),目的是为了:
    • 保持输出尺寸不变
    • 控制特征图尺寸变化规律
    更好地提取边缘特征

Cverservation 2 - 共享参数

Simplification 2
原理
  • weight: 决定输入信号对神经元输出的影响程度
  • bias : 偏移值,帮助模型更灵活拟合数据
Typical Setting

图片识别-Filter Version

feature map

Multiple Convolutional layers

Comparision of 2 Stories

Pooling - Max Pooling

卷积操作后,特征图通常很大,这时候用 **subsampling(池化 Pooling)**来降低特征图尺寸,但保留重要特征。

  • 特征提取(Feature Extraction) 就是:从原始数据中,把能代表事物本质特征的信息挑选出来,作为模型输入的过程。
    • 最大特征(Max Feature / Max Pooling): 从一堆特征值里,取最大值作为代表
    • 平均特征(Average Feature / Average Pooling) : 从一堆特征值里,计算平均值作为代表

Convolutional Layers + Pooling

The Whole CNN

Application Playing Go(略)

相关推荐
ting94520003 天前
动手学深度学习(PyTorch版)深度详解(6):现代卷积神经网络-从经典模型到图像分类实战
人工智能·分类·cnn
AI技术增长3 天前
Pytorch图像去噪实战(十一):Diffusion扩散模型去噪入门,从噪声预测理解生成式图像恢复
pytorch·深度学习·机器学习·cnn·transformer
nonono3 天前
深度学习基础——(3)视觉处理基础实战【CNN实现CIFAR10 多分类】
深度学习·分类·cnn
Jmayday4 天前
Pytorch:CNN理论基础
人工智能·pytorch·cnn
yigan_Eins4 天前
Transformer|残差连接的技术演进:从CNN到ResNet
人工智能·深度学习·cnn·transformer
AI技术增长4 天前
Pytorch图像去噪实战(九):SwinIR图像去噪实战,用Transformer解决CNN纹理恢复不足问题
pytorch·cnn·transformer
毕胜客源码4 天前
卷积神经网络的手势识别系统(有技术文档)深度学习 图像识别 卷积神经网络 Django python 人工智能
人工智能·python·深度学习·cnn·django
Jmayday4 天前
Pytorch:CNN进行图象分类案例
人工智能·pytorch·cnn
AI技术增长4 天前
Pytorch图像去噪实战(十):Restormer图像去噪实战,用高效Transformer解决高分辨率去噪问题
pytorch·深度学习·机器学习·cnn·transformer
yongui478344 天前
基于卷积神经网络(CNN)的盲源分离MATLAB实现
人工智能·matlab·cnn