我对神经网络还比较新手。目前我正在尝试编写一个用于识别0到10之间数字的简单图像识别神经网络。我打算使用的激活函数是ReLU(整流线性单元)。
使用sigmoid函数时,很明显如何在最后确定某一情况的概率(因为它的值在0到1之间)。
但据我所知,使用ReLU时没有这些限制,最终可以得到前一层“神经元”总和的任何值。那么这通常是如何解决的呢?
- 我是否只需取所有值中最大的那个,并说那是100%的概率?
- 我是否将所有值相加,并说那是100%?
- 还是有我目前看不到的其他方法?
希望我的问题是可以理解的。提前感谢您花时间查看我的问题。
回答:
你不能将ReLU函数用作分类任务的输出函数,因为如你所述,它的范围无法表示0到1的概率。这就是为什么它只用于回归任务和隐藏层的原因。
对于二元分类,你必须使用范围在0到1之间的输出函数,比如sigmoid。在你的情况下,你需要使用多维扩展,比如softmax函数。