関数にカプセル化されたCNNコンボリューション(コンボリューション)操作コードの実装

          「実践的な深層学習」を学び、メモを取ります

import numpy as np
def corr2d(X, K):    # 接受输⼊数组X与核数组K,并输出数组Y。
    h, w = K.shape
    Y = np.zeros((X.shape[0] - h + 1, X.shape[1] - w + 1))
    for i in range(Y.shape[0]):
        for j in range(Y.shape[1]):
            Y[i, j] = (X[i: i + h, j: j + w] * K).sum()
    return Y

X = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8]])
K = np.array([[0, 1], [2, 3]])
Y = corr2d(X, K)
print(Y)

          出力

[[19。25。]
[37。43.]]

         デフォルトのストライドが1の場合、
ここに写真の説明を挿入
          これはコードでYのサイズを計算するための理論的基礎でもあります。

おすすめ

転載: blog.csdn.net/qq_43657442/article/details/109067811