机器学习【西瓜书/南瓜书】--- 第2章模型评估与选择(下)(学习笔记+公式推导)

简介: 本博客为博主在学习 机器学习【西瓜书 / 南瓜书】过程中的学习笔记,每一章都是对《西瓜书》、《南瓜书》内容的总结和提炼笔记,博客可以作为各位读者的辅助思考,也可以做为读者快读书籍的博文,本博客对西瓜书所涉及公式进行详细的推理以及讲解,本人认为,不推导公式所学得的知识是没有深度的,是很容易忘记的,有些公式推导起来并不复杂,只是被看似复杂的数学表达式所“吓唬”,希望大家拿上纸笔,跟着博主一起学习,一起推导。

前言

本博客为博主在学习 机器学习西瓜书/南瓜书】过程中的学习笔记,每一章都是对《西瓜书》、《南瓜书》内容的总结和提炼笔记,博客可以作为各位读者的辅助思考,也可以做为读者快读书籍的博文,本博客对西瓜书所涉及公式进行详细的推理以及讲解,本人认为,不推导公式所学得的知识是没有深度的,是很容易忘记的,有些公式推导起来并不复杂,只是被看似复杂的数学表达式所“吓唬”,希望大家拿上纸笔,跟着博主一起学习,一起推导。


对于哪一部分的推导不理解的,可以评论出来,博主看到之后会尽快回复!


❗️ 注:本篇文章是第2章,其涵盖内容较为多和杂,读者在读本章节时,做到有所印象即可,其各种判断方法可以结合后续文章中的样例进行更进一步的理解。


本文只是第二章知识总结的一半,另一半见博客:机器学习【西瓜书/南瓜书】— 第2章模型评估与选择(上)(学习笔记+公式推导)


2.4 比较检验

我们希望比较的是 泛化性能,但是我们通过实验评估方法获得的是测试集上的性能,两者未必相同;测试集上的性能与测试集的选择有很大的关系,且对于不同大小的测试集也会得到不同的结果;机器学习算法本身具有一定的随机性:即用相同的参数设置在同一个测试集上运行多次,产生的结果可能也不一样。


image.png

2.4.1 假设检验

image.png

image.png

image.png

image.png

image.png

2.4.2 交叉验证 t 检验

image.png

image.png

2.4.3McNemar检验

image.png

2.4.4Friedman检验与Nemenyi 后续检验

image.png

image.png

image.png

image.png

image.png

2.5 偏差与方差

image.png

image.png

推导过程:

image.png

image.png

image.png

证毕!!!

我们来复盘一下:

偏差度量了学习算法的期望预测与真实结果的偏离程度,刻画了学习算法本身的拟合能力

方差度量了同样大小的训练集的变动所导致的学习性能的变化,刻画了数据扰动所造成的影响

噪声表达了当前任务上任何学习算法所能达到的期望泛化误差的下界,刻画了学习问题本身的难度

偏差-方差分解说明,泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的,给定学习任务,为了取得更好的性能,则需偏差较小,即能充分拟合数据,并使得方差较小,即使得数据扰动产生的影响小。


一般来说,偏差和方差是有冲突的,这成为 偏差-方差窘境 (biasvariance dilemma),如下图所示,给定学习任务,假定我们能控制学习算法的训练程度,那么当训练不足的时候,学习器的拟合能力不够强,训练数据的扰动不足以使得学习器产生显著的变化,此时偏差主导了泛化错误率;随着训练程度的加深,学习器的拟合能力逐渐增强,训练数据发生的扰动渐渐能被学习器所学到,方差逐渐主导了泛化错误率;在训练程度充足后,学习器的拟合能力已经非常强,训练数据的轻微扰动都会导致学习器发生显著的变化,若训练数据自身的、非全局的性质被学习器学到了,则发生过拟合。

image.png


image.png

