一直在查找,但似乎找不到任何关于如何在TensorFlow中从独热值解码或转换回单个整数的例子。
我使用了tf.one_hot
并且能够训练我的模型,但对于如何理解分类后的标签有点困惑。我的数据是通过我创建的TFRecords
文件输入的。我考虑过在文件中存储文本标签,但没能成功实现。看起来TFRecords
似乎无法存储文本字符串,或者可能是我弄错了。
回答:
你可以使用tf.argmax
来找出矩阵中最大元素的索引。由于你的独热向量是一维的,并且只有一个1
和其他0
,这将适用于你处理单个向量的情况。
index = tf.argmax(one_hot_vector, axis=0)
对于更标准的batch_size * num_classes
的矩阵,使用axis=1
可以得到大小为batch_size * 1
的结果。