tensorflow :: ops :: DepthToSpace

#include <array_ops.h>

DepthToSpace untuk tensor tipe T.

Ringkasan

Mengatur ulang data dari kedalaman menjadi blok data spasial. Ini adalah transformasi kebalikan dari SpaceToDepth. Lebih khusus lagi, operasi ini mengeluarkan salinan tensor masukan di mana nilai dari dimensi depth dipindahkan dalam blok spasial ke dimensi height dan width . The attr block_size menunjukkan ukuran blok input dan bagaimana data dipindahkan.

  • Potongan data ukuran block_size * block_size dari kedalaman disusun ulang menjadi blok non-overlapping dengan ukuran block_size x block_size
  • Lebar tensor keluaran adalah input_depth * block_size , sedangkan tingginya input_height * block_size .
  • Koordinat Y, X dalam setiap blok gambar keluaran ditentukan oleh komponen orde tinggi dari indeks saluran masukan.
  • Kedalaman tensor input harus dapat dibagi dengan block_size * block_size .

data_format menentukan tata letak tensor masukan dan keluaran dengan opsi berikut: "NHWC": [ batch, height, width, channels ] "NCHW": [ batch, channels, height, width ] "NCHW_VECT_C": qint8 [ batch, channels / 4, height, width, 4 ]

Sebaiknya pertimbangkan operasi tersebut sebagai transformasi Tensor 6-D. misalnya untuk data_format = NHWC, Setiap elemen dalam tensor input dapat ditentukan melalui 6 koordinat, diurutkan dengan mengurangi signifikansi tata letak memori sebagai: n, iY, iX, bY, bX, oC (di mana n = indeks batch, iX, iY berarti X atau koordinat Y dalam gambar masukan, bX, bY berarti koordinat dalam blok keluaran, oC berarti saluran keluaran). Keluarannya adalah masukan yang dialihkan ke tata letak berikut: n, iY, bY, iX, bX, oC

Operasi ini berguna untuk mengubah ukuran aktivasi antar konvolusi (tetapi menyimpan semua data), misalnya daripada penggabungan. Ini juga berguna untuk melatih model konvolusional murni.

Misalnya, masukan bentuk [1, 1, 1, 4] , data_format = "NHWC" dan block_size = 2:

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

  

This operation will output a tensor of shape [1, 2, 2, 1]:

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

Di sini, input memiliki batch 1 dan setiap elemen batch memiliki bentuk [1, 1, 4] , output yang sesuai akan memiliki elemen 2x2 dan akan memiliki kedalaman 1 saluran (1 = 4 / (block_size * block_size) ). Bentuk elemen keluaran adalah [2, 2, 1] .

Untuk tensor masukan dengan kedalaman lebih besar, berikut bentuknya [1, 1, 1, 12] , mis

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

Operasi ini, untuk ukuran blok 2, akan mengembalikan bentuk tensor berikut [1, 2, 2, 3]

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

  

Similarly, for the following input of shape [1 2 2 4], and a block size of 2:

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

operator akan mengembalikan bentuk tensor berikut [1 4 4 1] :

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

  

Arguments:

  • scope: A Scope object
  • block_size: The size of the spatial block, same as in Space2Depth.

Returns:

Constructors and Destructors

DepthToSpace(const ::tensorflow::Scope & scope, ::tensorflow::Input input, int64 block_size)
DepthToSpace(const ::tensorflow::Scope & scope, ::tensorflow::Input input, int64 block_size, const DepthToSpace::Attrs & attrs)

Public attributes

operation
output

Public functions

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

Public static functions

DataFormat(StringPiece x)

Structs

tensorflow::ops::DepthToSpace::Attrs

Optional attribute setters for DepthToSpace.

Public attributes

operation

Operation operation

keluaran

::tensorflow::Output output

Fungsi publik

DepthToSpace

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

DepthToSpace

 DepthToSpace(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  int64 block_size,
  const DepthToSpace::Attrs & attrs
)

simpul

::tensorflow::Node * node() const 

operator :: tensorflow :: Input

 operator::tensorflow::Input() const 

operator :: tensorflow :: Keluaran

 operator::tensorflow::Output() const 

Fungsi statis publik

Format data

Attrs DataFormat(
  StringPiece x
)