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 DateSelector
s are:
NoneSelector
: assigns all dates to the validation set.RandomSelector
: randomly draws a subset of dates without replacement.PeriodicSelector
: draws contiguous subsets of days periodically from the collection.
A notable trait of the DateSelector
s 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.