Hybrid PMx-ML

Benchmark-backed covariate screening for pharmacometrics

pharmacoml is a hybrid AI/ML-assisted covariate screening toolkit for popPK/popPD workflows. It is designed to identify and prioritize likely covariates from EBEs or individual parameters before formal pharmacometric confirmation.

Hybrid SHAP/RFE + AALASSO + SCM-style confirmation
8-case Fixed public benchmark release suite
Alpha Community-ready, not a NONMEM replacement

What it is

A covariate screening and preselection tool for pharmacometric workflows. It helps narrow the search space before SCM, backward elimination, or final NLME confirmation.

What it is not

It is not a replacement for NONMEM, nlmixr2, or full population-model validation. Final confirmation still belongs in the pharmacometric model.

How it works

The default workflow combines boosting-based discovery, benchmark-backed RFE, AALASSO confirmation, shrinkage-aware logic, optional interaction screening, and an SCM-style bridge.

Core workflow

What users typically run on a new dataset.

Quick code snapshot

from pharmacoml.covselect import HybridScreener

report = HybridScreener(
    include_scm=True,
    include_interactions=False,
).fit(
    ebes=ebes,
    covariates=covariates,
    parameter_shrinkage={"CL": 0.12, "V": 0.28},
)

report.confirmed_covariates()
report.candidate_covariates()
report.proxy_groups()

Outputs users actually care about

Output Meaning Typical use
core_covariates() Strongest ML-supported signals Initial review
candidate_covariates() Practical shortlist to carry forward SCM/backward elimination input
confirmed_covariates() Compact answer after SCM-style confirmation Daily-use summary
proxy_groups() Correlated alternatives Interpretation and de-duplication
to_nonmem_candidates() Export-ready candidate block Downstream PMx workflow

Why this is different

pharmacoml is not positioned as a full automated model builder in the current release. It is positioned as a hybrid AI/ML covariate screener: