Ich versuche, das neurale Netzwerktraining mithilfe der Keras-Schnittstelle von RStudio reproduzierbar zu machen. Das Setzen eines Seeds im R-Skript (set.seed(42)
) scheint nicht zu funktionieren. Ist es möglich, das Seeding als Argument an layer_dense()
zu übergeben? Ich kann RandomUniform
als Initialisierer wählen, aber ich habe Schwierigkeiten, ein Seeding-Argument mit ihm zu übergeben. Die folgende Zeile wirft einen Fehler:Mit der Keras-Schnittstelle von RStudio das Training neuronaler Netzwerke reproduzierbar machen
model %>% layer_dense(units = 12, activation = 'relu', input_shape = c(8), kernel_initializer = "RandomUniform(seed=1)")
Aber eine Schicht kann, ohne den Versuch, hinzugefügt werden, um ein Samen Argument übergeben:
model %>% layer_dense(units = 12, activation = 'relu', input_shape = c(8), kernel_initializer = "RandomUniform")
RandomUniform
ist wohl ein Samen Argument nehmen nach die .
ich keras in python verwenden und es scheint zu funktionieren, wenn ich 'set.seed (42)' und 'Import tensorflow',' tensorflow.set_seed (42) '. Kannst du Tensorflow explizit in R importieren und ausprobieren? Außerdem funktioniert es nur, wenn mit CPUs gearbeitet wird, nicht mit GPUs. –
Ich denke, ich sollte versuchen, die R-Tensorflow-Bibliothek anstelle der R-Keras-Bibliothek zu verwenden, weil Keras in Tensorflow 1.2 integriert ist –