mojolearn.Lars#
- class mojolearn.Lars(*, fit_intercept=True, verbose=False, precompute='auto', n_nonzero_coefs=500, eps=2.220446049250313e-16, copy_X=True, fit_path=True, jitter=None, random_state=None)#
Least angle regression (LARS).
Follows scikit-learn’s Lars: adds features to the active set one at a time, up to
n_nonzero_coefsof them.jittermust be None (any other value raises ValueError).- Parameters:
fit_intercept (bool, default True) – Whether to fit an intercept.
verbose (bool, default False) – Accepted for compatibility; ignored.
precompute (bool, ‘auto’ or array, default ‘auto’) – Accepted for compatibility; the fit always uses the Gram matrix.
n_nonzero_coefs (int, default 500) – Maximum number of active features.
eps (float, default 2.220446049250313e-16) – Accepted for compatibility; ignored.
copy_X (bool, default True) – Accepted for compatibility;
Xis never modified.fit_path (bool, default True) – Accepted for compatibility; the path is not stored.
jitter (None, default None) – Not supported: any value other than None raises ValueError.
random_state (int or None, default None) – Accepted for compatibility; ignored.
numeric_mode (str or None, default None) – Numeric mode for this model (
'identical'or'fast', which runs on Apple GPUs only); None uses the process default (seemojolearn.set_numeric_mode()).
- Variables:
Examples
>>> import numpy as np, mojolearn >>> rng = np.random.default_rng(0) >>> X = rng.random((1000, 8), dtype=np.float32) >>> y = 3 * X[:, 0] - 2 * X[:, 1] >>> model = mojolearn.Lars(n_nonzero_coefs=2).fit(X, y)
Methods
fit(X, y)Fit the model.
get_params([deep])The numeric mode this estimator runs in.
predict(X)Predict targets for
X.score(X, y)Coefficient of determination R^2 of
predict(X)againsty.set_params(**params)Set constructor parameters.
The GPU backend this estimator runs on.
- fit(X, y)#
Fit the model.
- Parameters:
X (array-like of shape (n_samples, n_features)) – Training data, converted to float32; values must be finite.
y (array-like of shape (n_samples,)) – Targets.
- Returns:
self (Lars) – The fitted model.
- numeric_mode_used()#
The numeric mode this estimator runs in.
- Returns:
str –
'identical'or'fast', read from the compiled binary the estimator uses, not from the argument it was given.
- predict(X)#
Predict targets for
X.Returns
X @ coef_ + intercept_; models with a log link (Poisson, Gamma and Tweedie withpower > 0) return its exponential.- Parameters:
X (array-like of shape (n_samples, n_features)) – Samples, converted to float32. The feature count must match the one seen in
fit.- Returns:
y_pred (float32 array of shape (n_samples,)) – Predicted values.
- Raises:
RuntimeError – If the model is not fitted.
ValueError – If
Xhas a different number of features than infit.
- score(X, y)#
Coefficient of determination R^2 of
predict(X)againsty.- Parameters:
X (array-like of shape (n_samples, n_features)) – Test samples.
y (array-like of shape (n_samples,)) – True targets.
- Returns:
score (float) – R^2; 1.0 is a perfect fit.
- set_params(**params)#
Set constructor parameters. The estimator is rebuilt through its constructor, so every constructor check runs again and any fitted state is dropped, as a new setting invalidates it.
- vendor_used()#
The GPU backend this estimator runs on.
- Returns:
str –
'metal','cuda'or'hip', read from the compiled binary the estimator uses.