LASSO с терминами взаимодействия - это нормально, если основные эффекты сведены к нулю?

25

Регрессия LASSO сокращает коэффициенты до нуля, тем самым обеспечивая эффективный выбор модели. Я считаю, что в моих данных есть значимые взаимодействия между номинальными и непрерывными ковариатами. Однако не обязательно, чтобы «основные эффекты» истинной модели были значимыми (отличными от нуля). Конечно, я не знаю этого, поскольку истинная модель неизвестна. Мои цели - найти истинную модель и максимально точно предсказать результат.

Я узнал, что классический подход к построению модели всегда будет включать основной эффект, прежде чем будет включено взаимодействие. Таким образом, не может быть модели без основного эффекта двух ковариат и если в той же модели существует взаимодействие ковариатСледовательно, функция тщательно выбирает термины модели (например, основанные на обратной или прямой AIC), соблюдая это правило.XZXZstepR

LASSO, кажется, работает по-другому. Поскольку все параметры штрафуются, без сомнения, может случиться так, что основной эффект будет уменьшен до нуля, тогда как взаимодействие лучшей (например, перекрестной проверки) модели не равно нулю. Это я считаю , в частности , для моих данных при использовании R«s glmnetпакет.

Я получил критику на основании первого правила, приведенного выше, т.е. моя окончательная перекрестная проверка модели Лассо не включает соответствующие члены основного эффекта некоторого ненулевого взаимодействия. Однако это правило кажется несколько странным в этом контексте. То, к чему это сводится, является вопросом, является ли параметр в истинной модели нулевым. Предположим, что это не так, но взаимодействие ненулевое, тогда LASSO, возможно, определит это, найдя правильную модель. На самом деле, кажется, что прогнозы из этой модели будут более точными, потому что модель не содержит основного эффекта истинного нуля, который фактически является переменной шума.

Могу ли я опровергнуть критику, основанную на этом основании, или я должен как-то предупредить, что LASSO включает основной эффект перед термином взаимодействия?

Томка
источник
2
Кто-то отрицал это. Я бы быть заинтересованы why-
Томка
1
Является ли ваша цель предсказанием, выводом или чем-то еще - все вместе?
Андрей М
@ AndrewM Я хочу как можно лучше оценить истинную модель, интерпретировать переменные, вызывающие зависимые переменные, а также использовать прогнозные значения.
Томка
2
Для вашей первой цели, обратите внимание, что перекрестная проверка несовместима при выборе модели. Фактически, было показано, что модель, которую «истинная» модель имеет тенденцию быть подмножеством той, которая максимизирует нашу оценку прогнозирующей эффективности. Для вашей второй цели, обратите внимание, что лассо дает сильно смещенные оценки. Поэтому я думаю, что вам нужно решить, какова ваша основная цель, и отредактировать свой вопрос, чтобы уточнить, прежде чем можно будет дать полезный совет.
Андрей М
@ AndrewM мой вопрос: должен ли основной эффект быть включен в модель при использовании LASSO? На этот вопрос можно ответить для обоих моих объективов отдельно. Я не думаю, что вопрос нуждается в дальнейшей доработке, но важно указать на эти цели, см. Редактирование в первом абзаце.
Томка

Ответы:

10

Одна трудность в ответе на этот вопрос заключается в том, что LASSO трудно согласовать с идеей «истинной» модели в большинстве реальных приложений, которые обычно имеют незначительные корреляции между переменными предиктора. В этом случае, как и в любом другом методе выбора переменных, конкретные предикторы, возвращаемые с ненулевыми коэффициентами LASSO, будут зависеть от капризов выборки из базовой популяции. Вы можете проверить это, выполнив LASSO для нескольких выборок начальной загрузки из одного и того же набора данных и сравнив наборы переменных предиктора, которые возвращаются.

Кроме того, как отметил @AndrewM в комментарии, предвзятость оценок, предоставленных LASSO, означает, что вы не будете прогнозировать результаты «настолько близко, насколько это возможно». Скорее, вы прогнозируете результаты, которые основаны на конкретном выборе неизбежного компромисса смещения.

Поэтому, учитывая эти трудности, я надеюсь, что вы захотите узнать сами, а не просто удовлетворить критика, о величине основных эффектов переменных, которые способствуют взаимодействию. В R, glinternet есть пакет , который, кажется, делает именно то, что вам нужно (хотя у меня нет опыта работы с ним):

Группа-Лассо INTERaction-NET. Подходит для линейных моделей парного взаимодействия, которые удовлетворяют строгой иерархии: если коэффициент взаимодействия оценивается как ненулевой, то его два связанных основных эффекта также имеют ненулевые оцененные коэффициенты. Приспосабливает категориальные переменные (факторы) с произвольным числом уровней, непрерывных переменных и их комбинаций.

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

магистр педагогических наук
источник
9

