Як моделювати обмежену змінну цілі?


18

У мене є 5 змінних, і я намагаюся передбачити свою цільову змінну, яка повинна бути в межах від 0 до 70.

Як я можу використовувати цю інформацію для кращого моделювання своєї цілі?

Відповіді:


21

Вам не обов’язково нічого робити. Цілком можливо, що передбачувач спрацює нормально. Навіть якщо предікторних екстраполюють до значень за межами діапазону, можливо , затискним передбачення в діапазоні (тобто, використання замість того , щоб уmax(0,min(70,y^))y^ ) буде робити добре. Перехресне підтвердження моделі, щоб побачити, чи працює це.

Однак обмежений діапазон викликає можливість нелінійного зв’язку між залежною змінною ( ) та незалежними змінними ( x i ). Деякі додаткові показники цього включають:yxi

  • Великий розкид залишкових значень , коли уy^ знаходиться в середині свого діапазону, по порівнянні зі зміною залишків на обох кінцях діапазону.

  • Теоретичні причини конкретних нелінійних зв’язків.

  • Докази неправильної специфікації моделі (отримані звичайними способами).

  • Значення квадратичних чи високих порядків у .xi

Розглянемо нелінійне повторне вираження y у випадку будь-якого з цих умов.

Існує багато способів повторного вираження для створення більш лінійних зв’язків з x i . Наприклад, будь-яку зростаючу функцію f, визначену на проміжку [ 0 , 70 ], можна "скласти", щоб створити симетричну функцію збільшення через y f ( y ) - f ( 70 - y ) . Якщо f стає довільно великим і негативним, коли його аргумент наближається до 0 , складена версія f буде відображатись [ 0 , 70yxif[0,70]yf(y)f(70y)f0f[0,70]у всі реальні числа. Приклади таких функцій включають логарифм і будь-яку негативну силу. Використання логарифму еквівалентно "посиланню logit", рекомендованому @ user603. Інший спосіб - нехай є зворотним CDF будь-якого розподілу ймовірностей і визначить f ( y ) = G ( y / 70 )Gf(y)=G(y/70) . Використання нормального розподілу дає «пробіт» перетворення.

Один із способів використання сімей перетворень - експериментувати: спробувати ймовірне перетворення, здійснити швидку регресію перетвореного на х i та протестувати залишки: вони, здається, не залежать від передбачуваних значень y (гомосептичні та некорельовані ). Це ознаки лінійного зв’язку з незалежними змінними. Це також допомагає, якщо залишки перетворених назад прогнозованих значень мають тенденцію бути невеликими. Це вказує, що трансформація покращила придатність. Щоб протистояти наслідкам людей, що використовуються, використовуйте стійкі методи регресії, такі як ітеративно переоцінене найменше квадратів .yxiy


1
+1 Чудова відповідь! Чи можете ви екстраполювати чи навести цитування, чому "більша різниця залишкових значень, коли y_hat знаходиться в середині його діапазону, порівняно з варіацією залишків на будь-якому кінці діапазону" є ознакою нелінійності?
Енді Маккензі

1
@Andy У теорії подібна гетероседастичність не має прямого зв’язку з нелінійністю, але на практиці часто спостерігається, що стабілізація дисперсії має тенденцію до лінеаризації відносин. Будь-яка крива, що постійно піднімається від мінімуму (наприклад, 0) до максимуму (як 70), матиме максимальний нахил десь в середині цього діапазону, що часто призводить до збільшення залишкової дисперсії і там. Тому ми очікуємо, що залишки виявлятимуть більше варіацій у середині та менше на кінцях. Якщо це не так, ми можемо сподіватися на лінійні зв’язки з неперетвореною змінною.
whuber

5

Важливо врахувати, чому ваші значення обмежені в діапазоні 0-70. Наприклад, якщо вони є кількістю правильних відповідей на тесті на 70 запитань, то слід розглянути моделі змінних "кількість успіхів", наприклад, передисперсну біноміальну регресію. Інші причини можуть привести вас до інших рішень.


2

Перетворення даних: змінити масштаб даних, щоб вони лежали в [0,1] і моделювати їх за допомогою glm-моделі з посиланням logit.

Редагувати: Коли ви повторно масштабуєте вектор (тобто розділяєте всі елементи на найбільший запис), як правило, перед тим, як зробити це, екраніруйте (очні яблука) для залишків.

ОНОВЛЕННЯ

Assuming you have access to R, i would carry the modeling part with a robust glm routine, see glmrob() in package robustbase.


3
Clamping the data as recommended here will bias the slopes in a regression.
whuber

1
Also, I do not see the immediate value in clamping based on sample quantiles, when the true range of the data is known a priori.
cardinal

@Cardinal The point is that (e.g.) possibly 99% of the data lie in [0,1] and the remaining values equal 70: a compact constraint on the range does not assure absence of outliers! Therefore I agree with the spirit of the advice offered by @user603, despite my concern about the possible bias in the proposed approach.
whuber

@whuber: My inclination in such a setting would be to use a GLM that was resistant to outliers rather than this form of clamping. Then let the model fit adjust via the "intercept" and the "slope" coefficient.
cardinal

@Cardinal Yes, that's a valid solution. I hope the use of such a GLM would still be accompanied by diagnostic procedures to check for (approximate) linearity and independence of residuals.
whuber
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.