解释神经网络输出

时间:2013-02-15 18:32:05

标签: machine-learning neural-network

对于分类问题,通常如何确定网络的输出?

比方说,有三个可能的类,每个都有一个数字标识符,合理的解决方案是将输出相加并将该总和作为网络的总输出?或者你会采用网络输出的平均值吗?

有很多关于人工神经网络理论的信息,但关于应用程序的信息不多,但如果这是一个愚蠢的问题,我会大肆宣传。

2 个答案:

答案 0 :(得分:5)

对于具有3个类的多层感知器分类器,通常构建具有3个输出的网络并训练网络,使得(1,0,0)是第一类的目标输出,(0,1,0) )对于第二类,和(0,0,1)为第三类。为了对新观察进行分类,通常选择具有最大值的输出(例如,(0.12,0.56,0.87)将被归类为第3类)。

答案 1 :(得分:0)

我主要与bogatron达成一致意见,你会发现很多帖子在这里建议用神经网络进行这种“多类分类”。

关于你的标题,我想补充一点,你可以将输出解释为概率,因为我努力为此找到理论基础。继续我将讨论输出层中有3个神经元的神经网络,表示相应类别的1个神经网络。 由于所有三个输出的总和在训练中总是为1,神经网络也会给前馈输出一个总和(所以相反(0.12 0.36 0.52)比bogatrons例子))然后你可以将这些数字解释为相应输入属于1/2/3级的概率(概率为0.52,属于3级)。

使用逻辑函数或tanh作为激活函数时都是如此。

更多相关信息: 通过神经网络的后验概率:http://www-vis.lbl.gov/~romano/mlgroup/papers/neural-networks-survey.pdf
How to convert the output of an artificial neural network into probabilities?

相关问题