目录
相关文章
|
15天前
|
机器学习/深度学习 数据采集 人工智能
构建高效机器学习模型的五大技巧
【4月更文挑战第7天】 在数据科学迅猛发展的今天,机器学习已成为解决复杂问题的重要工具。然而,构建一个既精确又高效的机器学习模型并非易事。本文将分享五种提升机器学习模型性能的有效技巧,包括数据预处理、特征工程、模型选择、超参数调优以及交叉验证。这些方法不仅能帮助初学者快速提高模型准确度,也为经验丰富的数据科学家提供了进一步提升模型性能的思路。
|
20天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型的最佳实践
【4月更文挑战第3天】在数据驱动的时代,构建高效的机器学习模型已成为解决复杂问题的关键。本文将探讨一系列实用的技术策略,旨在提高模型的性能和泛化能力。我们将从数据预处理、特征工程、模型选择、超参数调优到集成学习等方面进行详细讨论,并通过实例分析展示如何在实践中应用这些策略。
15 1
|
5天前
|
机器学习/深度学习 存储 算法
PYTHON集成机器学习:用ADABOOST、决策树、逻辑回归集成模型分类和回归和网格搜索超参数优化
PYTHON集成机器学习:用ADABOOST、决策树、逻辑回归集成模型分类和回归和网格搜索超参数优化
26 7
|
6天前
|
机器学习/深度学习 算法 数据处理
构建自定义机器学习模型:Scikit-learn的高级应用
【4月更文挑战第17天】本文探讨了如何利用Scikit-learn构建自定义机器学习模型,包括创建自定义估计器、使用管道集成数据处理和模型、深化特征工程以及调优与评估模型。通过继承`BaseEstimator`和相关Mixin类,用户可实现自定义算法。管道允许串联多个步骤,而特征工程涉及多项式特征和自定义变换。模型调优可借助交叉验证和参数搜索工具。掌握这些高级技巧能提升机器学习项目的效果和效率。
|
7天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型:从特征工程到模型调优
【4月更文挑战第16天】 在数据驱动的时代,机器学习已成为解决复杂问题的关键工具。本文旨在分享一套实用的技术流程,帮助读者构建高效的机器学习模型。我们将重点讨论特征工程的重要性、选择合适算法的策略,以及通过交叉验证和网格搜索进行模型调优的方法。文章的目标是为初学者提供一个清晰的指南,同时为有经验的实践者提供一些高级技巧。
|
7天前
|
机器学习/深度学习 人工智能 分布式计算
R和Python机器学习:广义线性回归glm,样条glm,梯度增强,随机森林和深度学习模型分析
R和Python机器学习:广义线性回归glm,样条glm,梯度增强,随机森林和深度学习模型分析
10 0
|
13天前
|
机器学习/深度学习 JavaScript 前端开发
机器学习模型部署:使用Python和Vue搭建用户友好的预测界面
【4月更文挑战第10天】本文介绍了如何使用Python和Vue.js构建机器学习模型预测界面。Python作为机器学习的首选语言,结合Vue.js的前端框架,能有效部署模型并提供直观的预测服务。步骤包括:1) 使用Python训练模型并保存;2) 创建Python后端应用提供API接口;3) 利用Vue CLI构建前端项目;4) 设计Vue组件实现用户界面;5) 前后端交互通过HTTP请求;6) 优化用户体验;7) 全面测试并部署。这种技术组合为机器学习模型的实用化提供了高效解决方案,未来有望更加智能和个性化。
|
17天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型:从数据预处理到模型优化
【4月更文挑战第6天】本文聚焦于机器学习模型的开发流程,旨在提供一套系统的方法论以构建出更高效的模型。我们将深入探讨数据预处理的重要性,特征工程的策略,以及如何通过交叉验证和超参数调优来提升模型性能。文章不仅涉及理论分析,还包括了实际案例的代码实现,为读者呈现一个从数据处理到模型部署的完整蓝图。
14 0
|
18天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型:从数据预处理到模型优化
【4月更文挑战第5天】 在机器学习领域,构建一个高效的模型并非易事。它涉及多个阶段,包括数据预处理、特征工程、模型选择、训练以及最终的评估和优化。本文深入探讨了如何通过精确的数据预处理技巧和细致的特征工程来提升模型性能,同时介绍了几种常见的模型优化策略。我们的目标是为读者提供一套实用的指导方案,帮助他们在面对复杂数据集时能够有效地构建和调整机器学习模型。
|
19天前
|
机器学习/深度学习 算法 数据挖掘
构建高效机器学习模型:从特征工程到模型调优
【4月更文挑战第4天】在数据驱动的时代,构建一个高效的机器学习模型是解决复杂问题的关键。本文将深入探讨特征工程的重要性,并分享如何通过自动化技术进行特征选择与构造。接着,我们将讨论不同的机器学习算法及其适用场景,并提供模型训练、验证和测试的最佳实践。最后,文章将展示如何使用网格搜索和交叉验证来微调模型参数,以达到最优性能。读者将获得一套完整的指南,用以提升机器学习项目的预测准确率和泛化能力。