Наука про дані

Шаблони проектування даних Alteryx Data Science: Форма прогнозованої моделі, Частина друга

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

дизайну

Процес генерації даних

Прогнозна модель має на меті передбачити поведінку деяких реальних процесів. Науковці даних називають цей процес процесом формування даних, оскільки він генерує вхідні дані моделі.

  • Процес генерації може бути фізичним. Наприклад, процес, який поступово зношує деталь на промисловій машині, може генерувати показники вібрації, температури та звуку, які передбачають, коли деталь вийде з ладу.

  • Процес генерації може бути біологічним. Наприклад, можна виміряти нервові зміни у експериментальних лабораторних мишей, які піддавались фізичним вправам та дієтам, щоб побачити, як фізична активність та обмеження калорій впливають на нервове здоров’я.

  • Нарешті, породжувальний процес може бути соціальним. Наприклад, клієнти бізнесу можуть періодично вирішувати, чи продовжувати купувати послуги у бізнесу, або замість цього змінювати постачальника послуг (відбій).

Зверніть увагу, що деякі змінні у наведених вище прикладах є природними ефектами процесу генерації. Такі змінні є ендогенними. Змінні, якими маніпулюють люди, називаються рішеннями, лікуванням або незалежними змінними залежно від контексту. (Ось довший список типів змінних, якщо ви хочете дізнатись більше.)

Наведені вище приклади трьох типів технологічного процесу є спрощеними. Дійсно, більшість процесів генерації, які ви, ймовірно, змоделюєте, будуть сумішами цих трьох типів. (Насправді, коли є змінні прийняття рішень, ви маєте певний соціальний вплив на роботу у вашому процесі генерації.) Знання цього та знання про типи змінних допоможуть вам критично подумати про те, які змінні можуть передбачити поведінку конкретного процесу генерації. . Наприклад, якщо ви моделюєте ефективність ліків, можливо, вам доведеться включити серед вхідних змінних біологічні показники того, наскільки добре організм засвоює ліки, а також показники поведінки того, наскільки експериментальні суб'єкти відповідають виписаним лікарем рецептам.

Передбачуваність

Наше найосновніше припущення щодо генеруючого процесу полягає в тому, що його поведінка є певною мірою передбачуваною, принаймні, коли ми вибрали хороший набір перетворень та особливостей моделі. Давайте трохи зупинимось, щоб розглянути, що означає це припущення. По-перше, зауважимо, що хоча припущення не завжди справедливе, напрочуд важко знайти хороший приклад абсолютно непередбачуваного (випадкового) процесу генерації. Підкидання монети - дуже поширений приклад нібито випадкового процесу. Але емпіричні дослідження фізичного підкидання монет виявляють невеликий ступінь передбачуваності. Подібним чином люди часто кажуть, що ціна акції абсолютно непередбачувана, оскільки це (приблизно) випадкова прогулянка, тобто ціна з однаковою ймовірністю зросте або зменшиться на будь-яку дану суму кожного разу, коли ціна змінюється. Але з практичної точки зору ціни на акції потрапляють в обмежений діапазон, і в межах цього діапазону розподіл майбутньої ціни акції, враховуючи її теперішню ціну, приблизно має форму дзвона - не рівний. Акції, ціна яких зараз коштує 100 доларів, набагато частіше перейде до 101, ніж до 1001 доларів у наступний раз, коли ціна акції зміниться. У цьому сенсі 101 долар є кращим прогнозом ціни акцій, ніж 1001 долар, враховуючи поточну ціну. Ціна не зовсім випадкова.

Мабуть, найкращим прикладом, який ми можемо побудувати випадковий процес, є хороший генератор випадкових чисел. Деякі генератори випадкових чисел беруть вибірки вимірювань із фізичного (часто субатомного) процесу. Інші - це програмні алгоритми, які генерують послідовності чисел, що мають такий самий статистичний розподіл, як і послідовності справжніх випадкових чисел, хоча алгоритм повідомляє нам, яке число приходить наступним, враховуючи, яке число прийшло останнє. Такі алгоритми є псевдовипадковими. Про них важливо подумати, оскільки, хоча розподіл їхніх результатів задовольняє багато статистичних тестів на випадковість, самі алгоритми є цілком передбачуваними, оскільки процес їх генерування (комп'ютерна програма, що працює на комп'ютері) є детермінованим. Після того, як ми знаємо вхідні дані, ми можемо з певністю зробити висновок про результати роботи алгоритму. На відміну від цього, для деяких видів фізичних процесів такий тип знань, можливо, неможливий навіть в принципі.

Функціональна форма

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

