Package weka.estimators
Class DiscreteEstimator
java.lang.Object
weka.estimators.Estimator
weka.estimators.DiscreteEstimator
- All Implemented Interfaces:
Serializable
,Cloneable
,Aggregateable<DiscreteEstimator>
,CapabilitiesHandler
,CapabilitiesIgnorer
,OptionHandler
,RevisionHandler
,IncrementalEstimator
public class DiscreteEstimator
extends Estimator
implements IncrementalEstimator, Aggregateable<DiscreteEstimator>
Simple symbolic probability estimator based on symbol counts.
- Version:
- $Revision: 15521 $
- Author:
- Len Trigg (trigg@cs.waikato.ac.nz)
- See Also:
-
Constructor Summary
ConstructorDescriptionNo-arg constructor needed to make WEKA's forName() work.DiscreteEstimator
(int numSymbols, boolean laplace) ConstructorDiscreteEstimator
(int nSymbols, double fPrior) Constructor -
Method Summary
Modifier and TypeMethodDescriptionvoid
addValue
(double data, double weight) Add a new data value to the current estimator.aggregate
(DiscreteEstimator toAggregate) Aggregate an object with this onevoid
Call to complete the aggregation process.Returns default capabilities of the classifier.double
getCount
(double data) Get the count for a valueint
Gets the number of symbols this estimator operates withdouble
getProbability
(double data) Get a probability estimate for a valueReturns the revision string.double
Get the sum of all the countsstatic void
Main method for testing this class.toString()
Display a representation of this estimatorMethods inherited from class weka.estimators.Estimator
addValues, addValues, addValues, addValues, buildEstimator, buildEstimator, clone, debugTipText, doNotCheckCapabilitiesTipText, equals, forName, getDebug, getDoNotCheckCapabilities, getOptions, listOptions, makeCopies, makeCopy, setDebug, setDoNotCheckCapabilities, setOptions, testCapabilities
-
Constructor Details
-
DiscreteEstimator
public DiscreteEstimator()No-arg constructor needed to make WEKA's forName() work. Uses one symbol and Laplace value of 1. -
DiscreteEstimator
public DiscreteEstimator(int numSymbols, boolean laplace) Constructor- Parameters:
numSymbols
- the number of possible symbols (remember to include 0)laplace
- if true, counts will be initialised to 1
-
DiscreteEstimator
public DiscreteEstimator(int nSymbols, double fPrior) Constructor- Parameters:
nSymbols
- the number of possible symbols (remember to include 0)fPrior
- value with which counts will be initialised
-
-
Method Details
-
addValue
public void addValue(double data, double weight) Add a new data value to the current estimator.- Specified by:
addValue
in interfaceIncrementalEstimator
- Overrides:
addValue
in classEstimator
- Parameters:
data
- the new data valueweight
- the weight assigned to the data value
-
getProbability
public double getProbability(double data) Get a probability estimate for a value- Specified by:
getProbability
in classEstimator
- Parameters:
data
- the value to estimate the probability of- Returns:
- the estimated probability of the supplied value
-
getNumSymbols
public int getNumSymbols()Gets the number of symbols this estimator operates with- Returns:
- the number of estimator symbols
-
getCount
public double getCount(double data) Get the count for a value- Parameters:
data
- the value to get the count of- Returns:
- the count of the supplied value
-
getSumOfCounts
public double getSumOfCounts()Get the sum of all the counts- Returns:
- the total sum of counts
-
toString
Display a representation of this estimator -
getCapabilities
Returns default capabilities of the classifier.- Specified by:
getCapabilities
in interfaceCapabilitiesHandler
- Overrides:
getCapabilities
in classEstimator
- Returns:
- the capabilities of this classifier
- See Also:
-
getRevision
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classEstimator
- Returns:
- the revision
-
aggregate
Description copied from interface:Aggregateable
Aggregate an object with this one- Specified by:
aggregate
in interfaceAggregateable<DiscreteEstimator>
- Parameters:
toAggregate
- the object to aggregate- Returns:
- the result of aggregation
- Throws:
Exception
- if the supplied object can't be aggregated for some reason
-
finalizeAggregation
Description copied from interface:Aggregateable
Call to complete the aggregation process. Allows implementers to do any final processing based on how many objects were aggregated.- Specified by:
finalizeAggregation
in interfaceAggregateable<DiscreteEstimator>
- Throws:
Exception
- if the aggregation can't be finalized for some reason
-
main
Main method for testing this class.- Parameters:
argv
- should contain a sequence of integers which will be treated as symbolic.
-