Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tensorflow tf.gather\n直观地做什么?_Tensorflow - Fatal编程技术网

Tensorflow tf.gather\n直观地做什么?

Tensorflow tf.gather\n直观地做什么?,tensorflow,Tensorflow,您能否直观地解释或给出更多关于tf.gather\n nd的示例,以便在Tensorflow中索引和切片到高维张量 我读了,但它保持相当简洁,我发现自己很难理解函数的概念。好的,所以这样想: [tensor[0]] [tensor[0], tensor[1]] 您将提供一个索引值列表,对提供的张量进行索引,以获取这些切片。您提供的索引的第一个维度是针对要执行的每个索引。让我们假设张量只是一个列表 [[0]]表示您希望在提供的张量中的索引0处获得一个特定的切片(列表)。就这样, [tensor

您能否直观地解释或给出更多关于
tf.gather\n nd
的示例,以便在Tensorflow中索引和切片到高维张量


我读了,但它保持相当简洁,我发现自己很难理解函数的概念。

好的,所以这样想:

[tensor[0]]
[tensor[0], tensor[1]]
您将提供一个索引值列表,对提供的张量进行索引,以获取这些切片。您提供的索引的第一个维度是针对要执行的每个索引。让我们假设张量只是一个列表

[[0]]表示您希望在提供的张量中的索引0处获得一个特定的切片(列表)。就这样,

[tensor[0]]
[tensor[0], tensor[1]]
[[0],[1]]表示您希望在索引0和1处获得两个特定切片,如下所示:

[tensor[0]]
[tensor[0], tensor[1]]
现在,如果张量不止是一维呢?我们做同样的事情:

[[0,0]]表示您希望在第0个列表的索引[0,0]处获得一个切片。像这样:

[tensor[0][0]]
[[0,1],[2,3]]意味着您希望在提供的索引和维度处返回两个切片。像这样:

[tensor[0][1], tensor[2][3]]

我希望这是有道理的。我尝试使用Python索引来帮助解释在Python中如何对列表列表执行此操作。

您提供了一个张量和表示该张量中位置的索引。它返回与您提供的索引对应的张量元素

编辑:一个例子

import tensorflow as tf
sess = tf.Session()
x = [[1,2,3],[4,5,6]]
y = tf.gather_nd(x, [[1,1],[1,2]])
print(sess.run(y))
[5,6]


您可能需要本教程:您能详细说明或提供一些示例吗?听起来OP对API文档过于简洁感到失望。我不确定这会给现有的答案增加多少。这可能是一个更好的快速解释,但如果不参考其他解释/资源,就有点难以理解,特别是如果您不熟悉API的话。