【发布时间】:2019-07-05 14:09:30
【问题描述】:
让我们从在 MXNet Gluon 中创建一个非常基本的深度神经网络开始(灵感来自 this tutorial):
import mxnet as mx
from mxnet import gluon
ctx = mx.cpu()
net = gluon.nn.Sequential()
with net.name_scope():
net.add(gluon.nn.Conv2D(channels=20, kernel_size=5, activation='relu'))
net.add(gluon.nn.MaxPool2D(pool_size=2, strides=2))
现在,如果我们想打印出图层的尺寸,我们所要做的就是......
print(net[0])
# prints: Conv2D(None -> 20, kernel_size=(5, 5), stride=(1, 1), Activation(relu))
print(net[1])
# prints: MaxPool2D(size=(2, 2), stride=(2, 2), padding=(0, 0), ceil_mode=False)
但是,如果我们想要以编程方式检查padding 的net[1],而不是将其打印出来,该怎么办?
- 当我尝试
net[1].padding时,我收到错误AttributeError: 'MaxPool2D' object has no attribute 'padding'。 - 当我尝试
net[1]['padding']时,我收到错误TypeError: 'MaxPool2D' object is not subscriptable。
那么,在 MXNet Gluon 中以编程方式访问神经网络层维度的正确方法是什么?
【问题讨论】:
标签: python neural-network mxnet