skglm.datafits.LogisticGroup#

class skglm.datafits.LogisticGroup(grp_ptr, grp_indices)[source]#

Logistic datafit used with group penalties.

The datafit reads:

`1 / n_"samples" sum_(i=1)^(n_"samples") log(1 + exp(-y_i (Xw)_i))`
Attributes:
grp_indicesarray, shape (n_features,)

The group indices stacked contiguously [grp1_indices, grp2_indices, ...].

grp_ptrarray, shape (n_groups + 1,)

The group pointers such that two consecutive elements delimit the indices of a group in grp_indices.

lipschitzarray, shape (n_groups,)

The lipschitz constants for each group.

__init__(grp_ptr, grp_indices)[source]#

Methods

__init__(grp_ptr, grp_indices)

full_grad_sparse(X_data, X_indptr, ...)

get_global_lipschitz(X, y)

get_global_lipschitz_sparse(X_data, ...)

get_lipschitz(X, y)

get_lipschitz_sparse(X_data, X_indptr, ...)

get_spec()

Specify the numba types of the class attributes.

gradient(X, y, Xw)

gradient_g(X, y, w, Xw, g)

gradient_scalar(X, y, w, Xw, j)

gradient_scalar_sparse(X_data, X_indptr, ...)

gradient_sparse(X_data, X_indptr, X_indices, ...)

initialize(X, y)

Pre-computations before fitting on X and y.

initialize_sparse(X_data, X_indptr, X_indices, y)

Pre-computations before fitting on X and y when X is a sparse matrix.

intercept_update_step(y, Xw)

params_to_dict()

Get the parameters to initialize an instance of the class.

raw_grad(y, Xw)

Compute gradient of datafit w.r.t Xw.

raw_hessian(y, Xw)

Compute Hessian of datafit w.r.t Xw.

value(y, w, Xw)

Value of datafit at vector w.