Tensorflow如何增加变量的维数

问题描述:

当我们做tf.embedding_lookup时,它返回一个向量(不是矩阵)。Tensorflow如何增加变量的维数

In [244]: one_hot_label = tf.nn.embedding_lookup(np.eye(vocab_size), Y[labels_i]) 

In [245]: one_hot_label 
Out[245]: <tf.Tensor 'embedding_lookup_43975:0' shape=(20, 8000) dtype=float64> 

我需要这个(20,8000)张重塑成(20,8000,1)。我应该怎么做? 我没有要求使用tf.reshape的硬线(20,8000,1)。我一般会问如何转换2d - > 3d或更高。

您可以使用tf.expand_dims:此操作将1的维度插入到张量的形状中。

one_hot_label = tf.expand_dims(one_hot_label, axis=2)