使用分布式与Hyperopt训练算法

除了来自scikit-learn等单机训练算法,您可以使用Hyperopt与分布式训练算法。在这个场景中,Hyperopt生成试验与不同hyperparameter设置在驱动节点上。每个试验从司机节点执行,使它完整的集群资源的访问。这个设置适用于任何分布式机器学习算法或库,包括Apache火花MLlib和HorovodRunner。

当你使用Hyperopt与分布式训练算法,不通过试用参数fmin (),具体地说,不要使用SparkTrials类。SparkTrials是为了分配试验本身并不是分布式的算法。与分布式训练算法,使用默认的试用类,它运行在集群的司机。Hyperopt评估每个审判司机节点的ML算法本身可以启动分布式训练。

请注意

砖不支持自动记录MLflow与试用类。当使用分布式训练算法,您必须手动调用MLflow Hyperopt测井试验。

笔记本的例子:使用Hyperopt MLlib算法

笔记本的例子展示了如何使用Hyperopt曲调MLlib的分布式训练算法。

Hyperopt笔记本和MLlib分布式训练

在新标签页打开笔记本

笔记本的例子:用HorovodRunner Hyperopt

HorovodRunner一个通用API用于砖上运行分布式深度学习的工作负载。HorovodRunner集成Horovod火花的障模式提供更高的稳定性长期深度学习培训工作火花。

笔记本的例子展示了如何使用Hyperopt优化分布式基于HorovodRunner深度学习培训。

Hyperopt笔记本和HorovodRunner分布式训练

在新标签页打开笔记本