卷积神经网络

本文详细阐述了卷积神经网络的工作原理,包括权重和偏置的作用,损失函数的设计,梯度下降和反向传播在优化中的应用,以及卷积、池化、全连接层和ResNet等关键组件。重点讨论了网络层数、参数计算、感受野和避免使用大卷积核的问题。
摘要由CSDN通过智能技术生成

卷积神经网络

得分函数

  • 关于函数 f ( x , W ) = W x + b f(x,W) = Wx + b f(x,W)=Wx+b其中, W W W代表数据的权重值,需要根据经验或者推算的到, x x x代表实际的图像数据值, b b b为偏执参数。同意n*1与1*n的矩阵相乘得到一个1*1的数值,该数值代表了结果更倾向于哪一个种类
    在这里插入图片描述

损失函数

  • 关于损失函数,值越大越不好。最后错误结果减去正确的结果值

在这里插入图片描述

  • 损失函数+正则化,防止过拟合同时约束 W W W的权重参数, λ \lambda λ值越大会导致拟合程度越大,但是过拟合没意义, λ \lambda λ值越小会导致拟合程度不够

在这里插入图片描述

  • 部分流程

在这里插入图片描述

  • S o f t m a x Softmax Softmax分类器,方便得到概率
    • exp表示对数值做 e x e^x ex处理得到全部大于0的数值,并且使得小于零的数值极度小, n o r m a l i z e normalize normalize归一化处理是将每一个得到的数值除以总共的数值和得到对应的概率值 P P P,并且对其进行 l o g log log取对数得到损失函数 L L L,越靠近1的数值损失越小,可以看到间距小。

在这里插入图片描述

  • 梯度下降,反向传播
    • 在机器学习中,我们的目标是最小化损失函数,而损失函数通常是一个多维函数。梯度下降帮助我们找到使得损失函数最小化的模型参数,就像在山上找到最低点一样。

在这里插入图片描述

神经网络架构

  • 神经网络通过输入层接收数据,经过多个隐藏层的加权求和和激活函数处理,最终输出预测结果。在训练过程中,通过反向传播算法计算损失函数对参数的梯度,并利用优化器来更新参数,以不断优化模型的预测能力,使其在测试数据上表现更好。

在这里插入图片描述

卷积神经网络的结构

  • 卷积神经网络(CNN)通过卷积层提取输入数据的特征图,并通过池化层降低特征图的维度,然后通过全连接层进行分类或回归预测。在训练过程中,利用反向传播算法计算损失函数对参数的梯度,并利用优化器更新参数,以不断调整网络的权重和偏置,使其能够更好地学习数据的特征并进行准确的预测。

在这里插入图片描述

卷积过程

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

移动步长
  • 步长越长提取的特征越少越不细致,步长越短提取的特征越多,图像类任务多用步长为1

在这里插入图片描述

边缘填充
  • 经过卷积(矩阵网格计算)可以发现越靠近中间的数据被使用的次数越多,靠近边缘的数据使用次数少,为了使得数据公平在边缘增加填充数据使得边缘数据不边缘增加边缘数据的使用次数。可以弥补边界信息提取不完全的缺陷。零填充

在这里插入图片描述

卷积之后图像的大小计算
  • H1 表示原始的高,FH代表卷积核的高,P为填充的数据列数,S为步长,H2表示卷积之后的高

在这里插入图片描述

卷积参数共享
  • 每一个卷积核需要计算完整个图像的数据

在这里插入图片描述

参数计算
  • 64是图像的种类,卷积核为3*3
  • 只有卷积层和全连接层有参数,即卷积包含的层数也仅仅包含这两个
  • 平化层是为了将三维数据转为一维,方便全链接。
    在这里插入图片描述
池化层(下采样/压缩)

在这里插入图片描述

  • 最大值池化(没有矩阵计算)
    在这里插入图片描述

  • 平均值池化

全连接层
  • 有几种结果就有几列,前面的值是得到的三维结果转换为一列n*1的结果
    在这里插入图片描述
判断卷积神经网络的层数
  • 只看conv和FC的个数即卷积层和全连接层,判定标准是观察该层次是否有参数的计算,有就算作一层

在这里插入图片描述

整体流程
  • 卷积数据增多,池化数据减少,再卷积数据增多,再池化数据减少,转换将三维结果转换为一维结果进行全链接操作
    在这里插入图片描述
残差卷积网络(Resnet)
  • 网络层数的增加,不一定使得最终的效果越好。可能提取的特征并不是好的特征,所以需要将不好的提取结果去掉,保证最后的结果不会随着网络层数的增加变得更差。
  • 如下图所示, x x x为之前的网络层提取的结果,经过两次卷积之后得到 F ( x ) F(x) F(x)为新的结果后,计算加得之前的结果x,可以得到新的结果方案 H ( x ) = F ( x ) + x H(x)=F(x)+x H(x)=Fx+x,这样新的结果经判断经过后两次的结果之后的loss更高,可以将这两次的权重设置为0,不再计算之内,而后面的 x x x保证了之前的结果依然存在,这就是残差网络。可以使得增加网络层数不会比之前更差。

在这里插入图片描述

  • 层数越多,不一定越好,好也不会太多。网络层数一般20差不多了。

在这里插入图片描述

感受野
  • 通过后面得到的一个计算结果,可以感受到前面是一个3*3的一个矩阵得到的,依次向后推,后面的结果可以依次推的前面的是哪个几乘几矩阵得到的。感受野越大越好,感知的数据越多。
  • 通过一个点,可以感受到原始数据的大小。

在这里插入图片描述

  • 不用大的卷积核代替小的多个卷积核,因为这样参数会增多
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值