darch: Package for Deep Architectures and Restricted Boltzmann Machines

The darch package is built on the basis of the code from G. E. Hinton and R. R. Salakhutdinov (available under Matlab Code for deep belief nets). This package is for generating neural networks with many layers (deep architectures) and train them with the method introduced by the publications "A fast learning algorithm for deep belief nets" (G. E. Hinton, S. Osindero, Y. W. Teh (2006) <DOI:10.1162/neco.2006.18.7.1527>) and "Reducing the dimensionality of data with neural networks" (G. E. Hinton, R. R. Salakhutdinov (2006) <DOI:10.1126/science.1127647>). This method includes a pre training with the contrastive divergence method published by G.E Hinton (2002) <DOI:10.1162/089976602760128018> and a fine tuning with common known training algorithms like backpropagation or conjugate gradients. Additionally, supervised fine-tuning can be enhanced with maxout and dropout, two recently developed techniques to improve fine-tuning for deep learning.

AuthorMartin Drees [aut, cre, cph], Johannes Rueckert [ctb], Christoph M. Friedrich [ctb], Geoffrey Hinton [cph], Ruslan Salakhutdinov [cph], Carl Edward Rasmussen [cph],
Date of publication2016-07-20 00:33:10
MaintainerMartin Drees <mdrees@stud.fh-dortmund.de>
LicenseGPL (>= 2) | file LICENSE
Version0.12.0
https://github.com/maddin79/darch

View on CRAN

Man pages

addLayer: Adds a layer to the 'DArch' object

addLayer-DArch-method: Adds a layer to the 'DArch' object

addLayerField: Adds a field to a layer

addLayerField-DArch-method: Adds a field to a layer

backpropagation: Backpropagation learning function

contr.ltfr: Wrapper for 'contr.ltfr'

createDataSet: Create data set using data, targets, a formula, and possibly...

createDataSet-ANY-ANY-missing-DataSet-method: Create new 'DataSet' by filling an existing one with new...

createDataSet-ANY-ANY-missing-missing-method: Create 'DataSet' using data and targets.

createDataSet-ANY-missing-formula-missing-method: Constructor function for 'DataSet' objects.

crossEntropyError: Cross entropy error function

darch: Fit a deep neural network

darchBench: Benchmarking wrapper for 'darch'

DArch-class: Class for deep architectures

darchModelInfo: Creates a custom caret model for 'darch'.

darchTest: Test classification network.

DataSet: Class for specifying datasets.

exponentialLinearUnit: Exponential linear unit (ELU) function with unit derivatives.

fineTuneDArch: Fine tuning function for the deep architecture

fineTuneDArch-DArch-method: Fine tuning function for the deep architecture

generateDropoutMask: Dropout mask generator function.

generateRBMs-DArch-method: Generates the RBMs for the pre-training.

generateWeightsGlorotNormal: Glorot normal weight initialization

generateWeightsGlorotUniform: Glorot uniform weight initialization

generateWeightsHeNormal: He normal weight initialization

generateWeightsHeUniform: He uniform weight initialization

generateWeightsNormal: Generates a weight matrix using rnorm.

generateWeightsUniform: Generates a weight matrix using runif

getDropoutMask: Returns the dropout mask for the given layer

getMomentum: Returns the current momentum of the 'Net'.

linearUnit: Linear unit function with unit derivatives.

linearUnitRbm: Calculates the linear neuron output no transfer function

loadDArch: Loads a DArch network

makeStartEndPoints: Makes start- and end-points for the batches.

maxoutUnit: Maxout / LWTA unit function

maxoutWeightUpdate: Updates the weight on maxout layers

minimize: Minimize a differentiable multivariate function.

minimizeAutoencoder: Conjugate gradient for a autoencoder network

minimizeClassifier: Conjugate gradient for a classification network

mseError: Mean squared error function

Net: Abstract class for neural networks.

newDArch: Constructor function for 'DArch' objects.

plot.DArch: Plot 'DArch' statistics or structure.

predict.DArch: Forward-propagate data.

preTrainDArch: Pre-trains a 'DArch' network

preTrainDArch-DArch-method: Pre-trains a 'DArch' network

print.DArch: Print 'DArch' details.

provideMNIST: Provides MNIST data set in the given folder.

RBM: Class for restricted Boltzmann machines

