1.TensorFlow中的onehot有什么作用,为什么要使用onehot向量呢?
TensorFlow导入数据的时候会令one_hot=True,为什么要这样做呢?
onehot向量究竟是什么?
onehot向量究竟是什么?
考虑多类情况。非onehot,标签是类似0 1 2 3...n这样。
而onehot标签则是顾名思义,一个长度为n的数组,只有一个元素是1.0,其他元素是0.0。
(标签是以one-hot(one-hot就是有一个长度为N的数组,只有一位是1表示是某一个分类,其他位都是0)的方式表示)
例如在n为4的情况下,标签2对应的onehot标签就是 0.0 0.0 1.0 0.0
使用onehot的直接原因是现在多分类cnn网络的输出通常是softmax层,而它的输出是一个概率分布,从而要求输入的标签也以概率分布的形式出现,进而算交叉熵之类。