Это мой воспроизводимый пример:
#http://gekkoquant.com/2012/05/26/neural-networks-with-r-simple-example/
library("neuralnet")
require(ggplot2)
traininginput <- as.data.frame(runif(50, min=0, max=100))
trainingoutput <- sqrt(traininginput)
trainingdata <- cbind(traininginput,trainingoutput)
colnames(trainingdata) <- c("Input","Output")
Hidden_Layer_1 <- 1 # value is randomly assigned
Hidden_Layer_2 <- 1 # value is randomly assigned
Threshold_Level <- 0.1 # value is randomly assigned
net.sqrt <- neuralnet(Output~Input,trainingdata, hidden=c(Hidden_Layer_1, Hidden_Layer_2), threshold = Threshold_Level)
#Test the neural network on some test data
testdata <- as.data.frame((1:13)^2) #Generate some squared numbers
net.results <- predict(net.sqrt, testdata) #Run them through the neural network
cleanoutput <- cbind(testdata,sqrt(testdata),
as.data.frame(net.results))
colnames(cleanoutput) <- c("Input","ExpectedOutput","NeuralNetOutput")
ggplot(data = cleanoutput, aes(x= ExpectedOutput, y= NeuralNetOutput)) + geom_point() +
geom_abline(intercept = 0, slope = 1
, color="brown", size=0.5)
rmse <- sqrt(sum((sqrt(testdata)- net.results)^2)/length(net.results))
print(rmse)
Здесь, когда мой Hidden_Layer_1
равен 1
, Hidden_Layer_2
равен 2
, а Threshold_Level
равен 0.1
, мой rmse
сгенерировано 0.6717354
.
Допустим, мы попробуем другой пример,
, когда мой Hidden_Layer_1
равен 2
, Hidden_Layer_2
равен 3
, и Threshold_Level
равно 0.2
, мои rmse
сгенерированы 0.8355925
.
Как мне создать таблицу, которая будет автоматически вычислять значение rmse
, когда пользователь назначит значение для Hidden_Layer_1
, Hidden_Layer_2
и Threshold_Level
. (Я знаю, как это сделать в Excel, но не в r
хаха)
Нужная таблица должна выглядеть следующим образом:
У меня есть sh, что у меня есть Trial(s)
, Hidden_Layer_1
, Hidden_Layer_2
, Threshold_Level
и rmse
в моем столбце, и число строк может быть сгенерировано бесконечно путем ввода некоторого actionButton
(если возможно), означает, что пользователь может продолжать попытки, пока не получит желаемый rmse
.
Как я могу это сделать? Может кто-нибудь мне помочь? Я определенно извлеку уроки из этого урока, так как я новичок в r
. Большое спасибо всем, кто хочет помочь мне.