当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn RidgeClassifier用法及代码示例


本文简要介绍python语言中 sklearn.linear_model.RidgeClassifier 的用法。

用法:

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

使用岭回归的分类器。

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

在用户指南中阅读更多信息。

参数

alpha浮点数,默认=1.0

正则化强度;必须是正浮点数。正则化改善了问题的条件并减少了估计的方差。较大的值指定更强的正则化。 Alpha 对应于其他线性模型中的 1 / (2C),例如 LogisticRegression LinearSVC

fit_intercept布尔,默认=真

是否计算此模型的截距。如果设置为 false,则不会在计算中使用截距(例如,预计数据已经居中)。

normalize布尔,默认=假

fit_intercept 设置为 False 时忽略此参数。如果为 True,则回归量 X 将在回归前通过减去均值并除以 l2 范数进行归一化。如果您希望标准化,请在使用 normalize=False 对估计器调用 fit 之前使用 StandardScaler

copy_X布尔,默认=真

如果为 True,则 X 将被复制;否则,它可能会被覆盖。

max_iter整数,默认=无

共轭梯度求解器的最大迭代次数。默认值由 scipy.sparse.linalg 确定。

tol浮点数,默认=1e-3

解决方案的精度。

class_weightdict或‘balanced’,默认=无

{class_label: weight} 形式的类关联的权重。如果没有给出,所有的类都应该有一个权重。

“balanced” 模式使用 y 的值自动调整与输入数据中的类频率成反比的权重,如 n_samples / (n_classes * np.bincount(y))

solver{‘auto’, ‘svd’, ‘cholesky’, ‘lsqr’,‘sparse_cg’,‘sag’, ‘saga’, ‘lbfgs’},默认='自动'

在计算例程中使用的求解器:

  • ‘auto’ 根据数据类型自动选择求解器。

  • ‘svd’ 使用 X 的奇异值分解来计算岭系数。奇异矩阵比‘cholesky’ 更稳定。

  • ‘cholesky’ 使用标准scipy.linalg.solve 函数来获得封闭式解。

  • ‘sparse_cg’ 使用 scipy.sparse.linalg.cg 中的共轭梯度求解器。作为一种迭代算法,此求解器比 ‘cholesky’ 更适合 large-scale 数据(可以设置 tolmax_iter )。

  • ‘lsqr’ 使用专用正则化最小二乘例程 scipy.sparse.linalg.lsqr。它是最快的并且使用迭代过程。

  • ‘sag’ 使用随机平均梯度下降,‘saga’ 使用其无偏且更灵活的版本 SAGA。这两种方法都使用迭代过程,并且当 n_samples 和 n_features 都很大时通常比其他求解器更快。请注意,‘sag’ 和 ‘saga’ 的快速收敛仅在具有大致相同规模的特征上得到保证。您可以使用 sklearn.preprocessing 中的缩放器预处理数据。

  • ‘lbfgs’ 使用在 scipy.optimize.minimize 中实现的 L-BFGS-B 算法。仅当positive 为 True 时才能使用。

positive布尔,默认=假

当设置为 True 时,强制系数为正。在这种情况下,仅支持 ‘lbfgs’ 求解器。

random_stateint,RandomState 实例,默认=无

solver == ‘sag’ 或 ‘saga’ 时使用以打乱数据。详细信息请参见术语表。

属性

coef_ndarray 形状 (1, n_features) 或 (n_classes, n_features)

决策函数中特征的系数。

当给定问题是二进制时,coef_ 的形状为 (1, n_features)。

intercept_形状的浮点数或 ndarray (n_targets,)

决策函数中的独立项。如果 fit_intercept = False 则设置为 0.0。

n_iter_无或形状的 ndarray (n_targets,)

每个目标的实际迭代次数。仅适用于 sag 和 lsqr 求解器。其他求解器将返回 None。

classes_ndarray 形状 (n_classes,)

类标签。

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

拟合期间看到的特征名称。仅当 X 具有全为字符串的函数名称时才定义。

注意

对于多类分类,n_class 分类器采用 one-versus-all 方法进行训练。具体来说,这是通过利用 Ridge 中的 multi-variate 响应支持来实现的。

例子

>>> 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...

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.linear_model.RidgeClassifier。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。