SpaceToBatch

SpaceToBatch classe final pública

SpaceToBatch para tensores 4-D do tipo T.

Esta é uma versão legada do SpaceToBatchND mais geral.

Zero-pads e, em seguida, reorganiza (permuta) blocos de dados espaciais em lote. Mais especificamente, esta operação produz uma cópia do tensor de entrada onde os valores das dimensões `altura` e` largura` são movidos para a dimensão `lote`. Após o preenchimento de zero, tanto a `altura` quanto a` largura` da entrada devem ser divisíveis pelo tamanho do bloco.

Constantes

Corda OP_NAME O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Métodos Públicos

Output <T>
asOutput ()
Retorna o identificador simbólico do tensor.
estática <T estende TType > SpaceToBatch <T>
criar ( Scope escopo, Operando <T> de entrada, Operando <? estende TNumber > paddings, Longo BLOCKSIZE)
Método de fábrica para criar uma classe envolvendo uma nova operação SpaceToBatch.
Output <T>
saída ()

Métodos herdados

Constantes

nome_op final String public static

O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Valor constante: "SpaceToBatch"

Métodos Públicos

pública Output <T> asOutput ()

Retorna o identificador simbólico do tensor.

As entradas para as operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.

public static SpaceToBatch <T> create ( Scope escopo, Operando <T> entrada, Operando <? estende TNumber > paddings, Long blockSize)

Método de fábrica para criar uma classe envolvendo uma nova operação SpaceToBatch.

Parâmetros
alcance escopo atual
entrada 4-D com forma `[lote, altura, largura, profundidade]`.
recheios Tensor 2-D de inteiros não negativos com a forma `[2, 2]`. Ele especifica o preenchimento da entrada com zeros nas dimensões espaciais da seguinte maneira:

paddings = [[pad_top, pad_bottom], [pad_left, pad_right]]

As dimensões espaciais efetivas do tensor de entrada preenchido com zero serão:

height_pad = pad_top + height + pad_bottom width_pad = pad_left + width + pad_right

O attr `block_size` deve ser maior que um. Indica o tamanho do bloco.

* Os blocos não sobrepostos de tamanho `block_size x tamanho do bloco` nas dimensões de altura e largura são reorganizados na dimensão do lote em cada local. * O lote do tensor de saída é `batch * block_size * block_size`. * Tanto height_pad quanto width_pad devem ser divisíveis por block_size.

A forma da saída será:

[lote block_size block_size, height_pad / block_size, width_pad / block_size, profundidade]

Alguns exemplos:

(1) Para a seguinte entrada de forma `[1, 2, 2, 1]` e block_size de 2:

x = [[[[1], [2]], [[3], [4]]]]
 
O tensor de saída tem a forma `[4, 1, 1, 1]` e valor:
[[[[1]]], [[[2]]], [[[3]]], [[[4]]]]
 
(2) Para a seguinte entrada de forma `[1, 2, 2, 3]` e block_size de 2:
x = [[[[1, 2, 3], [4, 5, 6]],
       [[7, 8, 9], [10, 11, 12]]]]
 
o tensor de saída tem a forma `[4, 1, 1, 3]` e valor:
[[[[1, 2, 3]]], [[[4, 5, 6]]], [[[7, 8, 9]]], [[[10, 11, 12]]]]
 
(3) Para a seguinte entrada de forma `[1, 4, 4, 1]` e block_size de 2:
x = [[[[1],   [2],  [3],  [4]],
       [[5],   [6],  [7],  [8]],
       [[9],  [10], [11],  [12]],
       [[13], [14], [15],  [16]]]]
 
o tensor de saída tem a forma `[4, 2, 2, 1]` e valor:
x = [[[[1], [3]], [[9], [11]]],
      [[[2], [4]], [[10], [12]]],
      [[[5], [7]], [[13], [15]]],
      [[[6], [8]], [[14], [16]]]]
 
(4) Para o seguinte entrada de forma `[2, 2, 4, 1]` e block_size de 2:
x = [[[[1],   [2],  [3],  [4]],
       [[5],   [6],  [7],  [8]]],
      [[[9],  [10], [11],  [12]],
       [[13], [14], [15],  [16]]]]
 
o tensor de saída tem a forma `[8, 1, 2, 1]` e valor:
x = [[[[1], [3]]], [[[9], [11]]], [[[2], [4]]], [[[10], [12]]],
      [[[5], [7]]], [[[13], [15]]], [[[6], [8]]], [[[14], [16]]]]
 
Entre outras, esta operação é útil para reduzir a convolução atrosa em convolução regular.

Devoluções
  • uma nova instância de SpaceToBatch

pública Output <T> de saída ()