Lightgbm
Lightgbm是微软推出的一种新的boosting框架,以轻便快捷著称。采用了
安装:pip intsall lightgbm
sklearn API的文档参考:https://lightgbm.readthedocs.io/en/latest/Python-API.html#scikit-learn-api
回归LGBMRegressor和分类LGBMClassifier
重要参数:
n_estimators:默认100
learning_rate:默认0.1,一般设置的比较小,能提高精度。
max_depth:默认不限制深度
min_child_sample:叶子结点包含的最小的样本数量,默认是20,设置的较大能够避免生长出过深的树,但也要避免欠拟合。
min_split_gain:相当于gamma,是损失函数下降的最小值
subsample:行采样
colsample_bytree:列采样
objective:LGBMRegressor默认是‘regression’ , ‘binary’ or ‘multiclass’ for LGBMClassifier
class_weight:默认是None,认为所有类别的权重都为1,对非平衡的分类问题,需要设为’balanced‘,能自动调整权重,与输入数据中的类频率成反比。
调参顺序:
n_estimators、learning_rate
max_depth、min_child_samples都是抑制过拟合
min_split_gain
subsample、colsample_bytree
最后可以再调一下learning_rate,使其再减小一些