Skip to main content

Open pipeline for estimating within-person recovery dynamics after failure from behavioral telemetry (learning, memory, performance).

Project description

recoverr

tests DOI

Open pipeline for estimating within-person recovery dynamics after failure from behavioral telemetry — learning, memory, and performance logs — in one reusable API.

Failure-and-recovery is measured ad hoc across learning analytics, sport, and cognition, with no shared tooling. recoverr packages a validated pipeline that estimates how deeply, how fast, and how completely a person bounces back after errors, with the reliability and out-of-sample checks that make those estimates trustworthy.

Pipeline

Telemetry → events → baseline → recovery → reliability → heldout
  1. events — detect failure anchors from the stream (pluggable rules).
  2. baseline — context-matched placebo windows (regression-to-the-mean-safe).
  3. recovery — three axes: depth, speed (parametric τ / nonparametric AUC), completeness.
  4. reliability — split-half + multilevel shrinkage of per-person differences.
  5. heldout — personalized-vs-global validation to correct in-sample optimism.

Install

pip install recoverr-telemetry           # light: numpy / pandas / scipy / pyarrow
pip install "recoverr-telemetry[bayes]"  # adds NumPyro + JAX for the multilevel model

The distribution name is recoverr-telemetry; the import name is recoverr (e.g. import recoverr as rc).

Quickstart

import recoverr as rc

tele = rc.Telemetry.from_frame(df, unit="user", seq="pos_idx",
                               outcome="error", covariates=["days_bin"])
res = rc.RecoveryPipeline(window=20, depth_span=(1, 5)).run(
    tele, anchor_rule=rc.events.outcome_threshold(1),
    match_on=["days_bin"], min_events=10, seed=20260708)

res["curve"]        # event-minus-placebo deviation by relative position
res["axes"]         # per-unit depth / auc / tau / completeness / level
res["reliability"]  # split-half r_sb for depth and auc

Status

Preregistration and reanalysis materials: https://osf.io/qnfth/ Target journal: SoftwareX. Single-author. MIT licensed.

Implemented and tested (M1–M3): the recovery core (events, baseline, recovery, split-half reliability, permutation null, simulator), the SLAM/HLR IO adapters (io.from_slam, io.from_hlr), the binomial multilevel model (reliability.fit_mlm, needs [bayes]), held-out personalization gain (heldout.heldout_gain), and the ADEMP benchmark (sim.run_ademp) that reproduces the regression-to-the-mean inflation of naive one-sided indices and its correction by placebo matching. The three IO adapters (from_slam, from_hlr, from_chess), CI across Python 3.10–3.12, and a citation file are in place. See examples/slam_quickstart.py for a worked example on real SLAM data. Remaining (M5+): HLR/chess worked examples, PyPI release, and a Zenodo DOI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

recoverr_telemetry-1.0.0.tar.gz (68.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

recoverr_telemetry-1.0.0-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file recoverr_telemetry-1.0.0.tar.gz.

File metadata

  • Download URL: recoverr_telemetry-1.0.0.tar.gz
  • Upload date:
  • Size: 68.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for recoverr_telemetry-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d7607cf833269652455e47a7da9bb827bfe2b6c2bb824fc003ba74a106337628
MD5 9412d011811036aafcc3fe8115a281a1
BLAKE2b-256 8d222105377710e4b2dbc14b05c5ff0e5565c75ac9af2e0cdc14e994ca2995af

See more details on using hashes here.

File details

Details for the file recoverr_telemetry-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for recoverr_telemetry-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e956e7789405378d719229a5a791a205b7c1f52f1d1db3589ee85b60cd39d0fc
MD5 5e6bdcad9a615759ec2ec7236beab009
BLAKE2b-256 e45ce1ce3bb51b36b6b9dc28bb45c1e97e7e4a41e0e6dcd8c21ae7f6fdcec856

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page