Майже всі , що я читав про лінійної регресії і GLM зводиться до цього: , де є незростаюча або неубивающей функцією і є параметр , який ви оцінити та перевірити гіпотези про. Існують десятки функцій зв'язку та перетворень і щоб зробити лінійною функцією .f ( x , β ) x β y x y f ( x , β )
Тепер, якщо ви вилучите вимогу, що не збільшується / зменшується, для , я знаю лише два варіанти встановлення параметричної лінеаризованої моделі: тригонні функції та поліноми. Обидва створюють штучну залежність між кожним передбачуваним і всім набором , що робить їх дуже ненадійним пристосуванням, якщо немає попередніх причин вважати, що ваші дані насправді генеруються циклічним чи поліноміальним процесом.y X
Це не якийсь езотеричний крайний випадок. Це фактична, здорова взаємозв'язок між врожайністю води та врожаю (як тільки ділянки будуть досить глибокими під водою, урожайність урожаю почне зменшуватися), або між витраченими калоріями під час сніданку та результатами математичної вікторини, або кількістю працівників на заводі та кількість віджетів, які вони виробляють ... коротше кажучи, майже будь-який випадок із реального життя, для якого використовуються лінійні моделі, але з даними, що охоплюють достатньо широкий діапазон, що ви проходите повз зменшення повертається в негативну віддачу.
Я намагався шукати терміни «увігнутий», «опуклий», «криволінійний», «немонотонний», «ванна», і забуваю, скільки інших. Мало відповідних запитань і ще менше корисних відповідей. Так, на практиці, якщо у вас були такі дані (R-код, y - функція безперервної змінної x та дискретна група змінних):
updown<-data.frame(y=c(46.98,38.39,44.21,46.28,41.67,41.8,44.8,45.22,43.89,45.71,46.09,45.46,40.54,44.94,42.3,43.01,45.17,44.94,36.27,43.07,41.85,40.5,41.14,43.45,33.52,30.39,27.92,19.67,43.64,43.39,42.07,41.66,43.25,42.79,44.11,40.27,40.35,44.34,40.31,49.88,46.49,43.93,50.87,45.2,43.04,42.18,44.97,44.69,44.58,33.72,44.76,41.55,34.46,32.89,20.24,22,17.34,20.14,20.36,24.39,22.05,24.21,26.11,28.48,29.09,31.98,32.97,31.32,40.44,33.82,34.46,42.7,43.03,41.07,41.02,42.85,44.5,44.15,52.58,47.72,44.1,21.49,19.39,26.59,29.38,25.64,28.06,29.23,31.15,34.81,34.25,36,42.91,38.58,42.65,45.33,47.34,50.48,49.2,55.67,54.65,58.04,59.54,65.81,61.43,67.48,69.5,69.72,67.95,67.25,66.56,70.69,70.15,71.08,67.6,71.07,72.73,72.73,81.24,73.37,72.67,74.96,76.34,73.65,76.44,72.09,67.62,70.24,69.85,63.68,64.14,52.91,57.11,48.54,56.29,47.54,19.53,20.92,22.76,29.34,21.34,26.77,29.72,34.36,34.8,33.63,37.56,42.01,40.77,44.74,40.72,46.43,46.26,46.42,51.55,49.78,52.12,60.3,58.17,57,65.81,72.92,72.94,71.56,66.63,68.3,72.44,75.09,73.97,68.34,73.07,74.25,74.12,75.6,73.66,72.63,73.86,76.26,74.59,74.42,74.2,65,64.72,66.98,64.27,59.77,56.36,57.24,48.72,53.09,46.53),
x=c(216.37,226.13,237.03,255.17,270.86,287.45,300.52,314.44,325.61,341.12,354.88,365.68,379.77,393.5,410.02,420.88,436.31,450.84,466.95,477,491.89,509.27,521.86,531.53,548.11,563.43,575.43,590.34,213.33,228.99,240.07,250.4,269.75,283.33,294.67,310.44,325.36,340.48,355.66,370.43,377.58,394.32,413.22,428.23,436.41,455.58,465.63,475.51,493.44,505.4,521.42,536.82,550.57,563.17,575.2,592.27,86.15,91.09,97.83,103.39,107.37,114.78,119.9,124.39,131.63,134.49,142.83,147.26,152.2,160.9,163.75,172.29,173.62,179.3,184.82,191.46,197.53,201.89,204.71,214.12,215.06,88.34,109.18,122.12,133.19,148.02,158.72,172.93,189.23,204.04,219.36,229.58,247.49,258.23,273.3,292.69,300.47,314.36,325.65,345.21,356.19,367.29,389.87,397.74,411.46,423.04,444.23,452.41,465.43,484.51,497.33,507.98,522.96,537.37,553.79,566.08,581.91,595.84,610.7,624.04,637.53,649.98,663.43,681.67,698.1,709.79,718.33,734.81,751.93,761.37,775.12,790.15,803.39,818.64,833.71,847.81,88.09,105.72,123.35,132.19,151.87,161.5,177.34,186.92,201.35,216.09,230.12,245.47,255.85,273.45,285.91,303.99,315.98,325.48,343.01,360.05,373.17,381.7,398.41,412.66,423.66,443.67,450.39,468.86,483.93,499.91,511.59,529.34,541.35,550.28,568.31,584.7,592.33,615.74,622.45,639.1,651.41,668.08,679.75,692.94,708.83,720.98,734.42,747.83,762.27,778.74,790.97,806.99,820.03,831.55,844.23),
group=factor(rep(c('A','B'),c(81,110))));
plot(y~x,updown,subset=x<500,col=group);
Спершу ви можете спробувати трансформацію Box-Cox і побачити, чи має це механістичний сенс, а якщо цього не вдасться, вам може підійти нелінійна модель найменших квадратів з функцією логістичного або асимптотичного зв’язку.
Отже, навіщо вам повністю відмовитися від параметричних моделей і повернутися назад до методу чорної скриньки, як сплайни, коли дізнаєтесь, що повний набір даних виглядає так ...
plot(y~x,updown,col=group);
Мої запитання:
- Які терміни слід шукати, щоб знайти функції зв’язку, які представляють цей клас функціональних зв’язків?
або
- Що я повинен читати та / або шукати, щоб навчити себе проектувати функції зв’язку до цього класу функціональних зв’язків або розширювати існуючі, які наразі призначені лише для монотонних відповідей?
або
- Чорт, навіть те, що тег StackExchange є найбільш підходящим для такого типу питань!
R
коді є синтаксичні помилки: group
їх не слід цитувати. (2) Сюжет прекрасний: червоні точки демонструють лінійну залежність, тоді як чорні можуть бути встановлені декількома способами, включаючи кусочно-лінійну регресію (отриману за допомогою моделі зміни точки) і, можливо, навіть як експоненціальну. Я , однак, не рекомендую їх, тому що вибір моделювання повинен бути поінформований розумінням того, що спричинило дані та мотивовано теоріями у відповідних дисциплінах. Вони можуть стати кращим початком для ваших досліджень.