TensorFlow函數(shù):tf.sparse_to_indicator

2018-03-14 10:35 更新

tf.sparse_to_indicator函數(shù)

sparse_to_indicator(
    sp_input,
    vocab_size,
    name=None
)

定義在:tensorflow/python/ops/sparse_ops.py.

請參閱指南:稀疏張量>轉(zhuǎn)變

將 ids 的 SparseTensor 轉(zhuǎn)換為稠密的布爾指示器張量.

sp_input.indices 的最后一個(gè)維度將被丟棄,并替換為 sp_input 的值.如果 sp_input.dense_shape = [D0, D1, ..., Dn, K],那么 output.shape = [D0, D1, ..., Dn, vocab_size],其中:

output[d_0, d_1, ..., d_n, sp_input[d_0, d_1, ..., d_n, k]] = True

在 output 的其他地方也是 False.

例如,如果 sp_input.dense_shape = [2, 3, 4] 使用非空值,則:

[0, 0, 0]: 0
[0, 1, 0]: 10
[1, 0, 3]: 103
[1, 1, 2]: 150
[1, 1, 3]: 149
[1, 1, 4]: 150
[1, 2, 1]: 121

并且 vocab_size = 200,那么輸出將是一個(gè) [2, 3, 200] 稠密的值為 False 的 bool 張量,它無處不在,除了以下的位置:

(0, 0, 0), (0, 1, 10), (1, 0, 103), (1, 1, 149), (1, 1, 150),
(1, 2, 121)

請注意,在輸入 SparseTensor 中允許重復(fù).此操作對于將 SparseTensors 轉(zhuǎn)換為密集格式非常有用,以便與期望密集張量的操作符兼容.

輸入 SparseTensor 必須按行優(yōu)先順序排列.

函數(shù)參數(shù):

  • sp_input:具有 int32 或 int64 類型的 values 屬性的 SparseTensor.
  • vocab_size:一個(gè)標(biāo)量 Int64 的張量(或 Python INT),包含最后一個(gè)維度的新的大小,all(0 <= sp_input.values < vocab_size).
  • name:返回張量的名稱前綴(可選).

函數(shù)返回值:

表示具有指定值的索引的稠密布爾指示器張量.

函數(shù)可能拋出的異常:

  • TypeError:如果 sp_input 不是 SparseTensor.
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)