tensorflow::ops::DepthToSpace

#include <array_ops.h>

T tipindeki tensörler için DepthToSpace.

Özet

Derinlik verilerini uzamsal veri bloklarına yeniden düzenler. Bu, SpaceToDepth işleminin ters dönüşümüdür. Daha spesifik olarak, bu işlem, depth boyutundaki değerlerin uzamsal bloklar halinde height ve width boyutlarına taşındığı giriş tensörünün bir kopyasını üretir. block_size özniteliği, giriş bloğunun boyutunu ve verilerin nasıl taşındığını gösterir.

  • Derinlikten alınan block_size * block_size boyutundaki veri parçaları, block_size x block_size boyutunda, üst üste binmeyen bloklar halinde yeniden düzenlenir.
  • Çıktı tensörünün genişliği input_depth * block_size , yüksekliği ise input_height * block_size .
  • Çıkış görüntüsünün her bloğundaki Y, X koordinatları, giriş kanal indeksinin yüksek dereceli bileşeni tarafından belirlenir.
  • Giriş tensörünün derinliği, block_size * block_size bölünebilir olmalıdır.

data_format özniteliği, giriş ve çıkış tensörlerinin düzenini aşağıdaki seçeneklerle belirtir: "NHWC": [ batch, height, width, channels ] "NCHW": [ batch, channels, height, width ] "NCHW_VECT_C": qint8 [ batch, channels / 4, height, width, 4 ]

İşlemi 6 boyutlu bir Tensörün dönüştürülmesi olarak düşünmek faydalıdır. Örneğin, data_format = NHWC için, giriş tensöründeki her eleman, bellek düzeni önemine göre azalan sırada 6 koordinatla belirtilebilir: n,iY,iX,bY,bX,oC (burada n=parti indeksi, iX, iY giriş görüntüsündeki X veya Y koordinatlarını, bX, bY çıkış bloğundaki koordinatları, oC ise çıkış kanallarını ifade eder). Çıktı, girişin aşağıdaki düzene göre transpoze edilmiş hali olacaktır: n,iY,bY,iX,bX,oC

Bu işlem, evrişimler arasındaki aktivasyonları yeniden boyutlandırmak (ancak tüm verileri korumak) için, örneğin havuzlama yerine, kullanışlıdır. Ayrıca tamamen evrişimsel modelleri eğitmek için de faydalıdır.

Örneğin, [1, 1, 1, 4] şeklinde bir girdi, data_format = "NHWC" ve block_size = 2 verildiğinde:

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

  

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

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

Burada, giriş 1 elemanlı bir gruba sahip ve her grup elemanının şekli [1, 1, 4] şeklindedir; buna karşılık gelen çıkış 2x2 elemanlı olacak ve 1 kanal derinliğine sahip olacaktır (1 = 4 / (block_size * block_size) ). Çıkış elemanının şekli [2, 2, 1] 'dir.

Daha büyük derinliğe sahip bir giriş tensörü için, burada [1, 1, 1, 12] şeklinde, örneğin

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

Blok boyutu 2 olduğunda, bu işlem [1, 2, 2, 3] şeklinde bir tensör döndürecektir.

   [[[[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]]]]

Operatör, [1 4 4 1] şeklinde aşağıdaki tensörü döndürecektir:

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

çıktı

::tensorflow::Output output

Kamusal işlevler

Derinlikten Uzaya

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

Derinlikten Uzaya

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

düğüm

::tensorflow::Node * node() const 

operatör::tensorflow::Giriş

 operator::tensorflow::Input() const 

operatör::tensorflow::Çıktı

 operator::tensorflow::Output() const 

Herkese açık statik fonksiyonlar

Veri Biçimi

Attrs DataFormat(
  StringPiece x
)