如何确定使用ReLU时神经网络最后一层的范围

我对神经网络还比较新手。目前我正在尝试编写一个用于识别0到10之间数字的简单图像识别神经网络。我打算使用的激活函数是ReLU(整流线性单元)。

使用sigmoid函数时,很明显如何在最后确定某一情况的概率(因为它的值在0到1之间)。

但据我所知,使用ReLU时没有这些限制,最终可以得到前一层“神经元”总和的任何值。那么这通常是如何解决的呢?

  • 我是否只需取所有值中最大的那个,并说那是100%的概率?
  • 我是否将所有值相加,并说那是100%?
  • 还是有我目前看不到的其他方法?

希望我的问题是可以理解的。提前感谢您花时间查看我的问题。


回答:

你不能将ReLU函数用作分类任务的输出函数,因为如你所述,它的范围无法表示0到1的概率。这就是为什么它只用于回归任务和隐藏层的原因。

对于二元分类,你必须使用范围在0到1之间的输出函数,比如sigmoid。在你的情况下,你需要使用多维扩展,比如softmax函数。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注