2017-07-24 1 views
0

Pour la vitesse de trainining, il serait bon de pouvoir former un modèle H2O avec des GPU, de prendre le fichier modèle, puis de prédire sur une machine sans GPU.Est-il possible de former un modèle H2O avec GPU et prédire avec un processeur?

Il semble que cela devrait être possible en théorie, mais avec la version H2O 3.13.0.341, cela ne semble pas se produire, sauf pour le modèle XGBoost.

Lorsque je lance gpustat -cup, je peux voir les GPU entrer en action quand je forme le modèle XGBoost de H2O. Cela ne se produit pas avec DL, DRF, GLM ou GBM. Je ne serais pas surpris si une différence de taille de point de virgule flottante (16, 32, 64) pouvait causer une certaine incohérence, sans parler des aléas dus à la modélisation multiprocesseur, mais je pense que je pourrais vivre avec cela.

(Ceci est lié à ma question ici, mais maintenant que je comprends mieux l'environnement, je peux voir que les processeurs graphiques ne sont pas utilisés tout le temps.)

How can I tell if H2O 3.11.0.266 is running with GPUs?

Répondre

1

Le nouveau XGBoost integration in H2O est le seul algorithme compatible GPU dans H2O (propre) à ce moment. Ainsi, vous pouvez former un modèle XGBoost sur les GPU et marquer sur les processeurs, mais ce n'est pas le cas pour les autres H2O algorithms.

Il existe également le projet H2O Deep Water, qui assure l'intégration entre H2O et trois backends tiers d'apprentissage en profondeur (MXNet, Caffe et TensorFlow), tous compatibles GPU. Vous pouvez donc entraîner ces modèles en utilisant un GPU et un score sur un processeur. Vous pouvez télécharger le fichier jar H2O Deep Water (ou le paquet R, ou le module Python) sur le lien Deep Water ci-dessus, et vous pouvez trouver plus d'informations dans le Deep Water GitHub repo README.