上次我们谈到逻辑回归,我们用sigmoid(仅用于二分法,至于多分类以后会谈(softmax)。
输出的值在0~1之间,这时输出的是一个概率。我们也可以将输出结果改成二元值(是垃圾邮件或者不是垃圾邮件)。
我们要设定一个概率,超过这个概率我们则认为是"垃圾邮件",低于的话,我们则认为不是。
这个设定的概率就被称为 分类阈值(判定阈值)。
之前在《深入浅出的数据分析》中我们提到过分类问题,这里原文用的狼来了的故事进行分类讲解:
真正例(TP):受到狼的威胁, 牧童并且说 狼来了。
真负例(TN):没受到狼的威胁 牧童说 没有狼。
假正例(FP):没受到狼的威胁 牧童说 狼来了。
假负例(FN):受到狼的威胁 牧童说 没有狼。
这里大家可能有点乱,至于怎么判断,大家可以这么看。
这里正例和负例说的是牧童的判断, 牧童判断没有狼就是负例, 判断有狼就是正例。
而至于真假则是看实际情况和牧童的判断是否一致,一致则为真,否则为假。
当然这里牧童就是机器的判断,至于真假就是看机器判断和实际标签是否一致。
准确率:
这个很好理解,就是模型判断正确的数除以总数:
Accuracy = (TP + TN ) / (TP + TN + FP + FN)
单单这么看貌似没有问题,但是回想起我们之前提到条件概率的时候,那时候的情况就是分类不平衡。如果我们面对样本分类不平衡的数据集的时候,单单看准确率就会出现问题,在这里举个极端点的例子:
假如现在有10k个有标签样本,其中