проблема с параметрами альфа и лямбда регуляризации в Python - PullRequest
0 голосов
/ 30 августа 2018

Вопрос: Логистическая регрессия Поезд модели логистической регрессии с регуляризацией L1 и регуляризацией L2 с использованием альфа = 0,1 и лямбда = 0,1. Точность, точность, отзыв, f1-оценка и распечатка путаницы

Мой код:

_lambda = 0.1
c = 1/_lambda
classifier = LogisticRegression(penalty='l1',C=c)
classifier.fit(X_train, y_train)

y_pred = classifier.predict(X_test)

Я не знаю, где на самом деле находится местоположение альфы и лямбды. Я правильно работал?

1 Ответ

0 голосов
/ 30 августа 2018

ваш пример

альфа = 0, лямбда = 10 (АКА. 1/1)

альфа

альфа - это параметр, который добавляет штраф за количество функций для управления переоснащением, в данном случае L1 (регрессия Лассо) или L2 (регрессия хребта). Штраф L1 и L2 не может быть выполнен одновременно, поскольку существует только один коэффициент Лямбды. Быстрое отступление - Elastic Net - это альфа-параметр, который находится где-то между L1 и L2, поэтому, например, если вы используете sklearn.SGD_Regressor () alpha = 0 - это L1 alpha = 0.5 - эластичный, alpha = 1 - Ridge.

Lambda

это термин, который контролирует скорость обучения. Другими словами, сколько изменений вы хотите, чтобы модель делала во время каждой итерации обучения.

Путаница

Что еще хуже, эти термины часто используются взаимозаменяемо, я думаю, из-за различных, но схожих понятий в теории графов, статистической теории, математической теории и тех, кто пишет широко используемые библиотеки машинного обучения

проверьте некоторую информацию здесь: https://www.analyticsvidhya.com/blog/2016/01/complete-tutorial-ridge-lasso-regression-python/, но также посмотрите на некоторые бесплатные академические учебники по статистическому обучению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...