tensorflow:: ops:: BatchToSpace

#include <array_ops.h>

BatchToSpace dla tensorów 4-D typu T.

Streszczenie

Jest to starsza wersja bardziej ogólnego polecenia BatchToSpaceND .

Przegrupowuje (permutuje) dane z partii na bloki danych przestrzennych, a następnie przycina je. Jest to odwrotna transformacja funkcji SpaceToBatch. Dokładniej, ta operacja generuje kopię tensora wejściowego height w której wartości z wymiaru batch są przenoszone w blokach przestrzennych do wymiarów height i width , a następnie następuje przycinanie wzdłuż width wymiarów.

Argumenty:

  • zakres: obiekt zakresu
  • Dane wejściowe: tensor 4-D o kształcie [batch*block_size*block_size, height_pad/block_size, width_pad/block_size, depth] . Należy pamiętać, że rozmiar partii tensora wejściowego musi być podzielny przez block_size * block_size .
  • crops: 2-D tensor liczb całkowitych nieujemnych o kształcie [2, 2] . Określa on, ile elementów należy wyciąć z wyniku pośredniego w wymiarach przestrzennych w następujący sposób:
    crops = [[crop_top, crop_bottom], [crop_left, crop_right]]

Zwroty:

  • Output : 4-D z kształtem [batch, height, width, depth] , gdzie:
    height = height_pad - crop_top - crop_bottom
    width = width_pad - crop_left - crop_right

Atrybut block_size musi być większy niż jeden. Wskazuje on rozmiar bloku.

Oto kilka przykładów:

(1) Dla następującego wejścia o kształcie [4, 1, 1, 1] i rozmiarze bloku równym 2:

[[[[1]]], [[[2]]], [[[3]]], [[[4]]]]

Tensor wyjściowy ma kształt [1, 2, 2, 1] i wartość:

x = [[[[1], [2]], [[3], [4]]]]

(2) Dla następującego wejścia o kształcie [4, 1, 1, 3] i rozmiarze bloku równym 2:

[[[[1, 2, 3]]], [[[4, 5, 6]]], [[[7, 8, 9]]], [[[10, 11, 12]]]]

Tensor wyjściowy ma kształt [1, 2, 2, 3] i wartość:

x = [[[[1, 2, 3], [4, 5, 6]],
      [[7, 8, 9], [10, 11, 12]]]]

(3) Dla następującego wejścia o kształcie [4, 2, 2, 1] i rozmiarze bloku równym 2:

x = [[[[1], [3]], [[9], [11]]],
     [[[2], [4]], [[10], [12]]],
     [[[5], [7]], [[13], [15]]],
     [[[6], [8]], [[14], [16]]]]

Tensor wyjściowy ma kształt [1, 4, 4, 1] i wartość:

x = [[[[1],   [2],  [3],  [4]],
     [[5],   [6],  [7],  [8]],
     [[9],  [10], [11],  [12]],
     [[13], [14], [15],  [16]]]]

(4) Dla następującego wejścia o kształcie [8, 1, 2, 1] i rozmiarze bloku równym 2:

x = [[[[1], [3]]], [[[9], [11]]], [[[2], [4]]], [[[10], [12]]],
     [[[5], [7]]], [[[13], [15]]], [[[6], [8]]], [[[14], [16]]]]

Tensor wyjściowy ma kształt [2, 2, 4, 1] i wartość:

x = [[[[1], [3]], [[5], [7]]],
     [[[2], [4]], [[10], [12]]],
     [[[5], [7]], [[13], [15]]],
     [[[6], [8]], [[14], [16]]]]

Konstruktory i destruktory

BatchToSpace (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input crops, int64 block_size)

Atrybuty publiczne

operation
output

Funkcje publiczne

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Atrybuty publiczne

działanie

Operation operation

wyjście

::tensorflow::Output output

Funkcje publiczne

BatchToSpace

 BatchToSpace(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input crops,
  int64 block_size
)

węzeł

::tensorflow::Node * node() const 

operator::tensorflow::Input

 operator::tensorflow::Input() const 

operator::tensorflow::Output

 operator::tensorflow::Output() const