[机器学习]模型评估

模型评估

基本评估指标

  1. 准确率

[Accuracy=frac{n_{correct}}{n_{total}} ag{1} ]

  1. 精确率和召回率

[Precision=frac{TP}{TP+FP} ag{2} ]

[Recall=frac{TP}{TP+FN} ag{3} ]

  1. F1(精确率和召回率的调和平均)

[frac{2}{F_1}=frac{1}{Precision}+frac{1}{Recall} ag{4} ]

  1. RMSE均方根误差、MAPE平均绝对百分比误差

[RMSE = sqrt{frac{Sigma_{i=1}^{n}(y_i-hat{y_i})^2}{n}} ]

[MAPE = frac{100}{n}Sigma_{i=1}^{n}|frac{y_i-hat{y_i}}{y_i}| ]

RMSE对离群点敏感,MAPE通过对每个样本点的误差进行归一化,降低单个离群点对误差带来的影响
5. PR曲线
策略:将样本为正例的预测概率按照由大到小的进行排列,将每个值逐项设置为阈值,高于阈值为正例,低于阈值为负例。
y: Precision 1->0
x: Recall 0->1
6. ROC曲线及AUC值
策略:与PR曲线一致
y:真阳性率(敏感度)(TPR = frac{TP}{TP+FN})
x:假阳性率(1-特异性)(FPR = frac{FP}{FP+TN})
计算AUC可以通过对横轴进行积分即可,[0.5,1]。

敏感度、召回率即为真阳性率,假阴性率为1-敏感度;
特异性为真阴性率,假阳性为1-特异性。

  1. 余弦距离

[cos(A,B)=frac{A cdot B}{|A||B|} ]

余弦距离不是严格定义的距离(正定性、对称性以及三角不等式),余弦距离不满足三角不等式
8. A/B测试(在机器学习领域中,A/B测试是验证模型最终效果的主要手段)
随机分桶,实验组和对照组在求解目标下的一致性(防止结果被稀释)
9. 模型验证方法
1. Holdout检测法:将数据集随机分成训练集和验证集;
2. 交叉验证:将数据集划分为k个等大小的样本子集,依次遍历k个子集,每次将该子集作为验证集,其余子集作为训练集,进行模型的训练和评估;最后把k次评估指标的平均值作为最终的评估指标;特别地,留一法是将数据集划分为样本总数n个样本子集;
3. 自取法:有放回的进行样本总数n的采样, 将未被采样到的样本作为验证集,将采样到的样本作为训练集。当样本数量为正无穷大时,((1-frac{1}{n})^n)的极限趋近于(frac{1}{e}),即36.8%。

问题

  1. ROC曲线相对于P-R曲线有什么特点?
    ROC曲线能够尽量降低不同测试集带来的干扰,更加客观地衡量模型本身的性能。(比如正负样本很不均衡的情况)
  2. 如何进行超参数调优?
    超参数搜索算法的基本要素:1. 确定目标函数 2. 确定搜索范围 3. 确定其他参数,如搜索步长
    • 网格搜索:确定上下界;使用较大的搜索步长,确定可能位置;使用较小的搜索步长进行搜索
    • 随机搜索:不测试上下界中的所有值,仅采用在搜索范围内进行随机采样的方式[与网格搜索的快速版一样,不能保证结果]
    • 贝叶斯优化算法:学习目标函数的形状【不断使用采样点更新目标函数的先验分布;使用后验分布给出最值的可能位置,易陷入局部最优】
原文地址:https://www.cnblogs.com/mrdragonma/p/12588849.html