Виявлення значних прогнозів з багатьох незалежних змінних


31

У наборі даних про дві групи, що не перетинаються (пацієнти та здорові, загальна ), я хотів би знайти (із незалежних змінних) значних прогнозів для постійної залежної змінної. Кореляція між предикторами є. Мені цікаво з'ясувати, чи пов’язаний будь-який з предикторів із залежною змінною "насправді" (а не прогнозувати залежну змінну якомога точніше). Оскільки я перейнявся численними можливими підходами, я хотів би запитати, який підхід найбільше рекомендується.n=60300

  • З мого розуміння поетапне включення або виключення прогнозів не рекомендується

  • Наприклад, запустіть лінійну регресію окремо для кожного прогноктора і виправте р-значення для багаторазового порівняння за допомогою FDR (можливо, дуже консервативно?)

  • Принципова регресія: складна інтерпретація, оскільки я не зможу розповісти про передбачувальну силу окремих прогнокторів, а лише про компоненти.

  • будь-які інші пропозиції?


Я чув про людей, які використовують регульовану регресію L1, щоб робити такі речі. Але я не знаю достатньо, щоб написати належну відповідь ...
Король

2
Для того, щоб дати найкращі рекомендації, це допоможе нам дізнатися, як ви будете діяти після визначення "значущих прогнозів". Ви намагаєтесь якомога точніше передбачити результат; знайти парсимонічний спосіб прогнозувати це (наприклад, використовуючи набір до k- предикторів, які дозволять це ефективно зробити; поясніть, що викликає результат "насправді"; чи щось інше? Також, наскільки великий ваш набір даних?
rolando2

@rolando: дякую за коментар! Я оновив питання: моя загальна кількість спостережень становить n = 60 предметів. Моя мета - не передбачити залежну змінну якомога точніше, а скоріше пояснити, що спричиняє результат "насправді" (= сподіваюсь знайти зв’язок між змінними, які можна було б підтвердити в наступних дослідженнях / наборах даних)
jokel

Я також розмістив подальше запитання, включаючи деякі фіктивні дані. Я був би дуже вдячний за всі підказки. stats.stackexchange.com/questions/34859/…
jokel

Відповіді:


30

Я б рекомендував спробувати glm з регуляризацією ласо . Це додає штраф моделі до кількості змінних, і при збільшенні штрафу кількість змінних у моделі зменшиться.

Виберіть перехресну перевірку, щоб вибрати значення параметра штрафу. Якщо у вас є R, пропоную використовувати пакет glmnet . Використовуйте alpha=1для регресії лассо і alpha=0для регресії хребта. Встановлення значення між 0 і 1 використовуватиме поєднання ласових та гребінних штрафних санкцій, також відомих як пружна сітка.


4
Я згоден із Заком. Ми з Девідом Касселлом написали документ про це, зосередившись на SAS, але не повністю. Це зупиняється поетапно .
Пітер Флом - Відновити Моніку

1
Я думаю, що це 0 для хребта і 1 для ласо
Король

1
@Zach: Дякую за підказки. Чи є спосіб отримати якусь тестову статистику, яка дозволила б судити про важливість одиничних прогнозів. Зрештою, я хотів би мати можливість сказати, що "предиктор X суттєво пов'язаний із залежною змінною Y".
jokel

2
Що стосується КІ, то з посібника іншого пакету R, що реалізує LASSO ( cran.r-project.org/web/packages/penalized/vignettes/… , стор. 18): "Цілком природним питанням є запитання про стандартні помилки регресії. коефіцієнти або інші розрахункові величини. У принципі такі стандартні помилки можна легко обчислити, наприклад, використовуючи завантажувальний механізм. Тим не менш, цей пакет навмисно їх не надає. Причиною цього є те, що стандартні помилки не мають великого значення для сильно упереджених оцінок, таких як виникають від пенізованих методів оцінки ".
miura

2
@miura Нещодавно представлена ​​тестова статистика саме для цього, оригінальні автори Lasso теж: папір та слайди (простіше читати)
Cam.Davidson.Pilon

23

Щоб розширити відповідь Зака ​​(+1), якщо ви використовуєте метод LASSO в лінійній регресії, ви намагаєтеся мінімізувати суму квадратичної функції та функції абсолютного значення, тобто:

хвβ(Y-Хβ)Т(Y-Хβ)+i|βi|

βОб'єктивна функція LASSO

Мінімум лежить на кривій перетину, побудованій тут із контурними кривими квадратичної та квадратної кривої:

Контурні криві LASSO

Ви можете бачити, що мінімум знаходиться на одній з осей, отже, він усунув цю змінну з регресії.

L1


8
(+1), але для публікації в блозі, що дійсно добре. Було б добре, якби ви дещо розширили свою відповідь тут, оскільки це збільшить ймовірність інформації, що залишилася.
richiemorrisroe

2

Яка ваша попередня думка щодо того, скільки прогнозів може бути важливим? Чи ймовірно, що більшість із них має ефект нульового значення, або все впливає на результат, деякі змінні лише менше, ніж інші?

І як стан здоров’я пов’язаний із завданням прогнозування?

Якщо ви вважаєте, що важливі лише декілька змінних, ви можете спробувати виконати шип і плиту попередньо (наприклад, у пакеті R spikeSlabGAM) або L1. Якщо ви думаєте, що всі прогнози впливають на результат, можливо, вам не пощастить.

І взагалі застосовуються всі застереження, пов'язані з причинним висновком із даних спостережень.


2

Що б ви не робили, варто отримати інтервали довіри завантажувальної версії за рядами важливості прогнозів, щоб показати, що ви дійсно можете це зробити зі своїм набором даних. Я сумніваюся, що будь-який із методів може надійно знайти «справжніх» прогнокторів.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.