twcrps_ensemble bounds ignore the input precision

Aperta Adatta ai principianti
#163 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
82/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
numpy, python
Ambito
data

Direzione di ricerca

La issue indica uv_weighted_score_chain in core/utils.py come causa e afferma che i punteggi del kernel usano già asarray_matching per i limiti. Leggi questo helper e confronta la conversione dei limiti con le conversioni dei punteggi del kernel. Riproduci i casi NumPy float32 e torch float64 della issue; il lavoro è completato quando gli output mantengono la precisione dell’input e il risultato torch coincide con NumPy.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug

The threshold bounds a and b of twcrps_ensemble are converted with the default dtype instead of the input's, so float32 numpy inputs return float64 (also with the default bounds), and on torch float64 inputs the bounds are rounded to float32.

obs = np.float32([0.3, 1.2])
fct = np.random.default_rng(0).normal(size=(2, 5)).astype(np.float32)
sr.twcrps_ensemble(obs, fct).dtype  # float64

With float64 torch tensors and a=0.1, b=0.7, the result differs from numpy by about 5e-9. The cause is uv_weighted_score_chain in core/utils.py; the kernel scores already convert the bounds with asarray_matching.

Lingua principale
Python
Stelle
108
Fork
15
Merge medio
1h 42m
PR unite (30g)
9

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di frazane/scoringrules

Tutte le issue di frazane/scoringrules

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.