Tải bản đầy đủ (.pdf) (35 trang)

Bài giảng Thước đo đánh giá mô hình hồi quy tuyến tính

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.65 MB, 35 trang )

Tuan V. Nguyen
Senior Principal Research Fellow, Garvan Institute of Medical Research
Professor, UNSW School of Public Health and Community Medicine
Professor of Predictive Medicine, University of Technology Sydney
Adj. Professor of Epidemiology and Biostatistics,
School of Medicine Sydney, University of Notre Dame Australia

Phân tích dữ liệu và ứng dụng | Đại học Dược Hà Nội | 12/6 to 17/6/2019

© Tuan V. Nguyen


Nội dung
• Mô hình hồi qui tuyến tính đa biến
• Ứng dụng 1: đánh giá mối liên quan (association / assessment)
• Ứng dụng 2: hiệu chỉnh cho yếu tố nhiễu (adjustment)
• Ứng dụng 3: mô hình tiên lượng (prediction)


Mô hình hồi qui tuyến tính đa biến
• Mô hình hồi qui tuyến tính đơn giản:
Y = β 0 + β 1X 1
• Mô hình hồi qui tuyến tính đa biến:
Y = β0 + β1X1 + β2X2 + β3X3 + ... + βpXp
• Các biến X có thể là biến liên tục hay phân nhóm


Mô hình hồi qui tuyến tính đa biến
• Mô hình căn bản
Y = b 0 + b1 X 1 + b 2 X 2 + ... + b p X p + e


• Y là biến phụ thuộc (dependent variable), biến liên tục
• X1, X2, X3, …, Xp : biến tiên lượng
β1, β2, β3, ..., βp : regression coefficients (hệ số hồi qui )

ε ~ phân bố chuẩn (normal), độc lập, trung bình 0, phương sai σ2
ε ~ (0, σ2)


Hàm lm trong R
• Trong R, có hàm lm (linear models)
– giải phương trình để ước tính tham số
– tính toán các chỉ số thống kê liên quan đến mô hình
– đánh giá sự thích hợp của mô hình

• Công thức chung

lm(y ~ x1 + x2 + x3 + ...)


Mục tiêu mô hình hồi qui đa biến
• Hiểu và đánh giá tác động các yếu tố liên quan (assessment)
• Hiệu chỉnh (adjustment)
• Tiên lượng (prediction)


Nghiên cứu thực tế: tìm mô hình tiên lượng tỉ trọng mỡ
• Nghiên cứu béo phì trên 1217 người Việt
• Đo tỉ trọng mỡ bằng máy DXA (pcfat)
• Mục tiêu
– Ảnh hưởng của tuổi đến tỉ trọng mỡ

– Khác biệt về tỉ trọng mỡ giữa nam và nữ
– Ảnh hưởng của tuổi có độc lập với giới tính
– Xây dựng mô hình dùng các số liệu nhân trắc để tiên lượng
tỉ trọng mỡ


