Skip to content

Utilities for partitioning Dates into validation and holdout sets.

License

Notifications You must be signed in to change notification settings

invenia/DateSelectors.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DateSelectors

Stable Dev CI code style blue ColPrac: Contributor's Guide on Collaborative Practices for Community Packages

Usage

DateSelectors.jl simplifies the partitioning of a collection of dates into non-contiguous validation and holdout sets in line with best practices for tuning hyper-parameters, for time-series machine learning.

The package exports the partition function, which assigns dates to the validation and holdout sets according to the DateSelector. The available DateSelectors are:

  1. NoneSelector: assigns all dates to the validation set.
  2. RandomSelector: randomly draws a subset of dates without replacement.
  3. PeriodicSelector: draws contiguous subsets of days periodically from the collection.

A notable trait of the DateSelectors is that the selection is invariant to the start and end-dates of collection itself. Thus you can shift the start and end dates, e.g. by a week, and the days in the overlapping period will consitently still be placed into holdout or validation as before. The only thing that controls if a date is selected or not is the parameters of the DateSelector itself.

See the examples in the docs for more info.

About

Utilities for partitioning Dates into validation and holdout sets.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages