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
Modifier and TypeClassDescriptionstatic class
Abstract 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.Params
Nested 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
-
Method Summary
Modifier and TypeMethodDescriptionabstract boolean
Returns if the model can be cost minimized.abstract MovAvgModel
clone()
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 boolean
abstract int
hashCode()
boolean
hasValue(int valuesAvailable)
Checks to see this model can produce a new value, without actually running the algo.boolean
Should this model be fit to the data via a cost minimizing algorithm by default?abstract MovAvgModel
Generates a "neighboring" model, where one of the tunable parameters has been randomly mutated within the allowed range.abstract double
next(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 void
This method allows models to validate the window size if requiredabstract void
writeTo(StreamOutput out)
Write the model to the output streamMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.elasticsearch.common.io.stream.NamedWriteable
getWriteableName
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContent
toXContent
Methods 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:
writeTo
in interfaceWriteable
- Parameters:
out
- Output stream- Throws:
IOException
-
clone
Clone the model, returning an exact copy -
hashCode
public abstract int hashCode() -
equals
-