darch (version 0.12.0)

minimizeAutoencoder: Conjugate gradient for a autoencoder network

Description

This function trains a '>DArch autoencoder network with the conjugate gradient method.

Usage

minimizeAutoencoder(darch, trainData, targetData,
  cg.length = getParameter(".cg.length"),
  dropout = getParameter(".darch.dropout"),
  dropConnect = getParameter(".darch.dropout.dropConnect"),
  matMult = getParameter(".matMult"), debugMode = getParameter(".debug"),
  ...)

Arguments

darch

A instance of the class '>DArch.

trainData

The training data matrix.

targetData

The labels for the training data.

cg.length

Numbers of line search

dropout

See darch.dropout parameter of darch.

dropConnect

See darch.dropout.dropConnect parameter of darch.

matMult

Matrix multiplication function, internal parameter.

debugMode

Whether debug mode is enabled, internal parameter.

...

Further parameters.

Value

The trained '>DArch object.

Details

This function is built on the basis of the code from G. Hinton et. al. (http://www.cs.toronto.edu/~hinton/MatlabForSciencePaper.html - last visit 2016-04-30) for the fine tuning of deep belief nets. The original code is located in the files 'backpropclassify.m', 'CG_MNIST.m' and 'CG_CLASSIFY_INIT.m'. It implements the fine tuning for a classification net with backpropagation using a direct translation of the minimize function from C. Rassmussen (available at http://www.gatsby.ucl.ac.uk/~edward/code/minimize/ - last visit 2016-04-30) to R.

minimizeAutoencoder supports dropout but does not use the weight update function as defined via the darch.weightUpdateFunction parameter of darch, so that weight decay, momentum etc. are not supported.

See Also

darch, fineTuneDArch

Other fine-tuning functions: backpropagation, minimizeClassifier, rpropagation

Examples

Run this code
# NOT RUN {
data(iris)
model <- darch(Species ~ ., iris, c(6,10,2,10,6), darch.isClass = F,
 preProc.params = list(method=c("center", "scale")),
 darch.numEpochs = 20, darch.batchSize = 6, darch.unitFunction = tanhUnit
 darch.fineTuneFunction = "minimizeAutoencoder")
# }

Run the code above in your browser using DataCamp Workspace