Skip to content

GLM Algorithm Arena · Phase I

An encyclopedia of algorithms for generalized linear models.

Every estimator for linear and generalized linear models — classical, penalized, high-dimensional, and online — reduced to one precise mapping and documented under one unified notation. From OLS to debiased Lasso to streaming stochastic approximation.

The one question every card answers

Given a design matrix \(X\), a response vector \(y\), and a link function \(g\), how does this algorithm produce a coefficient estimate \(\hat\beta\) ?

Each method can be viewed as the same essential mapping \((X, y, g) \mapsto \hat\beta\) and written against the shared template \(\;\hat\beta=\arg\min_\beta \mathcal L(\beta)+\lambda P(\beta)\), so estimators defined across decades of literature can be read, compared, and — in later phases — benchmarked on equal footing.

Explore

  •   Notation & framework


    The shared mathematical language: exponential family, link functions, loss, score and Fisher information, penalties, and the optimization primitives every card builds on.

    Read the framework

  •   Taxonomy


    How hundreds of solvers stay navigable, from classical closed forms to online stochastic approximation.

    See the taxonomy

  •   Card schema


    The exact, faithful template each algorithm follows — machine-readable metadata plus nine fixed sections, with a strict faithfulness rule.

    View the schema

  •   Algorithm catalogue


    The growing collection: OLS, Ridge, Lasso, Elastic Net, SCAD, MCP, LARS, FISTA, debiased Lasso, SGD, and many more.

    Open the catalogue

Project construction

  • I · Documentation   current


    Faithful algorithm cards — exact mathematics only. Each defines the estimator, the algorithm, its hyperparameters, and the precise \((X,y,g)\mapsto\hat\beta\) contract.

  • II · Implementation   planned


    Python solvers behind one interface, fit(X, y, link, **config) -> beta_hat, mirroring each method's official construction.

  • III · The Arena   planned


    Run every solver across many datasets; study performance, agreement, and the correlations between their outputs.

Contributing a card

Copy the stub in the card schema, drop it in docs/algorithms/<id>.md, fill the fixed sections faithfully from the source paper, and add the bibkey to reference.bib. Run python scripts/validate_cards.py, and it appears in the catalogue.