卷积

卷积(convolution)是一种”同一组小权重在所有位置滑动的加权和”运算;convolutional network(卷积神经网络,CNN)就是以卷积层为核心构件的网络,主要用于图像等规则网格(regular grid)数据。词源为拉丁语 convolvere:con-(一起)+ volvere(卷绕)→ “卷在一起”;中文”卷积”是直译——卷=翻转缠绕,积=逐点乘加求和。

数学定义与 ML 的”将错就错”

经典卷积 :把一个函数翻转、平移,与另一个逐点相乘再积分。UDL 10.2.1 脚注指出:机器学习里实际计算不翻转权重——严格说是 cross-correlation(互相关)而非 convolution,但这个”(incorrect) definition is the usual convention in machine learning”,名字将错就错沿用至今。理解 ML 语境下的 convolutional,不应从”翻转”这个字面动作入手。

ML 中的实际操作

UDL 定义(§10.2.1):每个输出 = 邻近输入的加权和,同一组权重(kernel / filter,卷积核/滤波器)在所有位置复用;窗口大小为 kernel size。可想象一个”探测模板”(如边缘检测器)在数据上逐位置滑动,输出各处的匹配程度。配套超参(§10.2.2–10.2.5):

  • stride:每隔几个位置评估一次(stride=2 输出约减半)
  • padding:边界补零 / 环形 / 反射,或丢弃越界输出(valid convolution)
  • dilation:权重间插零(à trous),用更少权重覆盖更大输入范围
  • channels:多个 kernel 并行,各产生一张输出图

为什么值得专门一层架构:三个性质

  1. 局部连接:每个输出只看邻近输入(对比 fully connected 层每位置独立全连接权重)。
  2. 权重共享:同一组权重处处复用,隐含假设”输入统计特性处处相同”(§20:CNN 为 regular grid 数据设计,“share parameters across position”)。图像平移不变、局部模式可复用,正合此假设。
  3. 平移等变(translation equivariance):输入平移,输出同样平移——猫换个位置,“猫特征”跟着挪而不消失(§10.1);再配合 max pooling 等下采样可得近似平移不变性。

来源与相关页面