当标签是概率时,训练TensorFlow模型进行回归

时间:2016-12-01 01:37:35

标签: neural-network tensorflow regression deep-learning activation-function

我将训练神经网络(例如,前馈网络),其中输出仅是表示概率的实际值(因此在[0,1]间隔中)。我应该为最后一层(即输出节点)使用哪种激活功能?

如果我不使用任何激活函数并且仅输出tf.matmul(last_hidden_layer, weights) + biases,则可能导致一些负输出,这是不可接受的,因为输出是概率,因此预测也应该是概率。如果我使用tf.nn.softmaxtf.nn.softplus,模型总是在测试集中返回0。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用sigmoid激活作为输出,因为这会将任何输出范围压缩到[0,1]范围内。然后,对于训练,您可以使用均方误差或类似损失,或二元交叉熵。通常,二进制交叉熵可能会更好。