Існує три способи вказати функцію:

  1. Найчастіше ми вказуємо функціональну форму як якийсь математичний вираз набору вхідних аргументів (ознак моделі): f (x 1, x 2) = x 1 2 + 2x 1 x 2 + log (x 2), наприклад.
  2. Ми також можемо вказати функцію як процедуру, яка виводить одне значення для будь-якої комбінації вхідних значень.
  3. Або ми можемо вказати функцію як таблицю з переліком вихідного значення, що відповідає кожному можливому набору вхідних значень.

Кожен із них важливий у науці про дані, як ми побачимо нижче.

Ми можемо ідеалізувати процес побудови прогностичної моделі як виявлення двох речей:

  1. які вхідні змінні визначають змінну результату
  2. функціональна форма детермінованих відносин .

Перші чотири частини моделі прогнозної моделі стосуються першої з них; залишок, другий.

На практиці ми насправді не очікуємо виявити справжню функціональну форму процесу генерації. Швидше, ми прагнемо просто наблизити (оцінити) це. Таким чином, відомий афоризм: "Усі моделі помилкові, але деякі моделі корисні". Багато зразків дизайну, які ми вивчатимемо у цій серії блогів, охоплюють важливі методи побудови корисних, хоча приблизних моделей.

Приклади

Давайте розглянемо кілька прикладів функціональних форм та корисні наближення до них. Ці приклади ілюструють, що модель може наблизити функціональну форму процесу генерування, а не вказувати його повністю або навіть явно, з будь-якої з кількох причин.

Приклад 2.1: Приблизний набір функцій

Частина зазначення функції - це вказівка ​​її аргументів (входів). Якщо модель використовує лише деякі вхідні дані, необхідні для справжньої функціональної форми процесу генерації, модель може лише апроксимувати цю форму. Алгоритми вибору змінних та показники змінної важливості допомагають нам визначити корисні дані. Для ілюстрації, згадайте наші умовні дані електронної медичної картки (EMR) із попередньої публікації та графіки випадкової лісової мінливості для прогнозування відсотка жиру в організмі (PBF) з інших змінних в EMR. Давайте відтворимо цей сюжет тут:

Рисунок 1: Вартість змінної для прогнозування PBF

Обидва графіки сходяться на думці, що вік та індекс маси тіла (ІМТ) є важливими предикторами (особливостями моделі). Сюжети не погоджуються щодо важливості статі та ваги. Якщо ми віддаємо перевагу мірі чистоти вузлів змінної важливості (тій, яку зараз відображає інструмент випадкового лісу Alteryx), ми можемо вибрати як наш набір функцій. Припустимо, тепер ми обрали звичайною лінійною регресією найменших квадратів (OLS) як наш алгоритм індукції. Потік даних Alteryx буде таким, як на малюнках 2 і 3:

Рисунок 2: Лінійна модель OLS

Рисунок 3: Конфігурація лінійної регресії OLS

Отримані показники придатності моделі знаходяться у восьмому рядку вихідних даних моделі на малюнку 4:

Рисунок 4: Показники придатності лінійних моделей для трьох змінних чистоти вузлів

Давайте змінимо модель, щоб замість неї використовувати як наш набір функцій три найкращі змінні, рекомендовані графіком важливості змінної важливості середньої квадратичної помилки (MSE) на малюнку 1. На рисунку 5 представлені ті самі показники придатності моделі:

Рисунок 5: Показники придатності лінійних моделей для трьох основних змінних MSE

Жодна модель не підходить до даних ідеально; обидва «пояснюють» близько 91% змін у наборі функцій. (Тобто, R у квадраті становить приблизно 0,91. Дивіться статтю Вікіпедії про R у квадраті, щоб дізнатись більше про цей показник придатності моделі.) Але другий набір функцій пояснює дані дещо краще. Якщо ми використовуємо об’єднання двох наборів функцій вище, трапляється щось цікаве:

Рисунок 6: Показники фітнес-лінійної моделі для об’єднання наборів функцій

R в квадраті перестає вдосконалюватися, хоча ми додали четверту змінну. Цей результат свідчить про те, що четверта змінна не містить інформації, яка ще не переноситься трьома змінними MSE. Ці три можуть бути найкращим набором функцій, який ми могли б вибрати з необроблених вхідних змінних, в тому сенсі, що цей набір, здається, є найменшим набором, який досягає найкращого можливого квадрата R. (Ми вивчимо більш складні схеми вибору наборів функцій у наступних публікаціях.) Для подальшого вдосконалення R у квадраті нам потрібно буде взяти одну з трьох схем:

  1. Знайдіть якусь іншу вхідну змінну, що містить інформацію про PBF, яка ще не передається поточним набором вхідних змінних.
  2. Точніше виміряйте поточний набір вхідних змінних.
  3. Використовуйте модель, яка передбачає, що процес генерації має іншу функціональну форму.

