Sklearn LogisticRegression без регуляризации
Класс логистической регрессии в sklearn поставляется с регуляцией L1 и L2.
Как отключить регуляризацию, чтобы получить "сырую" логистическую форму, например, в glmfit в Matlab?
Я думаю, что могу установить C = большое число, но я не думаю, что это мудро.
см. более подробную информацию о документации
http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html#sklearn.linear_model.LogisticRegression
Ответы
Ответ 1
Да, выберите максимально возможное число. В регуляризации функция стоимости включает выражение регуляризации и имейте в виду, что параметр C в регуляризации sklearn является обратным к степени регуляризации.
C в этом случае равно 1/лямбда при условии, что C> 0.
Поэтому, когда C приближается к бесконечности, тогда лямбда приближается к 0. Когда это происходит, функция стоимости становится вашей стандартной функцией ошибки, поскольку выражение регуляризации для всех намерений и целей становится 0.
Ответ 2
Идите вперед и установите C как можно больше. Кроме того, не забудьте использовать l2, поскольку l1 с этой реализацией может быть очень медленным.
Ответ 3
Я получил тот же вопрос и опробовал ответ в дополнение к другим ответам:
Если установить C на большое значение не работает для вас,
также установите penalty='l1'
.