R: aprendizado de máquina na GPU

15

Existem pacotes de aprendizado de máquina para o R que podem usar a GPU para melhorar a velocidade do treinamento (algo como o theano do mundo python)?

Vejo que existe um pacote chamado gputools que permite a execução de código na gpu, mas estou procurando uma biblioteca mais completa para aprendizado de máquina.

Simon
fonte

Respostas:

15

Quanto a um pacote completo de aprendizado de máquina nas GPUs, esse pacote não existe. No entanto, existem realmente alguns pacotes R que podem usar GPUs. Você pode ver esses pacotes na página CRAN High Performance Computing . Você deve observar que a maioria desses pacotes exige que você tenha uma placa NVIDIA. Dos pacotes disponíveis, há três pacotes que você provavelmente utilizaria, a menos que você tenha um caso especial.

  1. gputools - se estiver interessado em cálculos à distância (apenas NVIDIA).
  2. gmatrix - cálculos numéricos gerais (apenas NVIDIA).
  3. gpuR - cálculos numéricos gerais (qualquer GPU via OpenCL). *

* NOTA - Correndo o risco de autopromoção, sou o autor do pacote gpuR.

Você provavelmente pode usar os dois últimos pacotes para reproduzir os algoritmos de aprendizado de máquina existentes. Na verdade, estou usando meu pacote gpuR para criar um pacote neuralnet acelerado por GPU, mas isso está em andamento.

Portanto, em resumo, se você estiver determinado, os recursos básicos estarão disponíveis em R. Mas se você precisar de algo no futuro imediato, precisará explorar outros recursos / abordagens, conforme apontado pelo @YCR.

cdeterman
fonte
algum progresso nas capacidades da rede neural gpuR? A NEWSligação pode ser útil se não :)
MichaelChirico
A gpuR NEWS está aqui . As capacidades da rede neural ainda estão em andamento. Existem vários pacotes envolvidos nisso, pois cada um pode ser usado independentemente (lazytensor, gpuRNN e prometheus). Você pode seguir meu github se estiver curioso. Sou apenas um desenvolvedor trabalhando nos meus momentos de folga e preciso continuar desenvolvendo e mantendo meus outros pacotes.
precisa saber é o seguinte
2

Este é realmente um invólucro sobre tensorflow, caffe, mxnet, mas pode ser útil para você.

https://www.h2o.ai/deep-water/

horaceT
fonte
1

Uma boa biblioteca para aprendizado de máquina com GPUs é o mxnet . O pacote é basicamente um aprendizado profundo, portanto, se você estiver procurando por algoritmos específicos de aprendizado de máquina, talvez não os encontre lá. No entanto, eles têm um bom conjunto de algoritmos de aprendizado profundo.

hoaphumanoid
fonte