分类网络输出

时间:2013-09-02 13:36:04

标签: machine-learning neural-network roc

我建立了一个预测1或0的网络。我现在正在研究该网络的ROC曲线,我必须找到TN,FN,TP,FP。当我的网络输出>> 0.5且期望输出为1时,我将其归类为True Positive。当它的> = 0.5且期望输出为0时,我将其归类为假阳性。这是正确的做法吗?只是想确定我的理解是否正确。

1 个答案:

答案 0 :(得分:1)

这完全取决于您使用网络的方式,因为真/假阳性/阴性只是分析您的分类结果的一种形式,而不是网络的内部。根据您所编写的内容,我假设您拥有一个具有一个输出节点的网络,该节点可以在[0,1]中产生值。如果您使用模型,那么如果此值大于0.5,那么您将假定1输出和0,否则,您是正确的。一般来说,您应该考虑输出的“解释”,并简单地使用TP,FN等的定义,可归纳如下:

         your network
truth      1     0
    1     TP    FN
    0     FP    TN

我提到“解释”,因为实际上你总是使用一些函数g( output ),它返回预测的类号。在您的情况下,它只是g( output ) = 1 iff output >= 0.5。但是在多类问题中它可能是g( output ) = argmax( output ),但它并不特别需要“绘制”(当两个或多个神经元具有相同的值时)。要计算真/假阳性/阴性,您应始终只考虑最终分类。因此,您正在衡量模型的质量,学习过程以及“解释”g

还应该指出,“积极”和“消极”阶级的概念通常是模棱两可的。在诸如检测某些物体/事件之类的问题中,很明显,“出现”是一个积极的事件而“缺乏”是消极的,但在许多其他事件中 - 例如性别分类,没有明确的解释。在这种情况下,应该仔细选择使用的指标,因为其中一些偏向于正(或负)示例(例如 precision 不考虑真或假阴影)。