R: apprentissage automatique sur GPU

15

Existe-t-il des packages d'apprentissage automatique pour R qui peuvent utiliser le GPU pour améliorer la vitesse de formation (quelque chose comme theeano du monde python)?

Je vois qu'il existe un paquet appelé gputools qui permet l'exécution de code sur le GPU, mais je cherche une bibliothèque plus complète pour l'apprentissage automatique.

Simon
la source

Réponses:

15

En ce qui concerne un package complet d'apprentissage automatique sur les GPU, aucun package de ce type n'existe. Cependant, il existe en fait une poignée de packages R qui peuvent utiliser des GPU. Vous pouvez voir ces packages sur la page CRAN High Performance Computing . Vous devez noter que la plupart de ces packages nécessitent que vous ayez une carte NVIDIA. Parmi les packages disponibles, il y a trois packages que vous utiliserez probablement, sauf si vous avez un cas particulier.

  1. gputools - si vous êtes intéressé par les calculs de distance (uniquement NVIDIA).
  2. gmatrix - calculs numériques généraux (uniquement NVIDIA).
  3. gpuR - calculs numériques généraux (tout GPU via OpenCL). *

* REMARQUE - Au risque de s'auto-promouvoir, je suis l'auteur du package gpuR.

Vous pouvez probablement utiliser les deux derniers packages pour reproduire les algorithmes d'apprentissage automatique existants. J'utilise actuellement mon package gpuR pour créer un package neuralnet accéléré par GPU, mais cela est en cours.

Donc, en résumé, si vous êtes déterminé, les ressources de base sont disponibles dans R. Mais si vous avez besoin de quelque chose dans l'immédiat, vous devrez explorer d'autres ressources / approches comme indiqué par @YCR.

cdeterman
la source
des progrès sur les capacités du réseau neuronal de gpuR? Un NEWSlien pourrait être utile sinon :)
MichaelChirico
Les NOUVELLES gpuR sont ici . Les capacités du réseau neuronal sont toujours en cours. Il y a plusieurs packages qui seront impliqués dans cela car chacun peut être utilisé indépendamment (lazytensor, gpuRNN et prometheus). Vous pouvez suivre mon github si vous êtes curieux. Je ne suis qu'un développeur travaillant dans mes moments libres et j'ai besoin de continuer à développer et à maintenir mes autres packages.
cdeterman
1

Mxnet est une bonne bibliothèque pour l'apprentissage automatique avec des GPU . Cependant, le package est principalement un apprentissage en profondeur, donc si vous recherchez des algorithmes d'apprentissage automatique spécifiques, vous ne les trouverez peut-être pas là. Cependant, ils ont un bon ensemble d'algorithmes d'apprentissage en profondeur.

hoaphumanoïde
la source