madmmplasso
Multi variate multi response 'ADMM' with interaction effects
Science Score: 52.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
✓Institutional organization owner
Organization ocbe-uio has institutional domain (www.med.uio.no) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.0%) to scientific vocabulary
Repository
Multi variate multi response 'ADMM' with interaction effects
Basic Info
Statistics
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
- Releases: 2
Metadata Files
README.md
MADMMplasso
Multi variate multi-response 'ADMM' with interaction effects combines the usual squared error loss for the mult-response problem with some penalty terms to encourage responses that correlate to form groups and also allow for modeling main and interaction effects that exit within the covariates.
The method can be powerful in situations where one assumes that; 1. certain factors influence the main covariate separately and aims to include these factors as modifying variables to the main covariate. 2. There exists some form of grouping within the responses and want to include this information. We assume that the responses form overlapping groups that follows a certain hierarchy. A typical example is when one wants to model drug response for multiple drugs and assumes that some of the drugs share certain properties in common, for example drug target and chemical compounds and aims to include this information to improve prediction and also aim to predict which drug could be suitable for which patient (given a particular disease). The various diseases under study could be the modifying variable.
Author: Theophilus Asenso, Manuela Zucknick
Usage
```r devtools::installgithub("ocbe-uio/MADMMplasso") set.seed(1235) N <- 100; p <- 50; nz <- 4; K <- nz X <- matrix(rnorm(n = N * p), nrow = N, ncol = p) mx <- colMeans(X) sx <- sqrt(apply(X,2,var)) X <- scale(X,mx,sx) X <- matrix(as.numeric(X),N,p) Z =matrix(rnorm(N*nz),N,nz) mz <- colMeans(Z) sz <- sqrt(apply(Z,2,var)) Z <- scale(Z,mz,sz) beta1 <- rep(x = 0, times = p) beta2 <- rep(x = 0, times = p) beta3 <- rep(x = 0, times = p) beta4 <- rep(x = 0, times = p) beta5 <- rep(x = 0, times = p) beta_6 <- rep(x = 0, times = p)
beta1[1:5] <- c(2, 2, 2, 2,2) beta2[1:5] <- c(2, 2, 2, 2,2) beta3[6:10] <- c(2, 2, 2, -2,-2) beta4[6:10] <- c(2, 2, 2, -2,-2) beta5[11:15] <- c(-2, -2,-2, -2,-2) beta6[11:15] <- c(-2, -2, -2, -2,-2)
Beta<-cbind(beta1,beta2,beta3,beta4,beta5,beta6)
colnames(Beta) <- c(1:6)
theta <- array(0,c(p,K,6)) theta[1,1,1] <- 2; theta[3,2,1] <- 2; theta[4,3,1] <- -2; theta[5,4,1] <- -2; theta[1,1,2] <- 2; theta[3,2,2] <- 2; theta[4,3,2] <- -2; theta[5,4,2] <- -2; theta[6,1,3] <- 2; theta[8,2,3] <- 2; theta[9,3,3] <- -2; theta[10,4,3] <- -2; theta[6,1,4] <- 2; theta[8,2,4] <- 2; theta[9,3,4] <- -2; theta[10,4,4] <- -2; theta[11,1,5] <- 2; theta[13,2,5] <- 2; theta[14,3,5] <- -2; theta[15,4,5] <- -2; theta[11,1,6] <- 2; theta[13,2,6] <- 2; theta[14,3,6] <- -2; theta[15,4,6] <- -2
library(MASS) pliable <- matrix(0,N,6) for (e in 1:6) { pliable[,e] <- computepliable(X, Z, theta[,,e]) } esd <- diag(6) e <- MASS::mvrnorm(N,mu=rep(0,6),Sigma=esd) ytrain <- X %*% Beta + pliable + e y <- ytrain colnames(y) <- c( paste("y",1:(ncol(y)),sep = "") ) TT <- treeparms(y) plot(TT$h_clust) ```
```r gg1 <- matrix(0,2,2) gg1[1,] <- c(0.02,0.02) gg1[2,] <- c(0.2,0.2) nlambda <- 50 e.abs <- 1E-4 e.rel <- 1E-2 alpha <- .5 tol <- 1E-3
fit <- MADMMplasso( X, Z, y, alpha=alpha, mylambda=NULL, lambdamin=0.001, maxit=5000, e.abs=e.abs, e.rel=e.rel, maxgrid=nlambda, nlambda=nlambda, rho=5, tree=TT, myprint=FALSE, alph=1, gg=gg1, tol=tol )
plot(fit) ```
```r gg1 <- fit$gg
cvadmp <- cvMADMMplasso( fit, nfolds=5, X, Z, y, alpha=alpha, lambda=fit$Lambdas, maxit=5000, e.abs=e.abs, e.rel=e.rel, nlambda, rho=5, myprint=FALSE, alph=1, foldid=NULL, gg=gg1, TT=TT, tol=tol )
plot(cv_admp) ```
r
s_ad <- which(cv_admp$lambda[,1]==cv_admp$lambda.min)
fit$beta[[s_ad]]
Owner
- Name: Oslo Centre for Biostatistics and Epidemiology
- Login: ocbe-uio
- Kind: organization
- Location: Oslo, Norway
- Website: https://www.med.uio.no/imb/english/research/centres/ocbe/
- Twitter: OCBE_UniOslo
- Repositories: 22
- Profile: https://github.com/ocbe-uio
This is where we host some of the scientific software we produce at OCBE, a joint center between the University of Oslo and the Oslo University Hospital.
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: MADMMplasso
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Theophilus Quachie
family-names: Asenso
email: t.q.asenso@medisin.uio.no
name-particle:
affiliation: >-
Oslo Center for Epidemiology and Biostatistics,
University of Oslo
- given-names: Manuela
family-names: Zucknick
email: manuela.zucknick@medisin.uio.no
affiliation: >-
Oslo Center for Epidemiology and Biostatistics,
University of Oslo
repository-code: 'https://github.com/ocbe-uio/MADMMplasso'
abstract: "This system allows one to model a multi response problem that has correlation among the\n\tresponses and also has main and interaction effects among the covariates. It can be applied in different areas such as drug discovery, diagnostics, etc. "
keywords:
- Pliable lasso
- ' Lagrange multipliers'
- ' drug sensitivity'
- interactions
- tree-lasso
license: MIT
commit: ba187e8c777ad1f36f014126a85c8cea7baf1d6a
version: 0.0.0.9000
date-released: '2022-12-10'
GitHub Events
Total
- Create event: 5
- Release event: 1
- Issues event: 6
- Delete event: 3
- Issue comment event: 5
- Push event: 16
- Pull request review event: 1
- Pull request review comment event: 1
- Pull request event: 4
Last Year
- Create event: 5
- Release event: 1
- Issues event: 6
- Delete event: 3
- Issue comment event: 5
- Push event: 16
- Pull request review event: 1
- Pull request review comment event: 1
- Pull request event: 4
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 31
- Total pull requests: 32
- Average time to close issues: about 2 months
- Average time to close pull requests: about 12 hours
- Total issue authors: 2
- Total pull request authors: 2
- Average comments per issue: 3.84
- Average comments per pull request: 0.47
- Merged pull requests: 31
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 4
- Pull requests: 4
- Average time to close issues: about 9 hours
- Average time to close pull requests: about 2 hours
- Issue authors: 2
- Pull request authors: 1
- Average comments per issue: 1.75
- Average comments per pull request: 0.0
- Merged pull requests: 4
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- wleoncio (27)
- Theo-qua (3)
Pull Request Authors
- wleoncio (52)
- Theo-qua (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- MASS * imports
- Matrix * imports
- Rcpp * imports
- RcppArmadillo * imports
- class * imports
- doParallel * imports
- foreach * imports
- graphics * imports
- methods * imports
- parallel * imports
- spatstat.sparse * imports
- stats * imports
- testthat * suggests
- actions/checkout v3 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite