1

我似乎找不到任何关于如何在神经网络包中应用 sigmoid 函数的文档,我试过:

neuralnet(...,act.fct="sigmoid")

然而这又回来了;

Error: ''act.fct' is not known
4

1 回答 1

8

您正在寻找该包裹的“物流”。

neuralnet(..., act.fct = "logistic")

尽管如此,如果你有一个不在其中的函数(并且该包中没有很多函数),你可以自己传递该函数。

library(neuralnet)

data(infert)

set.seed(123)
net.infert <- neuralnet(case~parity+induced+spontaneous, infert, 
                        err.fct="ce", linear.output=FALSE, likelihood=TRUE)

sigmoid = function(x) {
  1 / (1 + exp(-x))
}

set.seed(123)
net.infert2 <- neuralnet(case~parity+induced+spontaneous, infert, 
                        err.fct="ce", linear.output=FALSE, likelihood=TRUE,
                        act.fct = sigmoid)

all.equal(net.infert$weights, net.infert2$weights)
[1] TRUE
于 2017-02-02T20:20:04.043 回答