机器学习三要素与拟合问题

1.如何构建机器学习模型?

机器学习工作流程总结

1.获取数据

2.数据基本处理

3.特征工程

4.机器学习(模型训练)

5.模型评估

结果达到要求,上线服务,没有达到要求,重新上面步骤

  • 我们使用机器学习监督学习分类预测模型的工作流程讲解机器学习系统整套处理过程:

2. 模型

机器学习中,首先要考虑学习什么样的模型,在监督学习中,如模型 y=kx+b 就是所要学习的内容。 模型通常分为决策函数或条件概率分布。由决策函数表示的模型为非概率模型,由条件概率分布表示的模型为概率模型。

模型是指在对实际问题进行分析和高度抽象基础上建立起来的一组数学表达式

3. 策略

评价模型的好坏,使用损失函数进行度量,模型给出的值与实际真实值存在的差别。 损失函数度量模型一次预测的好坏,常用的损失函数有:

 

4. 算法

机器学习的算法就是求解最优化问题的算法。如果最优化问题有显示的解析解,这个最优化问题就比较简单,但通常这个解析解不存在,所以就需要利用数值计算的方法来求解。机器学习可以利用已有的最优化算法,也可以开发独自的最优化算法。

1. 欠拟合

下图中,蓝色点是初始数据点, 用来训练模型。绿色的线用来表示最佳模型, 红色的线表示当前的模型

 

 

上面两张图中,红色直线代表的模型都属于欠拟合的情况:

  • 模型在训练集上表现的效果差,没有充分利用数据

  • 预测准确率很低,拟合结果严重不符合预期

产生的原因 :模型过于简单

出现的场景:欠拟合一般出现在机器学习模型刚刚训练的时候,也就是一开始我们的模型往往是欠拟合也正是因为如此才有了优化的空间,我们通过不断优化调整算法来使得模型的表达能力更强。

 

解决办法:

(1)添加其他特征项:因为特征项不够而导致欠拟合,可以添加其他特征项来很好的解决。

(2)添加多项式特征,我们可以在线性模型中通过添加二次或三次项使得模型的泛化能力更强。

(3)减少正则化参数,正则化的目的是用来防止过拟合的,但是现在模型出现了欠拟合,需要减少正则化参数。

2. 过拟合

上图是模型过拟合的情况:即模型在训练集上表现的很好,但是在测试集上效果却很差。也就是说,在已知的数据集合中非常好,再添加一些新数据进来效果就会差很多。

产生的原因: 可能是模型太过于复杂、数据不纯、训练数据太少等造成。

出现的场景: 当模型优化到一定程度,就会出现过拟合的情况。

解决办法:

(1)重新清洗数据:导致过拟合一个原因可能是数据不纯导致的

(2)增大训练的数据量:导致过拟合的另一个原因是训练数据量太小,训练数据占总数据比例太低。

(3)采用正则化方法对参数施加惩罚:导致过拟合的原因可能是模型太过于复杂,我们可以对比较重要的特征增加其权重,而不重要的特征降低其权重的方法。常用的有L1正则和L2正则,后续课程中会详细介绍

(4)采用dropout方法,即采用随机采样的方法训练模型,常用于神经网络算法中。

注意:模型的过拟合是无法彻底避免的,我们能做的只是缓解,或者说减小其风险,因为机器学习面临的是NP难问题(这列问题不存在有效精确解,必须寻求这类问题的有效近似算法求解),因此过拟合是不可避免的。在实际的任务中往往通过多种算法的选择,甚至对同一个算法,当使用不同参数配置时,也会产生不同的模型。那么,我们也就面临究竟选择哪一种算法,使用哪一种参数配置?这就是我们在机器学习中的“模型选择(model select)”问题,理想的解决方案是对候选模型的泛化误差进行评估,然后选择泛化误差最小的那个模型。

3. 奥卡姆剃刀原则

