テンソルフロー::作戦::バッチからスペースへ

#include <array_ops.h>

T 型の 4 次元テンソルのBatchToSpace

まとめ

これは、より一般的なBatchToSpaceNDのレガシー バージョンです。

データをバッチから空間データのブロックに再配置 (並べ替え) し、その後トリミングします。これは、SpaceToBatch の逆変換です。より具体的には、この操作は、 batchディメンションの値が空間ブロックでheightwidthディメンションに移動され、その後heightwidthディメンションに沿ってトリミングされる入力テンソルのコピーを出力します。

引数:

  • スコープ:スコープオブジェクト
  • 入力: 形状[batch*block_size*block_size, height_pad/block_size, width_pad/block_size, depth]の 4 次元テンソル。入力テンソルのバッチ サイズはblock_size * block_sizeで割り切れる必要があることに注意してください。
  • Crops: 形状[2, 2]の非負の整数の 2 次元テンソル。次のように、空間次元全体で中間結果から切り取る要素の数を指定します:
    crops = [[crop_top, crop_bottom], [crop_left, crop_right]]
    

戻り値:

  • Output : 形状[batch, height, width, depth]の 4-D、ここで:
    height = height_pad - crop_top - crop_bottom
    width = width_pad - crop_left - crop_right
    

attr block_size 1 より大きくなければなりません。ブロックサイズを表します。

いくつかの例:

(1) 次の入力の形状[4, 1, 1, 1]および block_size が 2 の場合:

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

出力テンソルの形状は[1, 2, 2, 1]と次の値です。

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

(2) 次の入力の形状[4, 1, 1, 3]および block_size が 2 の場合:

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

出力テンソルの形状は[1, 2, 2, 3]で、値は次のとおりです。

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

(3) 次の入力の形状[4, 2, 2, 1]および block_size が 2 の場合:

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

出力テンソルの形状は[1, 4, 4, 1]で、値は次のとおりです。

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

(4) 次の入力の形状[8, 1, 2, 1]および block_size が 2 の場合:

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

出力テンソルの形状は[2, 2, 4, 1]で、値は次のとおりです。

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

コンストラクターとデストラクター

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

パブリック属性

operation
output

公共機能

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

パブリック属性

手術

Operation operation

出力

::tensorflow::Output output

公共機能

バッチからスペースへ

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

ノード

::tensorflow::Node * node() const 

演算子::tensorflow::入力

 operator::tensorflow::Input() const 

演算子::tensorflow::出力

 operator::tensorflow::Output() const