public class DenoisingAutoEncoder extends BaseNeuralNetwork implements Serializable
Modifier and Type | Class and Description |
---|---|
static class |
DenoisingAutoEncoder.Builder |
Constructor and Description |
---|
DenoisingAutoEncoder() |
DenoisingAutoEncoder(org.jblas.DoubleMatrix input,
int nVisible,
int nHidden,
org.jblas.DoubleMatrix W,
org.jblas.DoubleMatrix hbias,
org.jblas.DoubleMatrix vbias,
org.apache.commons.math3.random.RandomGenerator rng,
double fanIn,
org.apache.commons.math3.distribution.RealDistribution dist) |
DenoisingAutoEncoder(int nVisible,
int nHidden,
org.jblas.DoubleMatrix W,
org.jblas.DoubleMatrix hbias,
org.jblas.DoubleMatrix vbias,
org.apache.commons.math3.random.RandomGenerator rng,
double fanIn) |
Modifier and Type | Method and Description |
---|---|
org.jblas.DoubleMatrix |
getCorruptedInput(org.jblas.DoubleMatrix x,
double corruptionLevel)
Corrupts the given input by doing a binomial sampling
given the corruption level
|
NeuralNetworkGradient |
getGradient(Object[] params) |
org.jblas.DoubleMatrix |
getHiddenValues(org.jblas.DoubleMatrix x) |
org.jblas.DoubleMatrix |
getReconstructedInput(org.jblas.DoubleMatrix y) |
double |
lossFunction(Object[] params)
The loss function (cross entropy, reconstruction error,...)
|
double |
negativeLoglikelihood(double corruptionLevel)
Negative log likelihood of the current input given
the corruption level
|
org.jblas.DoubleMatrix |
reconstruct(org.jblas.DoubleMatrix x)
All neural networks are based on this idea of
minimizing reconstruction error.
|
void |
train(org.jblas.DoubleMatrix x,
double lr,
double corruptionLevel)
Perform one iteration of training
|
void |
train(org.jblas.DoubleMatrix input,
double lr,
Object[] params)
Train one iteration of the network
|
void |
trainTillConvergence(org.jblas.DoubleMatrix x,
double lr,
double corruptionLevel)
Run a network optimizer
|
void |
trainTillConvergence(org.jblas.DoubleMatrix input,
double lr,
Object[] params) |
clone, fanIn, getDist, gethBias, getInput, getL2, getMomentum, getnHidden, getnVisible, getReConstructionCrossEntropy, getRenderEpochs, getRng, getSparsity, getvBias, getW, initWeights, jostleWeighMatrix, l2RegularizedCoefficient, load, lossFunction, merge, setDist, setFanIn, sethBias, setInput, setL2, setMomentum, setnHidden, setnVisible, setRenderEpochs, setRng, setSparsity, setvBias, setW, squaredLoss, transpose, update, write
public DenoisingAutoEncoder()
public DenoisingAutoEncoder(int nVisible, int nHidden, org.jblas.DoubleMatrix W, org.jblas.DoubleMatrix hbias, org.jblas.DoubleMatrix vbias, org.apache.commons.math3.random.RandomGenerator rng, double fanIn)
public DenoisingAutoEncoder(org.jblas.DoubleMatrix input, int nVisible, int nHidden, org.jblas.DoubleMatrix W, org.jblas.DoubleMatrix hbias, org.jblas.DoubleMatrix vbias, org.apache.commons.math3.random.RandomGenerator rng, double fanIn, org.apache.commons.math3.distribution.RealDistribution dist)
public org.jblas.DoubleMatrix getCorruptedInput(org.jblas.DoubleMatrix x, double corruptionLevel)
x
- the input to corruptcorruptionLevel
- the corruption valuepublic double negativeLoglikelihood(double corruptionLevel)
corruptionLevel
- the corruption level to usepublic org.jblas.DoubleMatrix getHiddenValues(org.jblas.DoubleMatrix x)
public org.jblas.DoubleMatrix getReconstructedInput(org.jblas.DoubleMatrix y)
public void trainTillConvergence(org.jblas.DoubleMatrix x, double lr, double corruptionLevel)
x
- the inputlr
- the learning ratecorruptionLevel
- the corruption levelpublic void train(org.jblas.DoubleMatrix x, double lr, double corruptionLevel)
x
- the inputlr
- the learning ratecorruptionLevel
- the corruption level to train withpublic org.jblas.DoubleMatrix reconstruct(org.jblas.DoubleMatrix x)
BaseNeuralNetwork
reconstruct
in class BaseNeuralNetwork
x
- the input to reconstructpublic void trainTillConvergence(org.jblas.DoubleMatrix input, double lr, Object[] params)
trainTillConvergence
in interface NeuralNetwork
public double lossFunction(Object[] params)
BaseNeuralNetwork
lossFunction
in class BaseNeuralNetwork
public void train(org.jblas.DoubleMatrix input, double lr, Object[] params)
BaseNeuralNetwork
train
in interface NeuralNetwork
train
in class BaseNeuralNetwork
input
- the input to train onlr
- the learning rate to train atparams
- the extra params (k, corruption level,...)public NeuralNetworkGradient getGradient(Object[] params)
getGradient
in interface NeuralNetwork
Copyright © 2014. All Rights Reserved.