Diagnoser

scalation.modeling.forecasting.Diagnoser
abstract class Diagnoser(dfr: Double, df: Double) extends Fit

The Diagnoser trait provides methods to determine basic Quality of Fit QoF measures for time series where forecasting at early time points may not be feasible.

Value parameters

df

the degrees of freedom for error

dfr

the degrees of freedom for regression/model (0 or more)

Attributes

Graph
Supertypes
trait Fit
trait FitM
class Object
trait Matchable
class Any
Known subtypes
class AR_Star
class VAR
class VARX
class Forecaster
class AR
class ARMA
class Forecaster_D
class ARX_D
class NARX_SR_D
class ARX_Quad_D
class ARX_SR_D
class ARY_D
class ARX
class ARX_Quad
class ARX_SR
class ARY
class ARY_Quad
class SARY
class NullModel
class RandomWalk
class RandomWalkS
class TrendModel
Show all

Members list

Value members

Concrete methods

override def diagnose(y: VectorD, yp: VectorD, w: VectorD = ...): VectorD

Diagnose the health of the model by computing the Quality of Fit (QoF) measures, from the error/residual vector and the predicted & actual responses. For some models the instances may be weighted. For time series, the first few predictions use only part of the model, so may be skipped.

Diagnose the health of the model by computing the Quality of Fit (QoF) measures, from the error/residual vector and the predicted & actual responses. For some models the instances may be weighted. For time series, the first few predictions use only part of the model, so may be skipped.

Value parameters

w

the weights on the instances (defaults to null)

y

the actual response/output vector to use (test/full)

yp

the predicted response/output vector (test/full)

Attributes

Definition Classes
Fit -> FitM
def mod_resetDF(size: Int): Unit

Models need to provide a means for updating the Degrees of Freedom (DF). Note: Degrees of Freedom are mainly relevant for full and train, not test.

Models need to provide a means for updating the Degrees of Freedom (DF). Note: Degrees of Freedom are mainly relevant for full and train, not test.

Value parameters

size

the size of dataset (full, train, or test sets)

Attributes

def setSkip(skip_: Int): Unit

Set the number of data points/elements to skip at the beginning of a time series for purposes of diagnosis or computing a loss function. For In-Sample, the first value (time t = 0) is not forecastable without backcasting.

Set the number of data points/elements to skip at the beginning of a time series for purposes of diagnosis or computing a loss function. For In-Sample, the first value (time t = 0) is not forecastable without backcasting.

Value parameters

skip

skip this many elements at the beginning of the time series

Attributes

def ssef(y: VectorD, yp: VectorD): Double

Compute the sum of squares errors (loss function), assuming the first 'skip' errors are zero.

Compute the sum of squares errors (loss function), assuming the first 'skip' errors are zero.

Value parameters

y

the actual response vector

yp

the predicted response vector (one-step ahead)

Attributes

Inherited methods

inline def PIbounds(yp: VectorD, ihw_: MatrixD): (MatrixD, MatrixD)

Attributes

Inherited from:
Fit
inline def PIbounds(yp: VectorD, ihw: VectorD): (VectorD, VectorD)

Make the PREDICTION INTERVAL (PI) lower and upper bound vectors from the point predictions and the interval half widths.

Make the PREDICTION INTERVAL (PI) lower and upper bound vectors from the point predictions and the interval half widths.

Value parameters

ihw

the vector of interval half widths (one for each prediction)

yp

the vector of point predictions (y-hat)

Attributes

Inherited from:
Fit
def diagnose_(y: VectorD, yp: VectorD, low_up: (VectorD, VectorD), α: Double = ..., w: VectorD = ...): VectorD

Diagnose the health of the model by computing the Quality of Fit (QoF) metrics/measures, from the error/residual vector and the predicted & actual responses. For some models the instances may be weighted. This method also includes PREDICTION INTERVAL (PI) metrics/measures.

Diagnose the health of the model by computing the Quality of Fit (QoF) metrics/measures, from the error/residual vector and the predicted & actual responses. For some models the instances may be weighted. This method also includes PREDICTION INTERVAL (PI) metrics/measures.

Value parameters

low_up

the predicted (lower, upper) bounds vectors

w

the weights on the instances (defaults to null)

y

the actual response/output vector to use (test/full)

yp

the point prediction mean/median

α

the significance/nominal level of uncertainty (α) (defaults to 0.1, 10%)

Attributes

See also

otexts.com/fpp2/prediction-intervals.html Note: wis should be computed separately as the bounds are matrices.

Inherited from:
Fit
def diagnose_mat(yy: MatrixD, yyp: MatrixD, w: VectorD = ...): MatrixD

Diagnose the health of the model by computing the Quality of Fit (QoF) measures, from the predicted & actual matrix responses (output variable per column). For some models the instances may be weighted.

Diagnose the health of the model by computing the Quality of Fit (QoF) measures, from the predicted & actual matrix responses (output variable per column). For some models the instances may be weighted.

Value parameters

w

the weights on the instances (defaults to null)

yy

the actual response/output matrix to use (test/full)

yyp

the predicted response/output matrix (test/full)

Attributes

See also

Regression_WLS

Inherited from:
Fit
def diagnose_pi(y: VectorD, yp: VectorD, low_up: (MatrixD, MatrixD), α: VectorD = ..., : Int = ...): (VectorD, Int)

Diagnose the health of the model by computing the Quality of Fit (QoF) measures for both POINT PREDICTIONS and PREDICTION INTERVALS.

Diagnose the health of the model by computing the Quality of Fit (QoF) measures for both POINT PREDICTIONS and PREDICTION INTERVALS.

Value parameters

the index for the main significance level out of the vector α

low_up

