`インデックス`に従って `params`軸` axis`からスライスを収集します。
`indexes`は、任意の次元(通常は0-Dまたは1-D)の整数テンソルでなければなりません。形状 `params.shape [:axis] + indexs.shape [batch_dims:] + params.shape [axis + 1:]`の出力テンソルを生成します。ここで:
# Scalar indices (output is rank(params) - 1).
output[a_0, ..., a_n, b_0, ..., b_n] =
params[a_0, ..., a_n, indices, b_0, ..., b_n]
# Vector indices (output is rank(params)).
output[a_0, ..., a_n, i, b_0, ..., b_n] =
params[a_0, ..., a_n, indices[i], b_0, ..., b_n]
# Higher rank indices (output is rank(params) + rank(indices) - 1).
output[a_0, ..., a_n, i, ..., j, b_0, ... b_n] =
params[a_0, ..., a_n, indices[i, ..., j], b_0, ..., b_n]

CPUでは、範囲外のインデックスが見つかった場合、エラーが返されることに注意してください。 GPUでは、範囲外のインデックスが見つかった場合、対応する出力値に0が格納されます。
`tf.batch_gather`および` tf.gather_nd`も参照してください。
ネストされたクラス
クラス | Gather.Options | Gather オプションの属性 |
パブリックメソッド
出力<T> | asOutput () テンソルのシンボリックハンドルを返します。 |
static Gather.Options | batchDims (長いbatchDims) |
static <T、Uは数値を拡張し、Vは数値を拡張>収集<T> | |
出力<T> | 出力() 形状が `params.shape [:axis] + indexs.shape + params.shape [axis + 1:]`の `indexes`によって与えられたインデックスから収集された` params`の値。 |
継承されたメソッド
パブリックメソッド
public Output <T> asOutput ()
テンソルのシンボリックハンドルを返します。
TensorFlow操作への入力は、別のTensorFlow操作の出力です。このメソッドは、入力の計算を表すシンボリックハンドルを取得するために使用されます。
public static Gather <T> create (スコープスコープ、オペランド<T>パラメータ、オペランド<U>インデックス、オペランド<V>軸、オプション...オプション)
新しいGather操作をラップするクラスを作成するファクトリメソッド。
パラメーター
範囲 | 現在のスコープ |
---|---|
パラメータ | 値を収集するテンソル。少なくともランク `軸+ 1`である必要があります。 |
インデックス | インデックステンソル。範囲は `[0、params.shape [axis])`である必要があります。 |
軸 | `インデックス`を収集する `params`の軸。デフォルトは最初の次元です。負のインデックスをサポートします。 |
オプション | オプションの属性値を運ぶ |
戻り値
- Gatherの新しいインスタンス
public Output <T> output ()
形状が `params.shape [:axis] + indexs.shape + params.shape [axis + 1:]`の `indexes`によって与えられたインデックスから収集された` params`の値。