AI模型训练【偏差/方差】与【欠拟合/过拟合】

在我们拿到一个数据集,高高兴兴准备训练一个模型时,会遇到欠拟合或过拟合的问题,业内也喜欢用偏差和方差这两指标去定义它们,那这些词什么意思呢?有什么方法能避免/解决 欠拟合和过拟合呢?
这其实是非常非常基础的概念,但是其实即使是业内人士很难一下子把它们完全讲明白,并列出全面的解决方法,本文为你最通俗地解答。

目录

  • 欠拟合(Underfit)& 过拟合 (Overfit)
  • 偏差(bias)& 方差(variance)
  • 避免欠拟合/过拟合的技术!
    • 欠拟合
    • 过拟合

欠拟合(Underfit)& 过拟合 (Overfit)

先解释一下模型欠拟合和过拟合。假设大家已经知道训练集,验证集,测试集这个概念,不清楚的童鞋可以去康康我之前的博客哦 《无废话的机器学习笔记》

下面两个图(来自吴恩达机器学习课的PPT)解释得其实很清楚。
欠拟合:模型在训练集上没有得到足够好的拟合
过拟合:模型在训练集上得到过分好的拟合。
过分好有什么坏处呢,就比如训练集数据里都是白天的熊猫,模型把白天也作为特征学习了(对训练数据中的每个小细节都进行了学习,包括噪声和异常值),那么给一张黑夜的熊猫图,模型判断这不是熊猫。所以模型在训练集上表现完美,一到测试集就拉胯。(训练集上猛如虎,测试集上很离谱)

下面图的最靠右情况就是过拟合,这时模型往往变得非常复杂(有高次项,如x三次方和四次方)

在这里插入图片描述
 
在这里插入图片描述
 

偏差(bias)& 方差(variance)

偏差和方差数学里就是描述数据的特征嘛,大家觉得这有什么需要解释的,但机器学习里面,我们不是要求出一堆数据的偏差和方差,而是把它们当作一种指标来衡量模型的性能。
很多教程一上来给出这个图来理解偏差/方差,很直观,但其实这图很容易迷惑初学者,比如这里面的蓝点,到底是模型基于训练集还是验证集的预测,还是都有?如果都有,右下角那个图,落在红心附近的蓝点如果是基于训练集,那么这个模型应该是low bias。如果都是训练集,那么是及说明不了方差的,因为方差是衡量模型在不同集的表现波动,所以有点乱,我自己当时也是理解得模模糊糊。也可能是我理解有误,欢迎大家留言指教。
在这里插入图片描述
 
我个人理解它们在机器学习里的含义应该是这样:

偏差:训练集/验证集数据(模型预测)与红心(真实结果)的差距。重点在模型对训练集的损失函数。
(偏差衡量模型的预测结果与真实结果之间的差距,即模型的准确性。高偏差意味着模型的预测结果通常偏离正确值)

方差:模型对训练集与测试集的性能差别。重点在模型对训练集和测试集的损失函数之间的差别。若训练集和测试集的损失函数都很大,也叫低方差。
总的来说,方差衡量模型对于给定数据的小波动的敏感度,即模型在训练集和验证集上的表现波动。

 
下面这图将 欠拟合/过拟合 与 偏差/方差 的关系解释得完美。

在这里插入图片描述

λ是正则化项,它越大模型越被限制,变得越简单。后面会解释。总得来说,
欠拟合时,高偏差,低方差,模型较简单。(因为模型对于训练集和验证集误差都很大,所以低方差;如果模型在训练集上已经偏差很大,在验证集上更加离谱,偏差更大,那么这时可以说模型是高方差,不过这种情况极少发生。)
过拟合时,低偏差,高方差,模型较复杂。
理想的模型应该在偏差和方差之间找到良好的平衡。这就是所谓的偏差-方差权衡(Bias-Variance Tradeoff),追求偏差和方差都比较低!

下面这图解释得也不错,靠左边就是模型较简单时,模型对于训练集和验证集误差都很大,所以低方差;靠右边就是模型较复杂时,低偏差,高方差。
 
在这里插入图片描述

 

避免欠拟合/过拟合的技术!

