机器学习是基于统计原理的预测。
如何判断?判断正确数与总数的比率?
这种做法有缺陷,比如一堆人里预测癌症患者,因为发病率低,只需要都认为没有癌症,准确率就能达到很高。
混淆矩阵,准确率,精准率,召回率
混淆矩阵
预测1 | 预测0 | |
---|---|---|
实际1 | 11(TP) | 10(FP) |
实际0 | 01(FN) | 00(TN) |
P:Postive
N: Negative
准确率
准确率=(TP+TN)/(TP+TN+FP+FN)
开篇写了,会有问题
精准率
精准率(Precision)=TP/(TP+FP)
预测为正的样本的正确率,类似假设检验的检验水平
召回率
召回率(Recall)=TP/(TP+FN)
实际为正样本中,被揪出来的概率,类似假设检验的power
P-R曲线(查准率-查全率)
F1分数
我们希望差准率和查全率都比较高,需要找到一个平衡点,引入新指标:
F1分数 = 2*查准率*查全率 / (查准率 + 查全率)
F1 Score 是精准率和召回率的调和平均值
ROC/AUC的概念
1. 灵敏度,特异度,真正率,假正率
灵敏度(Sensitivity)= TP/(TP+FN) = 召回率 = 真阳性率(TPR)
特异度(Specificity)= TN/(FP+TN)
假阳性率(FPR)= 1- 特异度 = FP/(FP+TN)
2. ROC(接受者操作特征曲线)
ROC曲线ROC曲线(Receiver Operation Characteristic Cureve),描述TPR和FPR之间的关系。
3. AUC(曲线下面积)
ROC曲线下面积,称为AUC(Area Under Curve)
思考
- 电商平台拿到一部分奢侈品用户数,并以此为训练集和测试集,训练和测试奢侈品用户的分类模型,分类准确率超过了95%。实际使用中,该模型还是把大部分广告投放给了非奢侈品用户,可能是什么原因造成的?
训练集中购买奢侈品的用户占比太少,数据偏斜严重,准确率没有意义。
- 什么是ROC曲线?如何绘制ROC曲线?
ROC描述TPR和FPR之间的关系,有点类似为检出率和付出的矫枉过正的代价。ROC绘制时,遍历所有阈值,求TPR和FPR做为坐标绘制。
- ROC曲线相比P-R曲线有什么特点?
P-R横坐标正面指标,ROC横坐标是负面指标。
ROC同时考虑了正例和负例,因此适用于评估分类器整体的效能,而PR曲线专注于正例,若是在类别平均且正例及负例的判断都重要情况下,ROC曲线是不错的选择。
由于ROC曲线的X轴使用了FPR,在类别不平均的情况下(负样本较多),使得FPR的增长会被稀释,会导致ROC曲线呈现出过度乐观的结果,因此在类别不平均情况下,PR曲线会是较好的选择。
网友评论