Давайте вивчимо, що відбувається. Я впевнений, що ви вже знаєте більшість поданих нижче матеріалів, але щоб встановити позначення та визначення та зробити ідеї зрозумілими, я висвітлю основи поліноміальної регресії, перш ніж відповісти на питання. Якщо вам подобається, R
перейдіть до заголовка "Що робить" про дві третини шляху до цієї публікації, а потім пропустіть назад для будь-яких визначень, які можуть вам знадобитися.
Установка
Ми розглядаємо в n × k моделі матриця Х потенційних пояснюють змінних в якій - то регрес. Це означає, що ми думаємо про стовпці Х як н вектори Х1, X2, … , Xк і ми формуватимемо їх лінійні комбінації, β1Х1+ β2Х2+ ⋯ + βкХк, для прогнозування або оцінки відповіді.
Іноді регресію можна покращити шляхом введення додаткових стовпців, створених шляхом множення різних стовпців Х один на одного, коефіцієнта на коефіцієнт. Такі вироби називаються «мономерами» і їх можна писати подібними
Хг11Хг22⋯ Xгкк
де кожна "потужність" гi дорівнює нулю або більше, що представляє, скільки разів кожен Х1 з'являється у творі. Зауважте, що Х0 - н вектор постійних коефіцієнтів ( 1 ), а Х1= X сам. Таким чином, Мономах (як вектори) породжують векторне простір , яке включає в себе вихідний стовпець простір X . Можливість, що це може бути більший векторний простір, дає цій процедурі більший обсяг для моделювання відповіді за допомогою лінійних комбінацій.
Ми маємо намір замінити оригінальну матрицю Х на колекційну лінійну комбінацію одночленів. Коли ступінь принаймні одного з цих мономенів перевищує 1 , це називається поліноміальною регресією.
Класифікація многочленів
Ступінь одночлена є сумою своїх повноважень, г1+ д2+ … + Дк. Ступінь лінійної комбінації одночленів ("многочлен") є найбільшою мірою серед одночленних членів з ненульовими коефіцієнтами. Ступінь має внутрішнє значення, оскільки коли ви змінюєте основу вихідного векторного простору, кожен вектор Хi знову представляється лінійною комбінацією всіх векторів; одночлени Хг11Хг22⋯ Xгкктим самим стають многочленами однакового ступеня; і, отже, ступінь будь-якого многочлена не змінюється.
Ступінь забезпечує природне "класифікацію" цієї поліноміальної алгебри: векторний простір, сформований усіма лінійними комбінаціями одночленів у Х ступеня до і включаючи г+ 1 , називається "поліномами [або до] ступеня г+ 1 у Х, "розширює векторний простір многочленів до ступеня г в Х.
Використання поліноміальної регресії
Часто поліноміальна регресія є дослідницькою в тому сенсі, що ми не знаємо спочатку, які мономи включати. Процес створення нових модельних матриць із одночленів та переналагодження регресії, можливо, потрібно буде повторити багато разів, можливо, астрономічне число разів у деяких настройках машинного навчання.
Головні проблеми такого підходу є
Мономіали часто вносять проблемні кількості "мультиколінеарності" в нову матрицю моделі, в першу чергу через те, що потужності однієї змінної, як правило, є дуже колінеарними. (Колінеарність між повноваженнями двох різних змінних непередбачувана, оскільки це залежить від того, наскільки ці змінні пов'язані, а тому є менш передбачуваною.)
Зміна лише одного стовпчика матриці моделі або введення нового або видалення його може зажадати «холодного перезапуску» процедури регресії, що потенційно може зайняти тривалий час для обчислення.
Класифікація поліноміальних алгебр дає спосіб подолати обидві проблеми.
Ортогональні многочлени в одній змінній
З огляду на одного вектор - стовпець Х, набір «ортогональних многочленів» для Х являє собою послідовність векторів - стовпців p0( X) , стор1( X) , стор2( X) , … формується в вигляді лінійної комбінації одночленним в Х в поодинці - що є, як сили Х - з такими властивостями:
Для кожного ступеня г= 0 , 1 , 2 , … , вектори p0( X) , стор1( X) , … , Сторг( X) генерують той же векторний простір, що і Х0, X1, … , Xг. (Зауважте, що Х0 - н вектор одиниць, а Х1 - просто Х себе.)
pi( X) є взаємно ортогональними в тому сенсі , що для i ≠ j , pi( X)'pj( X) = 0.
Зазвичай матриця заміщення моделі Р = ( с0( X)p1( X)⋯pг( X))
сформована з цих мономенів, вибирається ортонормальною шляхом нормалізації її стовпців до одиничної довжини: П'Р = яг+ 1.
Оскільки обернення П'П з'являється в більшості рівнянь регресії та інверсії матриці тотожності Яг+ 1 саме по собі, це представляє величезний обчислювальний приріст.
Ортонормальність майже майже визначає pi( X) . Ви можете переконатися в цьому:
Перший многочлен, p0( X) , повинен бути кратним н вектору 1 =(1,1,…,1 )' одиничної довжини. Є лише два варіанти, ± 1 / н---√1 . Зазвичай обирають позитивний квадратний корінь.
Другий многочлен, p1( X) , повинен бути ортогональним до 1 . Вона може бути отримана регрес Х проти 1 , рішення якого є вектором середніх значень Х = ˉ Х 1 . Якщо різниці ε = Х - Х не тотожне дорівнюють нулю, вони дають лише два можливих рішень р 1 ( X ) = ± ( 1 / | | е | |Х^= X¯1 .ϵ = X- X^p1( X) = ± ( 1 / | | ϵ | | )ϵ .
...
- pг+ 1( X)Хг+ 1p0( X) , стор1( X) , … , Сторг( X)Х.
Це процес Грам-Шмідта, застосований до внутрішньої послідовності векторів Х0, X1, … , Xг, … . Зазвичай він обчислюється за допомогою розкладання QR, що є майже таким же, але обчислюється чисельно стабільним чином.
Ця конструкція дає послідовність додаткових стовпців, які слід враховувати, включаючи в матрицю моделі. Тому поліноміальна регресія в одній змінній зазвичай протікає шляхом додавання елементів цієї послідовності по черзі до тих пір, поки не буде досягнуто подальшого покращення регресії. Оскільки кожен новий стовпець є ортогональним для попереднього, у тому числі він не змінює жодної з попередніх оцінок коефіцієнта. Це створює ефективну та легко тлумачну процедуру.
Поліноми у кількох змінних
Розвідувальна регресія (як і підгонка моделі) зазвичай відбувається шляхом спочатку розгляду, які (оригінальні) змінні включити до моделі; потім оцінюють, чи можна змінити ці змінні, включаючи різні перетворення їх, наприклад, мономеї; а потім введення «взаємодій», утворених з продуктів цих змінних, та їх повторного вираження.
Х
У цей момент частини універсальної програми розпадаються. Яку послідовність взаємодій ви застосовували б одну за одною, поки не буде визначена відповідна модель? Більше того, тепер, коли ми справді увійшли до царини багатовимірного аналізу, кількість доступних варіантів та їх зростаюча складність дозволяють припустити зменшення прибутку при побудові послідовності багатоваріантних ортогональних многочленів. Якщо ж ви мали на увазі таку послідовність, ви могли обчислити її за допомогою розкладання QR.
Що R
робить
Програмне забезпечення для поліноміальної регресії, як правило, фокусується на обчисленні одновимірних ортогональних послідовностей поліномів. Характерно, R
щоб така підтримка була максимально автоматизованою до груп одноманітних поліномів. Це те, що poly
робить. (Його супутник polym
- це по суті той самий код, з меншою кількістю дзвіночків; дві функції виконують те саме.)
poly
Х,г.гХ1, … , XкX ,
p1( Xj) , стор2( Xj) , … , Сторг( Xj)jг.p0( Xi)R
г.
г.2г= 2 , R
p1( X1) ,p2( X1) ,p1( X2) ,p1( X1) стор1( X2) ,p2( X2) .
R
p2( X1) стор1( X2) , p1( X1) стор2( X2)p1( X2) стор2( X2)formula
p1( X1) стор1( X2) .p1( X1)p1( X2)
Приклад
X = ⎛⎝⎜152364⎞⎠⎟.
Х1= ( 1 , 5 , 2 )'Х01= ( 1 , 1 , 1 )'p0( X1) = ( 1 , 1 , 1 )'/ 3-√≈ ( 0,58 , 0,58 , 0,58 )'.Х11= X1p0( X1) ,Х1p0( X1)p1( X1)Х1p1( X1) = ( - 0,57 , 0,79 , - 0,23 )'.Х21= ( 1 , 25 , 4 )p0( X1)p1( X1)Х1n = 3Х1,( t - 1 ) ( t - 5 ) ( t - 4 ) ,3 ,3 або більше - це лінійні комбінації менших потужностей, і ці менші потужності лінійно незалежні.)
Х1
П1= ⎛⎝⎜0,580,580,58- 0,570,79- 0,230,590,20- 0,78⎞⎠⎟
(до двох значущих цифр).
Х2
П2= ⎛⎝⎜0,580,580,58- 0,620,77- 0,150,530,27- 0,80⎞⎠⎟.
( 0,35 , 0,61 , 0,035 )'.poly
polym
Р = ⎛⎝⎜- 0,570,79- 0,230,590,20- 0,78- 0,620,77- 0,150,350,610,0350,530,27- 0,80⎞⎠⎟.
Х1Х2П'Р ,( 1 , 2 ) , ( 2 , 1 ) , ( 3 , 5 ) ,( 5 , 3 )( 1 , 1 ) , ( 2 , 2 ) , ( 3 , 3 ) ,( 5 , 5 )( 4 , 4 )
П'Р = ⎛⎝⎜⎜⎜⎜⎜⎜1010,280,09101- 0,0910,311- 0,09110,2500,280,30,250,50,320,091100,321⎞⎠⎟⎟⎟⎟⎟⎟.
П10- 17