用法:
mxnet.ndarray.sparse.Embedding(data=None, weight=None, input_dim=_Null, output_dim=_Null, dtype=_Null, sparse_grad=_Null, out=None, name=None, **kwargs)
- data:(
NDArray
) - 嵌入運算符的輸入數組。 - weight:(
NDArray
) - 嵌入權重矩陣。 - input_dim:(
int
,
required
) - 輸入索引的詞匯量。 - output_dim:(
int
,
required
) - 嵌入向量的維度。 - dtype:(
{'bfloat16'
,
'float16'
,
'float32'
,
'float64'
,
'int32'
,
'int64'
,
'int8'
,
'uint8'}
,
optional
,
default='float32'
) - 重量的數據類型。 - sparse_grad:(
boolean
,
optional
,
default=0
) - 在反向計算中計算行稀疏梯度。如果設置為 True,則 grad 的存儲類型為row_sparse。 - out:(
NDArray
,
optional
) - 輸出 NDArray 來保存結果。
- data:(
out:- 此函數的輸出。
NDArray 或 NDArray 列表
參數:
返回:
返回類型:
將整數索引映射到向量表示(嵌入)。
該運算符將單詞映射到高維空間中的實值向量,稱為單詞嵌入。這些嵌入可以捕獲單詞的語義和句法屬性。例如,已經注意到在學習的嵌入空間中,相似的詞往往彼此靠近,而不同的詞則相距甚遠。
對於形狀為 (d1, ..., dK) 的輸入數組,輸出數組的形狀為 (d1, ..., dK, output_dim)。所有輸入值應為 [0, input_dim) 範圍內的整數。
如果input_dim為ip0,output_dim為op0,則嵌入權重矩陣的形狀必須為(ip0, op0)。
當“sparse_grad” 為 False 時,如果提及的任何索引太大,則將其替換為嵌入矩陣中最後一個向量的索引。當“sparse_grad” 為 True 時,如果發現無效索引將引發錯誤。
例子:
input_dim = 4 output_dim = 5 // Each row in weight matrix y represents a word. So, y = (w0,w1,w2,w3) y = [[ 0., 1., 2., 3., 4.], [ 5., 6., 7., 8., 9.], [ 10., 11., 12., 13., 14.], [ 15., 16., 17., 18., 19.]] // Input array x represents n-grams(2-gram). So, x = [(w1,w3), (w0,w2)] x = [[ 1., 3.], [ 0., 2.]] // Mapped input x to its vector representation y. Embedding(x, y, 4, 5) = [[[ 5., 6., 7., 8., 9.], [ 15., 16., 17., 18., 19.]], [[ 0., 1., 2., 3., 4.], [ 10., 11., 12., 13., 14.]]]
權重的存儲類型可以是row_sparse 或默認值。
注意:
如果“sparse_grad”設置為True,梯度w.r.t權重的存儲類型將是“row_sparse”。隻有一部分優化器支持稀疏梯度,包括 SGD、AdaGrad 和 Adam。請注意,默認情況下延遲更新已打開,其執行方式可能與標準更新不同。有關詳細信息,請在以下位置查看優化 API:https://mxnet.incubator.apache.org/api/python/optimization/optimization.html
相關用法
- Python mxnet.ndarray.sparse.trunc用法及代碼示例
- Python mxnet.ndarray.sparse.row_sparse_array用法及代碼示例
- Python mxnet.ndarray.sparse.broadcast_mul用法及代碼示例
- Python mxnet.ndarray.sparse.rsqrt用法及代碼示例
- Python mxnet.ndarray.sparse.sgd_update用法及代碼示例
- Python mxnet.ndarray.sparse.broadcast_plus用法及代碼示例
- Python mxnet.ndarray.sparse.rint用法及代碼示例
- Python mxnet.ndarray.sparse.RowSparseNDArray用法及代碼示例
- Python mxnet.ndarray.sparse.sign用法及代碼示例
- Python mxnet.ndarray.sparse.concat用法及代碼示例
- Python mxnet.ndarray.sparse.make_loss用法及代碼示例
- Python mxnet.ndarray.sparse.adagrad_update用法及代碼示例
- Python mxnet.ndarray.sparse.exp用法及代碼示例
- Python mxnet.ndarray.sparse.square用法及代碼示例
- Python mxnet.ndarray.sparse.clip用法及代碼示例
- Python mxnet.ndarray.sparse.retain用法及代碼示例
- Python mxnet.ndarray.sparse.round用法及代碼示例
- Python mxnet.ndarray.sparse.zeros_like用法及代碼示例
- Python mxnet.ndarray.sparse.divide用法及代碼示例
- Python mxnet.ndarray.sparse.CSRNDArray用法及代碼示例
注:本文由純淨天空篩選整理自apache.org大神的英文原創作品 mxnet.ndarray.sparse.Embedding。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。