l1_min_c#

sklearn.svm.l1_min_c(X, y, *, loss='squared_hinge', fit_intercept=True, intercept_scaling=1.0)[原始碼]#

傳回 C 的最低邊界。

計算 C 的下限,使得當 C 在 (l1_min_C, 無限大) 時,保證模型不會為空。這適用於 l1 正規化的分類器,例如具有 penalty='l1' 的 LinearSVC 和具有 penalty='l1' 的 linear_model.LogisticRegression。

如果 fit() 中的 class_weight 參數未設定,則此值有效。

參數:
X{類陣列, 稀疏矩陣},形狀為 (n_samples, n_features)

訓練向量,其中 n_samples 是樣本數,而 n_features 是特徵數。

y類陣列,形狀為 (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