机器学习:卷积神经网络

引入

首先思考一个问题:我们如何识别一个熟人?

场景1:你的同学小王迎面向你走来,你说:嗨,早上好!

场景2:你们班新来了一个同学,你看了他一眼,心里想到,这人是谁啊。

场景1:
1. 离远看的时候,看脸型(模糊的轮廓),诶好像是认识的人,好像是小王,但是不敢确定
2. 走近一点,看这眼睛,这鼻子,这嘴巴,不就是小王嘛

场景2:
1. 扫视周围同学,这个人是小王,每天都来,我认识;这个人是班主任,挺烦的,但是我也认识
2. 这个人我好像没见过啊,仔细看看… 看看眼睛,鼻子,嘴巴。嗯…确实没见过

我们把这两个场景抽象出来:

我们把对象的轮廓提取出来,与我们脑子里的“人脸数据库”进行对比

如果有相似概率比较高的,我们就进行下一步处理;如果没有,这个人我们大概率就不去看了

抽取对象的局部特征,与我们脑子里某个人的局部特征进行对比

得出结论:
(1)如果相似度接近100%,那我们断定,就是这个人
(2)如果相似度较高,根据新的特征,那我们推测,这哥们可能是被揍了,或者化妆了
(3)如果相似度一般,那我们说,这人和“某某某”长得真像啊
(4)如果相似度不高,那这人我们就没见过

第二个问题:计算机如何模拟人的行为进行识别

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

RGB示例

在这里插入图片描述
在这里插入图片描述

轮廓特征

在这里插入图片描述

局部特征

在这里插入图片描述

计算机处理图像识别的思路

  1. 轮廓特征和局部特征的抽取:

    (1)通过对每个像素块RGB数据的抽取,得出每个像素块的值
    (2)在某个范围内(眼睛,鼻子,嘴),抽取所有,或者一部分的像素块,得到某个范
    围内的图像

  2. 轮廓特征和局部特征的对比
    通过和样本库进行对比,确定局部是不是类似的

  3. 把所有局部的对比结果综合,得出最后结论
    “啊! 这是小王,我需要跟他打个招呼!”

神经网络和卷积神经网络的联系

在这里插入图片描述
在这里插入图片描述

卷积神经网络的原理

卷积运算

在这里插入图片描述

边缘检测

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
eg:
在这里插入图片描述
在这里插入图片描述

灰度图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Padding & Stride (填充和步长)

卷积运算的缺点

  • 每次做卷积的时候,图像都会缩小
  • 角落的像素点只会被使用一次,而中间的像素点会用到很多次,这意味着你丢掉了很多图像边缘的信息

解决的方法 – 在做卷积运算前,对图像进行填充

在这里插入图片描述
在这里插入图片描述

Vaild 和 Same 卷积运算

在这里插入图片描述

Stride 步长

在这里插入图片描述
公式:

((n + 2p – f)/s + 1) x (n + 2p – f)/s + 1)

注意:

如果商不为0, 那就向下取整

如果移动到了外面,那就跳过

卷积神经网络的总结和延伸

基于RGB的卷积神经网络

在这里插入图片描述
在这里插入图片描述

卷积神经网络的示例1

在这里插入图片描述
在这里插入图片描述

池化层

池化层是用来缩减模型,提高计算速度,同时提高所取得特征的鲁棒性

池化层是用来降采样subsample, shrink, 减少计算负荷,内存使用,参数数量(防止过拟合)

正如卷积神经网络一样,在池化层中的每个神经元被连接到上面一层输出的神经元,只对应一小块感受野的区域。 我们必须定义大小,步长,padding类型

池化层没有权重值,他只是聚合输入根据取最大值或者求均值

池化层的例子: 2x2的池化核,步长为2,没有填充,只有最大值往下传,其他输入被丢弃掉了; 直观的理解说就是,因为取最大值,所以较小值就会被忽略,也就是不重要的特征会被忽略

最大池化

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

平均池化

平均池化选取的不是每个过滤器的最大值,而是平均值
在这里插入图片描述

参数总结

超参数:

f: 过滤器大小

s:步长

最大池化或者平均池化

没有padding!所以池化层公式就变为: ((n – f )/ s + 1) x ((n – f )/ s + 1) x nc

最大池化层是一个静态属性

卷积神经网络示例2 – 基于经典模型LeNet5

在这里插入图片描述
在这里插入图片描述

为什么要用卷积神经网络

既然我们能把图像数据化,那我们可以可以不用卷积神经网络呢,直接用深度神经网络呢?

可以,但是运算量很大

比如LeNet,第一层就需要1400万个参数,而且要知道32x32是一个非常非常小的图像

但是用卷积神经网络,第一层只有156个参数

参数共享和稀疏连接

在这里插入图片描述
通过循环梯度下降,把不重要的特征权重降低(稀疏链接),最终得到合适的模型

卷积神经网络流程

在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值