У меня уже есть представление о плюсах и минусах регрессии гребня и LASSO.
Для LASSO штрафной член L1 даст вектор разреженного коэффициента, который можно рассматривать как метод выбора признаков. Тем не менее, существуют некоторые ограничения для LASSO. Если функции имеют высокую корреляцию, LASSO выберет только одну из них. Кроме того, для задач, где > n , LASSO выберет не более n параметров ( n и p - количество наблюдений и параметров соответственно). Это делает LASSO эмпирически неоптимальным методом с точки зрения предсказуемости по сравнению с регрессией гребня.
Для регрессии гребня это предлагает лучшую предсказуемость в целом. Тем не менее, его интерпретируемость не так хороша, как LASSO.
Приведенное выше объяснение часто можно найти в учебниках по машинному обучению / интеллектуальному анализу данных. Тем не менее, я все еще запутался в двух вещах:
Если мы нормализуем диапазон признаков (скажем, между 0 и 1, или с нулевым средним и единичной дисперсией) и запустим регрессию гребней, у нас все еще может появиться представление о важности признаков путем сортировки абсолютных значений коэффициентов (самый важный признак имеет наибольшее абсолютное значение коэффициентов). Хотя мы не выбираем функции явно, интерпретируемость не теряется при использовании регрессии гребня. В то же время мы все еще можем достичь высокой силы прогнозирования. Тогда зачем нам ЛАССО? Я что-то здесь упускаю?
Является ли LASSO предпочтительным из-за его характера выбора характеристик? Насколько я понимаю, причины, по которым нам нужен выбор функций, заключаются в возможности обобщения и простоте вычислений.
Для простоты вычислений мы не хотим вводить все 1 миллион функций в нашу модель, если выполняем некоторые задачи НЛП, поэтому сначала мы отбрасываем некоторые явно бесполезные функции, чтобы снизить вычислительные затраты. Однако для LASSO мы можем узнать результат выбора функции (разреженный вектор) только после подачи всех данных в нашу модель, поэтому мы не получаем выгоды от LASSO с точки зрения уменьшения вычислительных затрат. Мы можем только делать прогнозы немного быстрее, поскольку теперь мы только вводим подмножество функций (скажем, 500 из 1 миллиона) в нашу модель, чтобы генерировать прогнозируемые результаты.
Если LASSO предпочтительнее из-за его способности обобщать, то мы также можем достичь той же цели, используя регрессию гребня (или любой другой вид регуляризации). Зачем нам снова нужны LASSO (или эластичные сетки)? Почему мы не можем просто придерживаться регрессии гребня?
Может кто-нибудь, пожалуйста, пролить свет на это? Благодаря!