Skip to content

卷积神经网络 CNN

GitHub stars

CNN

CNN 核心数学概念

概念 数学表达式 说明
2D 卷积 \(\((I * K)(i,j) = \sum_{m}\sum_{n} I(m,n)K(i-m,j-n)\)\) \(I\): 输入图像
\(K\): 卷积核
ReLU 激活函数 \(\(f(x) = \max(0,x)\)\) 非线性激活
ReLU 导数 \(\(f'(x) = \begin{cases} 1 & \text{if } x > 0 \\ 0 & \text{if } x \leq 0 \end{cases}\)\) 用于反向传播
最大池化 \(\(y_{ij} = \max_{(a,b)\in R_{ij}} x_{ab}\)\) \(R_{ij}\): 池化区域
全连接层 \(\(y = Wx + b\)\) \(W\): 权重矩阵
\(b\): 偏置向量
交叉熵损失 \(\(L = -\sum_{i} y_i \log(\hat{y}_i)\)\) \(y_i\): 真实标签
\(\hat{y}_i\): 预测概率
梯度计算 \(\(\frac{\partial L}{\partial w} = \frac{\partial L}{\partial y} \cdot \frac{\partial y}{\partial w}\)\) 链式法则
参数更新 \(\(w_{t+1} = w_t - \eta \frac{\partial L}{\partial w_t}\)\) \(\eta\): 学习率
CNN 层表示 \(\(h^{l+1} = f(W^l * h^l + b^l)\)\) \(h^l\): 第 \(l\) 层特征图
\(W^l\): 卷积核
\(b^l\): 偏置

CNN 结构相关计算

计算 公式 参数说明
感受野大小 \(\(r_l = r_{l-1} + (k_l - 1) \prod_{i=1}^{l-1} s_i\)\) \(r_l\): 第 \(l\) 层感受野大小
\(k_l\): 第 \(l\) 层卷积核大小
\(s_i\): 第 \(i\) 层步长
输出特征图大小 \(\(O = \frac{W - K + 2P}{S} + 1\)\) \(O\): 输出大小
\(W\): 输入大小
\(K\): 卷积核大小
\(P\): 填充大小
\(S\): 步长

CNN 层参数数量

层类型 参数数量 说明
卷积层 \(C_{in} \times K_h \times K_w \times C_{out} + C_{out}\) \(C_{in}\): 输入通道数
\(K_h, K_w\): 卷积核高度和宽度
\(C_{out}\): 输出通道数
全连接层 \(N_{in} \times N_{out} + N_{out}\) \(N_{in}\): 输入神经元数
\(N_{out}\): 输出神经元数