从0开始学习计算机视觉--Day08--卷积神经网络

之前我们提到,神经网络是通过全连接层对输入做降维处理,将输入的向量通过矩阵和激活函数进行降维,在神经元上输出激活值。而卷积神经网络中,用卷积层代替了全连接层。

不同的是,这里的输入不再需要降维,而是可以保留输入的空间结构,例如输入的是32×32×3的图片,在全连接层中是3072×1的向量,而卷积层里则保持不变。这里的改变的地方是对于同样的WX的函数形式,这里是把5×5×3的权重矩阵(也叫卷积核)向量化了,从而做的是向量点积运算(可以看到权重矩阵的写法与图片的数据量写法类似,这是为了更好地理解为什么选择这个数量,可以把输入和权重矩阵看成是放缩的一个过程,权重矩阵由于空间结构类似,相当于是保留了图片原有的一部分性质,在数学角度上是因为向量的点积与两个向量的夹角有关,夹角越小,向量越相似,这也与卷积层的初衷相符,是为了尽可能地保留输入的信息不缺失)。

而在卷积层中,卷积核会遍历输入的每一个数据量(假如卷积网络的层数只有一层,边缘的数据点相比其他区域,只会被遍历一次,一般会用pading或增加权重的方式来使其不那么特殊),每次滑动都输出一个点积,输出的数据大小一般是输入减去卷积核除以步长再加1(之所以要加1,是因为单纯的减法会漏掉矩阵的第一列或最后一列,而步长的选择我们一般会选择除得尽的,不然会导致有部分边缘数据被忽略,当然硬要计算也可以,习惯上是对结果向下取整)。

在例子中,一个卷积核的激活衍射是28×28×1,假如我们有六个卷积核,输出的就是28×28×6。这里的每一层激活衍射,对应的就是我们平时所提到的提取出来的每一个特征,不同的卷积核会提取出不同的特征,且我们可以在这些激活衍射之后再设置一些函数来卷化,生成一些不一样的特征供模型学习(本质上还是卷积核在学习,然后输出值给模型应用)。一般来说。越往后排的衍射值,对应的是更高级的特征。比如假如输入的是一张小狗的照片,那么一开始的可能是颜色的特征,中间的是小狗身上的斑点,后面的是小狗的神态。

学习来自斯坦福教程:Stanford University CS231n: Deep Learning for Computer Vision

相关推荐
兵慌码乱4 天前
基于 MediaPipe 与 PySide2 的手势交互音乐控制系统实现:轻量化视觉交互全流程解析
python·opencv·计算机视觉·人机交互·手势识别·mediapipe·pyside2
小小杨树7 天前
读懂色彩:拍照调色不再难
算法·计算机视觉·配色
通信小呆呆8 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick8 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee8 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
计算机科研狗@OUC8 天前
(cvpr26) AIMDepth: Asymmetric Image-Event Mamba for Monocular Depth Estimation
人工智能·深度学习·计算机视觉
Alsn868 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e8 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨9 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