Skip to main content

configurable trainer for generative event models

Project description

Cotorra: a configurable trainer

DOI SWH

๐Ÿฆœ the wild parakeet of Chicago's south side

About

This repo provides a configurable trainer for generative event models on tokenized timelines. Cotorra is a Spanish term for a small-to-medium sized parrot, particularly the Monk parakeet. Monk parakeets were introduced to the south side of Chicago, where they have flourished. 1 It benefits from previous experience training foundation models on tokenized electronic health records. 2 3 4 5

Installation

You can download and install this package as follows:

git clone git@github.com:bbj-lab/cotorra.git
cd cotorra
python -m venv .venv
. .venv/bin/activate
pip install -e ".[gen]" \
  --index-url https://download.pytorch.org/whl/cu128 \
  --extra-index-url https://pypi.org/simple

Context

Suppose you have a dataset of tokenized timelines tokens_times.parquet as a parquet table with columns:

  • subject_id
  • tokens โ€” the integer token sequence for the subject's timeline.
  • times โ€” a parallel list of timestamps, one per token, indicating when each event occurred.

The table will look something like this:

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ subject_id         โ”† tokens          โ”† times                           โ”‚
โ”‚ ---                โ”† ---             โ”† ---                             โ”‚
โ”‚ str                โ”† list[u32]       โ”† list[datetime[ฮผs]]              โ”‚
โ•žโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ชโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ชโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ก
โ”‚ 20002103           โ”† [20, 350, โ€ฆ 21] โ”† [2116-05-08 02:45:00, 2116-05-โ€ฆ โ”‚
โ”‚ 20008372           โ”† [20, 350, โ€ฆ 21] โ”† [2110-10-30 13:03:00, 2110-10-โ€ฆ โ”‚
โ”‚ โ€ฆ                  โ”† โ€ฆ               โ”† โ€ฆ                               โ”‚
โ”‚ 29994865           โ”† [20, 364, โ€ฆ 21] โ”† [2111-01-28 21:49:00, 2111-01-โ€ฆ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

You also have a tokenizer.yaml, a plain yaml file that contains information about the configuration, learned vocabulary, and bins. This file is sufficient to reconstitute the tokenizer object. We only need this file to contain a lookup table:

lookup:
  UNK: 0
  ADMN//direct: 1
  ADMN//ed: 2
  ADMN//elective: 3
  AGE//age_Q0: 4
  ...

Finally, we need subject_splits.parquet which is a table listing out all subject_id's and their corresponding split assignment (with splits: train, tuning, and held_out). This table may include additional demographic information provided as pass-through-columns to cocoa.

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ subject_id โ”† split    โ”‚
โ”‚ ---        โ”† ---      โ”‚
โ”‚ str        โ”† str      โ”‚
โ•žโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ชโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ก
โ”‚ 21081215   โ”† train    โ”‚
โ”‚ 20302177   โ”† train    โ”‚
โ”‚ โ€ฆ          โ”† โ€ฆ        โ”‚
โ”‚ 28150003   โ”† held_out โ”‚
โ”‚ 22151813   โ”† held_out โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

For extraction and scoring workflows, we also need split-specific inference tables in the same processed_data_home directory:

  • train_for_inference.parquet
  • tuning_for_inference.parquet
  • held_out_for_inference.parquet

These tables are expected to include at least:

  • tokens_past (the model context used for extraction/scoring)
  • s_elapsed_past (if using time_based_rope)
  • token-specific label columns such as <TOKEN>_past and <TOKEN>_future used by generative and representation-based scoring.

The cocoa winnow command provides these.

[!TIP] For getting your data to this point, check out our configurable collator / tokenizer: โ˜•๏ธ cocoa

Given these things, we want to train a model to predict the next token in a subject's timeline given their complete history or context up to this point. This package is designed to do that in a configurable way.

Configuration

This library can be extensively customized through yaml configuration files. Each command has its own default config under src/cotorra/config/, which you can override by passing a config file via the appropriate CLI flag. Any value can also be overridden programmatically via **kwargs which are merged on top of the YAML config via OmegaConf.

Training configuration (example)

Used by cotorra train and cotorra tune.

  • model:

    • model_name: Name or path of the HuggingFace model (e.g., meta-llama/Llama-3.2-1B).
    • model_args: Model architecture parameters passed directly to HuggingFace's AutoConfig.

    Note: The bundled config defines reusable model presets under model_presets.

  • max_seq_len: Maximum sequence length for model input.

  • n_epochs: Number of epochs (handled in the dataloader, not the trainer).

  • run_name: Name for the current run (referenced by wandb and training_args).

  • tokens_of_interest: List of special tokens to upweight during training (referenced by loss config). Supports patterns specified with fnmatch.

  • wandb:

    • project: Weights & Biases project name for experiment tracking.
    • run_name: Name for the current run.
  • custom_loss: Boolean flag to enable custom loss functions (default: false).

  • quantile_token_loss (optional): Upweights loss on quantile boundary tokens.

    • qt_weight: Weight multiplier for quantile tokens.
  • label_weighted_loss (optional): Upweights loss on specific tokens of clinical interest.

    • tokens_of_interest: List of token labels to upweight. Supports patterns specified with fnmatch.
    • toi_weight: Weight multiplier applied to those tokens.
  • time_based_rope (optional): Enables time-aware rotary position embeddings.

    • sec_per_pos_id: Number of seconds represented by one position id increment.
  • training_args: Arguments passed to HuggingFace's TrainingArguments.

  • tuning_args: Arguments passed to HuggingFace's hyperparameter_search when cotorra tune is called.

Model presets

We offer the following presents

designator base model # params w/ ~1340-token vocab
llama_32 meta-llama/Llama-3.2-1B ~76.9M
llama_32_mid meta-llama/Llama-3.2-1B ~8.2M
qwen_3 Qwen/Qwen3-1.7B-Base ~74.1M
qwen_3_mid Qwen/Qwen3-1.7B-Base ~8.4M
gemma_3 google/gemma-3-1b-pt ~75.7M
gemma_3_mid google/gemma-3-1b-pt ~7.8M

Use the model key to select one of these presets and then override any individual model_args entries as needed.

[!TIP] Training supports the --resume-from-checkpoint (-r) flag. When set, cotorra train will attempt to resume from the latest HuggingFace checkpoint saved under --output-home. If no checkpoint is found (or resumption fails), it automatically falls back to training from scratch โ€” so the flag is safe to pass unconditionally in scripts. Use save_steps in training_args in the training.yaml file to control the frequency of checkpointing.

Differential privacy

We wrap opacus to support training with differential privacy (see train-private below). The following relevant parameters can be modified in the configuration:

privacy_parameters:
  noise_multiplier: !!float 1.0
  max_grad_norm: !!float 1.0

Extraction configuration (example)

Used by cotorra extract.

  • max_seq_len: Maximum sequence length.
  • time_based_rope (optional): Enables time-aware position ids during extraction (must match the setting used at training time).
    • sec_per_pos_id: Number of seconds represented by one position id increment.
  • extract:
    • max_len: Maximum input length (tokens) during extraction.
    • batch_size: Batch size for inference.
    • shard_size (optional): Number of samples per output parquet shard. Omit to write a single file per split.

Scoring configuration (example)

Used by cotorra generative-score and cotorra rep-based-score.

  • run_name: Name for the current run, used to label output files.
  • tokens_of_interest: List of token-based outcomes of interest. Supports patterns specified with fnmatch. (Referenced by target tokens.)
  • score:
    • max_len: Maximum input length (tokens) during scoring.
    • n_samp: Number of Monte Carlo samples per input per trajectory type.
    • target_tokens: Token-based outcomes of interest to score. Supports patterns specified with fnmatch.
    • end_tokens: Tokens that naturally terminate a generated sequence (e.g. EOS).
    • suppressed_tokens: Tokens to suppress via logit bias during generation (e.g. PAD).
    • trunc_id: Token id forced after the time horizon is exceeded.
    • max_time: Maximum time horizon in minutes.
    • batch_size: Batch size for inference.

Usage

We provide a CLI:

 Usage: cotorra [OPTIONS] COMMAND [ARGS]...

 Configurable training for generative event models (vXX.X.X)

โ•ญโ”€ Options โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ --install-completion            Install completion for the current shell.   โ”‚
โ”‚ --show-completion               Show completion for the current shell, to   โ”‚
โ”‚                                 copy it or customize the installation.      โ”‚
โ”‚ --help                -h        Show this message and exit.                 โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
โ•ญโ”€ Commands โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ train             Train a model on tokenized data. For tokenization,        โ”‚
โ”‚                   consult the cocoa package.                                โ”‚
โ”‚ train-private     Train a model with differential privacy on tokenized      โ”‚
โ”‚                   data.                                                     โ”‚
โ”‚ tune              Run hyperparameter tuning while training a model.         โ”‚
โ”‚ extract           Extract representations from a trained model.             โ”‚
โ”‚ generative-score  Generate SCORE/REACH metrics from a trained model and     โ”‚
โ”‚                   save them to parquet.                                     โ”‚
โ”‚ rep-based-score   Generate rep-based scores for the token-based outcomes of โ”‚
โ”‚                   interest.                                                 โ”‚
โ”‚                   Note: this requires that features have already been       โ”‚
โ”‚                   extracted and saved                                       โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

with commands:

  • cotorra train

    Usage: cotorra train [OPTIONS]
    
    Train a model on tokenized data. For tokenization, consult the cocoa package.
    
    โ•ญโ”€ Options โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
    โ”‚    --training-config         -t      PATH  Training configuration file      โ”‚
    โ”‚                                            (overrides default)              โ”‚
    โ”‚ *  --processed-data-home     -p      TEXT  Processed data directory         โ”‚
    โ”‚                                            (overrides config)               โ”‚
    โ”‚                                            [required]                       โ”‚
    โ”‚ *  --output-home             -o      TEXT  Output directory for trained     โ”‚
    โ”‚                                            models                           โ”‚
    โ”‚                                            [required]                       โ”‚
    โ”‚    --resume-from-checkpoint  -r            Try to resume training from the  โ”‚
    โ”‚                                            latest checkpoint in             โ”‚
    โ”‚                                            --output-home.                   โ”‚
    โ”‚    --verbose                 -v            Verbose logging                  โ”‚
    โ”‚    --help                    -h            Show this message and exit.      โ”‚
    โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
    
  • cotorra tune

    Usage: cotorra tune [OPTIONS]
    
    Run hyperparameter tuning while training a model.
    
    โ•ญโ”€ Options โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
    โ”‚    --training-config      -t      PATH  Training configuration file         โ”‚
    โ”‚                                         (overrides default)                 โ”‚
    โ”‚ *  --processed-data-home  -p      TEXT  Processed data directory (overrides โ”‚
    โ”‚                                         config)                             โ”‚
    โ”‚                                         [required]                          โ”‚
    โ”‚ *  --output-home          -o      TEXT  Output directory for trained models โ”‚
    โ”‚                                         [required]                          โ”‚
    โ”‚    --verbose              -v            Verbose logging         โ”‚
    โ”‚    --help                 -h            Show this message and exit.         โ”‚
    โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
    
  • cotorra generative-score

    Usage: cotorra generative-score [OPTIONS]
    
    Generate SCORE/REACH metrics from a trained model and save them to parquet.
    
    โ•ญโ”€ Options โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
    โ”‚    --scoring-config       -s      PATH  Scoring configuration file          โ”‚
    โ”‚                                         (overrides default)                 โ”‚
    โ”‚ *  --processed-data-home  -p      TEXT  Processed data directory [required] โ”‚
    โ”‚ *  --model-home           -m      TEXT  Directory of the trained model to   โ”‚
    โ”‚                                         score with                          โ”‚
    โ”‚                                         [required]                          โ”‚
    โ”‚    --output-home          -o      TEXT  Output directory for scores,        โ”‚
    โ”‚                                         defaults to processed-data-home     โ”‚
    โ”‚    --verbose              -v            Verbose logging         โ”‚
    โ”‚    --help                 -h            Show this message and exit.         โ”‚
    โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
    
  • cotorra extract

    Usage: cotorra extract [OPTIONS]
    
    Extract representations from a trained model.
    
    โ•ญโ”€ Options โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
    โ”‚    --extraction-config    -e      PATH  Extraction configuration file       โ”‚
    โ”‚                                         (overrides default)                 โ”‚
    โ”‚ *  --processed-data-home  -p      TEXT  Processed data directory [required] โ”‚
    โ”‚ *  --model-home           -m      TEXT  Directory of the trained model to   โ”‚
    โ”‚                                         extract from                        โ”‚
    โ”‚                                         [required]                          โ”‚
    โ”‚    --output-home          -o      TEXT  Output directory for extracted      โ”‚
    โ”‚                                         features, defaults to               โ”‚
    โ”‚                                         processed-data-home                 โ”‚
    โ”‚    --all-times            -a            Extract features for all time steps โ”‚
    โ”‚                                         (instead of just the final one)?    โ”‚
    โ”‚    --help                 -h            Show this message and exit.         โ”‚
    โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
    
  • cotorra rep-based-score (note: you need to run extract first)

    Usage: cotorra rep-based-score [OPTIONS]
    
    Generate rep-based scores for the token-based outcomes of interest. Note:
    this requires that features have already been extracted and saved
    
    โ•ญโ”€ Options โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
    โ”‚    --scoring-config      -s      PATH                 Scoring configuration โ”‚
    โ”‚                                                       file (overrides       โ”‚
    โ”‚                                                       default)              โ”‚
    โ”‚ *  --processed-data-hoโ€ฆ  -p      TEXT                 Processed data        โ”‚
    โ”‚                                                       directory             โ”‚
    โ”‚                                                       [required]            โ”‚
    โ”‚ *  --model-home          -m      TEXT                 Directory of the      โ”‚
    โ”‚                                                       trained model to      โ”‚
    โ”‚                                                       score with            โ”‚
    โ”‚                                                       [required]            โ”‚
    โ”‚    --output-home         -o      TEXT                 Output directory for  โ”‚
    โ”‚                                                       scores, defaults to   โ”‚
    โ”‚                                                       processed-data-home   โ”‚
    โ”‚                                                       [default: None]       โ”‚
    โ”‚    --estimator           -e      [k-NN|lightGBM|logi  Estimator to use for  โ”‚
    โ”‚                                  stic|logistic-z|log  rep-based scoring     โ”‚
    โ”‚                                  istic-CV|logistic-C  [default: lightGBM]   โ”‚
    โ”‚                                  V-z|XGBoost]                               โ”‚
    โ”‚    --verbose             -v                           Verbose logging       โ”‚
    โ”‚    --help                -h                           Show this message and โ”‚
    โ”‚                                                       exit.                 โ”‚
    โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
    
  • cotorra train-private

    Usage: cotorra train-private [OPTIONS]
    
    Train a model with differential privacy on tokenized data.
    
    โ•ญโ”€ Options โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
    โ”‚    --training-config      -t      PATH   Training configuration file        โ”‚
    โ”‚                                          (overrides default)                โ”‚
    โ”‚ *  --processed-data-home  -p      TEXT   Processed data directory           โ”‚
    โ”‚                                          (overrides config)                 โ”‚
    โ”‚                                          [required]                         โ”‚
    โ”‚ *  --output-home          -o      TEXT   Output directory for trained       โ”‚
    โ”‚                                          models                             โ”‚
    โ”‚                                          [required]                         โ”‚
    โ”‚    --noise-multiplier     -n      FLOAT  Noise multiplier (overrides        โ”‚
    โ”‚                                          configuration)                     โ”‚
    โ”‚    --max-grad-norm        -m      FLOAT  Max grad norm (overrides           โ”‚
    โ”‚                                          configuration)                     โ”‚
    โ”‚    --verbose              -v             Verbose logging                    โ”‚
    โ”‚    --help                 -h             Show this message and exit.        โ”‚
    โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
    
  1. L. Gersony, "The Quiet Victory of Chicagoโ€™s Monk Parakeets," The Chicago Maroon, 23 January 2022, https://chicagomaroon.com/28830/grey-city/quiet-protest-chicagos-monk-parakeets/ โ†ฉ

  2. M. Burkhart, B. Ramadan, Z. Liao, K. Chhikara, J. Rojas, W. Parker, & B. Beaulieu-Jones, Foundation models for electronic health records: representation dynamics and transferability, arXiv:2504.10422 โ†ฉ

  3. M. Burkhart, B. Ramadan, L. Solo, W. Parker, & B. Beaulieu-Jones, Quantifying surprise in clinical care: Detecting highly informative events in electronic health records with foundation models, Pacific Symposium on Biocomputing 31 (2026), 173โ€“188 โ†ฉ

  4. L. Solo, M. McDermott, W. Parker, B. Ramadan, M. Burkhart, & B. Beaulieu-Jones, Efficient generative prediction for EHR foundation models: the SCOPE and REACH estimators, arXiv:2602.03730 โ†ฉ

  5. I. Lee, L. Solo, M. Burkhart, B. Ramadan, W. Parker, & B. Beaulieu-Jones, Representation before training: a fixed-budget benchmark for generative medical event models, arXiv:2604.16775 โ†ฉ

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

cotorra-26.6.0.tar.gz (31.4 kB view details)

Uploaded Source

Built Distribution

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

cotorra-26.6.0-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

Details for the file cotorra-26.6.0.tar.gz.

File metadata

  • Download URL: cotorra-26.6.0.tar.gz
  • Upload date:
  • Size: 31.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for cotorra-26.6.0.tar.gz
Algorithm Hash digest
SHA256 58be4bd8e677e34203d33b6b5454d3294d07a650a44f822a1d1a0845a6c0696d
MD5 f717acc516956fa5d5a63f56c88da93d
BLAKE2b-256 f27680558c76239ff2ab4104ab1a3446555cf7a939b8dd7d966c8aa7af17b4de

See more details on using hashes here.

File details

Details for the file cotorra-26.6.0-py3-none-any.whl.

File metadata

  • Download URL: cotorra-26.6.0-py3-none-any.whl
  • Upload date:
  • Size: 30.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for cotorra-26.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e0cf7aaf0fbf7b971e9988688f8bf95ea65e88e7c585366008a1d8e03a37245c
MD5 fa1d33b350e74797f995d056df7f20f7
BLAKE2b-256 c9f6c1a79409da3506bbe5b0fe2d14df96d9fb848dcc46153580f848b0c28a7b

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