deepnet에서 mxnet으로 코드를 변환하려고하는데 잘못된 것이 무엇인지 잘 모르겠습니다. 나는라는 오류 메시지를 받고 있어요 :sae.dnn (deepnet)에서 mx.mlp (mxnet) 오류로 변환
"Error in nn$W[[i -1]] %*% t(post)".
requires numeric/complex matrix/vector arguments
Calls: neural.predict -> nn.predict -> t
(요한 C. Lotter의로 쓴) deepnet를 사용하는 코드는 다음과 같습니다
library('deepnet', quietly = T)
library('caret', quietly = T)
neural.train = function(model,XY)
{
XY <- as.matrix(XY)
X <- XY[,-ncol(XY)]
Y <- XY[,ncol(XY)]
Y <- ifelse(Y > 0,1,0)
Models[[model]] <<- sae.dnn.train(X,Y,
hidden = c(30,30,30),
activationfun = "tanh",
learningrate = 0.5,
momentum = 0.5,
learningrate_scale = 1.0,
output = "sigm",
sae_output = "linear",
numepochs = 100,
batchsize = 100,
hidden_dropout = 0,
visible_dropout = 0)
}
neural.predict = function(model,X)
{
if(is.vector(X)) X <- t(X)
return(nn.predict(Models[[model]],X))
}
neural.save = function(name)
{
save(Models,file=name)
}
neural.init = function()
{
set.seed(365)
Models <<- vector("list")
}
그리고 mxnet 번역을 위해 내가 신경 기차를 변경하고있어 로 :
library('mxnet', quietly = T)
neural.train = function(model,XY)
{
XY <- as.matrix(XY)
X <- XY[,-ncol(XY)]
Y <- XY[,ncol(XY)]
Y <- ifelse(Y > 0,1,0)
Models[[model]] <<- mx.mlp(X,Y,
hidden_node = c(30,30,30),
activation = "relu",
momentum = 0.9,
learning.rate = 0.07,
out_activation = "softmax",
num_round = 100,
out_node = 2,
array.batch.size = 100)
}
내가 .. 내가 잘못 뭐하는 거지