问题描述
在使用 python 进行研究时,我经常遇到一些问题,我想比较不同数量参数的结果。
params1 = [0.1,0.2,0.3]
params2 = [5,10,50]
parmas3 = range(8)
for (p1,p2,p3) in itertools.product(params1,params2,params3):
result = evaluate(p1,p3)
- 保存结果
- 方便地绘制和分析它们
- 可能并行运行多个实验
- 甚至可能对中间结果进行一些缓存和保存(例如,如果您想稍后继续运行
我想这一定是一个非常普遍的模式,但我无法找到甚至稍微朝这个方向发展的东西。
解决方法
如果您使用 sci-kit 学习库构建模型,那么 sci-kit 有一个名为 model_selection 的内部包。 特别是,GridSearchCV 适合您的情况。
- scikit 优化
- hyperopt
- 留兰香 是用于超参数优化的流行库。