张量切片操作中的问题

Issue in Tensor slicing operation

我正在尝试从 input 获取 expected_out

input = [[2],[3],[3]]
expected_out = [2,3,3]

如何使用 TensorFlow 从 input 获取 expected_out

使用tf.squeeze:

import tensorflow as tf

input = tf.constant([[2], [3], [3]])

with tf.Session() as sess:
    print(sess.run(tf.squeeze(input)))

在这种情况下,您想要从矩阵中删除一维条目。在 TensorFlow 和 Numpy 中,这个操作被称为 squeeze.

这是 TensorFlow 的官方文档 - tf.squeeze。引用文档,

Given a tensor input, this operation returns a tensor of the same type with all dimensions of size 1 removed. If you don't want to remove all size 1 dimensions, you can remove specific size 1 dimensions by specifying axis

因此,要解决您的问题,您可以将 None 传递给 axis(您的默认大小写),或者传递 1。这是代码的样子,

expected_out = tf.squeeze(input)

或者,

expected_out = tf.squeeze(input, 1)