Ridge#

class superglm.Ridge(
lambda1: float | Literal['auto'] | None = None,
features: str | list[str] | None = None,
)#

Bases: object

Ridge penalty: lambda1 * ||beta||_2^2 / 2.

Parameters:
lambda1float, {“auto”}, or None

Regularisation strength. None disables shrinkage and "auto" explicitly requests automatic calibration.

prox_group(
bg: NDArray,
group: GroupSlice,
step: float,
) → NDArray#

Closed-form proximal operator for a single group.

prox(
beta: NDArray,
groups: list[GroupSlice],
step: float,
) → NDArray#

Closed-form proximal operator: beta / (1 + step * lambda1).

eval(
beta: NDArray,
groups: list[GroupSlice],
) → float#

Penalty value: lambda1 * ||beta||_2^2 / 2.