Professional Documents
Culture Documents
str()))
require(quantmod)
library(mxnet)
library(Metrics)
for (i in 1:lag) {
r = Lag(datos[,1], k=i)
dl = cbind(datos,r)
datos = dl
}
return(datos)
}
xU = as.matrix(c(max(dataU$Kbps),min(dataU$Kbps)))
xD = as.matrix(c(max(dataD$Kbps),min(dataD$Kbps)))
dataU = normalize(dataU)
dataD = normalize(dataD)
lag = 5
dU = lagf(as.matrix(dataU$Kbps),lag)
dD = lagf(as.matrix(dataD$Kbps),lag)
head(dU)
dU <- dU[-(1:lag),]
dD <- dD[-(1:lag),]
dataU <- as.matrix(dU)
dataD <- as.matrix(dD)
colnames(dataU)=c("datos","Lag.1","Lag.2","Lag.3","Lag.4","Lag.5")
colnames(dataD)=c("datos","Lag.1","Lag.2","Lag.3","Lag.4","Lag.5")
u <- round(0.8*nrow(dataU))
dEU <- dataU[1:u,]
dVU <- dataU[(u+1):nrow(dataU),]
u <- round(0.8*nrow(dataD))
dED <- dataD[1:u,]
dVD <- dataD[(u+1):nrow(dataD),]
## MXNET ##
x = dEU[,2:6]
y = as.numeric(dEU[,1])
mx.set.seed(10)
model <- mx.mlp(x,y,
hidden_node=c(8),
out_node=1,
activation="tanh",
out_activation="rmse",
num.round=5000,
array.batch.size=20,
learning.rate=0.07,
momentum=0.9,
array.layout="rowmajor"
)
p = na.omit(predict(model,dVU[,2:6]))
round(rmse(dVU[,1],t(p)),5)
plot(denormalize(dVU[,1],254555.5,704555.5),type="l")
lines(denormalize(t(p),254555.5,704555.5),lty=2,col="darkred")