the predicted (lower, upper) bounds matrices for various α levels (column for each α level)

y

the given time-series (must be aligned with the interval forecast)

yp

the point prediction mean/median

α

the vector of significance levels (defaults to the K = 11 prediction intervals used by the CDC Forecast Hub)

Attributes

Inherited from:
Fit
def diagnose_wis(y: VectorD, yp: VectorD, low_up: (MatrixD, MatrixD), α: VectorD = ...): Double

Diagnose the health of the model by computing the Quality of Fit (QoF) measures, specifically for the weighted interval score that allows using custom α levels.

Diagnose the health of the model by computing the Quality of Fit (QoF) measures, specifically for the weighted interval score that allows using custom α levels.

Value parameters

low_up

the predicted (lower, upper) bounds matrices for various α levels (column for each α level)

y

the given time-series (must be aligned with the interval forecast)

yp

the point prediction mean/median

α

the vector of significance levels (defaults to the K = 11 prediction intervals used by the CDC Forecast Hub)

Attributes

Inherited from:
Fit
override def fit: VectorD

Return the Quality of Fit (QoF) measures corresponding to the labels given. Note, if sse > sst, the model introduces errors and the rSq may be negative, otherwise, R^2 (rSq) ranges from 0 (weak) to 1 (strong). Override to add more quality of fit measures.

Return the Quality of Fit (QoF) measures corresponding to the labels given. Note, if sse > sst, the model introduces errors and the rSq may be negative, otherwise, R^2 (rSq) ranges from 0 (weak) to 1 (strong). Override to add more quality of fit measures.

Attributes

Definition Classes
Fit -> FitM
Inherited from:
Fit

Return the y-transformation.

Return the y-transformation.

Attributes

Inherited from:
Fit
override def help: String

Return the help string that describes the Quality of Fit (QoF) measures provided by the Fit trait. Override to correspond to fitLabel.

Return the help string that describes the Quality of Fit (QoF) measures provided by the Fit trait. Override to correspond to fitLabel.

Attributes

Definition Classes
Fit -> FitM
Inherited from:
Fit
def ll(ms: Double = ..., s2: Double = ..., m2: Int = ...): Double

The log-likelihood function times -2. Override as needed.

The log-likelihood function times -2. Override as needed.

Value parameters

ms

raw Mean Squared Error

s2

MLE estimate of the population variance of the residuals

Attributes

See also
Inherited from:
Fit
inline def mse_: Double

Return the mean of the squares for error (sse / df). Must call diagnose first.

Return the mean of the squares for error (sse / df). Must call diagnose first.

Attributes

Inherited from:
Fit
def predictInt(x_: MatrixD, df_: Double = ..., α: Double = ...): VectorD

Produce a PREDICTION INTERVAL half width for each prediction yp (y-hat).

Produce a PREDICTION INTERVAL half width for each prediction yp (y-hat).

Value parameters

df_

the error/residual degrees of freedom

x_

the testing/full data/input matrix

α

the significance level α = .1 for TWO TAILS: left tail .05 | 1 - α = .90 | .05 right tail e.g., for AutoMPG, t_crit (385, 0.90) = 1.6488210657096942 t_crit (385, 0.95) = 1.966

Attributes

See also

predictCInt in Predictor

stats.stackexchange.com/questions/585660/what-is-the-formula-for-prediction-interval-in-multivariate-case

Inherited from:
Fit
def predictInt_(x_: MatrixD, df_: Double = ..., α: VectorD = ...): MatrixD

Produce a PREDICTION INTERVAL half width for each prediction yp (y-hat) and each significance level.

Produce a PREDICTION INTERVAL half width for each prediction yp (y-hat) and each significance level.

Value parameters

df_

the error/residual degrees of freedom

x_

the testing/full data/input matrix

α

the significance levels to be used (defaults to Fit.α_)

Attributes

Inherited from:
Fit
inline def rSq0_: Double

Attributes

Inherited from:
FitM
inline def rSq_: Double

Return the coefficient of determination (R^2). Must call diagnose first.

Return the coefficient of determination (R^2). Must call diagnose first.

Attributes

Inherited from:
FitM
def resetDF(df_update: (Double, Double)): Unit

Reset the degrees of freedom to the new updated values. For some models, the degrees of freedom is not known until after the model is built.

Reset the degrees of freedom to the new updated values. For some models, the degrees of freedom is not known until after the model is built.

Value parameters

df_update

the updated degrees of freedom (regression/model, error)

Attributes

Inherited from:
Fit
def showQoF(qof: VectorD): Unit

Show the QoF metrics/measures in vector qof.

Show the QoF metrics/measures in vector qof.

Value parameters

qof

the QoF metrics (e.g., for point and interval predictions/forecasts)

Attributes

Inherited from:
Fit
inline def sse_: Double

Return the sum of the squares for error (sse). Must call diagnose first.

Return the sum of the squares for error (sse). Must call diagnose first.

Attributes

Inherited from:
FitM
override def summary(x_: MatrixD = ..., fname: Array[String] = ..., b: VectorD = ..., vifs: VectorD = ...): String

Produce a QoF SUMMARY for a model with diagnostics for each predictor x_j and the overall Quality of Fit (QoF). Note: `Fac_Cholesky is used to compute the inverse of xtx.

Produce a QoF SUMMARY for a model with diagnostics for each predictor x_j and the overall Quality of Fit (QoF). Note: `Fac_Cholesky is used to compute the inverse of xtx.

Value parameters

b

the parameters/coefficients for the model

fname

the array of feature/variable names

vifs

the Variance Inflation Factors (VIFs)

x_

the testing/full data/input matrix

Attributes

Definition Classes
Fit -> FitM
Inherited from:
Fit

Concrete fields

protected var skip: Int