Gibt es eine Möglichkeit zum einrichten einer multi-hidden-layer neuronale Netzwerk mit dem mlp-Methode in der caret-Paket?

Den mlp Methode in package die Cursor ruft die mlp Funktion in RSNNS. In der RSNNS Paket, ich kann beliebig viele versteckte Schichten im neuronalen Netz, wie ich von der Einstellung der parameter "Größe", z.B.

data(iris)

#shuffle the vector
iris <- iris[sample(1:nrow(iris),length(1:nrow(iris))),1:ncol(iris)]

irisValues <- iris[,1:4]
irisTargets <- decodeClassLabels(iris[,5])
#irisTargets <- decodeClassLabels(iris[,5], valTrue=0.9, valFalse=0.1)

iris <- splitForTrainingAndTest(irisValues, irisTargets, ratio=0.15)
iris <- normTrainingAndTestSet(iris)

model <- mlp(iris$inputsTrain, iris$targetsTrain, size=c(5,7), learnFuncParams=c(0.1), 
             maxit=50, inputsTest=iris$inputsTest, targetsTest=iris$targetsTest)

Wird ein neuronales Netz mit zwei versteckten Schichten 5 und 7 Knoten bzw. Ich will das caret Paket, weil es die Funktionalität für das tun der parameter/Modell sucht, als auch parallele Implementierungen für einen cluster. In caret, wenn ich nach der Methode, es kann nur abgestimmt werden, mit einem parameter size z.B.

data(iris)

mlpGrid <- data.frame(.size=3)
model2<-caret::train(Species~. , iris, method='mlp', tuneGrid=mlpGrid)

Stellt ein neuronales Netz mit 3 Knoten einzigen hidden layer.

Ich habe versucht, das hinzufügen von weiteren Spalten mlpGrid und so, aber caret scheint nicht zu zulassen, die das hinzufügen einer zweiten (oder mehreren) verborgenen Schicht.

InformationsquelleAutor Tommy Levi | 2013-05-11
Schreibe einen Kommentar