from mxnet import gluon, init, np, npx
from mxnet.gluon import nn
from d2l import mxnet as d2l
npx.set_np()
batch_size = 64
train_iter, test_iter, vocab = d2l.load_data_imdb(batch_size)
一维卷积
在一维情况下,卷积窗口在输入张量上从左向右滑动。在滑动期间,卷积窗口中某个位置包含的输入子张量(例如,图中的0和1)和核张量(例如, 图中的1和2)按元素相乘。这些乘法的总和在输出张量的相应位置给出单个标量值(例如, 图中的0×1+1×2=2)。
下面的corr1d函数中实现了一维互相关。给定输入张量X和核张量K,它返回输出张量Y。
def corr1d(X, K):
w = K.shape[0]
Y = np.zeros((X.shape[0] - w + 1))
for i in range(Y.shape[0]):
Y[i] = (X[i: i + w] * K).sum()
return Y
我们可以从上图中构造输入张量X和核张量K来验证上述一维互相关实现的输出。
X, K =