T tipi ND tensörleri için SpaceToBatch.
Bu işlem, girdinin "uzaysal" boyutlarını "[1, ..., M]", "blok_şekli" şeklindeki bloklardan oluşan bir ızgaraya böler ve bu blokları, çıktıda olacak şekilde "toplu" boyut (0) ile serpiştirir. , uzamsal boyutlar `[1, ..., M]' ızgara içindeki konuma karşılık gelir ve toplu iş boyutu hem uzamsal blok içindeki konumu hem de orijinal toplu iş konumunu birleştirir. Bloklara bölünmeden önce, girdinin uzamsal boyutları isteğe bağlı olarak 'dolgulara' göre sıfır dolguludur. 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 > SpaceToBatchNd <T> | |
Çıkış <T> | çıktı () |
Kalıtsal Yöntemler
Sabitler
genel statik son Dize OP_NAME
Bu operasyonun TensorFlow çekirdek motoru tarafından bilinen adı
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 SpaceToBatchNd <T> create ( Kapsam kapsamı, İşlenen <T> girişi, İşlenen <? extends TNumber > blokShape, İşlenen <? extends TNumber > dolgular)
Yeni bir SpaceToBatchNd işlemini saran bir sınıf oluşturmaya yönelik fabrika yöntemi.
Parametreler
kapsam | mevcut kapsam |
---|---|
giriş | `input_shape = [toplu] + uzamsal_şekil + kalan_şekil` şeklinde ND; burada uzamsal_şekil "M" boyutlara sahiptir. |
blok Şekli | "[M]" şeklinde 1-D, tüm değerler >= 1 olmalıdır. |
dolgular | `[M, 2]` şeklinde 2 boyutlu, tüm değerler >= 0 olmalıdır. `paddings[i] = [pad_start, pad_end]`, uzamsal boyuta karşılık gelen `i + 1` giriş boyutu için dolguyu belirtir "ben". 'block_shape[i]'nin, 'input_shape[i + 1] + pad_start + pad_end'i bölmesi gerekir. Bu işlem aşağıdaki adımlara eşdeğerdir: 1. 'padded_shape' şeklinin 'dolgulu'sunu oluşturmak için 'dolgulara' göre girişin '[1, ..., M]' boyutlarının başlangıcını ve bitişini sıfırlayın. 2. Şeklin "yastıklı" şeklini "yeniden şekillendirilmiş_yastıklı" olarak yeniden şekillendirin: [toplu] + [padded_shape[1] / blok_şekli[0], blok_şekli[0], ..., yastıklı_şekil[M] / blok_şekli[M-1], blok_şekli[M-1]] + kalan_şekil 3. Şeklin "permuted_resculpt_padded"ini oluşturmak için "resculpt_paded" boyutlarının izinlerini değiştirin: blok_şekli + [toplu] + [padded_shape[1] / blok_şekli[0], ..., yastıklı_şekil[M] / blok_şekli[M-1]] + kalan_şekil 4. "block_shape"i toplu boyuta düzleştirmek için "permuted_retained_padded"i yeniden şekillendirin ve bir şekil çıkış tensörü oluşturun: [batch * prod(block_shape)] + [padded_shape[1] / blok_shape[0], ..., padded_shape[M] / blok_shape[M-1]] + kalan_şekil Bazı örnekler: (1) Aşağıdaki "[1, 2, 2, 1]", "blok_şekli = [2, 2]" ve "doldurmalar = [[0, 0], [0, 0]]" şeklinin girişi için:
|
İade
- SpaceToBatchNd'nin yeni bir örneği