Теорія
Проста лінійна регресія
Проста лінійна регресія: передбачення однієї метрики з іншої прямою лінією та перевірка якості через коефіцієнт детермінації R².
~10 хв читання · 11 вправ · 250 балів
Перед початком
Що дає ще один долар?
Учора з'ясувалося, що рекламні витрати й замовлення Котокорму тісно пов'язані. Сьогодні фінансовий директор хоче від продуктової команди чогось конкретнішого: скільки додаткових замовлень дає кожен наступний долар на рекламу?
Кореляція на це не відповідає. У цьому уроці ти проведеш пряму через ті самі десять тижнів за допомогою простої лінійної регресії, зробиш із неї прогноз і перевіриш, наскільки добре вона описує дані.
Від кореляції до прямої, якою можна користуватися
Кореляція відповідає на запитання «наскільки тісно рухаються дві метрики?» одним числом без одиниць. На запитання власника бюджету — «скільки ще замовлень дасть ще один долар?» — вона відповісти не може.
Дані графіка
| Рекламні витрати, USD | Замовлення з реклами |
|---|---|
| 200 | 20 |
| 300 | 23 |
| 350 | 30 |
| 400 | 28 |
| 450 | 36 |
Показати ще 5 рядків
| 500 | 33 |
| 550 | 42 |
| 600 | 38 |
| 650 | 48 |
| 700 | 44 |
Проста лінійна регресія відповідає рівнянням:
ŷ = b0 + b1 × x
- x — незалежна змінна (предиктор), тут тижневі рекламні витрати;
- ŷ («ігрек із дашком») — прогноз залежної змінної (відгуку), тут замовлень із реклами;
- b1 — коефіцієнт нахилу: наскільки змінюється ŷ на кожну одиницю x;
- b0 — вільний член: значення ŷ там, де пряма перетинає x = 0.
«Проста» означає один предиктор; наступний урок додасть більше.
Двох речей регресія не додає. Вона не доводить причинності: пряма описує закономірність у даних, і змішувальний чинник створить нахил так само легко, як і r. І вона не робить дані менш шумними: крапки й далі розкидані навколо прямої. Здобуток — число, з яким можна планувати, для рівнів витрат, які дані справді охоплюють.
- Такŷ = 8,85 + 0,0539 × витрати: підстав 500 дол., отримаєш приблизно 35,8 замовлення.
- Не так«Ми побудували регресію, тож тепер знаємо, що реклама спричиняє замовлення.»
Підібрана пряма — це все ще опис даних.
Метод найменших квадратів і залишки
Крізь «середину» хмари крапок можна провести безліч прямих. Метод найменших квадратів обирає одну за точним правилом.
Для кожної крапки міряють залишок: вертикальну відстань між фактичним значенням і прогнозом прямої, e = y − ŷ. Додатний залишок означає, що крапка над прямою (пряма занизила прогноз); від'ємний — що під нею. Далі кожен залишок підносять до квадрата й додають. Пряма найменших квадратів — та, у якої сума квадратів залишків найменша з можливих.

Навіщо квадрати? З тих самих двох причин, що й для дисперсії: додатні й від'ємні відстані не скасовуються, а великий промах коштує значно більше за малий, тож пряма не може ігнорувати жодної далекої крапки.
Зручний наслідок: якщо пряма має вільний член, її залишки завжди в сумі дають рівно нуль. Інакше пряму можна було б зсунути вгору чи вниз і зменшити суму квадратів, тобто вона не була б прямою найменших квадратів. Це правда для будь-якої такої прямої, доброї чи поганої. Нульова сума каже, що промахи врівноважені, а не що вони малі.
- Так«Залишки в сумі дають нуль, тож завищені й занижені прогнози врівноважуються.»
- Не так«Залишки в сумі дають нуль, отже, пряма підходить ідеально.»
Цю властивість має кожна пряма найменших квадратів із вільним членом.
Як обчислити коефіцієнт нахилу
Коефіцієнт нахилу методу найменших квадратів використовує суми, які ти вже бачив у формулі r:
b1 = Σ(x − x̄)(y − ȳ) / Σ(x − x̄)²
У чисельнику — сума добутків відхилень; у знаменнику — сума квадратів відхилень лише x. Для десяти тижнів Котокорму:
Набір даних · 10 рядків
Тижневі рекламні витрати Котокорму та замовлення з реклами
Ті самі десять тижнів рекламних витрат і замовлень з уроку про кореляцію, тепер використані для підбору прямої.
Перші 5 з 10 рядків
b1 = 12 460 / 231 000 ≈ 0,0539 замовлення на долар.
Нахил на один долар важко уявити, тож переведи його на крок, що має значення: 0,0539 × 100 ≈ 5,39 замовлення на кожні додаткові 100 дол. тижневих витрат. У таблиці SLOPE(діапазон замовлень; діапазон витрат) дає те саме число; зверни увагу, що відгук іде першим.
Нахил має одиниці: замовлення на долар. На відміну від r, він змінюється разом з одиницями: у замовленнях на гривню він був би меншим у стільки разів, скільки становить курс. Його знак завжди збігається зі знаком r, бо в них спільний чисельник.
Класична помилка — поділити не на ту суму: квадрати відхилень y чи корінь із формули r дають число, яке взагалі не є нахилом.
- Такb1 = 12 460 / 231 000 ≈ 0,0539 → приблизно 5,39 замовлення на 100 дол.
- Не такb1 = 12 460 / 749,6 ≈ 16,6 замовлення на долар
Ділить на квадрати відхилень замовлень замість витрат.
Вільний член і де він перестає щось означати
Коли нахил відомий, вільний член випливає з одного факту: пряма найменших квадратів завжди проходить через точку середніх (x̄, ȳ). Тож
b0 = ȳ − b1 × x̄ = 34,2 − 0,0539 × 470 ≈ 8,85.
Формула: Нахил і вільний член методу найменших квадратів: той самий чисельник і знаменник, що й для r, тепер використані для крутизни прямої. · є вище
Формально b0 — це прогноз, коли x = 0: приблизно 8,85 замовлення в тиждень без рекламних витрат. Іноді таке прочитання корисне. Тут воно потребує застереження: тижня з витратами менше за 200 дол. у Котокорму не було, тож x = 0 лежить поза даними. Пряму підібрано на відрізку 200–700 дол.; нижче ніхто не знає, чи замовлення з реклами вирівняються, впадуть до нуля чи поведуться інакше.

