2022 Python 计算生态一月推荐榜 第47期

22年1月10日 · Python123 3579 人阅读
![]() |
看见更大的世界,遇见更好的自己
See a better world to meet better for ourselves.
超参数优化(hyperparameter tuning)是为机器学习算法选择一组最优超参数的问题,超参数是一个参数,其值用于控制学习过程,相比之下,学习其他参数(通常是节点权重)的值。同一种机器学习模型可能需要不同的约束、权重或学习率来概括不同的数据模式,这些度量称为超参数,必须进行调整,以便模型可以最佳地解决机器学习问题。超参数优化是找到一个超参数元组,产生一个最佳模型,该模型最小化给定独立数据上的预定义损失函数,目标函数采用一组超参数并返回相关的损失,交叉验证通常用于估计这种泛化性能。
2022年01月,在训练模型过程如果没有超参数优化等自动化技术,需要多次训练运行过程中对超参数进行手动调整,以达到最佳值。好事者特别推荐10款优秀的Python计算生态,帮助您了解超参数优化。
nni
nni用于自动化机器学习生命周期的开源 AutoML 工具包,包括特征工程、神经架构搜索、模型压缩和超参数调整。
![]() |
https://github.com/microsoft/nni
hyperopt
Hyperopt是一个分布式异步超参数优化库。
![]() |
https://github.com/hyperopt/hyperopt
auto-sklearn
Auto-Sklearn主要基于sklearn机器学习库,使用方法也与之类似,这让熟悉sklearn的开发者很容易切换到Auto-Sklearn。在模型方面,除了sklearn提供的机器学习模型,还加入了xgboost算法支持,在框架整体调优方面,使用了贝叶斯优化。
https://github.com/automl/auto-sklearn
optuna
Optuna是一个自动超参数优化软件框架,专为机器学习而设计。它具有命令式、按运行定义样式的用户API。
![]() |
https://github.com/optuna/optuna
autogluon
用于文本、图像和表格数据的 AutoML。
![]() |
https://github.com/awslabs/autogluon
keras-tuner
Keras-Tuner 是一个易于使用、可扩展的超参数优化框架,解决了超参数搜索的痛点。
![]() |
https://github.com/keras-team/keras-tuner
botorch
PyTorch 中的贝叶斯优化。
![]() |
https://github.com/pytorch/botorch
Hyperas
Hyperas 将 Keras 的快速实验和
Hyperopt 的超参数优化结合在一起。它让您无需学习它的语法即可使用 hyperopt 的强大功能。
https://github.com/maxpumperla/hyperas
Ax
Ax 是一个可访问的通用平台,用于理解、管理、部署和自动化自适应实验。
![]() |
https://github.com/facebook/Ax
sklearn-deap
在 scikit-learn 中使用进化算法而不是网格搜索
Python3Turtle