Skip to contents

The one call

Two tables to a scored comparison of representations, and the prediction that follows from it.

timesift()
Fit and compare representations of time-varying data
c(<timesift_learner>) c(<timesift_models>) c(<timesift_representation>) c(<timesift_sift>)
Combine learners, or representations, into a set
summary(<timesift>) print(<timesift>) print(<timesift_summary>)
What a run found
predict(<timesift>)
Predict from a fitted timesift
plot(<timesift>)
Draw a run

Representations

How a series becomes the array a learner reads, and the set a run is compared across.

native() grain() multigrain() lookback()
How a series becomes an array a learner reads
grains() lookbacks() as_sift()
Several representations to run the same learners across
build_representation()
Build one representation for a set of targets

Learners

The arms that ship, how they are trained, and the interface a learner of your own goes through.

elasticnet()
Penalised regression on the flattened representation
stepwise()
Forward selection by AIC on the flattened representation
forest()
Random forest on the flattened representation
mlp() cnn() rescnn()
Sequence encoders with a joint multi-label head
train_control()
Training settings every neural learner reads
learner()
Define a learner
register_learner() learners()
Register a learner

The split and the cells

One fold map read by everything that scores, and the cells a score is defined on, computed with no model involved.

cv() grouped_cv()
How the folds are drawn
fold_map()
Assign units to cross-validation folds
scorable_cells()
Which cells a score is defined on

Combining the candidates

Weights fitted on the out-of-fold predictions alone.

ensemble()
How the candidates are combined
ensemble_fit()
Fit the combiner on the out-of-fold predictions
ensemble_combine()
Combine one prediction per member into one prediction
ensemble_weights()
The weights the combiner fitted

Scoring and comparison

tss()
The true skill statistic
roc_auc()
The area under the ROC curve
kappa_score() decision_threshold() model_agreement()
Cohen's kappa, and where two models disagree
score_predictions()
Score held-out predictions on the cells the mask allows
paired_contrast()
Compare two arms cell by cell
grain_contrasts()
Compare every grain against a learner's best one
tss_inflation()
How much a self-selected threshold inflates the reported level
implied_skill()
What population skill a reported level is consistent with
occlusion()
What part of the record a fitted model reads

The arrays themselves

Readings in long form to a [unit, bin, channel] array, reachable without the fitting layer.

grain_matrix()
Reduce sensor series to a temporal grain
lookback_matrix()
Reduce sensor series to a lookback anchored on each target
coverage()
Which units reach which bins
timesift_set()
Several built representations of the same targets
calendar_channels()
Where in the year each bin sits
bind_channels()
Put channels side by side
feature_matrix()
Bring an already-reduced feature table into a ladder

One grain at a time

Fitting across a set of grains on its own split, and reading the grain a ladder saturates at.

grain_ladder() summary(<timesift_ladder>)
Fit at every grain and see where skill saturates
fit_learner() predict(<timesift_fit>)
Fit one learner at one grain
select_grain() summary(<timesift_selection>)
Choose the grain inside the training data, and score the whole procedure
plot(<timesift_ladder>)
Draw a ladder
plot(<timesift_selection>)
Draw how stable the choice of grain was

Extending

The response head and the metric are registrations, never a fork of the fitting code.

register_response() responses()
Register a response head
positive_weights()
Case weights that balance a rare response
register_metric() metrics()
Register a metric

What crosses the boundary

The three artifacts a split is carried in, and the digest that says two arrays are the same array.

write_folds() read_folds() write_response() read_response() write_cells() read_cells()
Read and write the artifacts that cross the language boundary
digest_array()
The cross-language digest of a representation

A record to test on

simulate_records()
Simulate sensor records whose response acts at a known temporal grain

The package

timesift-package
timesift: Temporal Climate Resolution for Ecological Prediction