l1_min_c#
- sklearn.svm.l1_min_c(X, y, *, loss='squared_hinge', fit_intercept=True, intercept_scaling=1.0)[source]#
返回
C
的最低下界。计算
C
的下界,使得当C
在(l1_min_C, infinity)
范围内时,模型保证不为空。这适用于 l1 惩罚分类器,例如sklearn.svm.LinearSVC
(惩罚项为 'l1')和sklearn.linear_model.LogisticRegression
(惩罚项为 'l1')。当
fit()
方法中的class_weight
参数未设置时,此值有效。有关如何使用此函数的示例,请参阅 L1 逻辑回归的正则化路径。
- 参数:
- X{array-like, sparse matrix},形状为 (n_samples, n_features)
训练向量,其中
n_samples
是样本数量,n_features
是特征数量。- yarray-like,形状为 (n_samples,)
相对于 X 的目标向量。
- loss{‘squared_hinge’, ‘log’},默认值为 ‘squared_hinge’
指定损失函数。'squared_hinge' 表示平方合页损失(又称 L2 损失)。'log' 表示逻辑回归模型的损失。
- fit_intercept布尔型,默认为 True
指定模型是否应拟合截距。它必须与 fit() 方法参数匹配。
- intercept_scaling浮点型,默认为 1.0
当 fit_intercept 为 True 时,实例向量 x 变为 [x, intercept_scaling],即一个具有恒定值 intercept_scaling 的“合成”特征被附加到实例向量。它必须与 fit() 方法参数匹配。
- 返回:
- l1_min_c浮点型
C 的最小值。
示例
>>> from sklearn.svm import l1_min_c >>> from sklearn.datasets import make_classification >>> X, y = make_classification(n_samples=100, n_features=20, random_state=42) >>> print(f"{l1_min_c(X, y, loss='squared_hinge', fit_intercept=True):.4f}") 0.0044