r neuralnet包 — 多输出

我目前使用神经网络的方式是从多个输入点预测一个输出点。更具体地说,我运行了下面的代码。

nn <- neuralnet(as.formula(a ~ c + d),data=Z, hidden=c(3,2), err.fct="sse", act.fct=custom,linear.output=TRUE, rep=5)

在这里,如果Z是一个包含列名a, b, c的矩阵,它将从列c和d的对应行中预测列a中的一个点。(垂直维度被用作训练样本。)

假设还有一个列b。我想知道是否有办法从c和d预测a和b?我尝试过

as.formula(a+b ~ c+d)

但这似乎不起作用。

有什么想法吗?


回答:

不好意思,使用a + b ~ c + d 效果很好。我原以为函数不接受这种输入(因为它多次崩溃),但现在我清理了一切后,问题已经解决了。

nn <- neuralnet(as.formula(a + b ~ c + d),                data=Z, hidden=c(3,2), err.fct="sse", act.fct=custom,                linear.output=TRUE, rep=5)

运行得很完美,返回了两个点(或两列)的输出!很棒。


来自neuralnet的例子,这种格式有效 🙂

 AND <- c(rep(0,7),1) OR <- c(0,rep(1,7)) binary.data <- data.frame(expand.grid(c(0,1), c(0,1), c(0,1)), AND, OR) print(net <- neuralnet(AND+OR~Var1+Var2+Var3,  binary.data, hidden=0,          rep=10, err.fct="ce", linear.output=FALSE))

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注