欠拟合

  1. 增加模型复杂度
  2. 改进数据质量(增加数据量,数据清洗)
  3. 特征选择(选择更有代表性和信息量的特征)
  4. 增加训练时间
  5. 减少正则化(减小λ)
  6. 集成学习(结合多个模型的预测来提高整体的性能)

过拟合

  1. 减少模型复杂度
  2. 数据增强(Data Augmentation),对训练数据进行变换,如旋转、缩放、裁剪或颜色变化,白天和黑夜的熊猫图都要有,以增加数据多样性。
  3. 减少输入的特征(人为去除一些冗余的特征)
  4. 正则化!(误差函数中加入权重的L1或L2范数)(L1/L2正则可以去康康这篇 正则)
  5. 批量归一化(Batch Normalization):对每一层的输入进行归一化处理,稳定训练过程。(减少输入间变化对模型产生的影响,让每个隐藏层输出值均值与方差稳定在0和1,后面层的训练会更加稳定)(不过这招对缓解过拟合来说作用比较轻微)
  6. 提前停止(Early Stopping):如上面那图,在中间就停止,就完美,继续训练,方差会变大。
  7. 集成学习:结合多个模型的预测结果,如通过投票或平均,可以降低过拟合风险
  8. Dropout(在训练过程中随机丢弃一部分神经元,防止模型过于依赖训练数据中的特定样本)(Dropout可以理解为将集成学习效果通过一个网络模拟地实现,测试时神经元输出乘以删除比例,达到平均/集成的效果)其实Dropout也算正则化的一招,这里分开来讲。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/824144.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

将本地工作空间robot_ws上传到gitee仓库

git config --global user.name "geniusChinaHN" git config --global user.email "12705243geniuschinahnuser.noreply.gitee.com" cd ~/robot_ws #git init#创建原始仓库时候用 git add . git commit -m "上传文件内容描述" #git remote add r…

day9--java高级编程:多线程

1 Day16–多线程01 1.1 程序概念 程序(program):是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。 1.2 进程 1.2.1 概念 进程(process):是程序的一次执行过程,或是正在运行的一个程序。是一…

『番外篇七』SwiftUI 获取视图全局位置在 NavigationStack 中失效的解决方法

概览 在 番外篇六』SwiftUI 取得任意视图全局位置的三种方法 这篇博文里,我们详细讨论了在 SwiftUI 中获取任意视图全局坐标的几种方法。 不过,我们也从中提到了某些方法无法适用于 NavigationStack 视图,本篇博文由此应运而生。 在本篇博文种,您将学到如下内容: 概览1.…

git是什么,git入门常用基本命令

文章目录 git是什么1 .git init--初始化2.git status--检测当前文件夹下面文件状态3. git add--要管理的文件4.git add . --管理当前文件夹下的所有文件5.git commit -m--生成第一个版本6.git log--查看版本的记录 git是什么 分布式,版本控制,软件 版本…

通信原理课设(gec6818) 007:语音识别

目录 1、去科大讯飞官网下载对应的sdk 2、科大讯飞文件夹的意思 3、配置ARM的录音环境 4、编程实现语音识别 我们的需求是将一个语音文件从客户端传到服务器,因此我们最好是选用tcp 现在市面上面常用的语音识别解决方案为:科大讯飞c和百度c 离…

zookeeper之集群搭建

1. 集群角色 zookeeper集群下,有3种角色,分别是领导者(Leader)、跟随着(Follower)、观察者(Observer)。接下来我们分别看一下这三种角色的作用。 领导者(Leader): 事务请求(写操作)的唯一调度者和处理者,保…

【C语言】一篇文章深入解析联合体和枚举且和结构体的区别

文章目录 📝前言🌠 联合体类型的声明🌉联合体的特点 🌠相同成员的结构体和联合体对⽐🌉联合体⼤⼩的计算 🌠联合体应用🌉枚举类型的声明 🌠枚举类型的优点🌉 枚举类型的使…

MacBook查看本机IP

嘚吧嘚 其实这也不是什么困难的问题,但是今年刚刚入坑Mac,外加用的频率不是很高,每次使用的时候都查,用完就忘,下次用的时候再查🤮。真的把自己恶心坏了🙈。 所以写篇文章记录一下&#x1f92…

软件设计师——软件工程(三)

📑前言 本文主要是【软件工程】——软件设计师——软件工程的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 &#x1f304…

