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

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值