Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
data_2016-saa.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
246.56 Кб
Скачать
  1. Развитие линейной модели (Lab05)

    1. Модели сглаживания LOESS, функция loess().

Построим модели loess(y~x1) для span=0.25, 0.50, 0.75

    1. Моделирование нелинейных зависимостей: полиномиальные модели, функция

p.lm<-lm(y~poly(x, degree=3))

summary(p.lm)

Call:

lm(formula = y ~ poly(x, degree = 3))

Residuals:

Min 1Q Median 3Q Max

-2.15590 -0.71150 -0.03369 0.55222 2.24663

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 3.72134 0.09152 40.663 < 2e-16 *** значимо

poly(x, degree = 3)1 10.71305 0.91516 11.706 < 2e-16 *** значимо

poly(x, degree = 3)2 2.44803 0.91516 2.675 0.00879 ** значимо

poly(x, degree = 3)3 2.51555 0.91516 2.749 0.00715 ** значимо

---

Residual standard error: 0.9152 on 96 degrees of freedom

Multiple R-squared: 0.6125, Adjusted R-squared: 0.6004 #60%объясненной дисперсии

F-statistic: 50.58 on 3 and 96 DF, p-value: < 2.2e-16

Прогноз модели:

    1. Линейные модели от одной переменной с различными функциями потерь (ошибки модели), функция lmodel2().

Call: lmodel2(formula = y ~ x1, range.y = "relative", range.x = "interval",

nperm = 999)

n = 100 r = 0.8099158 r-square = 0.6559636

Parametric P-values: 2-tailed = 1.941527e-24 1-tailed = 9.707636e-25

Angle between the two OLS regression lines = 8.069737 degrees

Regression results

Method Intercept Slope Angle (degrees) P-perm (1-tailed)

1 OLS 3.0605967 2.116599 64.71132 0.001

2 MA 0.9964318 3.079024 72.00733 0.001

3 SMA 1.9951733 2.613356 69.06067 NA

4 RMA 1.9168362 2.649881 69.32473 0.001

Confidence intervals

Method 2.5%-Intercept 97.5%-Intercept 2.5%-Slope 97.5%-Slope

1 OLS 2.2275904 3.893603 1.809321 2.423877

2 MA -0.1083611 1.844531 2.683594 3.594137

3 SMA 1.2975253 2.615598 2.324081 2.938638

4 RMA 1.0195109 2.684168 2.292110 3.068263

Полученные модели:

Y=3.060 +2.117X (OLS)

Y=0.996 +3.079X (MA)

Y=1.995 + 2.613X (SMA)

Y=1.917 +2.650X (RMA)

    1. Робастные линейные модели урезанных квадратов LTS от одной переменной, функция lmrob().

library(robustbase)

summary(lmrob(y~ x1))

Call:

lmrob(formula = y ~ x1)

\--> method = "MM"

Residuals:

Min 1Q Median 3Q Max

-8.2843 -0.6483 0.0839 0.7120 22.6000

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 1.06204 0.17614 6.029 2.91e-08 ***

x1 2.93578 0.07268 40.396 < 2e-16 ***коэф.значимы

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Robust residual standard error: 1.186

Multiple R-squared: 0.9382, Adjusted R-squared: 0.9376

Convergence in 7 IRWLS iterations

Полученная модель:

Y=1.062+2.936X

Доля объясненной дисперсии велика: 93%

    1. Робастные линейные модели Хубера от одной переменной, функция rlm().

library(MASS)

summary(rlm(y~ x1))

Call: rlm(formula = y ~ x1)

Residuals:

Min 1Q Median 3Q Max

-4.7922 -0.7831 -0.0910 0.8478 34.2955

Coefficients:

Value Std. Error t value

(Intercept) 0.8360 0.2296 3.6421

x1 3.0398 0.0951 31.9480

Residual standard error: 1.219 on 98 degrees of freedom

Полученная модель:

Y=0.836+3.0.40X

    1. Регуляризация (гребневая регрессия), функция lm.ridge() с выбором параметра регуляризации lambda.

p<-read.table("task-6.6-01.dat",header=T)

head(p)

x1 x2 x3 y

1 4.1210527 4.2283144 4.0742916 26.288883

2 3.6944901 2.7601018 2.5792715 18.513952

3 1.1419793 1.0208849 1.7381865 9.661248

4 1.6011813 0.3864666 2.9229826 11.716295

5 0.8746350 0.7331076 0.7583375 5.765868

library(MASS)

M.ridge <- lm.ridge(y~.,data=p,lambda=seq(0,1,0.1))

plot(x=M.ridge$lambda, y=M.ridge$GCV, type="o")

Лямбда доставляет минимум критерию GCV, когда равна примерно 0.5

(lambda <- M.ridge$GCV[which.min(M.ridge$GCV)])

0.5

0.009855079

(M.ridge1 <- lm.ridge(y~.,data=p,lambda=lambda))

x1 x2 x3

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]