卷积神经网络(CNN)的原理与实现
1. CNN 设计基础
在设计 CNN 时,首先要确定网络的层数以及每层中的滤波器数量。以识别矩形、三角形和圆形三种形状为例,目标是构建一个 CNN,当检测到矩形时输出 1,否则输出 0。
每种形状用 4×4 的矩阵表示,其中 1 代表白色像素,0 代表黑色像素。卷积层用于探究目标形状的结构特征。矩形与三角形和圆形相比,其特殊之处在于有四条边,两条垂直边和两条水平边。
为了让卷积层识别这些边,可以利用梯度来实现。第一层使用两个 3×3 的滤波器,一个用于检测水平边,另一个用于检测垂直边。
| 滤波器类型 | 3×3 矩阵表示 |
|---|---|
| 水平边滤波器 | $\begin{bmatrix} 1 & 1 & 1 \ 0 & 0 & 0 \ -1 & -1 & -1 \end{bmatrix}$ |
| 垂直边滤波器 | $\begin{bmatrix} -1 & 0 & 1 \ -1 & 0 & 1 \ -1 & 0 & 1 \end{bmatrix}$ |
应用这些滤波器后,卷积层能够识别矩形中的水平和垂直边,也能识别三角形底部的水平边,但圆形中没有边。由于使用了两个滤波器,第一层卷积层会产生两个输出。 </
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



