如何在没有softmax输出的情况下进行不相交分类?

Sam*_*Sam 5 neural-network fann

在FANN中进行'不相交'分类(其中输出是互斥的,即真实概率总和为1)的正确方法是什么,因为它似乎没有softmax输出的选项?

我的理解是使用sigmoid输出,就像做"标记"一样,我不会得到正确的分类问题结果.

小智 2

FANN 仅支持tanhlinear错误函数。正如您所说,这意味着神经网络输出的概率之和不会为 1。实现输出没有简单的解决方案softmax,因为这意味着更改成本函数,从而更改反向传播例程中使用的误差函数。由于 FANN 是开源的,您可以尝试自己实现它。关于交叉验证的问题似乎给出了您必须实现的方程方程式。

虽然这不是您正在寻找的数学上优雅的解决方案,但在解决成本函数的实现之前,我会尝试使用一些更粗糙的方法softmax- 因为其中之一可能足以满足您的目的。例如,您可以使用tanh误差函数,然后将所有输出重新归一化,使其总和为 1。或者,如果您实际上只对最可能的分类感兴趣,则可以只采用得分最高的输出。

FANN 背后的人 Steffen Nissen在这里举了一个例子,他试图根据字母频率对文本所用的语言进行分类。我认为他使用了tanh误差函数(默认)并且只选择得分最高的课程,但他表示效果很好。