处理生产中的训练算法的多个h2o api调用的最佳方法是什么?

时间:2018-07-17 05:37:06

标签: machine-learning deep-learning data-science h2o

我正在尝试构建一个Web应用程序,该应用程序使用户可以上传数据集,选择自己选择的h2o算法并训练其数据集以构建模型。 现在,如果多个用户同时访问服务器,则h2o将开始并行处理请求(开始训练模型)。这增加了所有用户的培训时间。 那么,在这种情况下应该使用h2o的最佳方法是什么? 我是否应该将这些请求排在队列中并一一执行? (这将增加新用户的等待时间)

I ran a GLM model for classification on a 50 MB structured and clean data set. It took almost twice the time when I executed two api calls simultaenously (model 1 and 2) than when I ran it individually (model 3)

2 个答案:

答案 0 :(得分:0)

我会排队。

此外,我每次都会从头开始重新启动H2O群集。

最后,我将通过python或R驱动H2O集群。

答案 1 :(得分:0)

我认为这主要取决于您希望用户体验如何-您是否可以让用户等待,还是希望让所有用户放慢速度。如果这是一项免费服务,那么我认为用户应该等待。我同意汤姆的观点,尽管这是个人设计/用户体验的选择,但最好将工作排在长队。

如果并行运行作业,建议您在不同端口上启动每个H2O实例(每个用户一个)。如果这些会话在同一台计算机上运行,​​它们仍将共享(竞争)资源,但是至少这样做会更干净一些(它们不能覆盖彼此的模型,等等)。

相关问题