BatchToSpaceNd

genel final dersi BatchToSpaceNd

T tipi ND tensörleri için BatchToSpace.

Bu işlem "toplu" boyut 0'ı "blok_şekli + [batch]" şeklinin "M + 1" boyutlarına yeniden şekillendirir, bu blokları "[1, ..., M]" uzamsal boyutlarıyla tanımlanan ızgaraya geri bırakır, Girişle aynı sıralamaya sahip bir sonuç elde etmek için. Bu ara sonucun uzamsal boyutları daha sonra çıktıyı üretmek için isteğe bağlı olarak "ekinlere" göre kırpılır. Bu SpaceToBatch'in tam tersidir. Kesin bir açıklama için aşağıya bakın.

Sabitler

Sicim OP_NAME Bu operasyonun TensorFlow çekirdek motoru tarafından bilinen adı

Genel Yöntemler

Çıkış <T>
Çıkış olarak ()
Tensörün sembolik tutamacını döndürür.
static <T, TType'ı genişletir > BatchToSpaceNd <T>
create ( Kapsam kapsamı, İşlenen <T> girişi, İşlenen <? extends TNumber > blokShape, İşlenen <? extends TNumber > mahsuller)
Yeni bir BatchToSpaceNd işlemini saran bir sınıf oluşturmaya yönelik fabrika yöntemi.
Çıkış <T>

Kalıtsal Yöntemler

Sabitler

genel statik son Dize OP_NAME

Bu operasyonun TensorFlow çekirdek motoru tarafından bilinen adı

Sabit Değer: "BatchToSpaceND"

Genel Yöntemler

genel Çıkış <T> asOutput ()

Tensörün sembolik tutamacını döndürür.

TensorFlow işlemlerinin girdileri, başka bir TensorFlow işleminin çıktılarıdır. Bu yöntem, girişin hesaplanmasını temsil eden sembolik bir tanıtıcı elde etmek için kullanılır.

public static BatchToSpaceNd <T> create ( Kapsam kapsamı, İşlenen <T> girişi, İşlenen <? extends TNumber > blokShape, İşlenen <? extends TNumber > mahsuller)

Yeni bir BatchToSpaceNd işlemini saran bir sınıf oluşturmaya yönelik fabrika yöntemi.

Parametreler
kapsam mevcut kapsam
giriş `input_shape = [toplu] + mekansal_şekil + kalan_şekil` şeklinde ND; burada mekansal_şekil M boyutlara sahiptir.
blok Şekli "[M]" şeklinde 1-D, tüm değerler >= 1 olmalıdır.
mahsuller "[M, 2]" şeklinde 2 boyutlu, tüm değerler >= 0 olmalıdır. "kırpmalar[i] = [kırpma_başlangıç, kırpma_bitiş]", "i + 1" giriş boyutundan kırpılacak miktarı belirtir; bu, şuna karşılık gelir: uzaysal boyut "i". `crop_start[i] + crop_end[i] <= blok_shape[i] * input_shape[i + 1]' olması gerekir.

Bu işlem aşağıdaki adımlara eşdeğerdir:

1. 'Girdi'yi şeklin 'yeniden şekillendirilmesi' olarak yeniden şekillendirin: [blok_şekli[0], ..., blok_şekli[M-1], toplu / ürün(blok_şekli), giriş_şekli[1], ..., giriş_şekli[N- 1]]

2. Şeklin "değiştirilmiş" halini üretmek için "yeniden şekillendirilmiş" boyutlarını değiştirin [batch / prod(block_shape),

giriş_şekli[1], blok_şekli[0], ..., giriş_şekli[M], blok_şekli[M-1],

giriş_şekli[M+1], ..., giriş_şekli[N-1]]

3. [batch / prod(block_shape)'in 'yeniden şekillendirilmiş_permuted' şeklini üretmek için 'permütasyonlu'yu yeniden şekillendirin,

giriş_şekli[1] * blok_şekli[0], ..., giriş_şekli[M] * blok_şekli[M-1],

giriş_şekli[M+1], ..., giriş_şekli[N-1]]

4. Şu şeklin çıktısını üretmek için "ekinler"e göre "yeniden şekillendirilmiş_permuted"in "[1, ..., M]" boyutlarının başlangıcını ve sonunu kırpın: [batch / prod(block_shape),

input_shape[1] * blok_shape[0] - mahsuller[0,0] - mahsuller[0,1], ..., input_shape[M] * blok_shape[M-1] - mahsuller[M-1,0] - mahsuller [M-1,1],

giriş_şekli[M+1], ..., giriş_şekli[N-1]]

Bazı örnekler:

(1) Aşağıdaki "[4, 1, 1, 1]", "blok_şekli = [2, 2]" ve "ekinler = [[0, 0], [0, 0]]" şeklinin girişi için:

[[[[1]]], [[[2]]], [[[3]]], [[[4]]]]
 
Çıkış tensörünün şekli '[1, 2, 2, 1]' ve değeri vardır:
x = [[[[1], [2]], [[3], [4]]]]
 
(2) Aşağıdaki şekil girişi için '[4, 1, 1, 3]', 'blok_şekli = [ 2, 2]` ve `ürünler = [[0, 0], [0, 0]]`:
[[[[1, 2, 3]]], [[[4, 5, 6]]], [[[7, 8, 9]]], [[[10, 11, 12]]]]
 
Çıkış tensörünün şekli '[1, 2, 2, 3]' ve değeri:
x = [[[[1, 2, 3], [4, 5, 6]],
       [[7, 8, 9], [10, 11, 12]]]]
 
(3) Aşağıdaki "[4, 2, 2, 1]", "blok_şekli = [2, 2]" ve "ekinler = [[0, 0], [0, 0]]" şeklinin girişi için:
x = [[[[1], [3]], [[9], [11]]],
      [[[2], [4]], [[10], [12]]],
      [[[5], [7]], [[13], [15]]],
      [[[6], [8]], [[14], [16]]]]
 
Çıkış tensörünün şekli '[1, 4, 4, 1]' ve değeri vardır:
x = [[[[1],   [2],  [3],  [4]],
      [[5],   [6],  [7],  [8]],
      [[9],  [10], [11],  [12]],
      [[13], [14], [15],  [16]]]]
 
(4) Aşağıdaki şekil girişi için '[8, 1, 3, 1]', 'block_shape = [ 2, 2]` ve `ürünler = [[0, 0], [2, 0]]`:
x = [[[[0], [1], [3]]], [[[0], [9], [11]]],
      [[[0], [2], [4]]], [[[0], [10], [12]]],
      [[[0], [5], [7]]], [[[0], [13], [15]]],
      [[[0], [6], [8]]], [[[0], [14], [16]]]]
 
Çıkış tensörünün şekli '[2, 2, 4, 1]' ve değeri:
x = [[[[1],   [2],  [3],  [4]],
       [[5],   [6],  [7],  [8]]],
      [[[9],  [10], [11],  [12]],
       [[13], [14], [15],  [16]]]]
 

İadeler
  • BatchToSpaceNd'nin yeni bir örneği

genel Çıkış <T> çıkışı ()