sklearn.linear_model.RidgeClassifier

class sklearn.linear_model.RidgeClassifier(alpha=1.0, *, fit_intercept=True, normalize=False, copy_X=True, max_iter=None, tol=0.001, class_weight=None, solver='auto', random_state=None)

[源码]

使用Ridge回归的分类器。

该分类器首先将目标值转换为{-1, 1},然后将问题视为回归任务(在多类情况下为多输出回归)。

用户指南中阅读更多内容。

参数 说明
alpha float, default=1.0
正则强度,必须为正浮点数。正则化改善了问题的状况,并减少了估计的方差。较大的值表示更强的正则化。在其他线性模型中,Alpha对应于1 / (2C),例如 LogisticRegressionsklearn.svm.LinearSVC
fit_intercept bool, default=True
是否计算此模型的截距。如果设置为false,则在计算中将不使用截距(如数据已经中心化)。
normalize bool, default=False
fit_intercept设置为False 时,将忽略此参数。如果为True,则在回归之前通过减去均值并除以l2-范数来对回归变量X进行归一化。如果你希望标准化,请先使用 sklearn.preprocessing.StandardScaler,然后调用fit 估算器并设置normalize=False
copy_X bool, default=True
如果为True,将复制X;否则,X可能会被覆盖。
max_iter int, default=None
共轭梯度求解器的最大迭代次数。默认值由scipy.sparse.linalg确定。
tol float, default=1e-3
优化算法的精度。
class_weight dict or ‘balanced’, default=None
{class_label: weight}的形式与类别关联的权重。如果没有给出,所有类别的权重都应该是1。

“balanced”模式使用y的值来自动调整为与输入数据中的类频率成反比的权重。如n_samples / (n_classes * np.bincount(y))
solver {‘auto’, ‘svd’, ‘cholesky’, ‘lsqr’, ‘sparse_cg’, ‘sag’, ‘saga’}, default=’auto’
用于计算例程的求解器:
- “auto”会根据数据类型自动选择求解器。
- “ svd”使用X的奇异值分解来计算Ridge系数。对于奇异矩阵,比“ Cholesky”更稳定。
- 'cholestsky'使用标准的scipy.linalg.solve函数获得封闭形式的解决方案。
- 'sparse_cg'使用scipy.sparse.linalg.cg中的共轭梯度求解器。作为一种迭代算法,对于大规模数据(可以设置tolmax_iter),此求解器比“ Cholesky”更合适。
- “ lsqr”使用专用的正则化最小二乘算法scipy.sparse.linalg.lsqr。它是最快的,并且使用了迭代过程。
- “sag”使用随机平均梯度下降,而“saga”是它的无偏和更灵活的版本。这两种方法都使用了迭代过程,当n_samples和n_features都很大时,通常比其他求解器更快。请注意, “sag”和“saga”的快速收敛只能保证在具有大致相同规模的特性上。你可以使用sklearn.preprocessing中的缩放器对数据进行预处理。

*0.17版本中的新功能:*随机平均梯度下降求解器。

0.19版中的新功能: SAGA求解器。
random_state int, RandomState instance, default=None
solver=='sag'或'saga'时使用,用于随机打乱数据。有关详细信息,请参见词汇表
属性 说明
coef_ ndarray of shape (1, n_features) or (n_classes, n_features)
决策函数中特征的系数。
当给定问题为二分类时,coef_形状为(1,n_features)。
intercept_ float or ndarray of shape (n_targets,)
决策函数中的截距。如果设置fit_intercept = False,则截距为0.0 。
n_iter_ None or ndarray of shape (n_targets,)
每个目标的实际迭代次数。仅适用于sag和lsqr求解器。其他求解器将返回None。
classes_ ndarray of shape (n_classes,)
类别标签。

另见

对于多类别分类,以“一对多”的方法训练n_class分类器。具体而言,这是通过利用Ridge中的多变量响应支持来实现的。

示例

>>> 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(self, X) 预测样本的置信度得分。
fit(self, X, y[, sample_weight]) 拟合Ridge分类器模型。
get_params(self[, deep]) 获取此估计器的参数。
predict(self, X) 预测X中样本的类别标签。
score(self, X, y[, sample_weight]) 返回给定测试数据和标签上的平均准确度。
set_params(self, **params) 设置此估计器的参数。
__init__(self, alpha=1.0, *, fit_intercept=True, normalize=False, copy_X=True, max_iter=None, tol=0.001, class_weight=None, solver='auto', random_state=None)

[源码]

初始化self, 请参阅help(type(self))以获得准确的说明。

decision_function(self, X)

[源码]

预测样本的置信度得分。

样本的置信度分数是该样本到超平面的符号距离。

参数 说明
X array_like or sparse matrix, shape (n_samples, n_features)
样本数据。
返回值 说明
array, shape=(n_samples,) if n_classes == 2 else (n_samples, n_classes)
每个(样本,类别)组合的置信度得分。在二分类情况下,self.classes_ [1]的置信度得分> 0表示将预测该类。
fit(self,X,y,sample_weight = None )

[源码]

拟合Ridge分类器模型。

参数 说明
X {ndarray, sparse matrix} of shape (n_samples, n_features)
训练数据
y ndarray of shape (n_samples,)
目标标签。
sample_weight float or ndarray of shape (n_samples,), default=None
每个样本的权重,如果使用浮点数,每个样品的权重都相同。

0.17版中的新功能:sample_weight支持Classifier
返回值 说明
self object
估计器的实例。
get_params(self,deep = True )

[源码]

获取此估计器的参数。

参数 说明
deep bool, default=True
如果为True,返回此估计器和所包含子对象的参数。
返回值 说明
params mapping of string to any
参数名称映射到其值。
predict(self, X)

[源码]

预测X中样本的类别标签。

参数 说明
X array_like or sparse matrix, shape (n_samples, n_features)
样本数据
返回值 说明
C array, shape [n_samples]
每个样本的预测类别标签。
score(self,X,y,sample_weight = None )

[源码]

返回给定测试数据和标签上的平均准确度。

在多标签分类中,这是子集准确性,这是一个严格的指标,因为你需要为每个样本正确预测对应的标签集。

参数 说明
X array-like of shape (n_samples, n_features)
测试样本。
y array-like of shape (n_samples,) or (n_samples, n_outputs)
X的真实标签。
sample_weight array-like of shape (n_samples,), default=None
样本权重。
返回值 说明
score float
预测标签与真实标签的平均准确度
set_params(self, **params)

[源码]

设置并验证估计器的参数。

参数 说明
**params dict
估计器参数。
返回值 说明
self object
估计器实例。

sklearn.linear_model.RidgeClassifier使用示例