【机器学习西瓜书学习笔记——模型评估与选择】

机器学习西瓜书学习笔记【第二章】

第二章 模型评估与选择

2.1训练误差和测试误差

错误率

在分类任务中,通常把错分的样本数占样本总数的比例称为错误率。比如:m个样本有a个预测错了,错误率就是 E = a/m;与错误率相对的 1 - a/m 称为精度。

误差

我们通常会把学习器的实际预测输出与样本的真实输出之间的差异称为误差。学习器在训练集上的误差称为训练误差或者经验误差。而在新样本上的误差则称为泛化误差或者测试误差。

训练误差

泛化误差(测试误差)

欠拟合和过拟合

欠拟合:模型对训练数据的拟合程度不足或不够好的情况。

过拟合:模型过度学习了训练数据中的噪声和细节,导致对训练样本的拟合过于精确。

2.2评估方法

留出法

①直接将数据集D划分为两个互斥的集合。

②注意训练集和测试集同分布

③进行多次随机划分,训练出多个模型,最后取平均值

交叉验证法

①原始数据分为K份,K-1份作为训练集,甚于的作为测试集。

②K-1部分训练模型,对所有的测试结果取平均值。

自助法

①从原始数据集中随机选择n个样本构成一个新的数据集。

②使用新的数据集训练模型。

③使用原始数据集测试模型,计算模型的各项性能指标,再对每个性能指标取平均值和标准偏差。

2.3性能度量

查准率、查全率与F1

查准率

①预测结果中真正例(TP)占所有预测结果中正例(TP+FP)的比例。

②公式:Precision = TP / (TP + FP)

③查准率越高,说明模型预测结果中真正例的比例越高,模型对于正样本的识别能力越强。

查全率

①预测结果中真正例(TP)占所有实际正例(TP+FN)的比例。

②公式为:Recall = TP / (TP + FN)。

③查全率越高,说明模型能够成功预测出的正样本比例越高,模型的识别能力越全面。

F1

①查准率和查全率的调和均值,用于综合评价模型的性能。

②公式为:F1 = 2 * (Precision * Recall) / (Precision + Recall)。

③F1值越高,说明模型在准确性和可靠性方面的表现都较好。

P-R曲线

查准率和查全率是一对矛盾的度量.一般来说,查准率高时,查全率往往偏低;而查全率高时,查准率往往偏低。

以查准率为纵轴、查全率为横轴作图,就得到了查准率-查全率曲线,简称**"P-R曲线"**,显示该曲线的图称为"P-R图".

ROC与AUC

ROC曲线和AUC常被用来评价一个二值分类器的优劣。

ROC

它通过将真正例率假正例率作为横纵坐标来描绘分类器在不同阈值下的性能。

AUC

进行学习器的比较时,与P-R 图相似。

若一个学习器的 ROC 曲线被另个学习器的曲线完全"包住",则可断言后者的性能优于前者; 若两个学习器的 ROC 曲线发生交叉,则难以一般性地断言两者孰优敦劣。此时如果一定要进行比较.则较为合理的判据是比较 ROC 曲线下的面积即AUC。

代价敏感错误率与代价曲线

代价曲线

目的:对于一个模型,根据p不同,找到使得代价总期望最小的模型的阈值。

横轴:归一化的整改率代价期望。

纵轴:归一化的总代价期望。

2.4比较检验

评估学习性能的因素:泛化能力、测试集的选择、算法的随机性。

假设检验(二项检验)

泛化错误率e,是指学习器在一般情况下,对一个样本分类出错的概率(实际无法得知它的准确值)

测试错误率e ′ ,即学习器在测试一个m大小的样本集时恰好有e ′ m 个样本被分错类了(一般情况下只能获得这个值)

假设检验的方法就是用e'估计e的值。

相关推荐
todoitbo17 分钟前
基于 DevUI MateChat 搭建前端编程学习智能助手:从痛点到解决方案
前端·学习·ai·状态模式·devui·matechat
RickyWasYoung2 小时前
【笔记】智能汽车、电动汽车政策文件
笔记·汽车
Ma0407133 小时前
【机器学习】监督学习、无监督学习、半监督学习、自监督学习、弱监督学习、强化学习
人工智能·学习·机器学习
小熊officer3 小时前
Nginx学习
运维·学习·nginx
秋邱3 小时前
价值升维!公益赋能 + 绿色技术 + 终身学习,构建可持续教育 AI 生态
网络·数据库·人工智能·redis·python·学习·docker
Three~stone3 小时前
Matlab2025b的安装教程(附安装包和密钥破解文件)
学习·mysql·持续部署
爱学习的大牛1234 小时前
如何系统学习网络渗透测试:从入门到精通的完整指南
网络·学习
落子摘星4 小时前
suricata学习杂记(一)
学习·modbus·suricata·pdu
charlie1145141914 小时前
深入理解C/C++的编译链接技术6——A2:动态库设计基础之ABI设计接口
c语言·开发语言·c++·学习·动态库·函数
white-persist5 小时前
【攻防世界】reverse | Reversing-x64Elf-100 详细题解 WP
c语言·开发语言·网络·python·学习·安全·php