我目前正在训练网络(使用Tensorflow实施的CNN)对3个班级进行分类,事情是我最终得分如下:
[ -20145.36, 150069, 578456.3 ].
我希望得分在0到1之间(某种概率)。
起初,我考虑过使用sigmoid函数,但后来发现这个讨论甚至没有提到:
你建议我做什么,让每个班级得分在0到1之间?
谢谢
答案 0 :(得分:5)
作为最后一层,您总是使用softmax来获得n级分类分数。所以,你有tensorflow classification docs中提到的一些选项。
最简单的方法是使用tf.nn.softmax()
namespace foo { ... }
示例:
softmax = exp(logits) / reduce_sum(exp(logits), dim)