Легко уявити, що поведінкові змінні, що вимірюють рівень фізичної активності та якість дієти, можуть містити додаткову інформацію про PBF. Зупинимося натомість на прикладах нижче, які ілюструють два інших підходи.

Приклад 2.2: Приблизне вимірювання характеристик

Друга причина, чому модель не ідеально фіксує функціональну форму процесу генерації, полягає в тому, що, навіть якщо модель використовує всі правильні ознаки, значення ознак можуть бути не виміряні ідеально. Натомість вимірювання можуть (і майже завжди роблять) включати деяку статистичну похибку. Наприклад, припустимо, що дані EMR не містять помилок вимірювання у вікових та статевих змінних. (Пацієнти правильно повідомляють ці дані, а медичний персонал їх правильно фіксує.) Змінна ІМТ вже шумна; змодельовані дані ЕМР були побудовані таким чином. Давайте зробимо ІМТ галаснішим, щоб проілюструвати ефект від вимірювання, яке лише приблизно вимірює справжнє значення. Ми можемо додати рівномірно розподілений тремтіння до значень ІМТ за допомогою функції джиттера R):

ex_2.2_data $ bmi Рисунок 7: Додавання рівномірного джиттера до змінної в R

Якщо повторно запустити лінійну модель, R у квадраті падає приблизно до 0,89. Таким чином, шумні вимірювання характеристик принаймні частково затуляють сигнал моделі (функціональної форми) генеруючого процесу від моделі.

Відсутні та недійсні значення ознак є найекстремальнішим випадком шумного вимірювання. У цьому випадку (нульове) вимірювання повністю затемнило справжнє значення об’єкта.

Приклад 2.3: Приблизна функціональна форма

Вчені-дослідники часто витрачають багато часу на візуальне дослідження вхідних змінних. Однією з причин такого дослідницького аналізу є отримання уявлення про геометричну форму функціональної форми генеруючого процесу. Наведені вище приклади припускають, що функціональна форма є лінійною (або принаймні, що лінійна функція є гарним наближенням до справжньої функціональної форми). Давайте дослідимо взаємозв'язок між ІМТ та PBF, щоб перевірити це припущення. Рисунок 8 містить графік розсіювання та лінію регресії між двома змінними:

Рисунок 8: Розсіяна схема та лінія регресії для PBF

Ми хотіли б, щоб графік розсіювання сконцентрувався на лінії регресії. Але форма крапки ділянки розсіювання не зовсім симетрична і не зовсім зосереджена на лінії регресії. Це свідчить про те, що функціональна форма процесу генерації не є абсолютно лінійною. Якщо ми регресуємо PBF за кількома функціями ІМТ, включаючи ІМТ 2 та log (BMI), ми виявляємо, що PBF насправді дуже трохи корелює з log (BMI), ніж з ІМТ, припускаючи, що зв'язок не є абсолютно лінійною:

Рисунок 9: Розсіяний графік та лінія регресії для PBF

