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: 15522 $
- Author:
- Len Trigg (trigg@cs.waikato.ac.nz)
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionNo-arg constructor needed to make WEKA's forName() work.DiscreteEstimator(int numSymbols, boolean laplace) ConstructorDiscreteEstimator(int nSymbols, double fPrior) Constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidaddValue(double data, double weight) Add a new data value to the current estimator.aggregate(DiscreteEstimator toAggregate) Aggregate an object with this onevoidCall to complete the aggregation process.Returns default capabilities of the classifier.doublegetCount(double data) Get the count for a valueintGets the number of symbols this estimator operates withdoublegetProbability(double data) Get a probability estimate for a valueReturns the revision string.doubleGet the sum of all the countsstatic voidMain 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:
addValuein interfaceIncrementalEstimator- Overrides:
addValuein 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:
getProbabilityin 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:
getCapabilitiesin interfaceCapabilitiesHandler- Overrides:
getCapabilitiesin classEstimator- Returns:
- the capabilities of this classifier
- See Also:
-
getRevision
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- Overrides:
getRevisionin classEstimator- Returns:
- the revision
-
aggregate
Description copied from interface:AggregateableAggregate an object with this one- Specified by:
aggregatein 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:AggregateableCall to complete the aggregation process. Allows implementers to do any final processing based on how many objects were aggregated.- Specified by:
finalizeAggregationin 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.
-