Deep learning 在MXNet中使用高级API时,如何向网络中输入额外数据

Deep learning 在MXNet中使用高级API时,如何向网络中输入额外数据,deep-learning,mxnet,Deep Learning,Mxnet,我正在研究MXNet框架,我需要在每次迭代期间向网络输入一个矩阵。矩阵存储在外部存储器中,它不是训练数据,在每次迭代结束时由网络输出更新。在迭代过程中,矩阵必须输入到网络中 如果我使用高级API,即 model=mx.mod.mod.Module(context=ctx,symbol=sym) ... ... 模型拟合(训练数据,开始历元=开始历元, end_epoch=end_epoch,…) 这可以实现吗?model.fit()不提供您想要的功能。然而,您想要在ApacheMXnet的Glu

我正在研究MXNet框架,我需要在每次迭代期间向网络输入一个矩阵。矩阵存储在外部存储器中,它不是训练数据,在每次迭代结束时由网络输出更新。在迭代过程中,矩阵必须输入到网络中

如果我使用高级API,即

model=mx.mod.mod.Module(context=ctx,symbol=sym)
... ...
模型拟合(训练数据,开始历元=开始历元,
end_epoch=end_epoch,…)

这可以实现吗?

model.fit()
不提供您想要的功能。然而,您想要在ApacheMXnet的Gluon API中实现的是非常容易的。使用Gluon API,您可以为训练循环编写7行代码,而不是使用单个
model.fit()
。这是一个典型的训练循环代码:

for epoch in range(10):
    for data, label in train_data:
        # forward + backward
        with autograd.record():
            output = net(data)
            loss = softmax_cross_entropy(output, label)
        loss.backward()
        trainer.step(batch_size)  # update parameters
因此,如果您想将网络的输出反馈回输入,您可以轻松实现这一点。要开始使用胶子,我建议使用。要成为Gluon方面的专家,我推荐这本书以及MXNet主网站上的一整套教程: