我正在尝试使用R中的包deepnet
进行分类。我试过了:
Var1 <- c(rnorm(50, 1, 0.5), rnorm(50, -0.6, 0.2))
Var2 <- c(rnorm(50, -0.8, 0.2), rnorm(50, 2, 1))
x <- matrix(c(Var1, Var2), nrow = 100, ncol = 2)
y <- c(rep(1, 50), rep(0, 50))
y = as.factor (y)
y = data.matrix (y)
然后我试着训练
dnn <- dbn.dnn.train(x, y, hidden = c(5, 5))
但我有一个问题
begin to train dbn ......
training layer 1 rbm ...
training layer 2 rbm ...
dbn has been trained.
begin to train deep nn ......
Error in batch_y - nn$post[[i]] : non-numeric argument to binary operator
使用deepnet
包对数据进行分类的正确方法是什么?
答案 0 :(得分:0)
转换为矩阵形式后使用y=as.numeric(y)
。对as.matrix
使用x
。查看x
&amp; y
符合乘法要求。它适用于dbn.train
,但在引发rbm.train
时失败。
您可以使用堆叠编码器dnn。它会顺利运作。但分类结果应进一步改进。我不知道如何改善混淆矩阵值。任何人都可以提供帮助