scoringrules.twgksmv_ensemble#
- scoringrules.twgksmv_ensemble(obs: Array, fct: Array, v_func: Callable[[ArrayLike], ArrayLike], m_axis: int = -2, v_axis: int = -1, *, ens_w: Array = None, estimator: str = 'nrg', backend: Backend = None) Array#
Compute the Threshold-Weighted Gaussian Kernel Score (twGKS) for a finite multivariate ensemble.
Computation is performed using the ensemble representation of threshold-weighted kernel scores in [Allen et al. (2022)](https://arxiv.org/abs/2202.12732):
\[\mathrm{twGKS}(F_{ens}, y) = - \frac{1}{M} \sum_{m = 1}^{M} k(v(x_{m}), v(y)) + \frac{1}{2 M^{2}} \sum_{m = 1}^{M} \sum_{j = 1}^{M} k(v(x_{m}), v(x_{j})) + \frac{1}{2} k(v(y), v(y)),\]where \(F_{ens}\) is the ensemble forecast \(\mathbf{x}_{1}, \dots, \mathbf{x}_{M}\) with \(M\) members, \(\| \cdotp \|\) is the Euclidean distance, \(v\) is the chaining function used to target particular outcomes, and
\[k(x_{1}, x_{2}) = \exp \left(- \frac{(x_{1} - x_{2})^{2}}{2} \right)\]is the Gaussian kernel.
- Parameters:
- obsarray_like
The observed values, where the variables dimension is by default the last axis.
- fctarray_like
The predicted forecast ensemble, where the ensemble dimension is by default represented by the second last axis and the variables dimension by the last axis.
- v_funccallable, array_like -> array_like
Chaining function used to emphasise particular outcomes.
- m_axisint
The axis corresponding to the ensemble dimension. Defaults to -2.
- v_axisint or tuple of ints
The axis corresponding to the variables dimension. Defaults to -1.
- ens_warray_like
Weights assigned to the ensemble members. Array with one less dimension than fct (without the v_axis dimension). Default is equal weighting. Weights are normalised so that they sum to one across the ensemble members.
- estimatorstr
Indicates the estimator to be used.
- backendstr
The name of the backend used for computations. Defaults to ‘numba’ if available, else ‘numpy’.
- Returns:
- scorearray_like
The computed Threshold-Weighted Gaussian Kernel Score.