nemModelSelection {nem} | R Documentation

## model selection for nested effect models

### Description

Infers models with different regularization constants, compares them via the AIC criterion and returns the highest scoring one

### Usage

    nemModelSelection(lambdas,D,inference="nem.greedy",models=NULL,type="mLL",para=NULL,hyperpara=NULL,Pe=NULL,Pmlocal=NULL,Pm=NULL,local.prior.size=length(unique(colnames(D))),local.prior.bias=1,triples.thrsh=0.5,delta=1,selEGenes=FALSE,verbose=TRUE,...)

### Arguments

`lambdas` | vector of regularization constants
`D` | data matrix with experiments in the columns (binary or continious)
`inference` | `search` to use exhaustive enumeration; or `triples` for triple-based inference; or `pairwise` for the pairwise heuristic; or `ModuleNetwork` for the module based inference; or `nem.greedy` for the greedy hillclimbing
`models` | a list of adjacency matrices for model search. If NULL, `enumerate.models` is used for exhaustive enumeration of all possible models.
`type` | `mLL` or `FULLmLL` or `CONTmLL` or `CONTmLLDens` or `CONTmLLRatio`
`para` | vector of length two: false positive rate and false negative rate for non-binary data. Used by `mLL()`
`hyperpara` | vector of length four: used by `FULLmLL()` for binary data
`Pe` | prior of effect reporter positions in the phenotypic hierarchy (same dimension as D)
`Pm` | prior over models (n x n matrix)
`Pmlocal` | local model prior for pairwise and triple learning. For pairwise learning generated by `local.model.prior()` according to arguments `local.prior.size` and `local.prior.bias`
`local.prior.size` | prior expected number of edges in the graph (for pairwise learning)
`local.prior.bias` | bias towards double-headed edges. Default: 1 (no bias; for pairwise learning)
`triples.thrsh` | threshold for model averaging to combine triple models for each edge
`delta` | regularization parameter for automated E-gene subset selection (CONTmLLRatio only)
`selEGenes` | automated E-gene subset selection (includes tuning of delta for CONTmLLRatio)
`verbose` | do you want to see progression statements? Default: TRUE
`...` | other arguments to pass to function `nem` or `network.AIC`

### Details

`nemModelSelection` internally calls `nem` to infer a model with a given regularization constant. The comparison between models is based on the AIC criterion (`network.AIC`).

### Value

`graph` | the inferred directed graph (graphNEL object)
`mLL` | marginal likelihood of final model
`pos` | posterior over effect positions
`mappos` | MAP estimate of effect positions
`type` | as used in function call
`para` | as used in function call
`hyperpara` | as used in function call
`lambda` | as in function call
`selected` | selected E-gene subset

### Author(s)

Holger Froehlich

### See Also

`network.AIC`, `nem`, `score`, `nem.greedy`, `moduleNetwork`, `triples.posterior`, `pairwise.posterior`, `local.model.prior`, `enumerate.models`

### Examples

       data("BoutrosRNAi2002")
       D <- BoutrosRNAiDiscrete[,9:16]
       p <- c(.13,.05)
       res <- nemModelSelection(c(0.1,1,10),D, para=p, Pm=matrix(0,ncol=4,nrow=4))

       plot(res,main="highest scoring model")

[Package nem version 2.4.0 Index]