public abstract class StatisticalModel extends AbstractFunction implements DeclaredParameters, DeclaredVariables, Nameable, Likelihood, OptimizableScalar, FigureReportable, ObjectSamplerClient
Modifier and Type | Field and Description |
---|---|
protected DataSetAdapter |
adapter |
protected java.util.HashMap |
FigureReporters |
protected boolean |
invertParameterDeclarations |
static int |
LIKELIHOOD |
static int |
NEG_LOG_LIKELIHOOD |
protected java.util.HashMap |
paramListeners |
protected DblParamSet |
Params |
protected DblParamSet |
PosteriorParams |
static int |
PREDICTION |
protected java.util.HashMap |
priorParamListeners |
protected DblParamSet |
PriorParams |
static int |
SUM_NEG_LOG_LIKELIHOOD |
protected boolean |
usingDataSet |
domainDimension, rangeDimension
Constructor and Description |
---|
StatisticalModel() |
StatisticalModel(DataSet S) |
StatisticalModel(DblMatrix[] X,
DblMatrix Y) |
Modifier and Type | Method and Description |
---|---|
abstract java.lang.String |
about()
Return a string giving some descriptive information about the model.
|
void |
addFigureReporter(java.lang.String key,
FigureReporter rep) |
void |
addObjectToSample(java.lang.String s)
Specifies that the object should be sampled.
|
void |
addParameterChangeListener(java.lang.String parameter,
ParameterChangeListener listener) |
protected boolean |
declareIfNotParameter(java.lang.String p,
DblMatrix v)
Convenience method that declares a parameter and sets
a initial (default) value for that parameter only if the
parameter is not already declared.
|
protected boolean |
declareIfNotPriorParameter(java.lang.String p,
DblMatrix v)
Convenience method that declares a parameter and sets
a initial (default) value for that parameter only if the
parameter is not already declared.
|
void |
declareParameter(java.lang.String p) |
void |
declareParameter(java.lang.String p,
DblMatrix v)
Convenience method that declares a parameter and sets
a initial (default) value for that parameter.
|
protected void |
declarePriorParameter(java.lang.String p) |
protected void |
declarePriorParameter(java.lang.String p,
DblMatrix v)
Convenience method that declares a parameter and sets
a initial (default) value for that parameter.
|
void |
declareVariable(java.lang.String var) |
protected void |
fireParameterAdded(java.lang.String param) |
protected void |
fireParameterRemoved(java.lang.String param) |
protected void |
fireParameterValueChanged(java.lang.String param) |
protected void |
fireParameterValuesChanged()
Notifies all registered ParameterChangeListeners that all parameters have changed.
|
protected void |
firePriorParameterAdded(java.lang.String param) |
protected void |
firePriorParameterRemoved(java.lang.String param) |
protected void |
firePriorParameterValueChanged(java.lang.String param) |
protected void |
firePriorParameterValuesChanged()
Notifies all registered ParameterChangeListeners that all parameters have changed.
|
DataSet |
getDataAugment() |
DataSet |
getDataSet() |
DataSetAdapter |
getDataSetAdapter() |
java.util.Set |
getDeclaredParameters() |
java.util.Set |
getDeclaredPriorParameters() |
java.util.Set |
getDeclaredVariables() |
FigureReporter |
getFigureReporter(java.lang.String key) |
java.util.Set |
getFigureReporters() |
boolean |
getIgnoreNaN() |
DblMatrix |
getMSE()
Returns the MSE.
|
java.lang.String |
getName() |
java.lang.Object |
getNewObjectSample(java.lang.String f)
Returns new object sample for the named object.
|
java.util.HashMap |
getNewObjectSamples()
Returns new object samples
|
java.lang.String[] |
getObjectSamplingOffered() |
java.lang.String[] |
getObjectsToSample()
Gets a list of objects that are to be sampled.
|
DblMatrix |
getParam(java.lang.String name) |
DblParamSet |
getParams() |
DblMatrix |
getPosteriorParam(java.lang.String name) |
DblParamSet |
getPosteriorParams()
Get special (options) parameters needed to evaluate the posterior.
|
abstract DblMatrix |
getPredictionAt(DblMatrix[] X) |
DblMatrix |
getPriorParam(java.lang.String name) |
DblParamSet |
getPriorParams() |
DblMatrix |
getValueAt(DblMatrix Y) |
DblMatrix |
getValueAt(DblMatrix[] X) |
DblMatrix |
getValueAt(DblParamSet P) |
DblMatrix |
getValueToMinimize() |
DblMatrix[] |
getX() |
DblMatrix |
getY() |
boolean |
hasParameter(java.lang.String p) |
boolean |
hasPriorParameter(java.lang.String p) |
void |
invertParameterDeclarations(boolean s)
Inverts the logic of declareParameter method(s) so that parameters are revoked instead.
|
boolean |
isSamplingObject(java.lang.String s)
Returns true if the object is to be sampled.
|
boolean |
isVectorBased()
Returns true if the data supporting this statistical model are
in the form of vectors (DblMatrix).
|
DblMatrix |
likelihood()
Returns the default likelihood of zero.
|
void |
mapName(java.lang.String modelvariable,
java.lang.String datasetcolname) |
DblMatrix |
negLogLikelihood()
Returns the default negative log likelihood of INF.
|
DblParamSet |
negLogPrior()
Returns the negative log of the prior probability of the current parameter set.
|
int |
numParams()
Return the number of parameters.
|
void |
offerObjectSamplingFor(java.lang.String s)
Any StatisticalModel can add to the object sampling it provides by name.
|
boolean |
offersObjectSamplingFor(java.lang.String s)
Returns true if this model offers object sampling for the given string.
|
java.lang.String[] |
parameterSet() |
void |
putNewObjectSample(java.lang.String objName,
java.lang.Object obj) |
void |
removeAllParameterChangeListener(java.lang.String parameter) |
void |
removeFigureReporter(java.lang.String key) |
void |
removeObjectToSample(java.lang.String s)
Specifies that the object should no longer be sampled.
|
void |
removeParameterChangeListener(java.lang.String parameter,
ParameterChangeListener listener) |
void |
replaceParams(DblParamSet X)
Replace parameters with those in X.
|
void |
replacePosteriorParams(DblParamSet P)
Replace special (options) parameters needed to evaluate the posterior.
|
void |
replacePriorParams(DblParamSet P) |
DblMatrix |
residuals()
Returns the default residual of zero.
|
void |
revokeObjectSamplingFor(java.lang.String s)
Any StatisticalModel can remove the object sampling it provides by name.
|
void |
revokeParameter(java.lang.String p) |
void |
revokePriorParameter(java.lang.String p) |
void |
revokeVariable(java.lang.String var) |
DblParamSet |
samplePosterior()
Returns a sample from the posterior distribution of the parameters.
|
DblParamSet |
samplePosterior(java.lang.String[] subset)
Returns a sample from the posterior distribution of the given
subset of parameters.
|
void |
setDataAugment(DataSet S) |
void |
setDataSet(DataSet F) |
void |
setIgnoreNaN(boolean x) |
void |
setName(java.lang.String n) |
void |
setObjectsToSample(java.lang.String[] S)
Specifies that the object should be sampled.
|
void |
setParam(java.lang.String name,
DblMatrix value) |
void |
setParams(DblParamSet P) |
void |
setPosteriorParam(java.lang.String name,
DblMatrix value) |
void |
setPosteriorParams(DblParamSet P)
Set special (options) parameters needed to evaluate the posterior.
|
void |
setPriorParam(java.lang.String name,
DblMatrix value) |
void |
setPriorParams(DblParamSet P) |
void |
setValueToGet(int f) |
void |
setX(DblMatrix[] X) |
void |
setY(DblMatrix Y) |
DblMatrix |
sumNegLogLikelihood()
Return the sum of the negative log likelihood
|
void |
unMapName(java.lang.String modelvariable) |
java.lang.String[] |
variableSet() |
domainDimension, plotOver, plotOver, rangeDimension
protected DblParamSet Params
protected DataSetAdapter adapter
protected DblParamSet PosteriorParams
protected DblParamSet PriorParams
protected boolean usingDataSet
protected java.util.HashMap paramListeners
protected java.util.HashMap priorParamListeners
protected java.util.HashMap FigureReporters
protected boolean invertParameterDeclarations
public static final int NEG_LOG_LIKELIHOOD
public static final int LIKELIHOOD
public static final int SUM_NEG_LOG_LIKELIHOOD
public static final int PREDICTION
public StatisticalModel()
public StatisticalModel(DataSet S)
public void putNewObjectSample(java.lang.String objName, java.lang.Object obj)
public void addFigureReporter(java.lang.String key, FigureReporter rep)
addFigureReporter
in interface FigureReportable
public void removeFigureReporter(java.lang.String key)
removeFigureReporter
in interface FigureReportable
public FigureReporter getFigureReporter(java.lang.String key)
getFigureReporter
in interface FigureReportable
public java.util.Set getFigureReporters()
getFigureReporters
in interface FigureReportable
public java.util.HashMap getNewObjectSamples()
getNewObjectSamples
in interface ObjectSamplerClient
public java.lang.Object getNewObjectSample(java.lang.String f)
getNewObjectSample
in interface ObjectSamplerClient
public java.lang.String[] getObjectsToSample()
getObjectsToSample
in interface ObjectSampler
public void setObjectsToSample(java.lang.String[] S)
setObjectsToSample
in interface ObjectSampler
public void addObjectToSample(java.lang.String s)
addObjectToSample
in interface ObjectSampler
public void removeObjectToSample(java.lang.String s)
removeObjectToSample
in interface ObjectSampler
public boolean isSamplingObject(java.lang.String s)
isSamplingObject
in interface ObjectSampler
public boolean offersObjectSamplingFor(java.lang.String s)
offersObjectSamplingFor
in interface ObjectSamplerClient
public void offerObjectSamplingFor(java.lang.String s)
offerObjectSamplingFor
in interface ObjectSamplerClient
public void revokeObjectSamplingFor(java.lang.String s)
revokeObjectSamplingFor
in interface ObjectSamplerClient
public java.lang.String[] getObjectSamplingOffered()
getObjectSamplingOffered
in interface ObjectSamplerClient
protected void fireParameterValuesChanged()
protected void fireParameterValueChanged(java.lang.String param)
protected void fireParameterAdded(java.lang.String param)
protected void fireParameterRemoved(java.lang.String param)
protected void firePriorParameterValuesChanged()
protected void firePriorParameterValueChanged(java.lang.String param)
protected void firePriorParameterAdded(java.lang.String param)
protected void firePriorParameterRemoved(java.lang.String param)
public void invertParameterDeclarations(boolean s)
protected void declarePriorParameter(java.lang.String p)
protected void declarePriorParameter(java.lang.String p, DblMatrix v)
protected boolean declareIfNotPriorParameter(java.lang.String p, DblMatrix v)
public java.util.Set getDeclaredPriorParameters()
public void revokePriorParameter(java.lang.String p)
public void declareParameter(java.lang.String p)
declareParameter
in interface DeclaredParameters
public void declareParameter(java.lang.String p, DblMatrix v)
protected boolean declareIfNotParameter(java.lang.String p, DblMatrix v)
public java.util.Set getDeclaredParameters()
getDeclaredParameters
in interface DeclaredParameters
public void revokeParameter(java.lang.String p)
revokeParameter
in interface DeclaredParameters
public java.util.Set getDeclaredVariables()
getDeclaredVariables
in interface DeclaredVariables
public void declareVariable(java.lang.String var)
declareVariable
in interface DeclaredVariables
public void revokeVariable(java.lang.String var)
revokeVariable
in interface DeclaredVariables
public DataSetAdapter getDataSetAdapter()
public DblParamSet getPosteriorParams()
public void setPosteriorParams(DblParamSet P)
public void replacePosteriorParams(DblParamSet P)
public DblParamSet samplePosterior()
public DblParamSet samplePosterior(java.lang.String[] subset)
public DblParamSet negLogPrior()
public DblParamSet getPriorParams()
public void setPriorParams(DblParamSet P)
public void replacePriorParams(DblParamSet P)
public boolean hasParameter(java.lang.String p)
hasParameter
in interface NamedParameters
public boolean hasPriorParameter(java.lang.String p)
public DblParamSet getParams()
public void setParams(DblParamSet P)
public void setValueToGet(int f)
public void setDataAugment(DataSet S)
public DataSet getDataAugment()
public boolean isVectorBased()
public void setX(DblMatrix[] X)
public void setY(DblMatrix Y)
public void mapName(java.lang.String modelvariable, java.lang.String datasetcolname)
public void unMapName(java.lang.String modelvariable)
public void setDataSet(DataSet F)
public DataSet getDataSet()
public DblMatrix[] getX()
public DblMatrix getY()
public void setIgnoreNaN(boolean x)
public boolean getIgnoreNaN()
public DblMatrix residuals()
public DblMatrix getMSE()
public DblMatrix likelihood()
likelihood
in interface Likelihood
public DblMatrix negLogLikelihood()
negLogLikelihood
in interface Likelihood
public DblMatrix sumNegLogLikelihood()
public DblMatrix getValueAt(DblMatrix Y)
getValueAt
in interface OptimizableScalar
getValueAt
in class AbstractFunction
public DblMatrix getValueAt(DblMatrix[] X)
getValueAt
in class AbstractFunction
public DblMatrix getValueAt(DblParamSet P)
public void addParameterChangeListener(java.lang.String parameter, ParameterChangeListener listener)
public void removeParameterChangeListener(java.lang.String parameter, ParameterChangeListener listener)
public void removeAllParameterChangeListener(java.lang.String parameter)
public DblMatrix getParam(java.lang.String name)
getParam
in interface NamedParameters
public void setParam(java.lang.String name, DblMatrix value)
setParam
in interface NamedParameters
public DblMatrix getPosteriorParam(java.lang.String name)
public void setPosteriorParam(java.lang.String name, DblMatrix value)
public DblMatrix getPriorParam(java.lang.String name)
public void setPriorParam(java.lang.String name, DblMatrix value)
public void replaceParams(DblParamSet X)
replaceParams
in interface NamedParameters
public java.lang.String[] variableSet()
public java.lang.String[] parameterSet()
parameterSet
in interface NamedParameters
public int numParams()
public DblMatrix getValueToMinimize()
getValueToMinimize
in interface OptimizableScalar
public abstract java.lang.String about()
Copyright © 2011, 2013. Daniel P. Dougherty