Rust开发⼲货集(1)--迭代器与消费器

本内容是对 Rust开发干货集[1] 的实践与扩展. iter() 不转移所有权 先简单解释下什么叫"转移所有权": 在 Rust 中,"转移所有权"(Ownership Transfer)是一种核心概念,它涉及变量和数据的所有权从一个实体转移…

基于AM62x的ARM+FPGA+Codesys低成本软PLC解决方案

GPMC并口简介 GPMC(General Purpose Memory Controller)是TI处理器特有的通用存储器控制器接口,支持8/16bit数据位宽,支持128MB访问空间,最高时钟速率133MHz。GPMC是AM62x、AM64x、AM437x、AM335x、AM57x等处理器专用于与外部存储器设备的接口…

2023年03月22日_腾讯2022年财报解读

文章目录 1 - 腾讯营收增长停滞2 - 腾讯游戏业务低迷3 - 小程序和视频号拉动广告增长4 - 腾讯云和金融科技表现不佳5 - 营销费用减半6 - 裁员但福利上涨 2023年03月22日 今天晚上呢 腾讯披露了2022年第四季度和全年的财报 看过之后呢不禁要说 腾讯在2022年真的是过得不容易啊…

【Java开发岗面试】八股文—操作系统

声明: 背景:本人为24届双非硕校招生,已经完整经历了一次秋招,拿到了三个offer。本专题旨在分享自己的一些Java开发岗面试经验(主要是校招),包括我自己总结的八股文、算法、项目、HR面和面试技巧…

3D视觉-结构光测量-线结构光测量

概述 线结构光测量中,由激光器射出的激光光束透过柱面透镜扩束,再经过准直,产生一束片状光。这片光束像刀刃一样横切在待测物体表面,因此线结构光法又被成为光切法。线结构光测量常采用二维面阵 CCD 作为接受器件,因此…

【Web】vulhub-httpd apache解析漏洞复现(1)

目录 ①CVE-2017-15715 ②apache_parsing_vulnerability ①CVE-2017-15715 贴出源码&#xff1a; <?php if(isset($_FILES[file])) {$name basename($_POST[name]);$ext pathinfo($name,PATHINFO_EXTENSION);if(in_array($ext, [php, php3, php4, php5, phtml, pht]))…

python+django大自然环境保护宣传网站62r9b

本课题使用Python语言进行开发。基于web,代码层面的操作主要在PyCharm中进行&#xff0c;将系统所使用到的表以及数据存储到MySQL数据库中 本系统由后台管理子系统&#xff0c;登录子系统&#xff0c;按登陆角色及权限划分为管理员:个人中心&#xff0c;用户管理&#xff0c;文…

macos 打开终端提示 You have new mail. 去除方法

这个提示信息是macos里面的mail消息提示, 如果需要查看详细的信息可以在终端输入 mail 命令即可查看所有信息, 这些信息都保存在 /private/var/mail/xxx 文件中 xxx 是你的macos的登录用户名, 要去除这些提示,只需要删除这个文件即可 # 删除mail信息存储文件 sudo rm -rf /…

androidStudio 没有新建flutter工程的入口?

装了flutter dart 插件 执行了 flutter doctor 也执行了 flutter doctor --android-license 最后重启了 androidStudio 还是没发现在哪新建flutter项目工程 原来 plugins 下的 Android APK Support没有勾选

Apache-ActiveMQ 反序列化漏洞(CVE-2015-5254)复现

CVE-2016-3088 一、环境搭建 Java:jdk8 影响版本 Apache ActiveMQ < 5.13.0 二、用docker搭建漏洞环境 访问一下web界面 然后进入admin目录登录 账号:admin 密码:admin 三、工具准备 cd /opt wget https://github.com/matthiaskaiser/jmet/releases/download/0.1.0/jmet-0…

大模型推理部署:LLM 七种推理服务框架总结

自从ChatGPT发布以来&#xff0c;国内外的开源大模型如雨后春笋般成长&#xff0c;但是对于很多企业和个人从头训练预训练模型不太现实&#xff0c;即使微调开源大模型也捉襟见肘&#xff0c;那么直接部署这些开源大模型服务于企业业务将会有很大的前景。 本文将介绍七中主流的…