Package samer.models
Class NoisyICA
- java.lang.Object
-
- samer.tools.AnonymousTask
-
- samer.tools.NamedTask
-
- samer.models.NoisyICA
-
public class NoisyICA extends NamedTask implements Model
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface samer.models.Model
Model.Trainer
-
-
Constructor Summary
Constructors Constructor and Description NoisyICA(int ins, int outs)
NoisyICA(Node node, int inputs, int outputs)
NoisyICA(Vec in, int outs)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description Matrix
basisMatrix()
void
compute()
contract is that getEnergy and getGradient must return correct values for current x after infer and compute has been called, but not necessarily before.void
dispose()
VVector
error()
Functionx
functionx()
This presents a more functional interface to the model so that it can be driven by an optimiser.double
getEnergy()
return E = -log p(x)double[]
getGradient()
return dE/dxModel
getNoiseModel()
int
getSize()
return size of vector this model expectsModel
getSourceModel()
void
infer()
should infer values latent variablesModel.Trainer
learnDecayWhenActive()
Model.Trainer
learnHebbian()
Model.Trainer
learnLewickiSejnowski()
void
norms(double[] na)
get basis vector norms into given arrayVVector
output()
Functionx
posterior()
VVector
reconstruction()
void
run()
void
setInferenceTask(Task t)
void
setInput(Vec in)
model should begin observing this vectorvoid
setNoiseModel(Model m)
void
setSourceModel(Model m)
-
Methods inherited from class samer.tools.AnonymousTask
starting, stopping
-
-
-
-
Constructor Detail
-
NoisyICA
public NoisyICA(int ins, int outs)
-
NoisyICA
public NoisyICA(Node node, int inputs, int outputs)
-
NoisyICA
public NoisyICA(Vec in, int outs)
-
-
Method Detail
-
getSourceModel
public Model getSourceModel()
-
getNoiseModel
public Model getNoiseModel()
-
setSourceModel
public void setSourceModel(Model m)
-
setNoiseModel
public void setNoiseModel(Model m)
-
setInput
public void setInput(Vec in)
Description copied from interface:Model
model should begin observing this vector
-
basisMatrix
public Matrix basisMatrix()
-
output
public VVector output()
-
error
public VVector error()
-
reconstruction
public VVector reconstruction()
-
getSize
public int getSize()
Description copied from interface:Model
return size of vector this model expects
-
setInferenceTask
public void setInferenceTask(Task t)
-
infer
public void infer()
Description copied from interface:Model
should infer values latent variables
-
compute
public void compute()
Description copied from interface:Model
contract is that getEnergy and getGradient must return correct values for current x after infer and compute has been called, but not necessarily before. This is to give model an opportunity to cache values of energy and gradient to avoid repeated computations.
-
getEnergy
public double getEnergy()
Description copied from interface:Model
return E = -log p(x)
-
getGradient
public double[] getGradient()
Description copied from interface:Model
return dE/dx- Specified by:
getGradient
in interfaceModel
-
norms
public void norms(double[] na)
get basis vector norms into given array
-
dispose
public void dispose()
-
functionx
public Functionx functionx()
Description copied from interface:Model
This presents a more functional interface to the model so that it can be driven by an optimiser. See classes Functionx and MinimiserBase in package samer.maths.opt.
-
posterior
public Functionx posterior()
-
learnHebbian
public Model.Trainer learnHebbian()
-
learnLewickiSejnowski
public Model.Trainer learnLewickiSejnowski()
-
learnDecayWhenActive
public Model.Trainer learnDecayWhenActive()
-
-