uf3.regression.regularize.get_regularizer_matrix

get_regularizer_matrix(n_features: int, ridge: float = 0.0, curvature: float = 1.0) numpy.ndarray[source]
Generates additive regularization matrix for linear regression

using curvature penalty and/or L2 (ridge) penalty. The curvature penalty here applies to adjacent coefficients in one dimension.

Parameters
  • n_features (int) – number of features in linear regression problem.

  • curvature (float) – curvature regularization strength (multiplicative). Rule-of-thumb may be similar to ridge regression, e.g. optimized through cross-validation between 1e-3 to 1e3

  • ridge (float) – L2 regularization strength (multiplicative) for ridge regression.

Returns

square matrix of size (n_features x n_features)

with ridge and curvature penalty a.k.a. fused ridge regression.

Return type

matrix (numpy.ndarray)