-optimBeta <- function(N, n, K, p, beta, b, link, ncores)
+optimBeta <- function(N, n, K, p, beta, b, link, weights, ncores)
{
library(morpheus)
res <- multiRun(
- list(n=n, p=p, beta=beta, b=b, optargs=list(K=K, link=link)),
+ list(n=n, p=p, beta=beta, b=b, optargs=list(K=K, link=link, weights=weights)),
list(
# morpheus
function(fargs) {
M <- computeMoments(fargs$X, fargs$Y)
fargs$optargs$M <- M
mu <- computeMu(fargs$X, fargs$Y, fargs$optargs)
+ op <- optimParams(K,fargs$optargs$link,fargs$optargs)
+ x_init <- list(p=rep(1/K,K-1), beta=mu, b=rep(0,K))
res2 <- NULL
tryCatch({
- op <- optimParams(K,link,fargs$optargs)
- x_init <- list(p=rep(1/K,K-1), beta=mu, b=rep(0,K))
- res2 <- do.call(rbind, op$run(x_init))
- }, error = function(e) {
- res2 <- NA
- })
+ res2 <- do.call(rbind, op$run(x_init))
+ }, error = function(e) {})
res2
}
# ,
fargs$X = io$X
fargs$Y = io$Y
fargs$optargs$K = ncol(fargs$beta)
- fargs$optargs$M = computeMoments(io$X,io$Y)
fargs
}, N=N, ncores=ncores, verbose=TRUE)
p <- c(p, 1-sum(p))
d <- 2
n <- 1e4
ncores <- 1
+strw <- "1-1-1"
+weights <- c(1,1,1)
cmd_args <- commandArgs()
for (arg in cmd_args)
d <- as.integer(spl[2])
} else if (spl[1] == "link") {
link <- spl[2]
+ } else if (spl[1] == "weights") {
+ strw <- spl[2]
+ weights <- as.numeric(unlist(strsplit(spl[2], ",")))
}
}
}
beta <- matrix( c(1,2,-1,0,3,4,-1,-3,0,2,2,-3,0,1,0,-1,-4,3,2,0, -1,1,3,-1,0,0,2,0,1,-2,1,2,-1,0,3,4,-1,-3,0,2, 2,-3,0,1,0,-1,-4,3,2,0,1,1,2,2,-2,-2,3,1,0,0), ncol=K )
}
-mr <- optimBeta(N, n, K, p, beta, b, link, ncores)
-mr_params <- list("N"=N, "n"=n, "K"=K, "d"=d, "link"=link,
- "p"=c(p,1-sum(p)), "beta"=beta, "b"=b)
+mr <- optimBeta(N, n, K, p, beta, b, link, weights, ncores)
+mr_params <- list("N"=N, "nc"=ncores, "n"=n, "K"=K, "d"=d, "link"=link,
+ "p"=c(p,1-sum(p)), "beta"=beta, "b"=b, "weights"=weights)
-save("mr", "mr_params", file=paste("multirun_",n,"_",d,"_",link,".RData",sep=""))
+save("mr", "mr_params", file=paste("res_",n,"_",d,"_",link,"_",strw,".RData",sep=""))