常用的正则化形式(横截面模型拟合优度过高的原因)

2024-06-06 00:49:10 4

常用的正则化形式(横截面模型拟合优度过高的原因)

本文目录

横截面模型拟合优度过高的原因

所谓模型过拟合现象:在训练网络模型的时候,会发现模型在训练集上表现很好,但是在测试集上表现一般或者很差。总结一句话:已知数据预测的很好,但对未知数据预测得很差的现象。模型过拟合将图片数据的噪声当成特征点学习进去,导致模型的泛化能力很差,只能在训练集上表现不错,对未知的其它样本预测表现不佳!我们通过深度学习或者机器学习的根本问题是解决优化和泛化的问题平衡。优化问题:训练模型以在训练数据上得到最佳性能。泛化问题:模型在测试集上的取得很好的性能。简单分析在模型训练过程的初期和后期:2、模型拟合模型拟合分为过拟合和欠拟合以及适度拟合。下面以表格的形式表示拟合程度的简要判断标准。训练集准确率测试集准确率得出结论不好不好欠拟合好不好过拟合好好适度拟合以下是欠拟合、适度拟合、过拟合的抽象数学表达以及形象展示拟合的程度。第1组模型欠拟合:模型复杂度过低,抽象出的数学公式过于简单,有很多错分的数据,不能很好的你和我们的训练集。第2组模型拟合适度:虽然有个别错误数据点,但是预测新数据效果很好。第3组模型过拟合:模型复杂度过高,抽象出的数学公式非常复杂,很完美的拟合训练集的每个数据,但过度强调拟合原始数据。预测新数据时它的表现性很差。3、简述原因欠拟合:训练的特征量过少。模型复杂度过低,网络模型过于简单。训练数据集非常不健康,存在大量的错误标注。过拟合:样本数量太少,样本数据不足以代表预定的分类规则。样本噪音干扰过大,将大部分噪音认为是特征从而扰乱了预设的分类规则。4、欠拟合解决办法对于欠拟合:总结一句话是模型简单的,样本数据量不够。扩充样本数据,则增加更多的样本数据特征,使输入数据具有更强的表达能力。增加模型复杂度:更换更复杂的网络模型,或者网络模型取消掉原有的正则化参数,正则化的目的是用来防止过拟合的,但是模型出现了欠拟合,则需要减少正则化参数,不过这种方法一般不用,通常是更换更复杂的网络。增加模型训练的迭代次数,模型训练迭代次数太少,训练的数据特征未充分学习。手动调整参数和超参数。5、过拟合解决办法对于过拟合:发生过拟合最常见的现象就是数据量太少而模型太复杂。训练集的数量级和模型的复杂度不匹配,大致思路是训练集的数量级要小于模型的复杂度。首先增加训练数据数的样本数据量,并检查样本标签的准确性,训练集越多,过拟合的概率越小。最好的是人工标注高质量的数据,可以采用一定的数据增强策略,来实现数据集的扩充。注意扩充后的图像要手动确认,因为可能会有脏数据,从而会引入一定的噪声,噪声也会影响模型的性能的。样本噪音干扰过大,需要手动清理掉脏数据,否则模型过分学习了噪音特征,反而忽略了真实的输入输出间的关系参数太多,模型复杂度过高,将模型更换为更简单的网络模型,或者正则化L1和L2。 L1是模型各个参数的绝对值之和。L2是模型各个参数的平方和的开方值。使用正则化约束:损失函数后面添加正则化项,可以避免训练出来的参数过大从而使模型过拟合。使用正则化缓解过拟合的手段广泛应用,不论是在线性回归还是在神经网络的梯度下降计算过程中,都应用到了正则化的方法。常用的正则化有l1正则和l2正则。使用Dropout,即按一定的比例去除隐藏层的神经单元,使神经网络的结构简单化。torch.nn.Dropout(0.6),这里的0.6是神经元不保留的概率。使用BN:Batch Normalization批归一化处理层,作用非常大。使得每一层的数据分布不变,做归一化处理,加快了模型的收敛速度,避免梯度消失、提高准确率。保证训练数据的分布和测试数据的分布要保持一致,否则模型学习识鸟,你用它识别鸡蛋。不要过度训练,提前结束训练early-stopping:训练时间足够长,模型就会把一些噪声隐含的规律学习到,这个时候降低模型的性能是显而易见的。所以建议在模型迭代训练时候记录训练精度(或损失)和验证精度(或损失),如果模型训练的效果不再提高,比如训练误差一直在降低但是验证误差却不再降低甚至上升,这时候便可以结束模型训练了。手动调整参数和超参数。

