这里仅贴出相关链接,有空时再详细补充。
怎么判断欠拟合和过拟合:
Ref:学习曲线——判断欠拟合还是过拟合
过拟合的处理方法:
从样本方面考虑:
- 纵向上增加样本数量
- 横向上进行特征选择/降维
- 横纵都有:归一化:
- (1)MinMaxScaler:对列数据做 (x-min)/(max-min) 变换
- (2)MaxAbsScaler:对列数据做2(x-min)/(max-min)-1 变换
- (3)StandardScaler:基于特征矩阵的列,将属性值转换至服从正态分布
- (4)Normalizer:基于矩阵的行,将样本向量转换为单位向量
从模型方面考虑:
- 正则化:限制权重参数 LR,FM
-
Early stopping:限制迭代次数 树模型
-
设置树深:限制树深 树模型
-
Shrinkage: 减小学习率(在xgb中应用) 限制学习率 树模型
- dropout:限制神经网络内部的节点个数 神经网络
Ref:机器学习-数据归一化方法;机器学习中防止过拟合的处理方法
纵向-横向-横纵归一化--正则 化 --》stopping--》dropout