机器学习与数据挖掘"人工智障 机器瞎学 数据掩埋" 入门笔记机器学习

高级调参技巧

2018-10-17  本文已影响15人  HeoLis

以下是Coursera上的How to Win a Data Science Competition: Learn from Top Kagglers课程笔记。

Hyperparameter Optimization

Hyperparameter tuning I

Plan for the lecture

Plan for the lecture:models

How do we tune hyperparameters

无论如何,我们从来没有时间调整所有的参数,所以我们需要提出一个很好的子集来调整。假设我们是xgboost新手,不知道哪些参数是需要调的,可以在Github或Kaggle Kernels搜索到前人通常设置的参数。

理解改变其中一个参数会发生什么。

大多数人手动完成调参工作。也可以使用超参数优化工具,但手动执行通常会更快。

Hyperparameter optimization software自动调参工具

运行调参工具可能需要很长时间,因此最好的策略是在夜间运行它。

从广义上讲,不同的参数会导致三种不同的结果

因此我们需要把想要调整的参数分为两组。第一组是约束模型的参数,第二组与第一组效果相反。

上面提到的颜色只是视频中的标记

Hyperparameter tuning II

一些基于树模型的超参数优化

Model Where
GBDT XGBoost-dmlc/xgboost
LightGBM-Microsoft/LightGBM
CatBoost-catboost/catboost
RandomForest/ExtraTrees scikit-learn
Others RGF-baidu/fast_rgf

GBDT

XGBoost LightGBM
max_depth max_depth/num_leaves
subsample bagging_fraction
colsample_bytree,
colsample_bylevel
frature_fraction
min_child_weight,
lambda,alpha
min_data_in_leaf,
lambda_l1,lambda_l2
eta
num_round
learning_rate
num_iterations
Others:
seed
Others:
*_seed

Other

sklearn.RandomForest/ExtraTrees

Other

Hyperparameter tuning III

Neural Nets

这里讨论的是dense neural nets,即只含有全连接层的网络

自适应算法已高亮+斜体显示

Linear models

Linear models

Tips

相关链接

上一篇下一篇

猜你喜欢

热点阅读