`impute_worst_score()` imputes the maximum of each metric separately, which is not the worst score for several metrics
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 52/100
Direzione di ricerca
Start with R/impute-missing-scores.R and trace how impute_worst_score() selects and fills metric values. Read the “Handling missing forecasts” vignette to understand the documented penalty, then check how the imputed WIS components and coverage and bias values should behave together. Done means imputed rows represent a consistent worst forecast and the documented behavior matches the implementation.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
CLAUDE: impute_worst_score() gives every metric its maximum across models, separately per metric. For several default metrics the maximum is not "worst", and the imputed scores of one forecast are no longer consistent with each other.
library(scoringutils)
scores <- score(as_forecast_quantile(example_quantile))
w <- impute_missing_scores(scores, impute_worst_score())
imp <- w[(.imputed)]
max(abs(imp$wis - (imp$overprediction + imp$underprediction + imp$dispersion)))
#> 77582.39 (for original rows: about 6e-11)
table(imp$interval_coverage_50)
#> 0 1
#> 33 104 # missing forecasts are mostly counted as covered
range(imp$bias)
#> -0.9 1.0 # the worst bias is the largest absolute value, not the maximum
class(w$interval_coverage_50)
#> "integer" # was "logical"
interval_coverage_*: the maximum means "covered".bias: signed; the maximum can even be negative.- WIS components: maximised separately, so
wisno longer equals their sum, which matters forplot_wis().
The vignette "Handling missing forecasts" says this strategy penalises models most heavily, which is not true for these metrics.
Location: R/impute-missing-scores.R.
Suggested fix: copy all metrics from the row with the worst value of one primary metric (e.g. wis, or the first metric), or restrict the strategy to named loss metrics. At a minimum, document that "worst" means "maximum" and warn for coverage and bias columns.
Found during a full review of the package (version 2.3.0.9000, main at 779d7d68).
- Lingua principale
- R
- Stelle
- 65
- Fork
- 24
- Merge medio
- 1h 24m
- PR unite (30g)
- 2
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di epiforecasts/scoringutils
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
epiforecasts/scoringutils#1264 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
epiforecasts/scoringutils#1265 ·
I maintainer di solito rispondono entro 1 giorno
-
Non-randomised PIT for integer forecasts drops forecasts whose observation exceeds all samplesAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
epiforecasts/scoringutils#1260 ·
I maintainer di solito rispondono entro 1 giorno
-
Incorrect guidance in `NEWS.md` re `add_relative_skill()`?Forse già presa @nikosbosse l’ha presa 3 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
epiforecasts/scoringutils#1226 · 1 commento · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
get_pit_histogram(): unsorted breaks produce negative densities; num_bins = 1 returns an empty tableForse già presa @nikosbosse l’ha presa 3 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
epiforecasts/scoringutils#1219 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di epiforecasts/scoringutils
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
waldronlab/bugphyzz#301 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
r-lib/tree-sitter-r#209 ·
-
Suggest rmoriebricklayerAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 67/100
-
Suggest rmoriebricklayerAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 79/100
cran-task-views/CausalInference#52 · 1 commento ·