Подтвердить что ты не робот

Как используется Elastic Net?

Это начальный вопрос о регуляризации с регрессией. Большая часть информации об Elastic Net и Lasso Regression online реплицирует информацию из Википедии или оригинальной статьи 2005 года Zou and Hastie (Регуляризация и выбор переменных через эластичную сеть).

Ресурс для простой теории? Есть ли простое и простое объяснение где-то о том, что он делает, когда и почему требуется реорганизация, и как его использовать - для тех, кто не является статистически склонным? Я понимаю, что оригинальная статья является идеальным источником, если вы ее понимаете, но есть ли где-то более просто проблема и решение?

Как использовать в sklearn? Есть ли пошаговый пример, показывающий, почему выбрана эластичная сеть (над хребтом, лассо или просто простой OLS) и как рассчитываются параметры? Многие примеры на sklearn включают только параметры альфа и rho непосредственно в модель прогнозирования, для example:

from sklearn.linear_model import ElasticNet
alpha = 0.1
enet = ElasticNet(alpha=alpha, rho=0.7)
y_pred_enet = enet.fit(X_train, y_train).predict(X_test)

Однако они не объясняют, как они были рассчитаны. Как вы вычисляете параметры для lasso или net?

4b9b3361

Ответ 1

Документация отсутствует. Я создал новый issue, чтобы улучшить его. Как сказал Андреас, лучший ресурс, вероятно, ESL II свободно доступен онлайн в формате PDF.

Чтобы автоматически настроить значение альфы, действительно можно использовать ElasticNetCV, что избавит вас от избыточных вычислений, как показано на GridSearchCV в классе ElasticNet для настройки alpha. В дополнение, вы можете использовать обычный GridSearchCV для нахождения оптимального значения rho. Подробнее см. В docstring ElasticNetCV.

Что касается Lasso vs ElasticNet, ElasticNet будет стремиться выбирать больше переменных, следовательно, приводит к более крупным моделям (также более дорогим для обучения), но также более точным в целом. В частности, Лассо очень чувствителен к корреляции между функциями и может случайно выбирать одну из 2 очень коррелированных информационных характеристик, в то время как ElasticNet будет с большей вероятностью выбирать и то, и другое, что должно привести к более стабильной модели (с точки зрения способности обобщения к таким новым образцам).