机器学习过拟合

出现过拟合的原因:

a)      在进行数据挖掘或者机器学习模型建立的时候,假设数据满足独立同分布。即当前已产生的数据可以对未来的数据进行推测与模拟,因此都是使用历史数据建立模型。即使用已经产生的数据去训练,然后使用该模型去拟合未来的数据。但是一般独立同分布的假设往往不成立,即数据的分布可能会发生变化。

b)      在对模型进行训练时,有可能遇到训练数据不够,即训练数据无法对整个数据的分布进行估计的时候,或者在对模型进行过度训练(overtraining)时,常常会导致模型的过拟合(overfitting)。

c)      模型建立的太复杂

 

如何防止过拟合:

a)      正则化(Regularization):最常见方法便是:正则化,即在对模型的目标函数(objective function)或代价函数(cost function)加上正则项。

b)      数据集扩增(Data augmentation):在对模型进行训练时,有可能遇到训练数据不够,即训练数据无法对整个数据的分布进行估计的时候,或者在对模型进行过度训练(overtraining)时,常常会导致模型的过拟合(overfitting)。

c)      early stoppingDropout

 

如何判断是否过拟合:

随着模型训练的进行,模型的复杂度会增加,此时模型在训练数据集上的训练误差会逐渐减小,但是在模型的复杂度达到一定程度时,模型在验证集上的误差反而随着模型的复杂度增加而增大。此时便发生了过拟合,即模型的复杂度升高,但是该模型在除训练集之外的数据集上却不work

 

训练数据不够怎么处理:

我们在使用训练数据训练模型,通过这个模型对将来的数据进行拟合,而在这之间有一个假设便是,训练数据与将来的数据是独立同分布的。即使用当前的训练数据来对将来的数据进行估计与模拟,而更多的数据往往估计与模拟地更准确。因此,更多的数据有时候更优秀。数据机扩增即需要得到更多的符合要求的数据,即和已有的数据是独立同分布的,或者近似独立同分布的。一般有以下方法:

a)     从数据源头采集更多数据

b)     复制原有数据并加上随机噪声

c)     重采样

d)     根据当前数据集估计数据分布参数,使用该分布产生更多数据等

e)     对训练数据进行左右对称以及平移变换

f)      对像素进行PCA变换,增加主成分,构造新样本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值