Class MovAvgModel
java.lang.Object
org.elasticsearch.search.aggregations.pipeline.MovAvgModel
- All Implemented Interfaces:
NamedWriteable,Writeable,org.elasticsearch.common.xcontent.ToXContent,org.elasticsearch.common.xcontent.ToXContentFragment
- Direct Known Subclasses:
EwmaModel,HoltLinearModel,HoltWintersModel,LinearModel,SimpleModel
public abstract class MovAvgModel
extends Object
implements NamedWriteable, org.elasticsearch.common.xcontent.ToXContentFragment
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAbstract class which also provides some concrete parsing functionality.Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.ParamsNested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V> -
Field Summary
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract booleanReturns if the model can be cost minimized.abstract MovAvgModelclone()Clone the model, returning an exact copyprotected abstract double[]doPredict(Collection<Double> values, int numPredictions)Calls to the model-specific implementation which actually generates the predictionsprotected double[]emptyPredictions(int numPredictions)Returns an empty set of predictions, filled with NaNsabstract booleanabstract inthashCode()booleanhasValue(int valuesAvailable)Checks to see this model can produce a new value, without actually running the algo.booleanShould this model be fit to the data via a cost minimizing algorithm by default?abstract MovAvgModelGenerates a "neighboring" model, where one of the tunable parameters has been randomly mutated within the allowed range.abstract doublenext(Collection<Double> values)Returns the next value in the series, according to the underlying smoothing modeldouble[]predict(Collection<Double> values, int numPredictions)Predicts the next `n` values in the series.protected voidThis method allows models to validate the window size if requiredabstract voidwriteTo(StreamOutput out)Write the model to the output streamMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.elasticsearch.common.io.stream.NamedWriteable
getWriteableNameMethods inherited from interface org.elasticsearch.common.xcontent.ToXContent
toXContentMethods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment
isFragment
-
Constructor Details
-
MovAvgModel
public MovAvgModel()
-
-
Method Details
-
minimizeByDefault
public boolean minimizeByDefault()Should this model be fit to the data via a cost minimizing algorithm by default? -
canBeMinimized
public abstract boolean canBeMinimized()Returns if the model can be cost minimized. Not all models have parameters which can be tuned / optimized. -
neighboringModel
Generates a "neighboring" model, where one of the tunable parameters has been randomly mutated within the allowed range. Used for minimization -
hasValue
public boolean hasValue(int valuesAvailable)Checks to see this model can produce a new value, without actually running the algo. This can be used for models that have certain preconditions that need to be met in order to short-circuit execution- Parameters:
valuesAvailable- Number of values in the current window of values- Returns:
- Returns `true` if calling next() will produce a value, `false` otherwise
-
next
Returns the next value in the series, according to the underlying smoothing model- Parameters:
values- Collection of numerics to movingAvg, usually windowed- Returns:
- Returns a double, since most smoothing methods operate on floating points
-
predict
Predicts the next `n` values in the series.- Parameters:
values- Collection of numerics to movingAvg, usually windowednumPredictions- Number of newly generated predictions to return- Returns:
- Returns an array of doubles, since most smoothing methods operate on floating points
-
doPredict
Calls to the model-specific implementation which actually generates the predictions- Parameters:
values- Collection of numerics to movingAvg, usually windowednumPredictions- Number of newly generated predictions to return- Returns:
- Returns an array of doubles, since most smoothing methods operate on floating points
-
validate
This method allows models to validate the window size if required -
emptyPredictions
protected double[] emptyPredictions(int numPredictions)Returns an empty set of predictions, filled with NaNs- Parameters:
numPredictions- Number of empty predictions to generate
-
writeTo
Write the model to the output stream- Specified by:
writeToin interfaceWriteable- Parameters:
out- Output stream- Throws:
IOException
-
clone
Clone the model, returning an exact copy -
hashCode
public abstract int hashCode() -
equals
-