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