(二):GBDT算法梳理

GBDT(Gradient Boosting Decision Tree)是一种采用加法模型(即基函数的线性组合)与前向分步算法并以决策树作为基函数的提升方法。通俗来说就是,该算法由多棵决策树组成,所有树的结论加起来形成最终答案。 GBDT也是集成学习Boosting家族的成员,但是却和传统的Adaboost有很大的不同。回顾下Adaboost,我们是利用前一轮迭代弱学习器的误差率来更新训练集的权重,这样一轮轮的迭代下去。GBDT也是迭代,使用了前向分布算法,但是弱学习器限定了只能使用CART回归树模型,同时迭代思路和Adaboost也有所不同。

在GBDT的迭代中,假设我们前一轮迭代得到的强学习器是ft−1(x), 损失函数是L(y,ft−1(x)), 我们本轮迭代的目标是找到一个CART回归树模型的弱学习器ht(x),让本轮的损失函数L(y,ft(x)=L(y,ft−1(x)+ht(x))最小。也就是说,本轮迭代找到决策树,要让样本的损失尽量变得更小。

要理解GBDT算法,得先来了解一下什么是前向分步算法。下面一起来瞧瞧。

我们将

作为加法模型,其中b(x;γm)为基函数,γm为基函数的参数,βm为基函数的系数,βm表示着对应的基函数在加法模型f(x)中的重要性。

在给定训练数据和损失函数L(y,f(x))的条件下,学习加法模型成为经验风险极小化 (即损失函数极小化问题) :

前向分步算法求解这一优化问题的思路: 因为学习的是加法模型,如果能够从前向后,每一步只学习一个基函数及其系数,逐步去逼近上述的目标函数式,就可简化优化的复杂度,每一步只需优化如下损失函数:

前向分步算法流程:

因此,前向分布算法将同时求解从m=1到M的所有参数βm, rm的优化问题简化为逐次求解各个βm, rm的优化问题。

提升树利用加法模型与前向分步算法实现学习的优化过程,当损失函数是平方损失和指数损失函数时,每一步优化很简单,但对一般损失函数而言,每一步的优化并不容易。Freidman提出了 梯度提升算法 (gradient boosting),其关键是利用损失函数的负梯度在当前模型的值作为回归问题提升树算法中的残差的近似值,拟合一个回归树(用损失函数的负梯度来拟合本轮损失的近似值,进而拟合一个CART回归树)。第t轮的第i个样本的损失函数的负梯度表示为:

. 其中 J 为叶子节点的个数。

针对每一个叶子节点里的样本,我们求出使损失函数最小,也就是拟合叶子节点最好的的输出值Ctj

如下:

这样我们就得到了本轮的决策树拟合函数如下:

从而本轮最终得到的强学习器的表达式如下:

通过损失函数的负梯度来拟合,我们找到了一种通用的拟合损失误差的办法,这样无轮是分类问题还是回归问题,我们通过其损失函数的负梯度的拟合,就可以用 GBDT 来解决我们的分类回归问题。区别仅仅在于损失函数不同导致的负梯度不同而已。

在GBDT算法中,损失函数的选择十分重要。针对不同的问题,损失函数有不同的选择。

1.对于分类算法,其损失函数一般由对数损失函数和指数损失函数两种。

(1)指数损失函数表达式:

(2)对数损失函数可分为二分类和多分类两种。

2.对于回归算法,常用损失函数有如下4种。

(1)平方损失函数

(2)绝对损失函数

对应负梯度误差为:

(3)Huber损失 ,它是均方差和绝对损失的折中产物,对于远离中心的异常点,采用绝对损失误差,而对于靠近中心的点则采用平方损失。这个界限一般用分位数点度量。损失函数如下:

对应的负梯度误差为:

(4)分位数损失。 它对应的是分位数回归的损失函数,表达式为:

其中 θ为分位数,需要我们在回归之前指定。对应的负梯度误差为:

对于Huber损失和分位数损失,主要用于健壮回归,也就是减少异常点对损失函数的影响。

这里我们再看看GBDT分类算法,GBDT的分类算法从思想上和GBDT的回归算法没有区别,但是由于样本输出不是连续的值,而是离散的类别,导致我们无法直接从输出类别去拟合类别输出的误差。 为了解决这个问题,主要有两个方法,一个是用指数损失函数,此时GBDT退化为Adaboost算法。另一种方法是用类似于逻辑回归的对数似然损失函数的方法。也就是说,我们用的是类别的预测概率值和真实概率值的差来拟合损失。本文仅讨论用对数似然损失函数的GBDT分类。而对于对数似然损失函数,我们又有二元分类和多元分类的区别。

和 Adaboost 一样,我们也需要对 GBDT 进行正则化,防止过拟合。GBDT 的正则化主要有三种方式。

在scikit-learn中,GradientBoostingClassifier为GBDT的分类类, 而GradientBoostingRegressor为GBDT的回归类。两者的参数类型完全相同,当然有些参数比如损失函数loss的可选择项并不相同。这些参数中,类似于Adaboost,我们把重要参数分为两类,第一类是Boosting框架的重要参数,第二类是弱学习器即CART回归树的重要参数。 下面我们就从这两个方面来介绍这些参数的使用。

这次基本上是个CRUD boy,对于这些资料都大部分没有消化完成,还不知道能用在哪个地方。 参考资料:

***隐藏网址***

常用的正则化形式(横截面模型拟合优度过高的原因)

本文编辑:admin

更多文章:


diva dance(The Diva Dance的原唱是谁 追加100分)

diva dance(The Diva Dance的原唱是谁 追加100分)

各位老铁们,大家好,今天由我来为大家分享diva dance,以及The Diva Dance的原唱是谁 追加100分的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我

2024年7月20日 19:40

数据结构中数组的定义(数组是不是一种数据结构)

数据结构中数组的定义(数组是不是一种数据结构)

本文目录数组是不是一种数据结构数据结构数组和数的区别数据结构的定义求数据结构试题…重点数组是一种什么数据结构是线性表吗数据结构中的数组定义是什么数组是不是一种数据结构1。数据结构是指猜埋相互之间存在一种或多种特定关系的数据元素的集合。2。数

2024年6月9日 00:32

jdbctemplate update(jdbcTemplate必须使用spring事务吗 否则不能提交)

jdbctemplate update(jdbcTemplate必须使用spring事务吗 否则不能提交)

本文目录jdbcTemplate必须使用spring事务吗 否则不能提交spring jdbcTemplate 执行update更新后怎样返回更新的记录主键jdbctemplate的update没commitJdbcTemplate中exe

2024年7月17日 17:21

windows server 2008 r2 service pack 1(Windows Server 2008 R2 Service Pack 1 无法完成升级)

windows server 2008 r2 service pack 1(Windows Server 2008 R2 Service Pack 1 无法完成升级)

本文目录Windows Server 2008 R2 Service Pack 1 无法完成升级Windows 7 和 Windows Server 2008 R2 Service Pack 1Windows 7 and Window Se

2024年7月23日 02:05

paraphrase练习(paraphrase 有什么技巧么尽量具体一点,谢谢)

paraphrase练习(paraphrase 有什么技巧么尽量具体一点,谢谢)

本文目录paraphrase 有什么技巧么尽量具体一点,谢谢英语专业考研问题!paraphrase和summaryparaphrase怎么写paraphrase 有什么技巧么尽量具体一点,谢谢paraphrase释义,意译,用英文解释英文。

2024年7月14日 09:26

css选择器nthchild(CSS3 选择器nth-child()问题,谢绝抢答,求懂的大神)

css选择器nthchild(CSS3 选择器nth-child()问题,谢绝抢答,求懂的大神)

本文目录CSS3 选择器nth-child()问题,谢绝抢答,求懂的大神CSS3 选择器nth-child()问题,谢绝抢答,求懂的大神nth-child(n)用法css选择器nth-child(1),first-child在加入别的标签,

2024年5月10日 15:35

volatile(c语言中volatile关键字是什么含义怎么办呢)

volatile(c语言中volatile关键字是什么含义怎么办呢)

本文目录c语言中volatile关键字是什么含义怎么办呢java里面volatile是什么意思volatile关键字的作用是什么volatile这个关键字有什么作用C语言中关键字volatile是什么意思C++中的volatile是什么意思

2023年11月11日 20:20

php语言包括哪些(深入了解php底层需要了解哪些语言)

php语言包括哪些(深入了解php底层需要了解哪些语言)

本篇文章给大家谈谈php语言包括哪些,以及深入了解php底层需要了解哪些语言对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录深入了解php底

2024年7月19日 07:45

thrift(如何用thrift精准地表示日期类型)

thrift(如何用thrift精准地表示日期类型)

大家好,关于thrift很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于如何用thrift精准地表示日期类型的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文

2024年8月9日 05:15

excel表格初学者(新手怎么制作表格Excel)

excel表格初学者(新手怎么制作表格Excel)

本文目录新手怎么制作表格Excel初学者如何使用excel新手怎么制作表格Excel新手怎么制作表格excel?在我们的日常生活中,不管是找工作还是正在工作,都会需要会一点基本皮毛的excel表格,是现在生活中必不可少的一项技能,下面就给初

2024年7月19日 19:12

当前许可不支持影像服务器(安装solidworks2005时得到不了许可证 许可服务器不支持(-18,147,0)怎么办)

当前许可不支持影像服务器(安装solidworks2005时得到不了许可证 许可服务器不支持(-18,147,0)怎么办)

大家好,如果您还对当前许可不支持影像服务器不太了解,没有关系,今天就由本站为大家分享当前许可不支持影像服务器的知识,包括安装solidworks2005时得到不了许可证 许可服务器不支持(-18,147,0)怎么办的问题都会给大家分析到,还

2024年8月12日 06:46

apache software foundation(tomcat是干什么用的)

apache software foundation(tomcat是干什么用的)

大家好,如果您还对apache software foundation不太了解,没有关系,今天就由本站为大家分享apache software foundation的知识,包括tomcat是干什么用的的问题都会给大家分析到,还望可以解决大家

2024年8月11日 00:15

大白菜安装linux教程(大白菜做的u盘启动可以安装linux系统吗)

大白菜安装linux教程(大白菜做的u盘启动可以安装linux系统吗)

大家好,大白菜安装linux教程相信很多的网友都不是很明白,包括大白菜做的u盘启动可以安装linux系统吗也是一样,不过没有关系,接下来就来为大家分享关于大白菜安装linux教程和大白菜做的u盘启动可以安装linux系统吗的一些知识点,大家

2024年8月30日 01:30

用asp制作一个登录页面(用asp和access数据库作登录界面怎么做)

用asp制作一个登录页面(用asp和access数据库作登录界面怎么做)

本文目录用asp和access数据库作登录界面怎么做asp怎样实现用户登录界面asp制作登录与注册界面ASP通过什么方式实现前台的登录功能asp网页设计登录页面问题asp网页设计中用户登录如何用ASP做会员登录用asp和access数据库作

2024年7月24日 00:28

版本控制系统(linux、centos等开源软件在开发过程中,如果某个模块或功能同时被多个人修改,该怎么处理呢)

版本控制系统(linux、centos等开源软件在开发过程中,如果某个模块或功能同时被多个人修改,该怎么处理呢)

本文目录linux、centos等开源软件在开发过程中,如果某个模块或功能同时被多个人修改,该怎么处理呢MODBUS RTU如何在PLC控制系统中应用linux、centos等开源软件在开发过程中,如果某个模块或功能同时被多个人修改,该怎么

2024年7月8日 03:36

access update语句(如何优化access update语句)

access update语句(如何优化access update语句)

本文目录如何优化access update语句access 中update语句怎么用Vb 用ACCESS的update语句access中insert和update语句的问题如何优化access update语句1.从外部输入 这种比较简单

2024年7月11日 03:13

滚动条变短是什么原因(Excel右侧滚动条太短怎么办)

滚动条变短是什么原因(Excel右侧滚动条太短怎么办)

大家好,如果您还对滚动条变短是什么原因不太了解,没有关系,今天就由本站为大家分享滚动条变短是什么原因的知识,包括Excel右侧滚动条太短怎么办的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录Excel右侧滚动条太短

2024年9月6日 11:00

schoology(schoology怎么退出课程)

schoology(schoology怎么退出课程)

本文目录schoology怎么退出课程schoology提交的怎么撤回mac 怎么打不开 schoologyschoology怎么提交作业schoology的password忘了怎么办schoology的password 忘记是什么了怎sc

2024年7月10日 07:02

modbus通讯协议(modbus协议是否就是RS232或者RS485, 如果不是又有哪些区别)

modbus通讯协议(modbus协议是否就是RS232或者RS485, 如果不是又有哪些区别)

本文目录modbus协议是否就是RS232或者RS485, 如果不是又有哪些区别HART modbus profibus 这三种协议有什么区别这几种协议都是干什么用的modbus是什么意思MODBUS RTU通讯协议中,功能码为15、16的

2024年7月22日 14:55

和平精英苹果转安卓教程(和平精英转区苹果转安卓)

和平精英苹果转安卓教程(和平精英转区苹果转安卓)

本文目录和平精英转区苹果转安卓和平精英苹果怎么转安卓免费和平精英ios可以转到安卓吗和平精英ios怎么转安卓吃鸡苹果账号怎么转安卓和平精英苹果转华为怎么转和平精英苹果怎么转安卓和平精英苹果系统的营地币怎么转安卓系统和平精英转安卓系统刺激战场

2024年7月19日 05:05

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1730
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1154
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1151
标签列表

热门搜索