Тепер співвідношення має вигляд PBF = β 0 + β 1 log (BMI, а лінія регресії розділяє дані трохи краще. Однак цікаво, проте, заміна BMI на log (BMI) все ще не покращує загальну модель. (We ' Буду досліджувати, чому в наступному дописі.)

Справжня функціональна форма, що стосується PBF та ІМТ, не є ні лінійною, ні логарифмічною. (Я знаю, оскільки я побудував функцію, яка служить процесом генерування. Такі штучні процеси генерування називаються імітаціями.) Важливим моментом є не те, що наша модель неправильна щодо форми функції, а те, що це досить хороше наближення, хоча ми і вибрали недосконале лінійне наближення до (дуже злегка нелінійної) функціональної форми.

Приклад 2.4: Неявна функціональна форма

Наразі ми розглядали апроксимаційні функціональні форми, які ви можете писати, використовуючи символи, які ви, напевно, засвоїли в математиці середньої школи. Моделі, що використовують ці функціональні форми, є параметричними. У попередньому прикладі константи β 0 і β 1 є параметрами моделі (нахил та перетин). Іноді справжня функціональна форма має дуже складну форму, таку, яку важко або практично неможливо наблизити за допомогою параметричної моделі. Альтернативою є непараметрична модель. Ці моделі все ще виробляють функції, оскільки вони все ще передбачають одне значення для кожного можливого набору значень характеристик моделі. Але вони не говорять нам про форму функції, її математичну форму. Ця форма просто імпліцитна у вбудованому алгоритмі індукції. Багато таких моделей називають моделями машинного навчання, підкреслюючи, що лише машина "засвоює" функціональну форму, тоді як модель є "чорною скринькою" для своїх користувачів. Випадкові ліси, машини з опорними векторами та нейронні мережі - це приклади моделей машинного навчання.

Важливо усвідомлювати, що використання моделі машинного навчання не звільняє нас від математичних міркувань класичних параметричних моделей. Теоретики, які відкривають алгоритми машинного навчання, намагаються надати такі самі гарантії щодо цих алгоритмів, якими користуються параметричні методи. Часто математика стає набагато складнішою, оскільки теоретики не можуть прямо міркувати про поведінку функції закритої форми. Ці гарантії (коли вони існують) все ще стосуються того, чи і наскільки швидко модель сходиться до однієї відповіді, коли ви подаєте їй все більше і більше вхідних даних. І примітно, що деякі моделі машинного навчання набагато гнучкіші щодо функціональних форм, які вони можуть наблизити, ніж класичні моделі. Зокрема, може бути побудована нейронна мережа, яка наближує будь-яку дану безперервну функцію настільки близько, наскільки нам подобається. Ця гнучкість є однією з причин, чому моделі машинного навчання мають таку велику привабливість.

Потік даних Alteryx для моделі з випадковим лісом просто замінює інструмент лінійної регресії на малюнку 2 інструментом лісової моделі:

Рисунок 10: Модель випадкового лісу

Ця модель пояснює лише 82,64% змін у вхідних змінних, незважаючи на її гнучкість. Це свідчить про те, що лінійна форма нашої моделі лінійної регресії OLS ближче до справжньої форми генеруючої функції, ніж форма (нелінійної) функції, індукованої колекцією дерев рішень. Все це підводить нас до хорошого емпіричного правила розробки моделі. По-перше, підберіть найкращу параметричну модель, яку ви можете. Спробуйте лише моделі машинного навчання, коли жодна параметрична модель не дає вам достатньо хороших результатів. Параметричні моделі якимось чином не застаріли лише тому, що з’явилися моделі машинного навчання. Навпаки: їх явна функціональна форма робить їх більш прозорими і часто наближає до справжньої функціональної форми процесу генерації. Використовуйте їх, коли можете.

Ми використовували словосполучення „модель придатності”, не пояснюючи цього. Давайте це виправимо. Модельна придатність означає дві речі:

  1. Прогнози моделі узгоджуються з даними, які ми використовували для розробки (підготовки, підгонки) моделі.
  2. Прогнози моделі узгоджуються з даними, які не використовуються для навчання моделі. (Модель узагальнює.)

Модель не відповідає своїм навчальним даним, коли вона не вдається спочатку. Зазвичай це відбувається тому, що функціональна форма моделі менш складна, ніж форма генеруючого процесу. Тобто модель є недостатньо складною. Переоснащення відбувається, коли модель виходить з ладу другою справою. Зазвичай це відбувається через те, що функціональна форма моделі є занадто складною - оскільки процес припасування пристосував її до вимірювання шуму в навчальних даних, а також до справжньої функціональної форми процесу генерації.

Хоча люди не збираються навмисно недоопрацьовувати або переоснащувати модель, кілька типових практик призводять до недооснащення та переоснащення. Ми розглянемо деякі з цих шаблонів у наступних публікаціях.

Якби ми мали всі дані, які генерував процес генерації, і ми використовували їх для навчання моделі, ми завжди могли б звести обидва почуття придатності моделі до першого. Зокрема, ми могли б - технічно кажучи - досконало вказати функціональну форму процесу генерації, вказавши точне вихідне значення для кожного набору входів. Така специфікація була б не дуже цікавою, оскільки вона не виконувала б ключової функції аналітичної моделі, а саме узагальнення даних. Це просто таблиця, що містить усі дані.

Таким чином, ми дійшли до дуже базової моделі проектування науки про дані (DSDP), яку ілюструють наведені вище приклади. Візерунок віком сотні років і виражався різними способами. Століття тому він виглядав як бритва Оккама. Класичні статистики називають це компромісом упередженості та дисперсії. Ми будемо називати це компромісом недостатнього/надмірного встановлення: використовуйте найменшу вхідну змінну, яку ви можете, і найпростішу форму моделі, щоб максимально пристосувати модель. Цю закономірність ми побачимо на роботі, коли вивчимо три останні компоненти прогнозної моделі.