开始使用免费开始使用

精确率、ROI 与 AUC

投资回报率(ROI)可以分解为精确率与"回报与成本之比"的乘积。如前所述,即使 ROC 曲线的 AUC 很高,模型的精确率也可能很低。若精确率低,则 ROI 也会偏低。在本练习中,您将使用一个 MLP 来计算示例 ROI。这里假设给定固定的 r(每一定数量展示所带来的每次点击回报)和 cost(每一定数量展示的成本),并结合精确率与 ROC 曲线的 AUC 值,观察这三者如何变化。

X_trainy_trainX_testy_test 已在工作区中可用;clf 为一个 MLP 分类器,概率分数存于 y_score,预测标签存于 y_predpandas 已以 pd 导入,sklearn 也已在您的工作区中可用。

本练习是课程的一部分

用 Python 预测 CTR 的机器学习实战

查看课程

练习说明

  • 计算 MLP 分类器的精确率 prec
  • 基于精确率 prec 计算总 ROI。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Get precision and total ROI
prec = ____(y_test, ____, average = 'weighted')
r = 0.2
cost = 0.05 
roi = ____ * r / cost

# Get AUC
roc_auc = roc_auc_score(y_test, y_score[:, 1])

print("Total ROI: %s, Precision: %s, AUC of ROC curve: %s" %(
  roi, prec, roc_auc))
编辑并运行代码