edgenet | R Documentation |
Fit a graph-regularized linear regression model using
edge-penalization. The coefficients are computed using graph-prior
knowledge in the form of one/two affinity matrices. Graph-regularization is
an extension to previously introduced regularization techniques,
such as the LASSO. See the vignette for details on the objective function of
the model:
vignette("edgenet", package="netReg")
edgenet(
X,
Y,
G.X = NULL,
G.Y = NULL,
lambda = 0,
psigx = 0,
psigy = 0,
thresh = 1e-05,
maxit = 1e+05,
learning.rate = 0.01,
family = gaussian
)
## S4 method for signature 'matrix,numeric'
edgenet(
X,
Y,
G.X = NULL,
G.Y = NULL,
lambda = 0,
psigx = 0,
psigy = 0,
thresh = 1e-05,
maxit = 1e+05,
learning.rate = 0.01,
family = gaussian
)
## S4 method for signature 'matrix,matrix'
edgenet(
X,
Y,
G.X = NULL,
G.Y = NULL,
lambda = 0,
psigx = 0,
psigy = 0,
thresh = 1e-05,
maxit = 1e+05,
learning.rate = 0.01,
family = gaussian
)
X |
input matrix, of dimension ( |
Y |
output matrix, of dimension ( |
G.X |
non-negativ affinity matrix for |
G.Y |
non-negativ affinity matrix for |
lambda |
|
psigx |
|
psigy |
|
thresh |
|
maxit |
maximum number of iterations for optimizer
( |
learning.rate |
step size for Adam optimizer ( |
family |
family of response, e.g. gaussian or binomial |
An object of class edgenet
beta |
the estimated ( |
alpha |
the estimated ( |
parameters |
regularization parameters |
lambda |
regularization parameter lambda) |
psigx |
regularization parameter psigx |
psigy |
regularization parameter psigy |
family |
a description of the error distribution and link function
to be used. Can be a |
call |
the call that produced the object |
Cheng, Wei and Zhang, Xiang and Guo, Zhishan and Shi, Yu and Wang, Wei
(2014),
Graph-regularized dual Lasso for robust eQTL mapping.
Bioinformatics
X <- matrix(rnorm(100 * 10), 100, 10)
b <- matrix(rnorm(100), 10)
G.X <- abs(rWishart(1, 10, diag(10))[, , 1])
G.Y <- abs(rWishart(1, 10, diag(10))[, , 1])
diag(G.X) <- diag(G.Y) <- 0
# estimate the parameters of a Gaussian model
Y <- X %*% b + matrix(rnorm(100 * 10), 100)
## dont use affinity matrices
fit <- edgenet(X = X, Y = Y, family = gaussian, maxit = 10)
## only provide one matrix
fit <- edgenet(
X = X,
Y = Y,
G.X = G.X,
psigx = 1,
family = gaussian,
maxit = 10
)
## use two matrices
fit <- edgenet(X = X, Y = Y, G.X = G.X, G.Y, family = gaussian, maxit = 10)
## if Y is vectorial, we cannot use an affinity matrix for Y
fit <- edgenet(X = X, Y = Y[, 1], G.X = G.X, family = gaussian, maxit = 10)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.