當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python mxnet.ndarray.op.slice_like用法及代碼示例


用法:

mxnet.ndarray.op.slice_like(data=None, shape_like=None, axes=_Null, out=None, name=None, **kwargs)

參數

  • data(NDArray) - 源輸入
  • shape_like(NDArray) - 形狀像輸入
  • axes(Shape(tuple), optional, default=[]) - 根據第二個輸入的相應大小對輸入數據進行切片的軸列表。默認情況下將在所有軸上切片。支持負軸。
  • out(NDArray, optional) - 輸出 NDArray 來保存結果。

返回

out- 此函數的輸出。

返回類型

NDArray 或 NDArray 列表

像另一個數組的形狀一樣對數組的一個區域進行切片。此函數類似於 slice ,但是,從第二個輸入 shape_like 推斷特定軸的 begin 始終為 0`s and `end 。給定 shape=(d_0, d_1, ..., d_n-1) 的第二個 shape_like 輸入,一個默認為空 axesslice_like 運算符,它執行以下操作: `` out = slice(input, begin=(0, 0, ..., 0),結束=(d_0,d_1,...,d_n-1))``。當axes 不為空時,它用於指定正在切片的軸。給定一個 4 維輸入數據,帶有 axes=(0, 2, -1)slice_like 運算符將執行以下操作: ``out = slice(input, begin=(0, 0, 0, 0), end=(d_0, None, d_2 , d_3))``。請注意,允許具有不同尺寸的第一個和第二個輸入,但是,您必須確保指定 axes 並且不超過尺寸限製。例如,給定 input_1shape=(2,3,4,5)input_2shape=(1,2,3) ,不允許使用:``out = slice_like(a, b)`` 因為 input_1 的 ndim 是 4,並且 input_2 的 ndim 為 3。在這種情況下允許以下內容:``out = slice_like(a, b, axes=(0, 2))`` 示例:

x = [[  1.,   2.,   3.,   4.],
     [  5.,   6.,   7.,   8.],
     [  9.,  10.,  11.,  12.]]
y = [[  0.,   0.,   0.],
     [  0.,   0.,   0.]]
slice_like(x, y) = [[ 1.,  2.,  3.]
                    [ 5.,  6.,  7.]]
slice_like(x, y, axes=(0, 1)) = [[ 1.,  2.,  3.]
                                 [ 5.,  6.,  7.]]
slice_like(x, y, axes=(0)) = [[ 1.,  2.,  3.,  4.]
                              [ 5.,  6.,  7.,  8.]]
slice_like(x, y, axes=(-1)) = [[  1.,   2.,   3.]
                               [  5.,   6.,   7.]
                               [  9.,  10.,  11.]]

相關用法


注:本文由純淨天空篩選整理自apache.org大神的英文原創作品 mxnet.ndarray.op.slice_like。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。