From: Benjamin Auder Date: Mon, 23 Sep 2019 14:13:39 +0000 (+0200) Subject: Merge branch 'master' of auder.net:morpheus X-Git-Url: https://git.auder.net/?p=morpheus.git;a=commitdiff_plain;h=9e41efa28ed1ea6cb209797620afa97ae36a71e2;hp=-c Merge branch 'master' of auder.net:morpheus --- 9e41efa28ed1ea6cb209797620afa97ae36a71e2 diff --combined reports/accuracy.R index 57a63db,c33fa0f..05d9e8a --- a/reports/accuracy.R +++ b/reports/accuracy.R @@@ -1,8 -1,8 +1,8 @@@ - 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) { @@@ -13,7 -13,7 +13,7 @@@ mu <- computeMu(fargs$X, fargs$Y, fargs$optargs) res2 <- NULL tryCatch({ - op <- optimParams(K,link,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 <- do.call(rbind, op$run(x_init)) }, error = function(e) { @@@ -71,6 -71,7 +71,7 @@@ N <- 1 d <- 2 n <- 1e4 ncores <- 1 + weights <- c(1,1,1) cmd_args <- commandArgs() for (arg in cmd_args) @@@ -87,6 -88,8 +88,8 @@@ d <- as.integer(spl[2]) } else if (spl[1] == "link") { link <- spl[2] + } else if (spl[1] == "weights") { + weights <- unlist(strsplit(spl[2], ",")) } } } @@@ -113,8 -116,8 +116,8 @@@ if (d == 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 <- optimBeta(N, n, K, p, beta, b, link, weights, ncores) mr_params <- list("N"=N, "n"=n, "K"=K, "d"=d, "link"=link, - "p"=c(p,1-sum(p)), "beta"=beta, "b"=b) + "p"=c(p,1-sum(p)), "beta"=beta, "b"=b, "weights"=weights) save("mr", "mr_params", file=paste("multirun_",n,"_",d,"_",link,".RData",sep=""))