Penalty {simone}R Documentation

Penalty matrix constructor

Description

Build a penalty matrix that can be adapted to a graph with affilation structure in case of available node classification. If no classification is available, a uniformly designed matrix is given.

Usage

  Penalty(X, ...)

Arguments

X a ntimes p matrix of data, taken from a i.i.d. size-$n$ sample.
... Additional arguments are available, see Details

Details

The Penalty function construct a penalty matrix according to the arguments passed by the user.

Additional arguments are :

rho
Base penalty value to use. Automatical yet conservative value is calculated by default
.
risk
Probability of misclassification required for the calculation of rho when none is specified. Default 0.05.
classes
Node classification for construction of a classified penalty matrix. Default NULL.
multipliers
list containing the multiplicative coefficients for adjusting the base penalty rho applied to the edges, according to the involved nodes' classes.

Default is multipliers=list(intra=1,inter=1.05,dust=1.1)

If rho is not specified, a default value is computed, function of the data variance, the risk and the size n of the sample. This default value is very conservative and leads to very sparse graphs. As a matter of fact, the probability of misclassification holds for the $p^2$ potential edges. Thus, a correction can be applied by multiplying the risk by the expected number of edges. For instance, when one expects as many edges as nodes, a typical risk to apply is 0.05 /p^2 times p = 0.05 times p.

If classes is NULL, a uniform penalty matrix is returned. If a vector of classes belonging is specified, a classified version of the penalty matrix is built that enforces an affiliation structure, by penalizing more intra-class connections. The multpliers argument is a list with inter, intra and dust that permits to adjust the penalty according to the involved nodes' classes.

Value

Return a ptimes p matrix of penalties.

Author(s)

C. Ambroise, J. Chiquet and A. Smith

See Also

SimDataAffiliation, Mplot

Examples

  library(simone)

  ## Data set generation
  p <- 100 # number of nodes
  n <- 200 # sample size
  proba.in  <- 0.15
  proba.out <- 0.005
  alpha <- c(.3,.2,.5)
  X <- SimDataAffiliation (p, n, proba.in, proba.out, alpha, proba.dust=0.2)

  ## Build a penalty matrix with an arbitrary base-value of rho and
  ## multiplier values that encourage affiliation structure
  P <- Penalty(X$data, rho = 0.1, classes = X$cl.theo,
               multipliers = list(intra=1,inter=1.5,dust=2))
        
  par(mfrow=c(1,2))
  Mplot(P, main="Penalty matrix")       
  Mplot(P, X$cl.theo, main="Ordered penalty matrix")

[Package simone version 0.1-2 Index]