标签:single line 结构 重要 代码 code 根据 padding rom
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])
标签:single line 结构 重要 代码 code 根据 padding rom
原文地址:https://www.cnblogs.com/megachen/p/10606617.html