このページは Cloud Translation API によって翻訳されました。
Switch to English

tf.slice

TensorFlow 1つのバージョン GitHubの上のソースを表示

テンソルからスライスを抽出します。

ノートPCで使用されます

チュートリアルで使用されます

参照してくださいtf.strided_slice

この操作は、サイズのスライス抽出sizeテンソルからinput_で指定された場所から始まるbegin 。スライスsizeテンソルの形として表現されるsize[i]の」i番目の次元の要素数であるinput_あなたはスライスにしたいということ。開始位置( beginスライスの)は、各次元でオフセットとして表されるinput_ 。つまり、 begin[i]のi番目の次元にオフセットされinput_あなたがからのスライスにしたいということ。

tf.Tensor. getitem 、それが書き込みにあなたを可能にするように、典型的には、スライスを実行するために、よりPython的な方法であるfoo[3:7, :-2]の代わりtf.slice(foo, [3, 0], [4, foo.get_shape()[1]-2])

beginゼロベースです。 size 1ベースです。もしsize[i] -1で、iはスライスに含まれるディメンション内のすべての残りの要素。言い換えれば、これは設定と同じです。

size[i] = input_.dim_size(i) - begin[i]

この操作はいる必要があります。

0 <= begin[i] <= begin[i] + size[i] <= Di for i in [0, n]

例えば:

 t = tf.constant([[[1, 1, 1], [2, 2, 2]],
                 [[3, 3, 3], [4, 4, 4]],
                 [[5, 5, 5], [6, 6, 6]]])
tf.slice(t, [1, 0, 0], [1, 1, 3])  # [[[3, 3, 3]]]
tf.slice(t, [1, 0, 0], [1, 2, 3])  # [[[3, 3, 3],
                                   #   [4, 4, 4]]]
tf.slice(t, [1, 0, 0], [2, 1, 3])  # [[[3, 3, 3]],
                                   #  [[5, 5, 5]]]
 

input_ A Tensor
begin int32またはint64 Tensor
size int32またはint64 Tensor
name 操作の名前(オプション)。

A Tensorと同じタイプinput_