2 / 24 · 概念
卷积与互相关
输入窗口 [1,2;4,5] 与卷积核 [1,0;0,-1] 的互相关结果和反转卷积核后的结果分别是多少?
课时内容可免费阅读,选课后可保存学习进度。
明确卷积核方向
神经网络卷积通常使用互相关:将存储的卷积核直接与输入窗口配对,不反转它。数学卷积会反转卷积核。索引方程比算子名称更有用。对称卷积核可能掩盖方向错误,因此验证应从非对称值开始。
对于单通道、单位步幅、无填充且无膨胀的情况,使用:
这里 h,w 定位输出,r,s 定位卷积核元素。两个卷积核索引都不反转。
计算示例
使用输入窗口 [1,2;4,5] 和卷积核 [1,2;3,4]。互相关得到 1×1+2×2+4×3+5×4=37。沿两个轴反转卷积核后得到 [4,3;2,1],结果为 4+6+8+5=23。加入偏置二后分别得到 39 和 25。设计规格决定采用哪一种操作。
把输入扩展为 [1,2,3;4,5,6;7,8,9]。原卷积核得到 [37,47;67,77]。右上窗口为 [2,3;5,6],其乘积之和为 2+6+15+24=47。移动窗口改变的是输入坐标,绝不改变已存储权重的顺序。负权重遵循相同索引规则。例如,[1,0,-1] 明确表示左侧样本减去右侧样本。
多通道情况下,将每个通道的窗口累加到同一个输出元素。每个输出通道都有自己的一组卷积核和一个偏置。通道是归约索引,而不是窗口滑动所经过的空间位置。分组卷积限制这些连接,需要明确的分组映射。
记录输入窗口、卷积核顺序、部分乘积和偏置。过于规则的测试数据中,仅检查最终数组可能漏掉相互抵消的索引错误。此处的非对称示例可以降低这种风险。可对照 ONNX Conv 官方文档核对张量和权重约定;本课的数值测试数据独立构建。
自己试试
输入窗口 [1,2;4,5] 与卷积核 [1,0;0,-1] 的互相关结果和反转卷积核后的结果分别是多少?
阅读解释
互相关为 1−5=−4。反转后的卷积核 [−1,0;0,1] 得到 −1+5=4。这个测试数据通过符号变化暴露方向问题。