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


Python tf.raw_ops.DynamicPartition用法及代碼示例


使用來自 partitions 的索引將 data 劃分為 num_partitions 張量。

用法

tf.raw_ops.DynamicPartition(
    data, partitions, num_partitions, name=None
)

參數

  • data 一個Tensor
  • partitions Tensor 類型為 int32 。任何形狀。 [0, num_partitions) 範圍內的索引。
  • num_partitions int>= 1 。要輸出的分區數。
  • name 操作的名稱(可選)。

返回

  • data 具有相同類型的 num_partitions Tensor 對象的列表。

對於大小為 partitions.ndim 的每個索引元組 js ,切片 data[js, ...] 成為 outputs[partitions[js]] 的一部分。帶有partitions[js] = i的切片按照js的字典順序放置在outputs[i]中,outputs[i]的第一個維度是partitions中的條目數等於i。詳細地,

outputs[i].shape = [sum(partitions == i)] + data.shape[partitions.ndim:]

    outputs[i] = pack([data[js, ...] for js if partitions[js] == i])

data.shape 必須以 partitions.shape 開頭。

例如:

# Scalar partitions.
    partitions = 1
    num_partitions = 2
    data = [10, 20]
    outputs[0] = []  # Empty with shape [0, 2]
    outputs[1] = [[10, 20]]

    # Vector partitions.
    partitions = [0, 0, 1, 1, 0]
    num_partitions = 2
    data = [10, 20, 30, 40, 50]
    outputs[0] = [10, 20, 50]
    outputs[1] = [30, 40]

有關如何合並分區的示例,請參閱dynamic_stitch

相關用法


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