奥卡姆剃刀原则是模型选择的基本而且重要的原则。 模型是越复杂,出现过拟合的几率就越高,因此,我们更喜欢采用较为简单的模型。这种策略与应用就是一直说的奥卡姆剃刀(Occam’s razor)或节俭原则(principe of parsimony)一致。 奥卡姆剃刀:给定两个具有相同泛化误差的模型,较简单的模型比较复杂的模型更可取。

4. 泛化能力

下图是泛化能力较好的图示,M=3表示3次多项式

机器学习的目标是使学得的模型能很好地适用于“新样本”,而不是仅仅在训练样本上工作的很好;即便对聚类这样的无监督学习任务,我们也希望学得的簇划分能适用于没在训练集中出现的样本。

学得模型适用于新样本的能力,称为“泛化”(generalization)能力。具有强泛化能力的模型能很好地适用于整个样本空间。(现实任务中的样本空间的规模通常很大,如20 个属性,每个属性有10个可能取值,则样本空间的规模是1020)。

泛化的概念

【基础概念】模型具有好的泛化能力指的是:模型不但在训练数据集上表现的效果很好,对于新数据的适应能力也有很好的效果。

当我们讨论一个机器学习模型学习能力和泛化能力的好坏时,我们通常使用过拟合和欠拟合的概念,过拟合和欠拟合也是机器学习算法表现差的两大原因。  

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

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

相关文章

python flask学生成绩管理系统,包含使用文档

python flask学生成绩管理系统。 一.功能介绍 系统交互 登录无需注册功能 学生以学生编号为用户名,密码默认为学生编号,可修改教师以教师编号为用户名,密码默认为教师编号,可修改管理员以admin作为用户名,密码为固定…

【Python基础】字符串

文章目录 [toc]什么是字符串索引示例索引越界 切片语法示例 字符串方法find()方法rfind()方法count()方法replace()方法 个人主页:丷从心 系列专栏:Python基础 什么是字符串 如下定义的变量url存储的是字符串类型的值 url www.baidu.com print(url)u…

【经验分享】日常开发中的故障排查经验分享(一)

目录 简介CPU飙高问题1、使用JVM命令排查CPU飙升100%问题2、使用Arthas的方式定位CPU飙升问题3、Java项目导致CPU飙升的原因有哪些?如何解决? OOM问题(内存溢出)1、如何定位OOM问题?2、OOM问题产生原因 死锁问题的定位…

【力扣】20.有效的括号

家人们,看这排序,一看就很简单,对吧?不对,我觉得还挺不是很容易的,哈哈哈。 题解: 在看题目的时候,我一开始的解题思路就挺复杂的。题目说了”左括号必须以正确的顺序闭合“&#x…

PyTorch深度学习实战(29)——神经风格迁移

PyTorch深度学习实战(29)——神经风格迁移 0. 前言1. 神经风格迁移原理1.1 模型介绍1.2 GramMatrix 的重要性 2. 神经风格迁移模型构建策略3. 使用 Keras 实现神经风格迁移小结系列链接 0. 前言 神经风格迁移 (Neural Style Transfer) 是一种基于深度学…

C语言中的联合体的由来和存储

一、联合体的由来 1.1. 数据类型的不足 C语言中,基本数据类型只有整型、字符型、浮点型等少数几种,无法满足复杂数据类型的需要。 1.2. 数组的限制 虽然数组可以存储多个同类型的数据,但是数组中的元素个数是固定的,无法动态地…

【51单片机系列】DS18B20温度传感器扩展实验之设计一个智能温控系统

本文是关于DS18B20温度传感器的一个扩展实验。 文章目录 一、相关元件介绍二、实验分析三、proteus原理图设计四、软件设计 本扩展实验实现的功能:利用DS18B20设计一个智能温度控制系统,具有温度上下限值设定。当温度高于上限值时,电机开启&a…

[react]脚手架create-react-app/vite与reac项目

[react]脚手架create-react-app/vite与reac项目 环境问题描述create-react-app 脚手架根据脚手架修改项目结构安装脚手架注入配置文件-config文件夹package.json文件变更删除 serviceWorker.js新增reportWebVitals.js文件更新index.js文件 脚手架creat-react-app 缺点 vite 脚手…

