如何找到 MXNet 符号中实际保存的数值。
假设我有,
x = mx.sym.Variable('x')y = mx.sym.Variable('y')z = x + y,
如果 x = [100,200] 且 y=[300,400],我想打印:
z = [400,600]
,
有点像 TensorFlow 的 eval() 方法
回答:
经过一番查找,我发现可以这样做:
x = mx.sym.Variable('x')y = mx.sym.Variable('y')z = x + yexecutor = z.bind(mx.cpu(), {'x': mx.nd.array([100,200]), 'y':mx.nd.array([300,400])})output = executor.forward()
这将给你 ‘output’:
[<NDArray 2 @cpu(0)>]
要打印实际的数值输出:
print output[0].asnumpy()array([ 400., 600.], dtype=float32)