magli.eilers.GAMCore

class magli.eilers.GAMCore(formula: str, spline_order: int = 3, fit_intercept: bool = True)[source]

Multi-term Generalized Additive Model with formula interface.

formula: str = ''
fit_intercept: bool = True
coef_: ndarray | None = None
statistics_: Dict[str, Any] | None = None
fit(x: ArrayLike, y: ArrayLike, weights: ArrayLike | None = None) → GAMCore[source]

Fit the model.

gridsearch(x: ArrayLike, y: ArrayLike, lam: List[ArrayLike] | ArrayLike | None = None, n_splines: List[ArrayLike] | ArrayLike | None = None, gamma: float = 1.4, search_terms: List[str | int] | str | None = None, n_jobs: int = 1, weights: ArrayLike | None = None, **kwargs) → GAMCore[source]

Select optimal hyper-parameters via GCV grid search.

plot_decomposition(x: ArrayLike, y: ArrayLike, n_grid: int = 200, extrap_frac: float = 0.15, figsize: Tuple[int, int] | None = None, feature_names: List[str] | None = None) → Tuple[source]
aic() → float

Akaike Information Criterion (AIC).

bic() → float

Bayesian Information Criterion (BIC).

confidence_intervals(x: ArrayLike, width: float = 0.95) → ndarray

Compute confidence intervals for the linear predictor.

deviance_explained() → float

Fraction of null deviance explained (pseudo R-squared).

property is_fitted: bool
loglikelihood() → float

Gaussian log-likelihood of the fitted model.

property n_terms: int
partial_dependence(term_idx: int, x: ArrayLike) → ndarray

Evaluate the partial contribution of term term_idx.

plot_diagnostics(x: ArrayLike, y: ArrayLike, figsize: Tuple[int, int] | None = None) → Tuple[Any, ndarray]

Diagnostic plots for model validation.

predict(x: ArrayLike) → ndarray

Predict target values for feature data x.

prediction_intervals(x: ArrayLike, width: float = 0.95) → ndarray

Compute prediction intervals for new observations.