DL_9——池化层

1 池化层

  • 卷积层对位置敏感,因此需要池化层来提供一定程度的平移不变性

1.1 最大池化层

  • 每个窗口中最强的模式信号

1.2 平均池化层

  • 将最大池化中的 “最大” 操作替换为 “平均”

1.3 填充、步幅、多通道

  • 池化层与卷积层类似,都具有填充和步幅
  • 没有可学习的参数
  • 在每个输入通道应用池化层以获得相应的输出通道
  • 输出通道数 = 输入通道数

1.4 总结

  • 池化层返回窗口中最大或平均值
  • 缓解卷积层对位置的敏感性
  • 同样有窗口大小、填充步幅作为超参数

1.5 实现

def pool2d(X, pool_size, mode='max'):
    p_h, p_w = pool_size
    Y = torch.zeros((X.shape[0] - p_h + 1, X.shape[1] - p_w + 1))
    for i in range(Y.shape[0]):
        for j in range(Y.shape[1]):
            if mode == 'max':
                Y[i, j] = X[i: i + p_h, j: j + p_w].max()
            elif mode == 'avg':
                Y[i, j] = X[i: i + p_h, j: j + p_w].mean()
    return Y

猜你喜欢

转载自blog.csdn.net/CesareBorgia/article/details/120317647