卷积神经网络(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(略)

相关推荐
一招定胜负1 小时前
图像形态学+边缘检测及CNN关联
人工智能·深度学习·cnn
实战项目2 小时前
基于PyTorch的卷积神经网络花卉识别系统
人工智能·pytorch·cnn
机器学习之心4 小时前
Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型分类预测Matlab实现
cnn·gru·transformer·cnn-gru·五模型分类预测
学好statistics和DS1 天前
卷积神经网络中的反向传播
人工智能·神经网络·cnn
莫非王土也非王臣1 天前
TensorFlow中卷积神经网络相关函数
人工智能·cnn·tensorflow
机器学习之心1 天前
Transformer-BiLSTM、Transformer、CNN-BiLSTM、BiLSTM、CNN五模型分类预测Matlab实现
cnn·transformer·cnn-bilstm·bilstm
一瞬祈望1 天前
⭐ 深度学习入门体系(第 11 篇): 卷积神经网络的卷积核是如何学习到特征的?
深度学习·学习·cnn
Elaine3361 天前
【验证码识别算法性能对比实验系统——KNN、SVM、CNN 与多模态大模型的性能博弈与机理分析】
python·opencv·支持向量机·cnn·多模态·数字图像处理
Cigaretter71 天前
Day 42 简单CNN
python·深度学习·cnn
果粒蹬i1 天前
当CNN遇见Transformer:混合模型的特征可视化与融合攻略
人工智能·cnn·transformer