很抱歉,如果这个问题有点特定于 python Scikit-learn图书馆。
我正在尝试执行网格搜索以找到 scikit-learn 的最佳参数 GradientBoostingRegressor .问题是,我不知道从哪里开始。过去我使用过 R 和 RStudio 设置,但我目前正在尝试迁移到 Python 进行数据挖掘,而 Scikit 似乎很有前途。
任何人都可以分享一些他们可能用于在 Amazon EC2 集群上计算的简单设置代码,或者可能指向该库的其他机器学习算法的有用示例引用吗?
谢谢。
最佳答案
据我所知,GBRT 是一种非常顺序的算法,因此没有简单的方法可以并行运行它。
随机森林/ExtraTrees 模型的并行性令人尴尬,因此更适合在集群上训练模型。
scikit-learn 对使用 joblib 的单机多处理有一些内置支持(检查接受 n_jobs
参数的模型的文档字符串)。我们计划在某个时候在 joblib 中实现一个任务调度框架。因此,我们可以例如利用 IPython parallel 作为后端在集群上运行。然而,目前还没有现成的东西。
如果您准备花一些时间自己动手,我建议您看看 StarCluster 及其 IPython 插件:
关于python - 在 Amazon EC2 集群上使用 python scikit-learn 库执行网格搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13145124/