nnetCMA {CMA} | R Documentation

## Feed-forward Neural Networks

### Description

This method provides access to the function `nnet` in the package of the same name that trains Feed-forward Neural Networks with one hidden layer.
For `S4` method information, see nnetCMA-methods

### Usage

    nnetCMA(X, y, f, learnind, eigengenes = FALSE, models=FALSE,...)

### Arguments

`X` | Gene expression data. Can be one of the following: A `matrix`. Rows correspond to observations, columns to variables. A `data.frame`, when `f` is not missing (s. below). An object of class `ExpressionSet`.
`y` | Class labels. Can be one of the following: A `numeric` vector. A `factor`. A `character` if `X` is an `ExpressionSet` that specifies the phenotype variable. `missing`, if `X` is a `data.frame` and a proper formula `f` is provided. WARNING: The class labels will be re-coded to range from `0` to `K-1`, where `K` is the total number of different classes in the learning set.
`f` | A two-sided formula, if `X` is a `data.frame`. The left part correspond to class labels, the right to variables.
`learnind` | An index vector specifying the observations that belong to the learning set. May be `missing`; in that case, the learning set consists of all observations and predictions are made on the learning set.
`eigengenes` | Should the training be performed be in the space of eigengenes obtained from a singular value decomposition of the Gene expression data matrix ? Default is `FALSE`; in this case, variable selection is necessary to reduce the number of weights that have to be optimized.
`models` | a logical value indicating whether the model object shall be returned
`...` | Further arguments passed to the function `nnet` from the package of the same name. Important parameters are: `"size"`, i.e. the number of units in the hidden layer `"decay"` for weight decay.

### Value

An object of class `cloutput`.

### Note

- Excessive variable selection is usually necessary if `eigengenes = FALSE`

- Different runs of this method on the same dataset not necessarily produce the same results due to the fact that optimization for Feed-Forward Neural Networks is rather difficult and depends on the choice of (normally randomly chosen) starting values for the network weights.

### Author(s)

Martin Slawski ms@cs.uni-sb.de

Anne-Laure Boulesteix boulesteix@ibe.med.uni-muenchen.de

Christoph Bernau bernau@ibe.med.uni-muenchen.de

### References

Ripley, B.D. (1996)
Pattern Recognition and Neural Networks.
Cambridge University Press

### See Also

`compBoostCMA`, `dldaCMA`, `ElasticNetCMA`, `fdaCMA`, `flexdaCMA`, `gbmCMA`, `knnCMA`, `ldaCMA`, `LassoCMA`, `nnetCMA`, `pknnCMA`, `plrCMA`, `pls_ldaCMA`, `pls_lrCMA`, `pls_rfCMA`, `pnnCMA`, `qdaCMA`, `rfCMA`, `scdaCMA`, `shrinkldaCMA`, `svmCMA`

### Examples

    ### load Golub AML/ALL data
    data(golub)
    ### extract class labels
    golubY <- golub[,1]
    ### extract gene expression from first 10 genes
    golubX <- as.matrix(golub[,2:11])
    ### select learningset
    ratio <- 2/3
    set.seed(111)
    learnind <- sample(length(golubY), size=floor(ratio*length(golubY)))
    ### run nnet (not tuned)
    nnetresult <- nnetCMA(X=golubX, y=golubY, learnind=learnind, size = 3, decay = 0.01)
    ### show results
    show(nnetresult)
    ftable(nnetresult)
    plot(nnetresult)
    ### in the space of eigengenes (not tuned)
    golubXfull <-  as.matrix(golubX[,-1])
    nnetresult <- nnetCMA(X=golubXfull, y=golubY, learnind = learnind, eigengenes = TRUE,
                          size = 3, decay = 0.01)
    ### show results
    show(nnetresult)
    ftable(nnetresult)
    plot(nnetresult)

[Package CMA version 1.45.0 Index]