【动手学深度学习】6.2 图像卷积(个人向笔记)

1. 互相关运算

  • 严格来说,卷积层是一个错误的叫法,因为它本质上是互相关运算而不是卷积运算。
  • 我们暂时忽略通道看看二维图像数据和隐藏表示。那么输出大小可以表示为
  • 我们自己实现一个二维互相关运算

2. 卷积层

  • 卷积层中有两个参数:卷积核权重和标量偏置
  • 和之前全连接层一样,在训练基于卷积层的模型时,我们也随机初始化卷积核权重
  • __init__构造函数中,将weightbias声明为两个模型参数,前向传播函数调用corr2d函数并添加偏置

3. 图像中的目标边缘检测

  • 如下是卷积层的一个简单应用:通过找到像素变化的位置,来检测图像中不同颜色的边缘
  • 首先构造一个 6 × 8 6×8 6×8 像素的黑白图像,中间四列为黑色,其余像素为白色
  • 接下来构造一个高度为1,宽度为2的卷积核K。当进行互相关运算时,如果水平相邻的两元素相同,则输出为零,否则输出为非零
  • 现在,我们对参数X(输入)和K(卷积核)执行互相关运算。 如下所示,输出Y中的1代表从白色到黑色的边缘,-1代表从黑色到白色的边缘,其他情况的输出为0

4. 学习卷积核

  • 让我们有更加复杂的需求的时候,那么我们就不可能手动设计滤波器了,那么我们是否可以学习有 X 生成 Y 的卷积核呢?
  • 现在让我们看看是否可以通过仅查看"输入-输出"对来学习由X生成Y的卷积核。 我们先构造一个卷积层,并将其卷积核初始化为随机张量。接下来,在每次迭代中,我们比较Y与卷积层输出的平方误差,然后计算梯度来更新卷积核。为了简单起见,我们在此使用内置的二维卷积层,并忽略偏置
  • 10次迭代后,误差降得已经足够低了,现在再看看我们所学的卷积核的权重张量:可以看到非常接近我们之前定义的卷积核 K

5. 互相关和卷积


6. 特征映射和感受野

  • 下图输出的卷积层有时被称为特征映射,因为它可以被视为一个输入映射到下一层的空间维度的转换器
  • 在卷积神经网络中,对于某一层的任意元素 x,其感受野是指在前向传播期间可能影响 x 计算的所有元素(来自所有先前层)
  • 以下面的输出的第一个元素19为例,其感受野就是输入矩阵的蓝色部分
  • 假设当前的输出为 Y,其大小为 2 × 2 2×2 2×2,我们再在其后面附加一个卷积层,该卷积层以 Y 为输入,输出单个元素 z。那么此时 z 的感受野就是 Y 中的四个元素。而 Y 的感受野就是输入矩阵中的九个元素。
相关推荐
m0_6896182825 分钟前
从海洋生物找灵感:造个机器人RoboPteropod,它能在水下干啥?
笔记·机器人
alpszero28 分钟前
YOLO11解决方案之物体模糊探索
人工智能·python·opencv·计算机视觉·yolo11
vlln35 分钟前
适应性神经树:当深度学习遇上决策树的“生长法则”
人工智能·深度学习·算法·决策树·机器学习
龙湾开发2 小时前
轻量级高性能推理引擎MNN 学习笔记 02.MNN主要API
人工智能·笔记·学习·机器学习·mnn
workflower2 小时前
使用谱聚类将相似度矩阵分为2类
人工智能·深度学习·算法·机器学习·设计模式·软件工程·软件需求
HappyAcmen2 小时前
线代第二章矩阵第八节逆矩阵、解矩阵方程
笔记·学习·线性代数·矩阵
攻城狮7号3 小时前
一文理清人工智能,机器学习,深度学习的概念
人工智能·深度学习·机器学习·ai
小森77673 小时前
(七)深度学习---神经网络原理与实现
人工智能·深度学习·神经网络·算法
码农新猿类4 小时前
初入OpenCV
qt·opencv·计算机视觉
愚润求学4 小时前
【递归、搜索与回溯】专题一:递归(二)
c++·笔记·算法·leetcode