是否可以使用GPU训练H2O模型并使用CPU进行预测?
问题描述:
对于训练速度,能够用GPU训练H2O模型,获取模型文件,然后在没有GPU的机器上进行预测,这将是一件好事。是否可以使用GPU训练H2O模型并使用CPU进行预测?
看起来理论上这应该是可能的,但是H2O版本3.13.0.341似乎并没有发生,除了XGBoost模型。
当我运行gpustat -cup
时,当我训练H2O的XGBoost模型时,我可以看到GPU在使用。 DL,DRF,GLM或GBM不会发生这种情况。
如果浮点大小(16,32,64)的差异可能会导致一些不一致性,更不用说由于多处理器建模造成的变幻莫测,我不会感到惊讶,但我认为我可以忍受这一点。
(这是在这里与我的问题,但现在我明白了更好的环境,我可以看到GPU都没有使用所有的时间。)
答
新XGBoost integration in H2O是目前只有H2O(适当)才具有GPU能力的算法。因此,您可以在GPU上训练XGBoost模型并在CPU上进行评分,但其他H2O algorithms不适用。
还有一个H2O Deep Water项目,该项目提供了H2O与三个第三方深度学习后端(MXNet,Caffe和TensorFlow)之间的整合,所有这些都是具有GPU功能的。因此,您可以使用GPU训练这些模型,并在CPU上进行评分。您可以在上面的Deep Water链接下载H2O Deep Water jar文件(或R软件包或Python模块),并且您可以在Deep Water GitHub repo README中找到更多信息。