小白之过拟合与欠拟合
过拟合: 通俗一点来说过拟合就是模型把数据学习的太彻底,以至于把噪声数据的特征也学习到了,导致模型在训练时表现得非常好,但是在测试集上表现得不好,模型的泛化能力太差。(泛化:机器学习模型在遇到没有在训练集中遇见过的数据时的表现)
解决方法:
1.重新清洗数据,导致过拟合的一个原因有可能是数据不纯导致;
2.增大数据训练量,导致过拟合的原因还有用于训练的数据量太小导致的,训练数据占总数据的比例过小;
3.另外过拟合问题通常发生在变量也就是特征过多的时候。因此可以
- 尽量减少选取变量的数量。具体来说就是人工检查每一项变量,并确定哪些变量比较重要,然后保留下来。这种做法很有效,但是当舍弃一些特征变量时也许会舍弃掉一有用的信息。
- 正则化。在正则化中我们会保留所有的特征变量,但是会减小特征变量的数量级。正则化方法主要有L1正则化、L2正则化。L1正则化方法(lasso)是实现稀疏性,是指向量中各个元素绝对值之和,所以w的元素会等于0;L2正则化方法(ridge)是向量各元素的平方和然后求平方根,使得w的每个元素都很小接近于0但不会等于0
欠拟合:就是模型在训练集上和测试集上变现都不好
解决方法:
1.添加其他特征项,导致欠拟合的一个原因是因为特征项不够
2.添加多项式特征
3.减少正则化参数