用法:
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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。