用法:
mxnet.util.set_np(shape=True, array=True)
- shape:(
bool
) - 一个布尔值,指示是否应该打开或关闭 NumPy-shape 语义。当此标志设置为True
, zero-size 和 zero-dim 形状都是形状推断过程中的有效形状,而不是在传统模式下被视为未知形状。 - array:(
bool
) - 一个布尔值,指示是否应该打开或关闭 NumPy-array 语义。当此标志设置为True
,它使 Gluon 代码流能够使用或生成mxnet.numpy.ndarray`s instead of `mxnet.ndarray.NDArray
.例如,一个Block
将创建类型的参数mxnet.numpy.ndarray
.
- shape:(
参数:
同时设置NumPy 形状和数组语义。在激活NumPy 数组语义时,需要保持NumPy 形状语义处于活动状态。不允许在 NumPy 数组语义仍处于活动状态时停用 NumPy 形状语义。强烈建议同时将这两个标志设置为
True
,以完全启用NumPy-like 行为。请参阅示例部分以获得更好的理解。例子:
>>> import mxnet as mx
在传统模式下创建 zero-dim ndarray 会在形状推断时失败。
>>> mx.nd.ones(shape=()) mxnet.base.MXNetError: Operator _ones inferring shapes failed.
>>> mx.nd.ones(shape=(2, 0, 3)) mxnet.base.MXNetError: Operator _ones inferring shapes failed.
在旧模式下,Gluon 层将创建类型为
mx.nd.NDArray
的参数和输出。>>> from mxnet.gluon import nn >>> dense = nn.Dense(2) >>> dense.initialize() >>> dense(mx.nd.ones(shape=(3, 2))) [[0.01983214 0.07832371] [0.01983214 0.07832371] [0.01983214 0.07832371]] <NDArray 3x2 @cpu(0)>
>>> [p.data() for p in dense.collect_params().values()] [ [[0.0068339 0.01299825] [0.0301265 0.04819721]] <NDArray 2x2 @cpu(0)>, [0. 0.] <NDArray 2 @cpu(0)>]
当
shape
标志为True
时,两个形状推断都成功。>>> from mxnet import np, npx >>> npx.set_np() # this is required to activate NumPy-like behaviors
>>> np.ones(shape=()) array(1.) >>> np.ones(shape=(2, 0, 3)) array([], shape=(2, 0, 3))
当
array
标志为True
时,Gluon 层将创建mx.np.ndarray
类型的参数和输出。>>> dense = nn.Dense(2) >>> dense.initialize() >>> dense(np.ones(shape=(3, 2))) array([[0.01983214, 0.07832371], [0.01983214, 0.07832371], [0.01983214, 0.07832371]])
>>> [p.data() for p in dense.collect_params().values()] [array([[0.0068339 , 0.01299825], [0.0301265 , 0.04819721]]), array([0., 0.])]
相关用法
- Python mxnet.util.set_np_shape用法及代码示例
- Python mxnet.util.set_module用法及代码示例
- Python mxnet.util.is_np_shape用法及代码示例
- Python mxnet.symbol.op.broadcast_logical_xor用法及代码示例
- Python mxnet.test_utils.get_zip_data用法及代码示例
- Python mxnet.ndarray.op.uniform用法及代码示例
- Python mxnet.symbol.op.log_softmax用法及代码示例
- Python mxnet.symbol.space_to_depth用法及代码示例
- Python mxnet.ndarray.op.sample_negative_binomial用法及代码示例
- Python mxnet.ndarray.NDArray.ndim用法及代码示例
- Python mxnet.module.BaseModule.get_outputs用法及代码示例
- Python mxnet.module.BaseModule.forward用法及代码示例
- Python mxnet.symbol.random_pdf_poisson用法及代码示例
- Python mxnet.ndarray.op.khatri_rao用法及代码示例
- Python mxnet.ndarray.op.unravel_index用法及代码示例
- Python mxnet.symbol.argmin用法及代码示例
- Python mxnet.symbol.linalg_potrf用法及代码示例
- Python mxnet.ndarray.contrib.group_adagrad_update用法及代码示例
- Python mxnet.optimizer.AdaDelta用法及代码示例
- Python mxnet.symbol.contrib.dgl_graph_compact用法及代码示例
注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 mxnet.util.set_np。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。