Scores
Postprocess your anomaly scores by making different algorithms comparable and computing their ensemble.
Functions
MultivariateAnomalies.get_quantile_scores
— Functionget_quantile_scores(scores, quantiles = 0.0:0.01:1.0)
return the quantiles of the given N dimensional anomaly scores
cube. quantiles
(default: quantiles = 0.0:0.01:1.0
) is a Float range of quantiles. Any score being greater or equal quantiles[i]
and beeing smaller than quantiles[i+1]
is assigned to the respective quantile quantiles[i]
.
Examples
julia> scores1 = rand(10, 2)
julia> quantile_scores1 = get_quantile_scores(scores1)
MultivariateAnomalies.get_quantile_scores!
— Functionget_quantile_scores!{tp,N}(quantile_scores::AbstractArray{Float64, N}, scores::AbstractArray{tp,N}, quantiles::StepRangeLen{Float64} = 0.0:0.01:1.0)
return the quantiles of the given N dimensional scores
array into a preallocated quantile_scores
array, see get_quantile_scores()
.
MultivariateAnomalies.compute_ensemble
— Functioncompute_ensemble(m1_scores, m2_scores[, m3_scores, m4_scores]; ensemble = "mean")
compute the mean (ensemble = "mean"
), minimum (ensemble = "min"
), maximum (ensemble = "max"
) or median (ensemble = "median"
) of the given anomaly scores. Supports between 2 and 4 scores input arrays (m1_scores, ..., m4_scores
). The scores of the different anomaly detection algorithms should be somehow comparable, e.g., by using get_quantile_scores()
before.
Examples
julia> using MultivariateAnomalies
julia> scores1 = rand(10, 2)
julia> scores2 = rand(10, 2)
julia> quantile_scores1 = get_quantile_scores(scores1)
julia> quantile_scores2 = get_quantile_scores(scores2)
julia> compute_ensemble(quantile_scores1, quantile_scores2, ensemble = "max")