个人笔记:实用机器学习(b站李沐)4.1
2026/7/20 11:03:30 网站建设 项目流程

4.1模型评估
如何衡量一个模型的好坏?

(1)在监督学习中,我们常会使用最小化损失函数来训练模型,所以损失(loss value)是用来衡量模型质量的指标;

(2)模型的质量要由多个指标来衡量 如分类时的 模型精度、目标检测时的mAP、部署到产品时的商业指标(模型对营收的增长、模型反馈的效率(inference latency))

【例】
用于搜索词(在看的具体网页) --> 取出相关的网页 --> 预测用户点击广告的点击率(点击率高的给用户看)【因为不知道点击率会是多少,所以弄成一个机器学习的问题,用机器学习来判断用户的点击(二分类问题)】 --> 把所有的广告通过CTR(点击率)乘上甲方给的钱来排序

准确率(Accuracy):在样本中预测正确的比例是多少(衡量分类问题最常见的作法,但是我们不关心对负类(我们不需要的类型)的准确率
*比如广告点击率很低,如果我全预测为负,正确率仍有90%+,看似很高的预测准确率
(极不平衡二分类问题)

精度(Precision):TP/(TP+FP)预测正类的正确率
召回率(Recall):TP/(TP+FN)实际为正类的样本中,被模型找出来的比例
F1:2pr/(p+r)兼顾展示质量和覆盖面的综合指标



在类似这种二分类问题中,我们需要定义一个阈值θ,当预测精度大于θ时是正类,反之为负类;一般来说θ会取0.5(正负样本比较平衡的时候可以取);在实际的生产中我们会去选θ,比如极不平衡的二分类问题

·ROC曲线和AUC(曲线与x轴围成的面积)


x轴FPR:FP/FP+TN(实际为负但被模型错误的判断为正的概率)
y轴TPR:TP/TP+FN(就是召回率)
曲线的每一个点代表不同阈值θ下的x,y取值
当AUC为1时(能被完美的区分开)



当AUC为0.7时(有一定的区分能力,但有重叠)



AUC=0.5(完全分不开,和随机猜测一样)



ROC曲线的优势:不像 Precision和Recall 需要选定一个θ,AUC 看的是所有阈值下的综合表现

上述AD例子的一些商业指标:
任务是优化收入和用户的体验;

延迟(Latency):当模型部署到线上,会要求模型在100毫秒内去展示数据给用户

ASN:平均每一页展示的广告数

CTR:真实用户的点击率

ACP:平均一次点击广告主会给多少钱

收入:页面的流量 * ASN * CTR * ACP

平台方关心总收入和流量

对于模型来说,我们关心模型的AUC;但是只看AUC可能会有问题

一个新的模型其AUC增加了,但是很有可能会发现商业的一些指标下降了,AUC只是反映了一个统计值,预测的CTR可能发生变换,但在统计上没有发生变化,可是它还是会影响实际我们的收入,比如说:

(1)预测的CTR值变低了,但是AUC的数值没有改变,可是会引起预测用户点击的置信值降低了,可能会导致展示的广告数目降低

(2)可能新换的广告实际的CTR低,模型使用的是过去的数据,市场是会变化的,用户可能不喜欢基于过去数据的广告

(3)可能模型挑选的广告,广告主出的价格比较低

权衡模型指标与商业指标:最好的方法还是将模型部署到线上,用实际的数据来观察实际的商业指标。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询