R 使用神经网络进行治疗的分类/概率

R 使用神经网络进行治疗的分类/概率,r,machine-learning,neural-network,R,Machine Learning,Neural Network,我有10000次观察。有3个变量。第一个变量d是二进制的,取值为0和1(这是治疗分配)。另外两个变量是x和z,它们是连续的 我想用R中的神经网络来预测接受治疗的概率 我使用的命令如下所示: nn = neuralnet(d~x+z, data2, hidden = 1, threshold = 0.01, linear.output = TRUE) h=prediction(nn) data_nn = h$rep1 这个想法是预测会给我一个包含概率的变量。虽然这种方法适合数据,但我发现一些

我有10000次观察。有3个变量。第一个变量d是二进制的,取值为0和1(这是治疗分配)。另外两个变量是x和z,它们是连续的

我想用R中的神经网络来预测接受治疗的概率

我使用的命令如下所示:

nn = neuralnet(d~x+z, data2, hidden = 1, threshold = 0.01, linear.output = TRUE)

h=prediction(nn)

data_nn = h$rep1
这个想法是预测会给我一个包含概率的变量。虽然这种方法适合数据,但我发现一些估计概率大于1。我想知道这样做是否正确


或者有没有一种单独的方法来指定neuralnet命令这是一个分类问题(与回归问题相反),并且输出需要是一个类中存在的概率?

我相信您必须使用一个因变量的热编码,例如,如果d有三个类别,您必须创建这些类别的二进制类,因此类似于d1+d2+d3~x+z,同样在函数中,您应该使用,linear.output=F和act.fct='logistic'。我不能完全回答,因为我没有你的数据集。但我可以看出这些都是一些问题,如果你解决了它们,我希望你最终会得到一些可能性。@PKumar这些调整奏效了。因为d本身是二进制的,所以我不必创建类别。我需要在这里进行交叉验证吗?你知道有什么资源可以指导我吗?我的最终目标是获得概率的最佳估计。这里有一个:另一个: