R 神经网络:“神经元错误[[i]]%*%权重[[i]]”如何解决此错误?
我对r软件包neuralnet相当陌生。所以我遇到的问题可能很容易解决,但我仍然没有成功 我有一个看起来像这样的数据框,只显示了前5行:R 神经网络:“神经元错误[[i]]%*%权重[[i]]”如何解决此错误?,r,neural-network,R,Neural Network,我对r软件包neuralnet相当陌生。所以我遇到的问题可能很容易解决,但我仍然没有成功 我有一个看起来像这样的数据框,只显示了前5行: var1 var2 var40 var44 var46 var70 var202 var239 var343 var345 var1103 1 5 4 3 5 1 5 4 4 4 NA 3 2 4 2 2 4 4 2
var1 var2 var40 var44 var46 var70 var202 var239 var343 var345 var1103
1 5 4 3 5 1 5 4 4 4 NA 3
2 4 2 2 4 4 2 4 2 4 NA 1
3 4 3 4 4 2 4 3 5 3 NA 4
4 4 4 4 4 3 3 5 5 4 NA 4
5 5 1 5 5 5 5 5 1 5 NA 1
var345不是每行都有NA
这是结构信息:
'data.frame': 22536 obs. of 11 variables:
$ var1 : num 5 4 4 4 5 4 3 4 4 5 ...
$ var2 : num 4 2 3 4 1 1 4 4 4 5 ...
$ var40 : num 3 2 4 4 5 1 4 3 5 4 ...
$ var44 : num 5 4 4 4 5 1 3 3 5 4 ...
$ var46 : num 1 4 2 3 5 1 3 2 1 2 ...
$ var70 : num 5 2 4 3 5 1 4 4 4 5 ...
$ var202 : num 4 4 3 5 5 1 4 4 5 4 ...
$ var239 : num 4 2 5 5 1 1 4 3 5 4 ...
$ var343 : num 4 4 3 4 5 1 3 4 2 5 ...
$ var345 : num NA NA NA NA NA NA NA NA NA NA ...
$ var1103: num 3 1 4 4 1 1 2 NA 4 4 ...
当我将此数据框拆分为75%的训练集数据和25%的测试集数据时,我尝试通过使用其余变量作为预测器来训练神经网络预测var1103:
nn <- neuralnet(var1103~var1+var345+var70+var46+var343+var40+var44+var202+var239+var2,train2, hidden=10, threshold=0.01)
有人知道这里出了什么问题以及如何解决吗?对我来说,数据框架看起来相当直截了当,但我当然可能是错的。我已经准备好将变量转换成因子。结果也是这样。我将从排除var345开始。var345有NA,但其他变量也有NA。neuralnet不能处理NA的吗?可能吧。我自己从来没有使用过neuralnet库,但若你们认为神经网络如何处理NA可能会很棘手。好吧,我安装了neuralnet,我无法重现上面提到的错误,但我在x-y中得到错误:不一致阵列。如果我省略var345,它工作得很好,所以我对NAs的看法似乎至少部分正确。大多数机器学习算法要求变量不具有任何缺失值。处理缺失值问题的一种简单方法是使用列平均值对其进行免疫。一旦所有缺失值都被插补,您就可以将数据帧传递给神经网络函数。希望这能解决它。尝试寻找缺失值插补策略
Error in neurons[[i]] %*% weights[[i]] :
requires numeric/complex matrix/vector arguments