DepthToSpace

aula final pública DepthToSpace

DepthToSpace para tensores do tipo T.

Reorganiza os dados de profundidade em blocos de dados espaciais. Esta é a transformação reversa do SpaceToDepth. Mais especificamente, esta operação gera uma cópia do tensor de entrada onde os valores da dimensão `profundidade` são movidos em blocos espaciais para as dimensões `altura` e `largura`. O atributo `block_size` indica o tamanho do bloco de entrada e como os dados são movidos.

* Pedaços de dados de tamanho `block_size * block_size` da profundidade são reorganizados em blocos não sobrepostos de tamanho `block_size x block_size` * A largura do tensor de saída é `input_profundidade * block_size`, enquanto a altura é `input_height * block_size`. * As coordenadas Y, X dentro de cada bloco da imagem de saída são determinadas pelo componente de ordem superior do índice do canal de entrada. * A profundidade do tensor de entrada deve ser divisível por `block_size * block_size`.

O atributo `data_format` especifica o layout dos tensores de entrada e saída com as seguintes opções: "NHWC": `[ lote, altura, largura, canais ]` "NCHW": `[ lote, canais, altura, largura ]` " NCHW_VECT_C": `qint8 [lote, canais / 4, altura, largura, 4]`

É útil considerar a operação como a transformação de um Tensor 6-D. por exemplo, para data_format = NHWC, cada elemento no tensor de entrada pode ser especificado por meio de 6 coordenadas, ordenadas diminuindo a significância do layout da memória como: n,iY,iX,bY,bX,oC (onde n=índice de lote, iX, iY significa X ou coordenadas Y dentro da imagem de entrada, bX, bY significa coordenadas dentro do bloco de saída, oC significa canais de saída). A saída seria a entrada transposta para o seguinte layout: n,iY,bY,iX,bX,oC

Esta operação é útil para redimensionar as ativações entre convoluções (mas mantendo todos os dados), por exemplo, em vez de agrupar. Também é útil para treinar modelos puramente convolucionais.

Por exemplo, dada uma entrada de forma `[1, 1, 1, 4]`, data_format = "NHWC" e block_size = 2:

x = [[[[1, 2, 3, 4]]]]
 
 
Esta operação produzirá um tensor de forma `[1, 2, 2, 1 ]`:
[[[[1], [2]],
      [[3], [4]]]]
 
Aqui, a entrada tem um lote de 1 e cada elemento do lote tem formato `[1, 1, 4]`, a saída correspondente terá 2x2 elementos e terá profundidade de 1 canal (1 = ` 4 / (tamanho_do_bloco *tamanho_do_bloco)`). A forma do elemento de saída é `[2, 2, 1]`.

Para um tensor de entrada com maior profundidade, aqui de forma `[1, 1, 1, 12]`, por exemplo

x = [[[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]]]
 
Esta operação, para tamanho de bloco de 2, retornará o seguinte tensor de forma `[1, 2, 2 , 3]`
[[[[1, 2, 3], [4, 5, 6]],
      [[7, 8, 9], [10, 11, 12]]]]
 
 
Da mesma forma, para a seguinte entrada de forma `[1 2 2 4]` e um tamanho de bloco de 2:
x =  [[[[1, 2, 3, 4],
        [5, 6, 7, 8]],
       [[9, 10, 11, 12],
        [13, 14, 15, 16]]]]
 
o operador retornará o seguinte tensor de forma `[1 4 4 1] `:
x = [[[ [1],   [2],  [5],  [6]],
       [ [3],   [4],  [7],  [8]],
       [ [9],  [10], [13],  [14]],
       [ [11], [12], [15],  [16]]]]
 
 

Classes aninhadas

aula ProfundidadeToSpace.Options Atributos opcionais para DepthToSpace

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 > DepthToSpace <T>
create ( Escopo , entrada Operando <T>, Long blockSize, Opções... opções)
Método de fábrica para criar uma classe que envolve uma nova operação DepthToSpace.
DepthToSpace.Options estático
dataFormat (String dataFormat)
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: "DepthToSpace"

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 DepthToSpace <T> create (escopo do escopo , entrada Operand <T>, Long blockSize, Opções... opções)

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

Parâmetros
escopo escopo atual
tamanho do bloco O tamanho do bloco espacial, igual ao Space2Depth.
opções carrega valores de atributos opcionais
Devoluções
  • uma nova instância de DepthToSpace

public static DepthToSpace.Options dataFormat (String dataFormat)

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