Датасет: Тижневі рекламні витрати Котокорму та замовлення з реклами · є вище
Сприймай вільний член насамперед як частину рівняння, а вже потім як бізнес-факт. Змістовним базовим рівнем він стає лише тоді, коли x = 0 реалістичний і близький до даних, як знижка 0%, коли тестували 0–20%.
У таблиці INTERCEPT(діапазон замовлень; діапазон витрат) дає b0 одразу.
- Так«b0 ≈ 8,85 — частина рівняння; нульові витрати ніколи не тестували.»
- Не так«Вимкнемо рекламу — і все одно матимемо 9 замовлень із реклами на тиждень.»
Сприймає екстрапольовану точку як виміряний базовий рівень.
Як зробити прогноз
Коли є b0 і b1, прогноз — це один рядок арифметики: підстав x у ŷ = b0 + b1 × x.
Для тижня з витратами 550 дол.:
ŷ = 8,85 + 0,0539 × 550 = 8,85 + 29,65 ≈ 38,5 замовлення.
Три звички роблять прогноз чесним:
- спершу множ, потім додавай. Якщо спершу додати, (8,85 + 0,0539) × 550, вийде приблизно 4 900 замовлень — очевидна нісенітниця, яка все одно трапляється в таблицях;
- лишай достатньо знаків у b1. Якщо округлити 0,0539 до 0,05, прогноз для 550 дол. зсунеться приблизно на 2 замовлення; за більших x помилка зростає;
- тримайся в межах даних. 550 дол. — усередині діапазону 200–700 дол., тож прогноз є інтерполяцією й заслуговує на довіру. 900 дол. були б екстраполяцією.
Прогноз — це найкраща оцінка прямої для типового тижня з такими витратами, а не обіцянка для конкретного тижня. У тижні 7 теж було 550 дол., а замовлень — 42, приблизно на 3,5 вище за пряму. Реальні тижні розкидані навколо ŷ, і саме цей розкид описують залишки та R².
- Так8,85 + 0,0539 × 550 ≈ 38,5 замовлення
- Не так(8,85 + 0,0539) × 550 ≈ 4 897 замовлень
Додає перед множенням.
Як читати залишки
Залишок — це те, у чому пряма помилилася для одного спостереження:
e = фактичне − прогнозоване = y − ŷ.
Порядок важливий. Для тижня 4 з витратами 400 дол. пряма прогнозує 8,85 + 0,0539 × 400 ≈ 30,41 замовлення; фактично було 28, тож e = 28 − 30,41 = −2,41. Мінус означає, що пряма завищила прогноз; плюс — що занизила. Поміняй порядок — і всі знаки зміняться, а з ними й історія про те, які тижні вийшли кращими за очікування.
Один залишок — це лише шум одного тижня. Корисніше дивитися на всі разом: побудуй графік залишків проти x (або проти ŷ).
- Безформна смуга навколо нуля — те, що потрібно: пряма вловила закономірність, а лишився шум.
- Крива (від'ємні на обох кінцях і додатні посередині або навпаки) означає, що справжній зв'язок згинається, наприклад віддача від реклами вирівнюється за більших бюджетів. Пряма буде систематично помилятися в певних місцях.
- Лійка, що розширюється зі зростанням x, означає, що для великих значень прогнози менш точні.
Візерунок у залишках — сигнал змінити модель, а не довіряти їй більше.
- Такe = 28 − 30,41 = −2,41 (пряма завищила прогноз)
- Не такe = 30,41 − 28 = +2,41, «тиждень 4 перевершив прогноз»
Прогноз мінус факт перевертає знак і висновок.
R²: частка варіації, яку пояснює пряма
Коефіцієнт детермінації (R²) підсумовує якість усієї прямої одним числом.
Почни з того, наскільки замовлення взагалі коливаються: сума квадратів відхилень від середнього, SS_загальна = 749,6. Далі подивись, скільки варіації пряма лишає непоясненою: сума квадратів залишків, SS_залишків ≈ 77,5. Решту пояснює пряма:
R² = 1 − SS_залишків / SS_загальна = 1 − 77,5 / 749,6 ≈ 0,90.
Читай це як «приблизно 90% тижневих коливань замовлень узгоджуються з рекламними витратами». R² лежить від 0 (пряма не краща, ніж щотижня прогнозувати середнє) до 1 (усі крапки на прямій). З одним предиктором R² — це просто r²: 0,947² ≈ 0,90.
Чого R² не каже:
- чи зв'язок причинний;
- чи правильна форма прямої (крива теж може дати пристойний R²; дивись на залишки);
- наскільки великий типовий промах у замовленнях. Навіть за високого R² промахи можуть сягати кількох замовлень на тиждень.
А «добре» залежить від контексту: для шумної поведінки клієнтів і 0,3 може бути корисним.
- ТакR² = 1 − 77,5 / 749,6 ≈ 0,90: пряма пояснює близько 90% варіації.
- Не такR² = 77,5 / 749,6 ≈ 0,10: «пряма пояснює лише 10%».
Це частка непоясненого; R² — це одиниця мінус вона.
Чотири терміни, одна картинка
Результат будь-якої простої регресії зводиться до чотирьох частин. Уяви діаграму розсіювання з проведеною крізь неї прямою.
Графік: Рекламні витрати й замовлення з реклами за 10 тижнів · є вище
- Коефіцієнт нахилу (b1): нахил прямої. Для Котокорму — приблизно 5,4 додаткового замовлення на кожні додаткові 100 дол. тижневих витрат. Одиниці: відгук на одиницю предиктора.
- Вільний член (b0): де пряма перетинає x = 0, приблизно 8,85 замовлення. Одиниці — як у відгуку. Змістовний, лише якщо x = 0 близько до даних.
- Залишок: вертикальна відстань між однією крапкою і прямою, факт мінус прогноз. По одному на спостереження; разом вони дають нуль.
- R²: одне число для всієї прямої, частка варіації відгуку, яку пояснює пряма. Тут близько 0,90.
Перші два визначають пряму; останні два описують, наскільки дані до неї прилягають. Звіт лише з b1 ховає, наскільки шумний зв'язок; звіт лише з R² ховає розмір ефекту. Наводь обидва, а ще діапазон x, на якому підібрано пряму.
Компактно: «замовлення ≈ 8,85 + 5,4 на 100 дол. витрат, R² = 0,90, підібрано на 200–700 дол. на тиждень».
- Так«+5,4 замовлення на 100 дол., R² = 0,90, підібрано на 200–700 дол. на тиждень.»
- Не так«R² = 0,90, тож кожні 100 дол. дають на 90% більше замовлень.»
Плутає якість прилягання (R²) з розміром ефекту (нахилом).
Три способи зловжити доброю прямою
Пряма з R² = 0,90 добре описує десять тижнів. Проблеми починаються, коли від неї вимагають більшого.
- Екстраполяція. Кожен спостережений тиждень мав витрати 200–700 дол. Підстав 900 дол. — вийде приблизно 57 замовлень, але це число припускає, що нахил незмінно тягнеться на територію, яку ніхто не вимірював. Віддача від реклами часто вирівнюється зі зростанням бюджету, коли дешевші аудиторії закінчуються. За межами даних прогноз — це здогад.
- Сприймати добру пряму як ідеальну. За R² = 0,90 у більшості тижнів лишаються залишки у 2–4 замовлення. План, якому потрібно, щоб кожен тиждень влучив у прогноз, здебільшого не справдиться.
- Читати нахил як причину. Пряма описує, як витрати й замовлення рухалися разом у минулому. Якщо витрати зростали переважно в пікові сезони, частина нахилу належить сезону.

Що не є ризиком: користуватися прямою, хоча R² менше за 1. Реальні дані ніколи не бувають ідеальними, а пряма з відомою похибкою все одно значно краща за здогад.
Безпечно планувати більші бюджети кроками: трохи підняти витрати за межі протестованого діапазону, звірити фактичні замовлення з прямою, а тоді йти далі.
- Так«Протестувати 750–800 дол. кілька тижнів і звірити фактичні замовлення з прямою, перш ніж іти до 900 дол.»
- Не так«Пряма каже, що 900 дол. дадуть 57 замовлень, тож фіксуємо це в плані на квартал.»
Фіксує екстраполяцію так, ніби її виміряли.
Готові потренуватися?
Виконайте вправи уроку й отримайте 250 балів, коли пройдете його вперше.
Розпочати вправи