首页 > 其他分享 >卷积神经网络

卷积神经网络

时间:2022-11-16 19:36:04浏览次数:76  
标签:卷积 像素点 神经网络 理解 图像 我们


博主在之前的学习中接触过卷积神经网络,但仍对其一知半解,今天便趁此学习总结一下。

参考视频

参考视频:​​从“卷积”、到“图像卷积操作”、再到“卷积神经网络”,“卷积”意义的3次改变​

卷积神经网络_卷积核

卷积概念

1.卷积层将输入与核矩阵进行交叉相关,加上偏移后得到输出

2.核矩阵和偏移都是可学习的参数

3.核矩阵的大小是超参数

首先要知道卷积公式:

卷积神经网络_卷积核_02


举得是一个吃饭的例子,

卷积神经网络_卷积核_03


卷积神经网络_卷积核_04


是不是看着很别扭,我们将g函数翻转一下:

卷积神经网络_卷积_05

其中按照那个视频介绍,f为不稳定输入,g为稳定输出,使用卷积来求系统存量

其可以理解为过去对现在的影响

这是对卷积公式的理解,而在图像的卷积操作中,如果我们的理解还是有些狭隘了。

我们可以将上述公式图像看作某个位置对另一个位置的影响情况,延申到图像中也就是其他像素点对当前像素点的影响,这样理解是不是就更直观了呢

如我们找到了这样一个卷积核

卷积神经网络_像素点_06


这个卷积核的左右是将某个像素点周围的像素点相加求平均,这种卷积操作可以使图像更加平滑朦胧,从而称作平滑卷积操作

卷积神经网络_卷积核_07


通过这个例子,我们可以理解为卷积核规定了周围像素点对当前像素点的影响情况

卷积神经网络_卷积_08


卷积神经网络_卷积_09


看着是不是有些拧巴,不要紧我们将其翻转一下,是不是就是一一对应了呢

卷积神经网络_卷积_10


根据以上分析我们可以得出结论,g函数并不是我们的卷积核,而其旋转180度后才是我们的卷积核

卷积神经网络_机器学习_11


是不是又有了一种卷积翻转的感觉呢,这大概便是图像卷积的意义吧。

1.卷积核:卷积核就是图像处理时,给定输入图像,在输出图像中每一个像素是输入图像中一个小区域中像素的加权平均,其中权值由一个函数定义,这个函数被称为卷积核。

2.有效填充后特征图的尺寸为:
height=(H-h)/S+1;
width=(W-w)/S+1;

H,W分别是输入图的尺寸,h,w分别是卷积核的尺寸

卷积神经网络_卷积核_12


卷积神经网络_像素点_13


卷积神经网络_机器学习_14


接下来我们再来理解什么是卷积神经网络,在上一步骤为,我们认为图像卷积是利用卷积核让周边像素对某一个像素点施加影响,那么在我们的特征提取中,我们也可以理解为他可以规定如何去影响,比如让某个特征更加明显,这不就是做到了特征提取的功能了吗,如下图:

卷积神经网络_卷积_15


这其实便是通过选择合适的卷积核来对图像进行过滤,从而保留我们想要的特征,这种卷积核便是过滤器

这种情况下的卷积核通过对一些我们想要的位置的特征我们便可以进行试探与选择,而卷积核便是我们的模板,只要周边的元素特征符合我们的模板,我们便将其通过卷积核上的权值来进行放大,而对那些我们不想要的我们则可设置权值为0从而消除这种特征,这也就实现了特征选择,过滤器的功能了。

应用

卷积神经网络_卷积核_16


卷积神经网络_机器学习_17


卷积神经网络_卷积核_18

代码实现

卷积神经网络_像素点_19


卷积神经网络_卷积核_20


卷积神经网络_卷积_21


卷积神经网络_机器学习_22


卷积神经网络_卷积核_23


**batch_size:**整数,指定进行梯度下降时每个batch包含的样本数。训练时一个batch的样本会被计算一次梯度下降,使目标函数优化一步。

关于卷积层填充与步长

填充的意义

卷积神经网络_卷积核_24


填充的规则

卷积神经网络_卷积_25

步幅

卷积神经网络_卷积核_26


卷积神经网络_卷积核_27


卷积神经网络_卷积_28


卷积神经网络_像素点_29


卷积神经网络_机器学习_30

超参数:通道数

卷积神经网络_卷积核_31


卷积神经网络_卷积_32


卷积神经网络_卷积_33


卷积神经网络_像素点_34


卷积神经网络_卷积_35


卷积神经网络_卷积核_36

池化层

卷积神经网络_像素点_37


标签:卷积,像素点,神经网络,理解,图像,我们
From: https://blog.51cto.com/u_15876949/5857159

相关文章

  • 卷积神经网络研究综述 学习记录
    概要深度学习善于从原始输入数据中挖掘越来越抽象的特征表示,而这些表示具有良好的泛化能力。深度学习是包含多级非线性变换的层级机器学习方法,深层神经网络是目前的主要形式......
  • 实验四:神经网络算法实验
    实验四:神经网络算法实验【实验目的】理解神经网络原理,掌握神经网络前向推理和后向传播方法;掌握神经网络模型的编程实现方法。【实验内容】1.1981年生物学家格若根(W......
  • 实验四:神经网络算法实验
    【实验目的】理解神经网络原理,掌握神经网络前向推理和后向传播方法;掌握神经网络模型的编程实现方法。【实验内容】1.1981年生物学家格若根(W.Grogan)和维什(W.Wirth)发现......
  • python神经网络编程
    计算机系统:输入->(计算)->输出建立模型可以模拟事情的运作神经网络的基本思想:持续细化误差值。大的误差需要大的修正值,小的误差需要小的修正值。尝试得到一个答案,并多......
  • 实验四:神经网络算法实验
    【实验目的】理解神经网络原理,掌握神经网络前向推理和后向传播方法;掌握神经网络模型的编程实现方法。【实验内容】1.1981年生物学家格若根(W.Grogan)和维什(W.Wirth)发现了......
  • matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类|附代码数据
    全文下载链接:http://tecdat.cn/?p=19751本示例说明如何使用长短期记忆(LSTM)网络对序列数据进行分类。要训练深度神经网络对序列数据进行分类,可以使用LSTM网络。LSTM网络使......
  • 实验四:神经网络算法实验
    【实验目的】理解神经网络原理,掌握神经网络前向推理和后向传播方法;掌握神经网络模型的编程实现方法。【实验内容】1.1981年生物学家格若根(W.Grogan)和维什(W.Wirth)发现了......
  • AI基础:经典卷积神经网络
    导语卷积神经网络(ConvolutionalNeuralNetworks,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(FeedforwardNeuralNetworks),是深度学习(deeplearning)的代表算法之一......
  • 拓端tecdat|R语言用RNN循环神经网络 、LSTM长短期记忆网络实现时间序列长期利率预测
    2017年年中,R推出了 ​​Keras​​ 包 ,这是一个在Tensorflow之上运行的综合库,具有CPU和GPU功能。本文将演示如何在R中使用 ​​LSTM​​ 实现时间序列预测。......
  • 卷积神经网络的尺寸设计的经验
    关于卷积神经网络的尺寸设计,有一些经验可以参考:(1)输入层:一般而言,输入层的大小应该能够被2整除很多次,常用的数字包括32,64,96和124。(2)卷积层:卷积层应该尽可能使用小尺寸的滤......