l1_min_c#
- sklearn.svm.l1_min_c(X, y, *, потеря='squared_hinge', fit_intercept=True, intercept_scaling=1.0)[источник]#
Возвращает нижнюю границу для
C.Нижняя граница для
Cвычисляется так, что дляCв(l1_min_C, infinity)модель гарантированно не будет пустой. Это относится к классификаторам с l1-штрафом, таким какsklearn.svm.LinearSVCс penalty='l1' иsklearn.linear_model.LogisticRegressionсl1_ratio=1.Это значение действительно, если
class_weightпараметр вfit()не установлен.Пример использования этой функции см. в Регуляризационный путь L1-логистической регрессии.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Вектор обучения, где
n_samples— это количество образцов иn_featuresэто количество признаков.- yarray-like формы (n_samples,)
Целевой вектор относительно X.
- потеря{'squared_hinge', 'log'}, по умолчанию 'squared_hinge'
Определяет функцию потерь. При 'squared_hinge' это квадратичная функция потерь с шарниром (также известная как L2-потери). При 'log' это функция потерь моделей логистической регрессии.
- fit_interceptbool, по умолчанию=True
Определяет, должен ли свободный член быть подобран моделью. Он должен соответствовать параметру метода fit().
- intercept_scalingfloat, по умолчанию=1.0
Когда fit_intercept равен True, вектор экземпляра x становится [x, intercept_scaling], т.е. "синтетический" признак с постоянным значением, равным intercept_scaling, добавляется к вектору экземпляра. Он должен соответствовать параметру метода fit().
- Возвращает:
- l1_min_cfloat
Минимальное значение для 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