DynamicPartition

public final class DynamicPartition

Particiona `dados` em tensores` num_partitions` usando índices de `partições`.

Para cada tupla de índice `js` de tamanho` partitions.ndim`, a fatia `dados [js, ...]` torna-se parte de `saídas [partições [js]]`. As fatias com `partições [js] = i` são colocadas em` saídas [i] `na ordem lexicográfica de` js`, e a primeira dimensão das `saídas [i]` é o número de entradas em `partições` igual a `i`. Em detalhes,

outputs[i].shape = [sum(partitions == i)] + data.shape[partitions.ndim:]
 
     outputs[i] = pack([data[js, ...] for js if partitions[js] == i])
 
`data.shape` deve começar com` partitions.shape`.

Por exemplo:

# 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]
 
Veja `dynamic_stitch` para um exemplo de como unir partições de volta.

Métodos Públicos

static <T> DynamicPartition <T>
criar ( Scope escopo, Operando <T> de dados, Operando <inteiro> divisórias, Longo numPartitions)
Método de fábrica para criar uma classe que envolve uma nova operação DynamicPartition.
Iterador < Operando <T>>
Listar < Output <T>>
saídas ()

Métodos herdados

Métodos Públicos

public static DynamicPartition <T> create ( Scope escopo, Operando <T> de dados, operando <Integer> partições, Long numPartitions)

Método de fábrica para criar uma classe que envolve uma nova operação DynamicPartition.

Parâmetros
alcance escopo atual
partições Qualquer forma. Índices no intervalo `[0, num_partitions)`.
numPartitions O número de partições para saída.
Devoluções
  • uma nova instância de DynamicPartition

Iterador público < Operando <T>> iterador ()

Listar publicamente < Output <T>> outputs ()