Я экспериментирую с различными алгоритмами в пакете neuralnet
, но когда я пытаюсь использовать традиционный алгоритм backprop
, результаты очень странные/неутешительные. Почти все расчетные результаты ~ .33 ??? Я предполагаю, что я должен использовать алгоритм неправильно, как если бы я запускал его по умолчанию rprop+
, он различает образцы. Конечно, нормальное backpropagation не так уж плохо, особенно если оно способно так быстро сходить к предоставленному порогу.R - neuralnet - Традиционный backprop кажется странным
library(neuralnet)
data(infert)
set.seed(123)
fit <- neuralnet::neuralnet(formula = case~age+parity+induced+spontaneous,
data = infert, hidden = 3,
learningrate = 0.01,
algorithm = "backprop",
err.fct = "ce",
linear.output = FALSE,
lifesign = 'full',
lifesign.step = 100)
preds <- neuralnet::compute(fit, infert[,c("age","parity","induced","spontaneous")])$net.result
summary(preds)
V1
Min. :0.3347060
1st Qu.:0.3347158
Median :0.3347161
Mean :0.3347158
3rd Qu.:0.3347162
Max. :0.3347286
Возможно, некоторые настройки здесь разные?
Пример по умолчанию neuralnet
set.seed(123)
fit <- neuralnet::neuralnet(formula = case~age+parity+induced+spontaneous,
data = infert, hidden = 3,
err.fct = "ce",
linear.output = FALSE,
lifesign = 'full',
lifesign.step = 100)
preds <- neuralnet::compute(fit, infert[,c("age","parity","induced","spontaneous")])$net.result
summary(preds)
V1
Min. :0.1360947
1st Qu.:0.1516387
Median :0.1984035
Mean :0.3346734
3rd Qu.:0.4838288
Max. :1.0000000
Интересно, я должен был знать о масштабировании. Спасибо. У вас есть идеи, почему алгоритм 'rprop + 'способен справиться с этим по умолчанию без масштабирования? – cdeterman
Я не ... Я бы предположил, что это где-то в коде, что оно сделано по умолчанию, но я не знаю, почему это было бы иначе. – Tchotchke
Справедливо, спасибо, что ответили на мой вопрос. Я буду копаться и, возможно, снова задаю этот вопрос. – cdeterman