CNN、ResNet学习笔记

简介: CNN、ResNet学习笔记

学习链接:

卷积神经网络(CNN)详解 - 知乎

1. 卷积神经网络结构介绍如果用全连接神经网络处理大尺寸图像具有三个明显的缺点: (1)首先将图像展开为向量会丢失空间信息; (2)其次参数过多效率低下,训练困难; (3)同时大量的参数也很快会导致网络过拟…

https://zhuanlan.zhihu.com/p/47184529

一文看懂卷积神经网络-CNN(基本原理+独特价值+实际应用)- 产品经理的人工智能学习库 (easyai.tech)

https://easyai.tech/ai-definition/cnn/

CNN笔记:通俗理解卷积神经网络_v_JULY_v的博客-CSDN博客_cnn卷积神经网络

https://blog.csdn.net/v_JULY_v/article/details/51812459

【什么是CNN?】浙大大佬教你怎么卷CNN,卷积神经网络CNN从入门到实战,通俗易懂草履虫听了都点头(人工智能、深度学习、机器学习、计算机视觉)_哔哩哔哩_bilibili

https://www.bilibili.com/video/BV1zF411V7xu?p=1&vd_source=cb9a5b44dbe37f5ca1c843ebd86d44f8


一、CNN(卷积神经网络)


卷积神经网络百度百科

https://baike.baidu.com/item/%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C


cdc4feab28564d63cf42e7f7d1e17d6f_372d9704f5244a07b67111c84cd7079f.png

典型的 CNN 由3个部分构成:

  1. 卷积层
  2. 池化层
  3. 全连接层


如果简单来描述的话:

卷积层负责提取图像中的局部特征;池化层用来大幅降低参数量级(降维);全连接层类似传统神经网络的部分,用来输出想要的结果。


二、何为卷积层和池化层?


卷积层(Convolutional layer)


卷积神经网络中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过反向传播算法最佳化得到的。卷积运算的目的是提取输入的不同特征,第一层卷积层可能只能提取一些低级的特征如边缘、线条和角等层级,更多层的网路能从低级特征中迭代提取更复杂的特征。


池化层(Pooling Layer)


池化(Pooling)是卷积神经网络中另一个重要的概念,它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效地原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的卷积层之间都会周期性地插入池化层。


池化层通常会分别作用于每个输入的特征并减小其大小。最常用形式的池化层是每隔2个元素从图像划分出2*2的区块,然后对每个区块中的4个数取最大值。这将会减少75%的数据量。


除了最大池化之外,池化层也可以使用其他池化函数,例如“平均池化”甚至“L2-范数池化”等。过去,平均池化的使用曾经较为广泛,但是最近由于最大池化在实践中的表现更好,平均池化已经不太常用。


由于池化层过快地减少了数据的大小,文献中的趋势是使用较小的池化滤镜,甚至不再使用池化层。


卷积层作用总结


  • 提取图像的特征,并且卷积核的权重是可以学习的,由此可以猜测,在高层神经网络中,卷积操作能突破传统滤波器的限制,根据目标函数提取出想要的特征
  • “局部感知,参数共享”的特点大大降低了网络参数,保证了网络的稀疏性,防止过拟合,之所以可以“参数共享”,是因为样本存在局部相关的特性。

池化层作用总结


1.特征不变性(feature invariant)

       汇合操作使模型更关注是否存在某些特征而不是特征具体的位置可看作是一种很强的先验,使特征学习包含某种程度自由度,能容忍一些特征微小的位移


2.特征降维

       由于汇合操作的降采样作用,汇合结果中的一个元素对应于原输入数据的一个子区域(sub-region),因此汇合相当于在空间范围内做了维度约减(spatially dimension reduction),从而使模型可以抽取更广范围的特征同时减小了下一层输入大小,进而减小计算量和参数个数


3. 在一定程度上能防止过拟合的发生


三、激活函数作用


激活函数是神经网络模型重要的组成部分


激活函数(Activation Function)是一种添加到人工神经网络中的函数,旨在帮助网络学习数据中的复杂模式。类似于人类大脑中基于神经元的模型,激活函数最终决定了要发射给下一个神经元的内容。


在人工神经网络中,一个节点的激活函数定义了该节点在给定的输入或输入集合下的输出。标准的计算机芯片电路可以看作是根据输入得到开(1)或关(0)输出的数字电路激活函数。因此,激活函数是确定神经网络输出的数学方程式


