當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.compat.v1.space_to_batch用法及代碼示例


SpaceToBatch 用於 T 類型的 4-D 張量。

用法

tf.compat.v1.space_to_batch(
    input, paddings, block_size=None, name=None, block_shape=None
)

參數

  • input 一個Tensor。 4-D 形狀 [batch, height, width, depth]
  • paddings A Tensor.必須是以下類型之一:int32,int64.具有形狀的非負整數的二維張量[2, 2].它指定在空間維度上用零填充輸入,如下所示:
    paddings = [[pad_top, pad_bottom], [pad_left, pad_right]]

    零填充輸入張量的有效空間維度將是:

    height_pad = pad_top + height + pad_bottom
      width_pad = pad_left + width + pad_right
  • block_size int>= 2
  • name 操作的名稱(可選)。

返回

  • 一個Tensor。具有與 input 相同的類型。

這是更通用的 SpaceToBatchND 的舊版本。

Zero-pads 然後將空間數據塊重新排列(置換)成批處理。更具體地說,此操作輸出輸入張量的副本,其中來自 heightwidth 維度的值被移動到 batch 維度。補零之後,輸入的heightwidth 都必須能被塊大小整除。

attr block_size 必須大於一。它表示塊大小。

  • 高度和寬度維度中大小為block_size x block size 的非重疊塊在每個位置重新排列到批次維度中。
  • 輸出張量的批次為 batch * block_size * block_size
  • height_pad 和 width_pad 都必須能被 block_size 整除。

輸出的形狀將是:

[batch*block_size*block_size, height_pad/block_size, width_pad/block_size,
 depth]

一些例子:

(1) 對於以下形狀 [1, 2, 2, 1] 和 block_size 的 2 輸入:

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

輸出張量的形狀為 [4, 1, 1, 1] 和值:

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

(2) 對於以下形狀 [1, 2, 2, 3] 和 block_size 的 2 輸入:

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

輸出張量的形狀為 [4, 1, 1, 3] 和值:

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

(3) 對於以下形狀 [1, 4, 4, 1] 和 block_size 的 2 輸入:

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

輸出張量的形狀為 [4, 2, 2, 1] 和值:

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

(4) 對於以下形狀 [2, 2, 4, 1] 和 block_size 的 2 輸入:

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

輸出張量的形狀為 [8, 1, 2, 1] 和值:

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

除其他外,此操作對於將多孔卷積減少為常規卷積很有用。

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.compat.v1.space_to_batch。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。