GatherNd

halka açık final dersi GatherNd

'Params'tan dilimleri, şekli 'indeksler' tarafından belirtilen bir Tensöre toplayın.

'indeksler', K boyutlu bir tamsayı tensörüdür; en iyi şekilde, her öğenin bir 'param' dilimini tanımladığı 'paramlara' endekslerin (K-1) boyutlu tensörü olarak düşünülebilir:

çıktı[\\(i_0, ..., i_{K-2}\\)] = parametreler[indeksler[\\(i_0, ..., i_{K-2}\\)]]

tf.gather "indeksler", "params"ın "eksen" boyutuna ait dilimleri tanımlarken, tf.gather_nd , "indices", dilimleri "params"ın ilk "N" boyutlarına tanımlar; burada "N = indices.shape" [-1]'.

'İndekslerin' son boyutu en fazla 'paramların' sıralaması olabilir:

indeksler.şekil[-1] <= paramlar.sıra

"indekslerin" son boyutu, "indeksler" boyutu boyunca öğelere (if `indices.shape[-1] == params.rank`) veya dilimlere (if `indices.shape[-1] < params.rank`) karşılık gelir. "params"ın şekli[-1]'. Çıkış tensörünün şekli vardır

indeksler.şekil[:-1] + parametreler.şekil[indices.şekil[-1]:]

CPU'da sınır dışı bir dizin bulunursa bir hata döndürüleceğini unutmayın. GPU'da, sınır dışı bir dizin bulunursa karşılık gelen çıkış değerinde 0 saklanır.

Aşağıda bazı örnekler.

Bir matrise basit indeksleme:

indices = [[0, 0], [1, 1]]
     params = [['a', 'b'], ['c', 'd']]
     output = ['a', 'd']
 
indices = [[1], [0]]
     params = [['a', 'b'], ['c', 'd']]
     output = [['c', 'd'], ['a', 'b']]
 
matrise dilim indeksleme:
indices = [[1]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [[['a1', 'b1'], ['c1', 'd1']]]
 
 
     indices = [[0, 1], [1, 0]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [['c0', 'd0'], ['a1', 'b1']]
 
 
     indices = [[0, 0, 1], [1, 0, 1]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = ['b0', 'b1']
 
Bir matrise toplu indeksleme:
indices = [[[0, 0]], [[0, 1]]]
     params = [['a', 'b'], ['c', 'd']]
     output = [['a'], ['b']]
 
Bir matrise toplu dilim indeksleme:
indices = [[[1]], [[0]]]
     params = [['a', 'b'], ['c', 'd']]
     output = [[['c', 'd']], [['a', 'b']]]
 
Toplu indeksleme 3-tensör:
indices = [[[1]], [[0]]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [[[['a1', 'b1'], ['c1', 'd1']]],
               [[['a0', 'b0'], ['c0', 'd0']]]]
 
     indices = [[[0, 1], [1, 0]], [[0, 0], [1, 1]]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [[['c0', 'd0'], ['a1', 'b1']],
               [['a0', 'b0'], ['c1', 'd1']]]
 
 
     indices = [[[0, 0, 1], [1, 0, 1]], [[0, 1, 1], [1, 1, 0]]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [['b0', 'b1'], ['d0', 'c1']]
 
Ayrıca bkz. tf.gather ve `tf.batch_gather`.

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 > GatherNd <T>
create ( Kapsam kapsamı, İşlenen <T> parametreleri, İşlenen <? extends TNumber > dizinleri)
Yeni bir GatherNd işlemini saran bir sınıf oluşturmaya yönelik fabrika yöntemi.
Çıkış <T>
çıktı ()
"indices.shape[:-1] + params.shape[indices.shape[-1]:]" şekliyle "indeksler" tarafından verilen indekslerden toplanan "paramlardan" değerler.

Kalıtsal Yöntemler

Sabitler

genel statik son Dize OP_NAME

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

Sabit Değer: "GatherNd"

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 GatherNd <T> create ( Kapsam kapsamı , İşlenen <T> parametreleri, İşlenen <? extends TNumber > dizinleri)

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

Parametreler
kapsam mevcut kapsam
parametreler Değerlerin toplanacağı tensör.
endeksler İndeks tensörü.
İadeler
  • GatherNd'nin yeni bir örneği

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

"indices.shape[:-1] + params.shape[indices.shape[-1]:]" şekliyle "indeksler" tarafından verilen indekslerden toplanan "paramlardan" değerler.