Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

implement train_test_split='fair-sliding'/'fair-all' #648

Open
3 of 5 tasks
aaronspring opened this issue Aug 1, 2021 · 1 comment
Open
3 of 5 tasks

implement train_test_split='fair-sliding'/'fair-all' #648

aaronspring opened this issue Aug 1, 2021 · 1 comment

Comments

@aaronspring
Copy link
Collaborator

aaronspring commented Aug 1, 2021

Is your feature request related to a problem? Please describe.
New paper Risbey et al. 2021 demonstrates how forecaster choices for time selection in bias reduction impacts skill.

Reference: https://t.co/HE4PoROb8Z?amp=1

Describe the solution you'd like
hindcast.remove_bias(how='additive_mean', alignment='same_verifs', method='fair_sliding')

implemented method from:

unfair-cv is often standard, see #643, but unfair wrt real-time forecast/attainable skill, i.e. unfair means artificial skill

Demo: https://gist.github.com/aaronspring/94e24fb7e0a536be61caf1970287f3b5

@aaronspring
Copy link
Collaborator Author

aaronspring commented Aug 2, 2021

API: method

  • fair: train_init=slice(start, end) ,test_init=slice(start, end) (need to change maybe to train_time for same_verifs)
  • fair-sliding: train_init=slice(start, end),test_init=slice(start, end)
  • fair-all: test_init=slice(start, end) ,train_init=slice(start, end)
  • unfair-cv, cv='loo'
  • unfair: now default

@aaronspring aaronspring changed the title remove_bias fair/unfair keyword implement train_test_split='fair-sliding'/'fair-all' Aug 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant