SpaceToBatch

aula final pública SpaceToBatch

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 gera uma cópia do tensor de entrada onde os valores das dimensões `height` e `width` são movidos para a dimensão `batch`. Após o preenchimento de zeros, a `altura` e a `largura` da entrada devem ser divisíveis pelo tamanho do bloco.

Constantes

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

Métodos Públicos

Saída <T>
asOutput ()
Retorna o identificador simbólico do tensor.
estático <T estende TType > SpaceToBatch <T>
create (escopo do escopo , entrada do operando <T>, operando <? estende TNumber > preenchimentos, tamanho de bloco longo)
Método de fábrica para criar uma classe que envolve uma nova operação SpaceToBatch.
Saída <T>
saída ()

Métodos herdados

Constantes

String final estática pública OP_NAME

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

Valor constante: "SpaceToBatch"

Métodos Públicos

Saída pública <T> asOutput ()

Retorna o identificador simbólico do tensor.

As entradas para 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 (escopo do escopo , entrada do operando <T>, operando <? estende TNumber > preenchimentos, tamanho de bloco longo)

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

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

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

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

height_pad = pad_top + altura + pad_bottom width_pad = pad_left + largura + pad_right

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

* Blocos não sobrepostos de tamanho `block_size x block size` nas dimensões de altura e largura são reorganizados na dimensão de lote em cada local. * O lote do tensor de saída é `batch * block_size * block_size`. * Height_pad e 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 tamanho_de_bloco de 2:

x = [[[[1], [2]], [[3], [4]]]]
 
O tensor de saída tem forma `[4, 1, 1, 1]` e valor:
[[[[1]]], [[[2]]], [[[3]]], [[[4]]]]
 
(2) Para a seguinte entrada de forma `[1, 2, 2, 3]` e tamanho_de_bloco de 2:
x = [[[[1, 2, 3], [4, 5, 6]],
       [[7, 8, 9], [10, 11, 12]]]]
 
O tensor de saída tem 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 tamanho do bloco 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 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 a 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 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 do SpaceToBatch

Saída pública <T> saída ()