rbmUpdate: Function for updating the weights and biases of an 'RBM'

readMNIST: Function for generating .RData files of the MNIST Database

rectifiedLinearUnit: Rectified linear unit function with unit derivatives.

resetRBM: Resets the weights and biases of the 'RBM' object

rmseError: Root-mean-square error function

rpropagation: Resilient backpropagation training for deep architectures.

runDArch: Forward-propagates data through the network

runDArchDropout: Forward-propagate data through the network with dropout...

saveDArch: Saves a DArch network

setDarchParams: Set 'DArch' parameters

setDropoutMask-set: Set the dropout mask for the given layer.

setLogLevel: Set the log level.

show-DArch-method: Print 'DArch' details.

sigmoidUnit: Sigmoid unit function with unit derivatives.

sigmoidUnitRbm: Calculates the RBM neuron output with the sigmoid function

softmaxUnit: Softmax unit function with unit derivatives.

softplusUnit: Softplus unit function with unit derivatives.

tanhUnit: Continuous Tan-Sigmoid unit function.

tanhUnitRbm: Calculates the neuron output with the hyperbolic tangent...

trainRBM: Trains an 'RBM' with contrastive divergence

validateDataSet: Validate 'DataSet'

validateDataSet-DataSet-method: Validate 'DataSet'

weightDecayWeightUpdate: Updates the weight using weight decay.

Functions

addLayer Man page
addLayer,DArch-method Man page
addLayerField Man page
addLayerField,DArch-method Man page
backpropagation Man page
contr.ltfr Man page
createDataSet Man page
createDataSet,ANY,ANY,missing,DataSet-method Man page
createDataSet,ANY,ANY,missing,missing-method Man page
createDataSet,ANY,missing,formula,missing-method Man page
createDataSet.DataSet Man page
createDataSet.default Man page
createDataSet.formula Man page
crossEntropyError Man page
darch Man page
darchBench Man page
DArch-class Man page
darch.DataSet Man page
darch.default Man page
darch.formula Man page
darchModelInfo Man page
darchTest Man page
DataSet-class Man page
exponentialLinearUnit Man page
fineTuneDArch Man page
fineTuneDArch,DArch-method Man page
generateDropoutMask Man page
generateRBMs,DArch-method Man page
generateWeightsGlorotNormal Man page
generateWeightsGlorotUniform Man page
generateWeightsHeNormal Man page
generateWeightsHeUniform Man page
generateWeightsNormal Man page
generateWeightsUniform Man page
getDropoutMask Man page
getMomentum Man page
linearUnit Man page
linearUnitRbm Man page
loadDArch Man page
makeStartEndPoints Man page
maxoutUnit Man page
maxoutWeightUpdate Man page
minimize Man page
minimizeAutoencoder Man page
minimizeClassifier Man page
mseError Man page
Net-class Man page
newDArch Man page
plot.DArch Man page
predict.DArch Man page
preTrainDArch Man page
preTrainDArch,DArch-method Man page
print.DArch Man page
provideMNIST Man page
RBM-class Man page
rbmUpdate Man page
readMNIST Man page
rectifiedLinearUnit Man page
resetRBM Man page
rmseError Man page
rpropagation Man page
runDArch Man page
runDArchDropout Man page
saveDArch Man page
setDarchParams Man page
setDropoutMask<- Man page
setLogLevel Man page
show,DArch-method Man page
sigmoidUnit Man page
sigmoidUnitRbm Man page
softmaxUnit Man page
softplusUnit Man page
tanhUnit Man page
tanhUnitRbm Man page
trainRBM Man page
validateDataSet Man page
validateDataSet,DataSet-method Man page
weightDecayWeightUpdate Man page

Files

