zero_pad: 使用0填充原始图像, 在水平方向与垂直方向添加paddingconv_single: 使用一个过滤器\(W\)对原始图像中的slice进行卷积conv_forward: 卷积的前向传播
zero_pad函数为\(A_{prev}\)添加padding, 使用\(int()\)是为了向下取整由于卷积比较复杂, 这里不适用矩阵的计算, 而是采用多个嵌套的for循环
```py
pool_forward: 池化层的前向传播
同样不使用矩阵计算, 使用多个for循环迭代, 这样简单
```py
compute_cost: 计算损失函数\(J\)conv_backward:
计算dA, dW和db
```py
pool_backward:
conv_backward类似
for i in range(m):
    a_prev = A_prev[i, :, :, :]
    for h in range(n_h):
        for w in range(n_w):
            for c in range(n_C):
                vert_start = h * stride
                vert_end = vert_start + f
                horiz_start = w * stride
                horiz_end = horiz_start + f
                a_slice = a_prev[vert_start:vert_end, horiz_start:horiz_end, c]
                mask = create_mask_from_window(a_slice)
                dA_prev[i, vert_start: vert_end, horiz_start: horiz_end, c] += np.multiply(mask, dA[i,h,w,c])原文:https://www.cnblogs.com/megachen/p/10606617.html