真正构造是在 tf.sparse_to_dense 这一步,这是tf自带的转换函数。
前边的都是准备工作,indices是index的复数形式,这里就是每个样本的索引。lables里边都是0-9的数字。
先通过tf.expand_dims来将lables 和 indices的维度增加一个,注意expand_dims第二个参数是选择在什么位置增加dim。这一步是为了concate做准备。
concat是将两个tensor拼接起来,第一个参数就是表示在哪一维度拼接。0表示第一个维度,1表示第二个 以此类推。
concated之后的形式应该是一个二维矩阵,第一列存储的是样本索引,第二列存储的是label。
然后进行1-hot value操作。第一个参数是输入的tensor,第二个参数是输出tensor的shape,这里的NUM_CLASSES=10 因为每一个结果都会被表示成 一个size为10的向量
如:3-> [0,0,0,1,0,0,0,0,0,0]
一共有batch_size个这样的向量。
eg:
如果输入tensor
【[0,7]
[1,2]
[2, 9]
[3, 8]
[4, 4]
[5, 2]】
那么输出