深度学习十大常用激活函数讲解:https://finance.sina.com.cn/tech/2021-02-24/doc-ikftssap8455930.shtml

(后续专门写一篇深度学习领域常用激活函数)


四、使用AI Studio使用CNN实现猫狗分类


步骤

aa0dd288788b23b84c3fadbec249d08e_9c41b51d92404ed283da44006ffefb05.png


训练模型


b9bada7cfe88aef5b24beb0ffddc440a_60a2ad1b9659480f8a2835cf525f956e.png


预测结果


9047f3506890bc4520e76b55d9434362_cab55ed87f79499d993edd0bb7057409.png


目录
相关文章
|
机器学习/深度学习 算法 计算机视觉
经典神经网络论文超详细解读(五)——ResNet(残差网络)学习笔记(翻译+精读+代码复现)
经典神经网络论文超详细解读(五)——ResNet(残差网络)学习笔记(翻译+精读+代码复现)
3669 1
经典神经网络论文超详细解读(五)——ResNet(残差网络)学习笔记(翻译+精读+代码复现)
|
6月前
|
机器学习/深度学习 并行计算 算法
【计算机视觉+CNN】keras+ResNet残差网络实现图像识别分类实战(附源码和数据集 超详细)
【计算机视觉+CNN】keras+ResNet残差网络实现图像识别分类实战(附源码和数据集 超详细)
186 0
|
机器学习/深度学习 算法 数据挖掘
CV学习笔记-卷积神经网络
CV学习笔记-卷积神经网络
255 0
CV学习笔记-卷积神经网络
|
机器学习/深度学习 算法 数据可视化
Sparse R-CNN升级版 | Dynamic Sparse R-CNN使用ResNet50也能达到47.2AP(二)
Sparse R-CNN升级版 | Dynamic Sparse R-CNN使用ResNet50也能达到47.2AP(二)
101 0
|
机器学习/深度学习 算法 计算机视觉
Sparse R-CNN升级版 | Dynamic Sparse R-CNN使用ResNet50也能达到47.2AP(一)
Sparse R-CNN升级版 | Dynamic Sparse R-CNN使用ResNet50也能达到47.2AP(一)
88 0
|
机器学习/深度学习 算法 数据可视化
计算机视觉论文速递(四)Dynamic Sparse R-CNN:Sparse R-CNN升级版,使用ResNet50也能达到47.2AP
 首先,Sparse R-CNN采用一对一标签分配方案,其中匈牙利算法对每个Ground truth只匹配一个正样本。这种一对一标签分配对于学习到的proposal boxes和Ground truth之间的匹配可能不是最佳的。为了解决这一问题,作者提出了基于最优传输算法的动态标签分配(DLA),在Sparse R-CNN的迭代训练阶段分配递增的正样本。随着后续阶段产生精度更高的精细化proposal boxes,在后续阶段对匹配进行约束,使其逐渐松散。
145 0
|
机器学习/深度学习 PyTorch TensorFlow
迁移学习篇之如何迁移经典CNN网络-附迁移学习Alexnet,VGG,Googlenet,Resnet详细代码注释和方法-pytorch
迁移学习篇之如何迁移经典CNN网络-附迁移学习Alexnet,VGG,Googlenet,Resnet详细代码注释和方法-pytorch
迁移学习篇之如何迁移经典CNN网络-附迁移学习Alexnet,VGG,Googlenet,Resnet详细代码注释和方法-pytorch
|
机器学习/深度学习 传感器 并行计算
CV学习笔记-CNN-VGG
CV学习笔记-CNN-VGG
122 0
CV学习笔记-CNN-VGG
|
机器学习/深度学习 数据可视化
CNN模型合集 | Resnet变种-WideResnet解读
CNN模型合集 | Resnet变种-WideResnet解读
CNN模型合集 | Resnet变种-WideResnet解读
|
机器学习/深度学习 算法 算法框架/工具
R-CNN:Faster R-CNN 模型学习笔记
R-CNN 系列模型是目标检测里的经典模型,同时也是 Caffe 的经典模型,所以为了学习 Caffe 和目标检测算法的知识,通过观看论文、网上的资料以及试着用自己的数据训练一个 Faster R-CNN 后,对于 Faster R-CNN 有了初步的了解,在此把论文内容和自己的理解整理并写下来。
176 0

相关实验场景

更多
下一篇
无影云桌面