【发布时间】:2019-08-30 04:40:23
【问题描述】:
我正在使用 MXnet 制作简单的 NN,但在 step() 方法中遇到了一些问题
x1.shape=(64, 1, 1000)
y1.shape=(64, 1, 10)
net =nm.Sequential()
net.add(nn.Dense(H,activation='relu'),nn.Dense(90,activation='relu'),nn.Dense(D_out))
for t in range(500):
#y_pred = net(x1)
#loss = loss_fn(y_pred, y)
#for i in range(len(x1)):
with autograd.record():
output=net(x1)
loss =loss_fn(output,y1)
loss.backward()
trainer.step(64)
if t % 100 == 99:
print(t, loss)
#optimizer.zero_grad()
用户警告:参数
dense30_weight在上下文 cpu(0) 上的梯度 自从上次step以来一直没有被向后更新。这可能意味着 模型中的错误使其仅使用参数的子集 (块)用于此迭代。如果您故意只使用 子集,使用 ignore_stale_grad=True 调用步骤来抑制此警告 并跳过具有陈旧梯度的参数更新
【问题讨论】:
-
欢迎来到 StackOverflow。请按照您创建此帐户时的建议阅读并遵循帮助文档中的发布指南。 Minimal, complete, verifiable example 适用于此。在您发布 MCVE 代码并准确说明问题之前,我们无法有效地帮助您。我们应该能够将您发布的代码粘贴到文本文件中并重现您指定的问题。您的代码不是 MCVE,并且您没有指定问题。
标签: machine-learning neural-network deep-learning mxnet gluon