当前位置: 首页 > news >正文

如何解决过拟合与欠拟合,及理解k折交叉验证

模型欠拟合:在训练集以及测试集上同时具有较⾼的误差,此时模型的偏差较⼤;

模型过拟合:在训练集上具有较低的误差,在测试集上具有较⾼的误差,此时模型的⽅差较⼤。

在这里插入图片描述

如何解决⽋拟合:

  1. 添加其他特征项。组合、泛化、相关性、上下⽂特征、平台特征等特征是特征添加的重要⼿段,有时候特征项不够会导致模型⽋拟合。
  2. 添加多项式特征。例如将线性模型添加⼆次项或三次项使模型泛化能⼒更强。增加了⼆阶多项式,保证了模型⼀定的拟合程度。
  3. 可以增加模型的复杂程度。
  4. 减⼩正则化系数。正则化的⽬的是⽤来防⽌过拟合的,但是现在模型出现了⽋拟合,则需要减少正则化参数。

如何解决过拟合:

  1. 重新清洗数据,数据不纯会导致过拟合,此类情况需要重新清洗数据。
  2. 增加训练样本数量。
  3. 降低模型复杂程度。
  4. 增⼤正则项系数。
  5. 采⽤dropout⽅法,dropout⽅法,通俗的讲就是在训练的时候让神经元以⼀定的概率不⼯作。
  6. 减少迭代次数。
  7. 增⼤学习率。
  8. 添加噪声数据。
  9. 树结构中,可以对树进⾏剪枝。
  10. 减少特征项。

k折交叉验证

  1. 将含有N个样本的数据集,分成K份,每份含有N/K个样本。选择其中1份作为测试集,另外K-1份作为训练集,测试集就有K种情况。
  2. 在每种情况中,⽤训练集训练模型,⽤测试集测试模型,计算模型的泛化误差。
  3. 交叉验证重复K次,每份验证⼀次,平均K次的结果或者使⽤其它结合⽅式,最终得到⼀个单⼀估测,得到模型最终的泛化误差。
  4. 将K种情况下,模型的泛化误差取均值,得到模型最终的泛化误差。
  5. ⼀般 。 k折交叉验证的优势在于,同时重复运⽤随机产⽣的⼦样本进⾏训练和验证,每次的结果验证⼀次,10折交叉验证是最常⽤的。
  6. 训练集中样本数量要⾜够多,⼀般⾄少⼤于总样本数的50%。
  7. 训练集和测试集必须从完整的数据集中均匀取样。均匀取样的⽬的是希望减少训练集、测试集与原数据集之间的偏差。当样本数量⾜够多时,通过随机取样,便可以实现均匀取样的效果。
http://www.lryc.cn/news/16531.html

相关文章:

  • Kotlin 34. recyclerView 案例:显示列表
  • JAVA练习58-汉明距离、颠倒二进制位
  • 优炫数据库百城巡展,成都首站圆满举行
  • 【20230210】二叉树小结
  • openCV—图像入门(python)
  • 关于一个Java程序员马上要笔试了,临时抱佛脚,一晚上恶补45道简单SQL题,希望笔试能通过
  • PyTorch深度学习实战
  • leetcode 1011. Capacity To Ship Packages Within D Days(D天内运送包裹的容量)
  • 支持向量机SVM详细原理,Libsvm工具箱详解,svm参数说明,svm应用实例,神经网络1000案例之15
  • Mac 上搭建 iOS WebDriverAgent 环境
  • python学习笔记之例题篇NO.3
  • 【Kubernetes】第七篇 - Service 服务介绍和使用
  • Linux 终端复用器Tmux
  • Hadoop集群模式安装(Cluster mode)
  • PTA L1-054 福到了(详解)
  • python -- 魔术方法
  • 「JVM 编译优化」提前编译器
  • Golang channel 用法与实现原理
  • jackson 序列化、反序列化的时候第一个大写单词变成小写了(属性设置不成功)
  • 如何判断机器学习数据集是否是线性的
  • 后端基础SQL
  • Ubuntu 18.04 上编译和安装内核(内核源码版本)
  • day 53|● 1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和 动态规划
  • 运维工程师必知的十项Linux常识
  • C++ 11 之右值引用和移动语义
  • 【第一章:Spring概述、特点、IOC容器、IOC操作bean管理(基于xml方式)】
  • CSS变量
  • .net7窗口编程c#2022实战(1)-zip压缩精灵(1)
  • 云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM
  • 中央一号文件首提“即时零售”,县域掀起消费业态新风潮