Java技术栈 —— Nginx的使用

Java技术栈 —— Nginx的使用 一、认识Nginx二、搭建Nginx环境2.1 在Ubuntu上安装Nginx 三、使用Nginx3.1 配置负载均衡(HTTP) 一、认识Nginx 企业需要运行多个相同的副本,并将负载分散在整个系统集群上,为了高性能的负载均衡,引入了Nginx代…

阿里云30个公共云地域、89个可用区、5个金融云和政务云地域

阿里云基础设施目前已面向全球四大洲,公共云地域开服运营30个公共云地域、89个可用区,此外还拥有5个金融云、政务云地域,并且致力于持续的新地域规划和建设,从而更好的满足用户多样化的业务和场景需求。伴随着基础设施的加速投入和…

[RoarCTF2019] TankGame

不多说,用dnspy反编译data文件夹中的Assembly-CSharp文件 使用分析器分析一下可疑的FlagText 发现其在WinGame中被调用,跟进WinGame函数 public static void WinGame(){if (!MapManager.winGame && (MapManager.nDestroyNum 4 || MapManager.n…

【C语言】数据结构——排序(一)

💗个人主页💗 ⭐个人专栏——数据结构学习⭐ 💫点击关注🤩一起学习C语言💯💫 目录 导读:数组打印与交换1. 插入排序1.1 直接插入排序1.1.1 基本思想1.1.2 实现代码1.1.3 图解 1.2 希尔排序1.2.1…

机器人中的数值优化之无约束优化

欢迎大家关注我的B站: 偷吃薯片的Zheng同学的个人空间-偷吃薯片的Zheng同学个人主页-哔哩哔哩视频 (bilibili.com) 本文ppt来自深蓝学院《机器人中的数值优化》

人工智能的新篇章:深入了解大型语言模型(LLM)的应用与前景

LLM(Large Language Model)技术是一种基于深度学习的自然语言处理技术,旨在训练能够处理和生成自然语言文本的大型模型。 LLM 技术的核心思想是使用深度神经网络,通过大规模的文本数据预训练模型,并利用这些预训练模型…

伪装目标检测的算术不确定性建模

Modeling Aleatoric Uncertainty for Camouflaged Object Detection 伪装目标检测的算术不确定性建模背景贡献实验方法Camouflaged Object Detection Network(伪装目标检测框架)Online Confidence Estimation Network(在线置信度估计网络&…

【Week-P3】CNN天气识别

文章目录 一、环境配置二、准备数据三、搭建网络结构四、开始训练五、查看训练结果六、总结6.1 不改变学习率的前提下,将训练epoch分别增加到60、70、80、90(1)epoch 50 的训练情况如下:(2)epoch 60 的训…

Redis哨兵sentinel

是什么? 哨兵巡查监控后台master主机是否故障,如果故障根据投票数自动将某一个slave库变为master,就行对外服务,称为无人值守运维 能干嘛? 主从监控:监控主从redis库是否正常工作 消息通知:…

C++面向对象(OOP)编程-C++11新特性详解

C11作为一个重要的版本,引入了很多新的特性,解决了C语言本身很多遗留的内存泄露问题,并且提供了很多比较灵活的用法。引入的auto,智能指针、线程机制都使得C语言的灵活性、安全性、并发性有了很大的提升。 本文会比较详细的介绍C1…

YOLOv5改进 | 2023注意力篇 | FocusedLinearAttention聚焦线性注意力

一、本文介绍 本文给大家带来的改进机制是FLAttention(聚焦线性注意力)是一种用于视觉Transformer模型的注意力机制(但是其也可以用在我们的YOLO系列当中从而提高检测精度),旨在提高效率和表现力。其解决了两个在传统线性注意力方法中存在的…

MySQL 数据库归档工具pt-archive 与归档数据的安全存储 与 为什么每次归档都少数...

开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, Oceanbase, Sql Server等有问题,有需求都可以加群群内,可以解决你的问题。加群请联系 liuaustin3 ,(共1780人左右 1 2 3 4 5&#xff0…