RidgeClassifier
- classsklearn.linear_model.RidgeClassifier(alpha=1.0, *, fit_intercept=True, copy_X=True, max_iter=None, tol=0.0001, class_weight=None, solver='auto', positive=False, random_state=None)[source]
-
Classifier using Ridge regression.
This classifier first converts the target values into
{-1, 1}and then treats the problem as a regression task (multi-output regression in the multiclass case).Read more in the User Guide.
- Parameters:
-
- alphafloat, default=1.0
-
Regularization strength; must be a positive float. Regularization improves the conditioning of the problem and reduces the variance of the estimates. Larger values specify stronger regularization. Alpha corresponds to
1 / (2C)in other linear models such asLogisticRegressionorLinearSVC.For an illustration of the effect of alpha on the model coefficients, see Ridge coefficients as a function of the L2 Regularization.
- fit_interceptbool, default=True
-
Whether to calculate the intercept for this model. If set to false, no intercept will be used in calculations (e.g. data is expected to be already centered).
- copy_Xbool, default=True
-
If True, X will be copied; else, it may be overwritten.
- max_iterint, default=None
-
Maximum number of iterations for conjugate gradient solver. The default value is determined by scipy.sparse.linalg.
- tolfloat, default=1e-4
-
The precision of the solution (
coef_) is determined bytolwhich specifies a different convergence criterion for each solver:- ‘svd’:
tolhas no impact. - ‘cholesky’:
tolhas no impact. - ‘sparse_cg’: norm of residuals smaller than
tol. - ‘lsqr’:
tolis set as atol and btol of scipy.sparse.linalg.lsqr, which control the norm of the residual vector in terms of the norms of matrix and coefficients. - ‘sag’ and ‘saga’: relative change of coef smaller than
tol. - ‘lbfgs’: maximum of the absolute (projected) gradient=max|residuals| smaller than
tol.
Changed in version 1.2: Default value changed from 1e-3 to 1e-4 for consistency with other linear models.
- ‘svd’:
- class_weightdict or ‘balanced’, default=None
-
Weights associated with classes in the form
{class_label: weight}. If not given, all classes are supposed to have weight one.The “balanced” mode uses the values of y to automatically adjust weights inversely proportional to class frequencies in the input data as
n_samples / (n_classes * np.bincount(y)). - solver{‘auto’, ‘svd’, ‘cholesky’, ‘lsqr’, ‘sparse_cg’, ‘sag’, ‘saga’, ‘lbfgs’}, default=’auto’
-
Solver to use in the computational routines:
- ‘auto’ chooses the solver automatically based on the type of data.
- ‘svd’ uses a Singular Value Decomposition of X to compute the Ridge coefficients. It is the most stable solver, in particular more stable for singular matrices than ‘cholesky’ at the cost of being slower.
- ‘cholesky’ uses the standard scipy.linalg.solve function to obtain a closed-form solution.
- ‘sparse_cg’ uses the conjugate gradient solver as found in scipy.sparse.linalg.cg. As an iterative algorithm, this solver is more appropriate than ‘cholesky’ for large-scale data (possibility to set
tolandmax_iter). - ‘lsqr’ uses the dedicated regularized least-squares routine scipy.sparse.linalg.lsqr. It is the fastest and uses an iterative procedure.
-
‘sag’ uses a Stochastic Average Gradient descent, and ‘saga’ uses its unbiased and more flexible version named SAGA. Both methods use an iterative procedure, and are often faster than other solvers when both n_samples and n_features are large. Note that ‘sag’ and ‘saga’ fast convergence is only guaranteed on features with approximately the same scale. You can preprocess the data with a scaler from sklearn.preprocessing.
Added in version 0.17: Stochastic Average Gradient descent solver.
Added in version 0.19: SAGA solver.
- ‘lbfgs’ uses L-BFGS-B algorithm implemented in
scipy.optimize.minimize. It can be used only whenpositiveis True.
- positivebool, default=False
-
When set to
True, forces the coefficients to be positive. Only ‘lbfgs’ solver is supported in this case. - random_stateint, RandomState instance, default=None
-
Used when
solver== ‘sag’ or ‘saga’ to shuffle the data. See Glossary for details.
- Attributes:
-
- coef_ndarray of shape (1, n_features) or (n_classes, n_features)
-
Coefficient of the features in the decision function.
coef_is of shape (1, n_features) when the given problem is binary. - intercept_float or ndarray of shape (n_targets,)
-
Independent term in decision function. Set to 0.0 if
fit_intercept = False. - n_iter_None or ndarray of shape (n_targets,)
-
Actual number of iterations for each target. Available only for sag and lsqr solvers. Other solvers will return None.
- classes_ndarray of shape (n_classes,)
-
The classes labels.
- n_features_in_int
-
Number of features seen during fit.
Added in version 0.24.
-
feature_names_in_ndarray of shape (
n_features_in_,) -
Names of features seen during fit. Defined only when
Xhas feature names that are all strings.Added in version 1.0.
- solver_str
-
The solver that was used at fit time by the computational routines.
Added in version 1.5.
See also
Ridge-
Ridge regression.
RidgeClassifierCV-
Ridge classifier with built-in cross validation.
Notes
For multi-class classification, n_class classifiers are trained in a one-versus-all approach. Concretely, this is implemented by taking advantage of the multi-variate response support in Ridge.
Examples
>>> from sklearn.datasets import load_breast_cancer >>> from sklearn.linear_model import RidgeClassifier >>> X, y = load_breast_cancer(return_X_y=True) >>> clf = RidgeClassifier().fit(X, y) >>> clf.score(X, y) 0.9595...
- decision_function(X)[source]
-
Predict confidence scores for samples.
The confidence score for a sample is proportional to the signed distance of that sample to the hyperplane.
- Parameters:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
The data matrix for which we want to get the confidence scores.
- Returns:
-
- scoresndarray of shape (n_samples,) or (n_samples, n_classes)
-
Confidence scores per
(n_samples, n_classes)combination. In the binary case, confidence score forself.classes_[1]where >0 means this class would be predicted.
- fit(X, y, sample_weight=None)[source]
-
Fit Ridge classifier model.
- Parameters:
-
- X{ndarray, sparse matrix} of shape (n_samples, n_features)
-
Training data.
- yndarray of shape (n_samples,)
-
Target values.
- sample_weightfloat or ndarray of shape (n_samples,), default=None
-
Individual weights for each sample. If given a float, every sample will have the same weight.
Added in version 0.17: sample_weight support to RidgeClassifier.
- Returns:
-
- selfobject
-
Instance of the estimator.
- get_metadata_routing()[source]
-
Get metadata routing of this object.
Please check User Guide on how the routing mechanism works.
- Returns:
-
- routingMetadataRequest
-
A
MetadataRequestencapsulating routing information.
- get_params(deep=True)[source]
-
Get parameters for this estimator.
- Parameters:
-
- deepbool, default=True
-
If True, will return the parameters for this estimator and contained subobjects that are estimators.
- Returns:
-
- paramsdict
-
Parameter names mapped to their values.
- predict(X)[source]
-
Predict class labels for samples in
X.- Parameters:
-
- X{array-like, spare matrix} of shape (n_samples, n_features)
-
The data matrix for which we want to predict the targets.
- Returns:
-
- y_predndarray of shape (n_samples,) or (n_samples, n_outputs)
-
Vector or matrix containing the predictions. In binary and multiclass problems, this is a vector containing
n_samples. In a multilabel problem, it returns a matrix of shape(n_samples, n_outputs).
- score(X, y, sample_weight=None)[source]
-
Return accuracy on provided data and labels.
In multi-label classification, this is the subset accuracy which is a harsh metric since you require for each sample that each label set be correctly predicted.
- Parameters:
-
- Xarray-like of shape (n_samples, n_features)
-
Test samples.
- yarray-like of shape (n_samples,) or (n_samples, n_outputs)
-
True labels for
X. - sample_weightarray-like of shape (n_samples,), default=None
-
Sample weights.
- Returns:
-
- scorefloat
-
Mean accuracy of
self.predict(X)w.r.t.y.
- set_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') RidgeClassifier[source]
-
Configure whether metadata should be requested to be passed to the
fitmethod.Note that this method is only relevant when this estimator is used as a sub-estimator within a meta-estimator and metadata routing is enabled with
enable_metadata_routing=True(seesklearn.set_config). Please check the User Guide on how the routing mechanism works.The options for each parameter are:
-
True: metadata is requested, and passed tofitif provided. The request is ignored if metadata is not provided. -
False: metadata is not requested and the meta-estimator will not pass it tofit. -
None: metadata is not requested, and the meta-estimator will raise an error if the user provides it. -
str: metadata should be passed to the meta-estimator with this given alias instead of the original name.
The default (
sklearn.utils.metadata_routing.UNCHANGED) retains the existing request. This allows you to change the request for some parameters and not others.Added in version 1.3.
- Parameters:
-
- sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Metadata routing for
sample_weightparameter infit.
- Returns:
-
- selfobject
-
The updated object.
-
- set_params(**params)[source]
-
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as
Pipeline). The latter have parameters of the form<component>__<parameter>so that it’s possible to update each component of a nested object.- Parameters:
-
- **paramsdict
-
Estimator parameters.
- Returns:
-
- selfestimator instance
-
Estimator instance.
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') RidgeClassifier[source]
-
Configure whether metadata should be requested to be passed to the
scoremethod.Note that this method is only relevant when this estimator is used as a sub-estimator within a meta-estimator and metadata routing is enabled with
enable_metadata_routing=True(seesklearn.set_config). Please check the User Guide on how the routing mechanism works.The options for each parameter are:
-
True: metadata is requested, and passed toscoreif provided. The request is ignored if metadata is not provided. -
False: metadata is not requested and the meta-estimator will not pass it toscore. -
None: metadata is not requested, and the meta-estimator will raise an error if the user provides it. -
str: metadata should be passed to the meta-estimator with this given alias instead of the original name.
The default (
sklearn.utils.metadata_routing.UNCHANGED) retains the existing request. This allows you to change the request for some parameters and not others.Added in version 1.3.
- Parameters:
-
- sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Metadata routing for
sample_weightparameter inscore.
- Returns:
-
- selfobject
-
The updated object.
-
Gallery examples
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.linear_model.RidgeClassifier.html