什么是过拟合

      过拟合是指在模型参数拟合过程中的问题,由于训练包含抽样误差。训练时,复杂的模型将抽样误差也考虑在内,将抽样误差也进行了很好的拟合。

 

过拟合的原因

1.数据量少

2.使用模型比较复杂

 

正则化缓解过拟合代码实现

正则化在损失函数中引入模型复杂度指标,利用给W加权值,弱化了训练数据的噪声(一般不正则化b)

loss(w) = tf.contirb.layers.l1_regularizer(REGULARIZER)(w) 
loss(w) = tf.contirb.layers.l2_regularizer(REGULARIZER)(w) 

tf.add_to_collection("losses",tf.contrib.layers.l2_regularizer(regularizer)(w))
loss = cem+tf.add_n(tf.get_collection("losses"))

 

解决过拟合问题

1.增加训练数据量

2.选择合适的模型

3.正则化(L1、L2)

4.Bagging

5.Boosting

6.Dropout

7.贝叶斯方法

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

GitHub 加速计划 / te / tensorflow
184.54 K
74.12 K
下载
一个面向所有人的开源机器学习框架
最近提交(Master分支:1 个月前 )
a49e66f2 PiperOrigin-RevId: 663726708 2 个月前
91dac11a This test overrides disabled_backends, dropping the default value in the process. PiperOrigin-RevId: 663711155 2 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