Я опаздываю на вечеринку, но вот несколько моих мыслей о вашей проблеме.

  1. Лассо выбирает, что является информативным. Рассмотрим лассо как метод достижения максимальной прогнозирующей производительности с наименьшим количеством функций. Вполне нормально, что в некоторых случаях Лассо выбирает взаимодействие, а не основные эффекты. Это просто означает, что основные эффекты не информативны, а взаимодействия.

  2. Вы просто сообщаете, что вы узнали. Вы использовали какой-то метод, и он дал некоторые результаты. Вы сообщаете об этом прозрачным способом, который обеспечивает воспроизводимость. На мой взгляд, ваша работа выполнена. Результаты объективны, вы нашли то, что нашли, и не ваша задача - объяснить, почему вы не нашли что-то еще.

  3. Все единицы являются произвольными. Взаимодействия - это просто единицы. Допустим, вы изучаете цвета. Цвета могут быть включены в вашу модель как длина волны, или длина волны журнала, или как 3 RGB-переменной, или как взаимодействие оттенка и оттенка и так далее. Не существует изначально правильного или неправильного представления цветов. Вы выберете тот, который наиболее подходит для вашей проблемы. Взаимодействия - это просто единицы, которые вы можете использовать произвольно. Площадь окна, это просто взаимодействие его высоты и ширины, следует ли включать в модель высоту и ширину окна? Скорость - это просто взаимодействие массы и скорости. А Скорость - это просто взаимодействие времени и расстояния. Manhours - это просто взаимодействие времени и количества работающих людей. Математически доза лечения * возраст совпадает с ростом * шириной. Поговорка «Вы всегда должны включать основные эффекты» переоценена.

  4. Лассо не аппроксимирует реальную модель, он не предназначен для вывода, а выбранные переменные нестабильны. Если вы коррелировали информативные предикторы, Лассо имеет тенденцию выбирать один и подталкивать другие к 0, поэтому ваша модель пропустит значительную долю информативных переменных. Кроме того, как было отмечено в комментариях, если вы найдете лучшую лямбду в перекрестной проверке, Лассо выберет больше переменных, чем в реальной модели. Другая проблема состоит в том, что выборы из лассо нестабильны. Поэтому, если вы снова запустите lasso для другой выборки из совокупности, вы получите другой набор выбранных переменных. Следовательно, не придавайте большого значения тому, какие переменные выбраны. Кроме того, беты являются предвзятыми и, следовательно, не могут быть использованы для проверки классической параметрической гипотезы. Тем не менее, есть способы обойти это (следующий пункт)

  5. умозаключение с лассо Лассо можно использовать, чтобы сделать вывод о предикторах. Самый простой способ - загрузить его и посчитать, сколько раз выбрана каждая переменная, разделить на число повторных выборок, и у вас есть ваши p-значения. P в этом случае - вероятность выбора переменной с помощью лассо. Вы все равно можете получить значительные эффекты взаимодействия и незначительные основные эффекты, но это не проблема, это может произойти и при обычном тестировании гипотез. Отличная трактовка этой темы в Hastie et. и др. бесплатная книга: Статистическое обучение с редкостью, глава 6 http://web.stanford.edu/~hastie/StatLearnSparsity/Начальная загрузка может быть выполнена для всего диапазона лямбда-значений, что приведет к стабильности пути для всех переменных. Это может быть расширено с помощью подхода выбора стабильности, чтобы найти набор значимых переменных, исправленных для семейной ошибки. http://onlinelibrary.wiley.com/doi/10.1111/j.1467-9868.2010.00740.x/abstract Существуют также некоторые другие методы вывода с помощью лассо, которые могут быть полезны. А именно, адаптивное лассо или унылое лассо. Обзор с реализацией R находится здесь DOI: 10.1214 / 15-STS527 или более доступное объяснение IMO в Buhlmanm, van de Geer Book: Статистика для многомерных данных http://www.springer.com/la/book/9783642201912

  6. Другие связанные с лассо вещи, которые нужно знать. Насколько я знаю, ребристая или эластичная сетка имеет тенденцию превосходить лассо. Если имеется знание предметной области о переменных, групповое лассо или разреженное групповое лассо можно использовать для того, чтобы заставить лассо либо сохранять, либо отбрасывать целую группу предикторов, а не обрабатывать их по отдельности (например, генные пути, фиктивная кодированная переменная фактора). Для пространственных или упорядоченных данных можно использовать плавленое лассо. Рандомизированное лассо, представленное в упомянутой выше статье о выборе устойчивости, имеет тенденцию давать более редкие модели с такими же характеристиками, что и у стандартного лассо.

rep_ho
источник
1
очень понравилось # 3
user4581
0

У меня есть приложение, в котором я хочу, чтобы небольшое количество основных эффектов не наказывалось. Пусть Y = X.main beta + X.inter beta.inter + eps

а) fit.Y = OLS (X.main, Y). Пусть tilde.Y = Y - предсказать (fit.Y, X.main) b) fit [, j] = OLS (X.main, X.inter [, j]) для j = 1 ... k. Пусть tilde.X.inter [, j] = X.inter [, j] - предсказать (fit.j, X.main) c) fit = Lasso (tilde.X.inter, tilde.y). Коэффициент основного эффекта равен fit.Y - coef (fit) * fit [, 1: dim (X.inter) [2]]. Коэффициент по эффекту взаимодействия равен коэф (пригонке)

На этапах a и b не нужно делать разбиение образца. Это подходит для меня!

Vira
источник