expand_dims
will not add or reduce elements in a tensor, it just changes the shape by adding 1
to dimensions. For example, a vector with 10 elements could be treated as a 10×1 matrix.
The situation I have met to use expand_dims
is when I tried to build a ConvNet to classify grayscale images. The grayscale images will be loaded as matrix of size [320, 320]
. However, tf.nn.conv2d
require input to be [batch, in_height, in_width, in_channels]
, where the in_channels
dimension is missing in my data which in this case should be 1
. So I used expand_dims
to add one more dimension.
In your case, I do not think you need expand_dims
.