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


Python tf.compat.v1.Variable.scatter_nd_sub用法及代碼示例


用法

scatter_nd_sub(
    indices, updates, name=None
)

參數

  • indices 要在操作中使用的索引。
  • updates 要在操作中使用的值。
  • name 操作的名稱。

返回

  • 更新的變量。

對變量中的單個值或切片應用稀疏減法。

假設變量具有排名 P 並且 indices 是排名 QTensor

indices 必須是整數張量,包含對自身的索引。它必須是形狀 [d_0, ..., d_{Q-2}, K] 其中 0 < K <= P

indices 的最內維度(長度為 K )對應於沿著 self 的第 K 維度的元素(如果是 K = P )或切片(如果是 K < P )的索引。

updates 是等級為 Q-1+P-KTensor,形狀:

[d_0, ..., d_{Q-2}, self.shape[K], ..., self.shape[P-1]].

例如,假設我們要將 4 個分散的元素添加到 rank-1 張量到 8 個元素。在 Python 中,該更新將如下所示:

v = tf.Variable([1, 2, 3, 4, 5, 6, 7, 8])
    indices = tf.constant([[4], [3], [1] ,[7]])
    updates = tf.constant([9, 10, 11, 12])
    v.scatter_nd_sub(indices, updates)
    print(v)

更新後v 將如下所示:

[1, -9, 3, -6, -4, 6, 7, -4]

有關如何更新切片的更多詳細信息,請參閱tf.scatter_nd

相關用法


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