Що означає лінійна регресія?


11

В R, якщо пишу

lm(a ~ b + c + b*c) 

це все-таки буде лінійною регресією?

Як зробити інші види регресії в R? Буду вдячний за будь-яку рекомендацію щодо підручників чи навчальних посібників?


Я спробував трохи переробити ваше запитання. Боюся, схоже, що ви задаєте два дуже різні питання. Для другого на цьому сайті доступно багато ресурсів, але також і на CRAN .
chl

@chl, так, дякую, я не зрозумів. Мої запитання справді такі: Якщо я пишу LM на R, чи R розуміє це як лінійний завжди або намагається відповідати будь-якій моделі, не обов'язково лінійній регресії, а будь-якій регресії?
suprvisr

Ні, lm()означає лінійну регресію. Ваша модель включає в себе три параметра (мінус перехоплювати) для b, cі їх взаємодії b:c, що означає b + c + b:cабо b*cдля стислості (R слід нотації Уїлкінсона для статистичних моделей). Встановлення узагальненої лінійної моделі (тобто там, де функція зв'язку не є тотожною, як це стосується лінійної моделі, вираженої вище) glm().
chl

Відповіді:


24

Лінійний стосується співвідношення між параметрами, які ви оцінюєте (наприклад, ), і результатом (наприклад, y i ). Отже, y = e x β + ϵ лінійний, але y = e β x + ϵ - ні. Лінійна модель означає , що ваша оцінка вашого вектора параметрів може бути записана & beta ; = Е я ш I у я , де { ш I }βyiy=exβ+ϵy=eβx+ϵβ^=iwiyi{wi}чи ваги визначаються вашою процедурою оцінки. Лінійні моделі можна розв’язувати алгебраїчно в закритому вигляді, тоді як багато нелінійних моделей потрібно вирішувати числовою максимізацією за допомогою комп’ютера.


6
+1 Зокрема, у "лінійній моделі" залежна змінна є лінійною функцією параметрів, але не обов'язково даних. y
whuber

1-й - лінійний? справді - той, що під силу x?
suprvisr

2
xββ

+1, але цю відповідь можна було б покращити, коментуючи формулу питання.
naught101

1
Я помічаю, під час другого читання, що друга половина цієї відповіді плутає "лінійну модель" з "лінійним оцінником". Два поняття є окремими та різними. Нелінійні моделі часто мають лінійні оцінювачі, а лінійні моделі можуть мати нелінійні оцінники (наприклад, врахуйте GLM).
whuber

5

Цей пост на сайті minitab.com дає дуже чітке пояснення:

  • Модель лінійна, коли її можна записати у такому форматі:
    • Response = constant + parameter * predictor + ... + parameter * predictor
      • Тобто, коли кожен доданок (у моделі) є або константою, або добутком параметра і змінної предиктора.
    • Отже, обидві є лінійними моделями:
      • Y=B0+B1X1
      • Y=B0+B1X12
  • Якщо модель не може бути виражена у наведеному вище форматі, вона нелінійна.
    • Приклади нелінійних моделей:
      • Y=B0+X1B1
      • Y=B0cos(B1X1)

4

Я б обережно ставив це як питання "R лінійної регресії" проти "лінійної регресії". Формули в R мають правила, яких ви можете або не можете знати. Наприклад:

http://wiener.math.csi.cuny.edu/st/stRmanual/ModelFormula.html

Припустимо, що ви запитуєте, чи таке рівняння лінійне:

a = coeff0 + (coeff1 * b) + (coeff2 * c) + (coeff3 * (b*c))

Відповідь "так", якщо ви збираєте нову незалежну змінну, таку як:

newv = b * c

Заміна вищевказаного рівняння newv у вихідне рівняння, ймовірно, виглядає так, як ви очікуєте від лінійного рівняння:

a = coeff0 + (coeff1 * b) + (coeff2 * c) + (coeff3 * newv)

Що стосується посилань, то "регресія" Google або все, що ви думаєте, може працювати для вас.


Як перейменування чогось робить це лінійним? Я не розумію, якщо ідентичність newv = b * c справедлива, вона зовсім не лінійна. Я збентежений.
bayerj

@bayer: newv - нова змінна. Нове рівняння - це лінійна функція трьох змінних (b, c, newv), де коефіцієнти забезпечують лінійну залежність. Жодне рівняння не є лінійною комбінацією всього двох змінних.
bill_080

@bayer Дивіться відповідь @Charlie. У цьому прикладі обидві моделі є лінійними (незалежно від того, чи R їх розглядає як такі), оскільки в обох вони aє лінійною функцією чотирьох коефіцієнтів.
whuber

дякую, це має сенс ... чи можу я просто додати в базу даних (медичну) нову змінну neww, яка є b * c, а потім трактувати її як лінійну регресію?
suprvisr

2

Можна виписати лінійну регресію у вигляді (лінійного) матричного рівняння.

[a1a2a3a4a5...an]=[b1c1b1c1b2c2b2c2b3c3b3c3b4c4b4c4b5c5b5c5...bncnbncn]×[αbαcαbc]+[ϵ1ϵ2ϵ3ϵ4ϵ5...ϵn]

або якщо ви згорнуте це:

a=αbb+αcc+αbcbc+ϵ

bcbca

abcbc


y=aect+bedty=u(ec(tv)+ed(tv))ab


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