टेन्सरफ्लो::ऑप्स::डेप्थटूस्पेस

#include <array_ops.h>

टाइप T के टेंसरों के लिए DepthToSpace।

सारांश

यह ऑपरेशन गहराई से डेटा को स्थानिक डेटा के ब्लॉकों में पुनर्व्यवस्थित करता है। यह SpaceToDepth का विपरीत रूपांतरण है। अधिक स्पष्ट रूप से, यह ऑपरेशन इनपुट टेंसर की एक प्रतिलिपि आउटपुट करता है जिसमें depth आयाम के मानों को स्थानिक ब्लॉकों में height और width आयामों में स्थानांतरित किया जाता है। विशेषता block_size इनपुट ब्लॉक का आकार और डेटा को स्थानांतरित करने का तरीका दर्शाती है।

  • गहराई से block_size * block_size आकार के डेटा के टुकड़ों को block_size x block_size आकार के गैर-अतिव्यापी ब्लॉकों में पुनर्व्यवस्थित किया जाता है।
  • आउटपुट टेंसर की चौड़ाई input_depth * block_size है, जबकि ऊंचाई input_height * block_size है।
  • आउटपुट इमेज के प्रत्येक ब्लॉक के भीतर Y, X निर्देशांक इनपुट चैनल इंडेक्स के उच्च क्रम घटक द्वारा निर्धारित किए जाते हैं।
  • इनपुट टेंसर की गहराई block_size * block_size से विभाज्य होनी चाहिए।

data_format विशेषता इनपुट और आउटपुट टेंसर के लेआउट को निम्नलिखित विकल्पों के साथ निर्दिष्ट करती है: "NHWC": [ batch, height, width, channels ] "NCHW": [ batch, channels, height, width ] "NCHW_VECT_C": qint8 [ batch, channels / 4, height, width, 4 ]

इस प्रक्रिया को 6-आयामी टेंसर के रूपांतरण के रूप में समझना उपयोगी है। उदाहरण के लिए, data_format = NHWC के लिए, इनपुट टेंसर के प्रत्येक तत्व को 6 निर्देशांकों के माध्यम से निर्दिष्ट किया जा सकता है, जिन्हें मेमोरी लेआउट के महत्व के घटते क्रम में इस प्रकार व्यवस्थित किया गया है: n, iY, iX, bY, bX, oC (जहाँ n = बैच इंडेक्स, iX, iY का अर्थ इनपुट छवि के भीतर X या Y निर्देशांक है, bX, bY का अर्थ आउटपुट ब्लॉक के भीतर निर्देशांक है, oC का अर्थ आउटपुट चैनल है)। आउटपुट इनपुट को निम्न लेआउट में रूपांतरित करके प्राप्त किया जाएगा: n, iY, bY, iX, bX, oC

यह प्रक्रिया कनवोल्यूशन के बीच एक्टिवेशन का आकार बदलने (लेकिन सभी डेटा को सुरक्षित रखते हुए) के लिए उपयोगी है, उदाहरण के लिए पूलिंग के बजाय। यह विशुद्ध रूप से कनवोल्यूशनल मॉडल को प्रशिक्षित करने के लिए भी उपयोगी है।

उदाहरण के लिए, यदि इनपुट का आकार [1, 1, 1, 4] है, data_format = "NHWC" और block_size = 2 है:

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

  

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

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

यहां, इनपुट में 1 का बैच है और प्रत्येक बैच तत्व का आकार [1, 1, 4] है, इसलिए आउटपुट में 2x2 तत्व होंगे और इसकी गहराई 1 चैनल होगी (1 = 4 / (block_size * block_size) )। आउटपुट तत्व का आकार [2, 2, 1] है।

अधिक गहराई वाले इनपुट टेंसर के लिए, यहाँ आकार [1, 1, 1, 12] का है, उदाहरण के लिए

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

ब्लॉक आकार 2 के लिए यह ऑपरेशन, आकार [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]]]]

यह ऑपरेटर [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

आउटपुट

::tensorflow::Output output

सार्वजनिक समारोह

गहराई से अंतरिक्ष

 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
)

नोड

::tensorflow::Node * node() const 

ऑपरेटर::टेन्सरफ्लो::इनपुट

 operator::tensorflow::Input() const 

ऑपरेटर::टेन्सरफ्लो::आउटपुट

 operator::tensorflow::Output() const 

सार्वजनिक स्थैतिक फ़ंक्शन

डेटा स्वरूप

Attrs DataFormat(
  StringPiece x
)