darch
darch/inst
darch/inst/CITATION
darch/src
darch/src/minimize.cpp
darch/src/rpropagation.cpp
darch/src/darchUnitFunctions.cpp
darch/src/maxout.cpp
darch/src/normalizeWeights.cpp
darch/src/dither.cpp
darch/src/applyDropoutMask.cpp
darch/src/RcppExports.cpp
darch/NAMESPACE
darch/R
darch/R/bootstrap.R darch/R/darchUnitFunctions.R darch/R/net.Class.R darch/R/plot.R darch/R/darch.R darch/R/rbm.Reset.R darch/R/log.R darch/R/predict.R darch/R/darch.Getter.R darch/R/momentum.R darch/R/newDArch.R darch/R/mnist.R darch/R/net.Getter.R darch/R/dropout.R darch/R/benchmark.R darch/R/darch.Learn.R darch/R/autosave.R darch/R/rbmUnitFunctions.R darch/R/generateWeightsFunctions.R darch/R/test.R darch/R/rpropagation.R darch/R/RcppExports.R darch/R/print.R darch/R/makeStartEndPoints.R darch/R/config.R darch/R/params.R darch/R/backpropagation.R darch/R/dataset.R darch/R/darch.Add.R darch/R/darch.Setter.R darch/R/minimizeAutoencoder.R darch/R/rbmUpdate.R darch/R/runDArch.R darch/R/generateRBMs.R darch/R/minimizeClassifier.R darch/R/util.R darch/R/errorFunctions.R darch/R/minimize.R darch/R/darch.Class.R darch/R/compat.R darch/R/saveDArch.R darch/R/loadDArch.R darch/R/rbm.Learn.R darch/R/weightUpdateFunctions.R darch/R/rbm.Class.R darch/R/caret.R
darch/MD5
darch/README
darch/DESCRIPTION
darch/man
darch/man/rectifiedLinearUnit.Rd darch/man/exponentialLinearUnit.Rd darch/man/resetRBM.Rd darch/man/RBM.Rd darch/man/getDropoutMask.Rd darch/man/minimizeClassifier.Rd darch/man/DataSet.Rd darch/man/darchBench.Rd darch/man/makeStartEndPoints.Rd darch/man/createDataSet-ANY-ANY-missing-missing-method.Rd darch/man/generateWeightsHeNormal.Rd darch/man/show-DArch-method.Rd darch/man/maxoutUnit.Rd darch/man/crossEntropyError.Rd darch/man/generateWeightsGlorotUniform.Rd darch/man/rmseError.Rd darch/man/darch.Rd darch/man/darchModelInfo.Rd darch/man/addLayer-DArch-method.Rd darch/man/generateDropoutMask.Rd darch/man/tanhUnit.Rd darch/man/addLayer.Rd darch/man/generateWeightsHeUniform.Rd darch/man/validateDataSet.Rd darch/man/saveDArch.Rd darch/man/rpropagation.Rd darch/man/Net.Rd darch/man/maxoutWeightUpdate.Rd darch/man/generateWeightsNormal.Rd darch/man/createDataSet-ANY-missing-formula-missing-method.Rd darch/man/runDArch.Rd darch/man/preTrainDArch-DArch-method.Rd darch/man/predict.DArch.Rd darch/man/generateRBMs-DArch-method.Rd darch/man/sigmoidUnitRbm.Rd darch/man/linearUnit.Rd darch/man/print.DArch.Rd darch/man/softmaxUnit.Rd darch/man/linearUnitRbm.Rd darch/man/preTrainDArch.Rd darch/man/fineTuneDArch.Rd darch/man/createDataSet-ANY-ANY-missing-DataSet-method.Rd darch/man/tanhUnitRbm.Rd darch/man/minimizeAutoencoder.Rd darch/man/contr.ltfr.Rd darch/man/readMNIST.Rd darch/man/setLogLevel.Rd darch/man/trainRBM.Rd darch/man/validateDataSet-DataSet-method.Rd darch/man/provideMNIST.Rd darch/man/loadDArch.Rd darch/man/softplusUnit.Rd darch/man/rbmUpdate.Rd darch/man/getMomentum.Rd darch/man/addLayerField.Rd darch/man/mseError.Rd darch/man/fineTuneDArch-DArch-method.Rd darch/man/newDArch.Rd darch/man/addLayerField-DArch-method.Rd darch/man/DArch-class.Rd darch/man/plot.DArch.Rd darch/man/weightDecayWeightUpdate.Rd darch/man/sigmoidUnit.Rd darch/man/minimize.Rd darch/man/generateWeightsGlorotNormal.Rd darch/man/createDataSet.Rd darch/man/setDarchParams.Rd darch/man/generateWeightsUniform.Rd darch/man/backpropagation.Rd darch/man/setDropoutMask-set.Rd darch/man/darchTest.Rd darch/man/runDArchDropout.Rd
darch/LICENSE

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.