Faltungs-Neuronale Netze in R.

8

Ich sehe kein Paket für Convolutional Neural Networks in R. Hat jemand diese Art von Algorithmus in R implementiert?

Hack-R
quelle
Ich glaube nicht, selbst wenn es implementiert wäre, würde es wahrscheinlich keine Unterstützung für die Verwendung geben. Ich würde Tensorflow oder Skflow für Python, Caffe für C ++ oder Caffe on Spark für Apache Spark vorschlagen.
GameOfThrows
@GameOfThrows Danke, ich denke du hast recht. Ich benutze Tensorflow und Caffe aber ich würde nur wie R. verwenden
Hack-R

Antworten:

3

Die folgenden 2 Pakete sind in R für tiefes neuronales Netzwerktraining verfügbar:

  1. darch : Paket für tiefe Architekturen und eingeschränkte Boltzmann-Maschinen. Das Darch-Paket basiert auf dem Code von GE Hinton und RR Salakhutdinov (verfügbar unter Matlab Code für Deep-Believe-Netze). Dieses Paket dient zum Erzeugen neuronaler Netze mit vielen Schichten (tiefe Architekturen), zum Trainieren dieser und zur Feinabstimmung mit bekannten Trainingsalgorithmen wie Backpropagation oder konjugierten Gradienten. Darüber hinaus kann die überwachte Feinabstimmung durch Maxout und Dropout verbessert werden, zwei kürzlich entwickelte Techniken zur Verbesserung der Feinabstimmung für tiefes Lernen. CRAN-Link: http://cran.um.ac.ir/web/packages/darch/index.html

  2. deepnet : Deep-Learning-Toolkit in R. Implementieren Sie einige Deep-Learning-Architekturen und neuronale Netzwerkalgorithmen, einschließlich BP, RBM, DBN, Deep-Autoencoder usw. CRAN-Link: https://cran.r-project.org/web/packages/deepnet/index.html

Sandeep S. Sandhu
quelle
Danke für deine Antwort. Ich habe beide verwendet und nicht gedacht, dass sie CNN-Algorithmen bereitstellen? Ich habe gerade in der Dokumentation nach dem Wort Faltung gesucht und es ist nichts aufgetaucht. Haben sie tatsächlich diese Funktionalität?
Hack-R
2

Ich denke, mxnet ist eine der besten Optionen, wenn Sie in R codieren. Sie haben einen R-Wrapper, aber der Kern ist in C ++.

Sie haben mehrere Beispiele im Web. Eine davon ist die Zeichenerkennung mit der MNIST-Datenbank. Sie unterstützen Multi-GPUS und auch Spark.

Hoaphumanoid
quelle
Ja, auch RNN, LSTM. Sie haben viele Beispiele in ihrem Github
Hoaphumanoid
Ah ja danke. Ich habe mxnet für die Bildklassifizierung verwendet, aber nicht gedacht, dass es dafür CNN-Algorithmen gibt. Ich sehe ein Beispiel für die Klassifizierung von CNN-Texten. Ich hätte wahrscheinlich eine Bildklassifizierung angeben sollen. Dennoch kann es vielleicht als solches genutzt werden. Ich werde es mir ansehen. Vielen Dank! +1
Hack-R
0

Installation

Installieren Sie zunächst das Tensorflow R-Paket von GitHub wie folgt:

devtools::install_github("rstudio/tensorflow")

Verwenden Sie dann die Funktion install_tensorflow (), um TensorFlow zu installieren:

library(tensorflow)
install_tensorflow() 

Sie können bestätigen, dass die Installation erfolgreich war mit:

sess = tf$Session() hello <- tf$constant('Hello, TensorFlow!')
sess$run(hello) 

Auf diese Weise erhalten Sie eine Standardinstallation von TensorFlow, die für den Einstieg in das Tensorflow R-Paket geeignet ist. Weitere Informationen zu erweiterten Optionen finden Sie im Artikel zur Installation, einschließlich der Installation einer Version von TensorFlow, die Nvidia-GPUs nutzt, wenn Sie die richtigen CUDA-Bibliotheken installiert haben.

Adrian Torrie
quelle