> ob = read.csv("~/Dropbox/_Conferences and Workshops/Dai hoc Duoc
6-2019/Datasets/obesity data.csv")
> head(ob)
id gender height weight bmi age WBBMC
1 1
F
150
49 21.8 53 1312
2 2
M
165
52 19.1 65 1309
3 3
F
157
57 23.1 64 1230
4 4
F
156
53 21.8 56 1171
5 5
M
160
51 19.9 54 1681

6 6
F
153
47 20.1 52 1358

bmd
0.88
0.84
0.84
0.80
0.98
0.91

fat
17802
8381
19221
17472
7336
14904

lean pcfat
28600 37.3
40229 16.8
36057 34.0
33094 33.8
40621 14.8
30068 32.2



Câu hỏi nghiên cứu
• Có mối liên quan giữa độ tuổi và cân nặng với mật độ xương (bmd)
• Yếu tố nào có liên quan đến mật độ xương
• Có thể xây dựng một mô hình tiên lượng tỉ trọng mỡ (pcfat)
– Mô hình này gồm những biến nào?


Ứng dụng mô hình HQTT 1:
đánh giá mối liên quan


Đánh giá mối liên quan
• Mối liên quan giữa độ tuổi và cân nặng với bmd
• Biến tiên lượng: age, bmi
• Biến outcome: bmd
• Mô hình
bmd = α + β1(age) + β2(bmi)
• Triển khai R
m = lm(bmd ~ age + bmi, data=ob)
summary(m)


Ảnh hưởng của tuổi: mô hình HQTT đơn giản
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.9613809 0.0210065 45.766
<2e-16 ***
age
-0.0032540 0.0001671 -19.471
<2e-16 ***

bmi
0.0089660 0.0009446
9.492
<2e-16 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.09801 on 1214 degrees of freedom
Multiple R-squared: 0.2506,
Adjusted R-squared: 0.2494

Mô hình (ý tưởng):
bmd = α + β1(age) + β2(bmi)
Thực tế:
bmd = 0.96 – 0.0032*age + 0.0089*bmi


Ảnh hưởng của tuổi: mô hình HQTT đơn giản
Mô hình (ý tưởng):
bmd = α + β1(age) + β2(bmi)
Thực tế:
bmd = 0.96 – 0.0032*age + 0.0089*bmi

Diễn giải: Tăng mỗi năm tuổi liên quan đến giảm 0.0032 g/cm2 mật độ
xương (P < 0.0001). Ở mỗi tuổi, tăng 1 kg/m2 BMI liên quan đến tăng
0.009 g/cm2 MĐX, và mối liên quan này có ý nghĩa thống kê (P < 0.0001).
Hai yếu tố độ tuổi và BMI giải thích 25% phương sai của MĐX.


Báo cáo
m = lm(bmd ~ age + bmi, data=ob)
# Tóm tắt hệ số

> coef(summary(m))
Estimate
Std. Error
t value
Pr(>|t|)
(Intercept) 0.961380879 0.0210064697 45.76594 1.451241e-266
age
-0.003254038 0.0001671193 -19.47135 1.056830e-73
bmi
0.008965966 0.0009445854
9.49196 1.155927e-20
# Phân tích phương sai
> anova(m)
Analysis of Variance Table
Response: bmd
Df Sum Sq Mean Sq F value
Pr(>F)
age
1 3.0339 3.03391 315.842 < 2.2e-16 ***
bmi
1 0.8655 0.86545 90.097 < 2.2e-16 ***
Residuals 1214 11.6614 0.00961


Hiển thị mô hình hồi qui tuyến tính đa biến
Dùng package "visreg"
Hàm chung: visreg(model, xvar, by, gg=TRUE)
library(visreg)
m = lm(bmd ~ age + bmi, data=ob)
# Chia window thành 2 cột

par(mfrow=c(1,2))
visreg(m, xvar="age", gg=T, xlab="Age", ylab="BMD")
visreg(m, xvar="bmi", gg=T, xlab="BMI", ylab="BMD")


1.3

1.3

1.2

1.2

1.1

BMD

BMD

1.1

1.0

0.9

1.0

0.9

0.8


0.8

0.7

0.7

20

40

60
Age

80

15

20

25
BMI

30

35


library(visreg)
m = lm(bmd ~ age + bmi, data=ob)

visreg2d(m, "age", "bmi", plot.type="image")
visreg2d(m, "age", "bmi", plot.type="persp")

bmd
35

1.2
1.2
1.1

25

1.0

15

0.8
20

30

40

50
age

60

70


80

0.9
35
30
25
20
i

0.9

1.0

bm

20

1.1

b md

bmi

30

15

20

60

40 ge
a

80


Đánh giá tầm quan trọng


Câu hỏi quan trọng …
• Trong các biến có liên quan, biến nào quan trọng nhất?
• Tiêu chuẩn nào để đánh giá?
– Hệ số hồi qui trên mỗi SD (độ lệch chuẩn)
– R2 cho từng biến, nhưng tùy vào phân bố

• Phương pháp: "relative importance"


Câu hỏi quan trọng …


Package “relaimpo” trong R
• relaimpo – có thể ước tính R2 cho từng biến
• Phương pháp bootstrap
• lmg = Lindermann, Merenda, Gold (một thước đo mới
và tốt)
• Phương pháp lmg "tách" R2 cho từng biến tiên lượng


summary(lm(pcfat ~ gender + age + bmi + height + weight,

data=ob))

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept)
9.677701 15.611478
0.620
0.5354
genderM
-11.441050
0.343970 -33.262 < 2e-16 ***
age
0.054933
0.007404
7.420 2.2e-13 ***
bmi
0.858035
0.337409
2.543
0.0111 *
height
-0.010991
0.099609 -0.110
0.9122
weight
0.093949
0.136641
0.688
0.4919
--Signif. codes:


0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1


m = lm(pcfat ~ gender + age + bmi + height + weight, data=ob)
library(relaimpo)
calc.relimp(m, type="lmg", rela=T, rank=T)
> calc.relimp(m, type="lmg", rela=T, rank=T)
Response variable: pcfat
Total response variance: 51.5935
Analysis based on 1217 observations
5 Regressors:
gender age bmi height weight
Proportion of variance explained by model: 69.66%
Metrics are normalized to sum to 100% (rela=TRUE).
Relative importance metrics:
lmg
gender 0.50802351
age
0.05465515
bmi
0.19175889
height 0.15217127
weight 0.09339118


Đánh giá mô hình hồi qui tuyến tính
• Sau khi mô hình đáp ứng các giả định (tuyến tính, phương sai bất
biến, độc lập, phân bố chuẩn)
• Đánh giá dựa vào 3 chỉ số chính

– Hệ số xác định
– Residual mean square (phương sai của mô hình)
– "Relative importance" của biến tiên lượng


Ứng dụng mô hình HQTT 2:
hiệu chỉnh


×