深度学习中,pad的理解,numpy库中np.pad()一次讲解,终身难忘。

只需要记住注释部分的总结规律即可,以后便可以很快举一反三

import numpy as np
input_data = np.array(
            [[[[1, 2, 3],
            [4, 5, 6],
            [7, 8, 9]]]])

# pad = 0
print(np.pad(input_data, [(0, 0), (0, 0), (1, 2), (3, 1)], 'constant')) # (1, 2): 上面是1排0,下面是2排0. (3, 1) 左边是3排0,右边是1排0

# 输出 """ [[[[0 0 0 0 0 0 0] [0 0 0 1 2 3 0] [0 0 0 4 5 6 0] [0 0 0 7 8 9 0] [0 0 0 0 0 0 0] [0 0 0 0 0 0 0]]]] """

[batch_size, channel_size, height, width]  ---> [(0, 0,), (0, 0), (1, 2), (3, 1)] 

重点关注的是(1, 2), (3, 1), 因为前两个参数一般是没人去padding的

理解方式就只需要记住注释部分的描述即可,之后多看几次不同参数,

和对应输出结果,观察之间的映射便可秒懂。

 

posted @ 2025-05-14 19:55  AlphaGeek  阅读(30)  评论(0)    收藏  举报