Class TimeSeriesTreeClassifier
- java.lang.Object
-
- ai.libs.jaicore.ml.classification.singlelabel.timeseries.learner.ASimplifiedTSClassifier<java.lang.Integer>
-
- ai.libs.jaicore.ml.weka.classification.singlelabel.timeseries.learner.trees.TimeSeriesTreeClassifier
-
public class TimeSeriesTreeClassifier extends ai.libs.jaicore.ml.classification.singlelabel.timeseries.learner.ASimplifiedTSClassifier<java.lang.Integer>Time series tree as described in Deng, Houtao et al. "A Time Series Forest for Classification and Feature Extraction." Inf. Sci. 239 (2013): 142-153. This classifier only supports univariate time series prediction.
-
-
Constructor Summary
Constructors Constructor Description TimeSeriesTreeClassifier(TimeSeriesTreeLearningAlgorithm.ITimeSeriesTreeConfig config)Constructs an empty time series tree.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ai.libs.jaicore.graph.TreeNode<ai.libs.jaicore.ml.weka.classification.singlelabel.timeseries.learner.trees.TimeSeriesTreeClassifier.TimeSeriesTreeNodeDecisionFunction>decide(ai.libs.jaicore.graph.TreeNode<ai.libs.jaicore.ml.weka.classification.singlelabel.timeseries.learner.trees.TimeSeriesTreeClassifier.TimeSeriesTreeNodeDecisionFunction> treeNode, double[] instance)Function performing the decision on atreeNodegiven theinstancebased on the locally stored splitting criterion.TimeSeriesTreeLearningAlgorithmgetLearningAlgorithm(ai.libs.jaicore.ml.classification.singlelabel.timeseries.dataset.TimeSeriesDataset2 dataset)ai.libs.jaicore.graph.TreeNode<ai.libs.jaicore.ml.weka.classification.singlelabel.timeseries.learner.trees.TimeSeriesTreeClassifier.TimeSeriesTreeNodeDecisionFunction>getRootNode()Getter for the root node.java.lang.Integerpredict(double[] univInstance)Predicts the class of the given univariate instance by iterating through the tree starting from the root node to a leaf node to induce a class prediction.java.util.List<java.lang.Integer>predict(ai.libs.jaicore.ml.classification.singlelabel.timeseries.dataset.TimeSeriesDataset2 dataset)java.lang.Integerpredict(java.util.List<double[]> multivInstance)
-
-
-
Constructor Detail
-
TimeSeriesTreeClassifier
public TimeSeriesTreeClassifier(TimeSeriesTreeLearningAlgorithm.ITimeSeriesTreeConfig config)
Constructs an empty time series tree.
-
-
Method Detail
-
getRootNode
public ai.libs.jaicore.graph.TreeNode<ai.libs.jaicore.ml.weka.classification.singlelabel.timeseries.learner.trees.TimeSeriesTreeClassifier.TimeSeriesTreeNodeDecisionFunction> getRootNode()
Getter for the root node.- Returns:
- Returns the root node of the time series tree
-
predict
public java.lang.Integer predict(double[] univInstance) throws org.api4.java.ai.ml.core.exception.PredictionExceptionPredicts the class of the given univariate instance by iterating through the tree starting from the root node to a leaf node to induce a class prediction.- Specified by:
predictin classai.libs.jaicore.ml.classification.singlelabel.timeseries.learner.ASimplifiedTSClassifier<java.lang.Integer>- Parameters:
univInstance- Univariate instance to be predicted- Throws:
org.api4.java.ai.ml.core.exception.PredictionException
-
predict
public java.lang.Integer predict(java.util.List<double[]> multivInstance) throws org.api4.java.ai.ml.core.exception.PredictionException- Overrides:
predictin classai.libs.jaicore.ml.classification.singlelabel.timeseries.learner.ASimplifiedTSClassifier<java.lang.Integer>- Throws:
org.api4.java.ai.ml.core.exception.PredictionException
-
predict
public java.util.List<java.lang.Integer> predict(ai.libs.jaicore.ml.classification.singlelabel.timeseries.dataset.TimeSeriesDataset2 dataset) throws org.api4.java.ai.ml.core.exception.PredictionException- Specified by:
predictin classai.libs.jaicore.ml.classification.singlelabel.timeseries.learner.ASimplifiedTSClassifier<java.lang.Integer>- Throws:
org.api4.java.ai.ml.core.exception.PredictionException
-
decide
public static ai.libs.jaicore.graph.TreeNode<ai.libs.jaicore.ml.weka.classification.singlelabel.timeseries.learner.trees.TimeSeriesTreeClassifier.TimeSeriesTreeNodeDecisionFunction> decide(ai.libs.jaicore.graph.TreeNode<ai.libs.jaicore.ml.weka.classification.singlelabel.timeseries.learner.trees.TimeSeriesTreeClassifier.TimeSeriesTreeNodeDecisionFunction> treeNode, double[] instance)Function performing the decision on atreeNodegiven theinstancebased on the locally stored splitting criterion.- Parameters:
treeNode- Tree node where the decision is taken placeinstance- Instance values- Returns:
- Returns the child node where the next decision can be done, null if
treeNodeis a tree node
-
getLearningAlgorithm
public TimeSeriesTreeLearningAlgorithm getLearningAlgorithm(ai.libs.jaicore.ml.classification.singlelabel.timeseries.dataset.TimeSeriesDataset2 dataset)
- Specified by:
getLearningAlgorithmin classai.libs.jaicore.ml.classification.singlelabel.timeseries.learner.ASimplifiedTSClassifier<java.lang.Integer>
-
-