Code R và kết quả khi vẽ biểu đồ boxplot thể hiện phân phối của biến price theo từng phân loại của biến floors...14 Hình 11.. Code R và kết quả khi vẽ biểu đồ boxplot thể hiện phân phối
CƠ SỞ LÝ THUYẾT
Giới thiệu mô hình hồi quy tuyến tính bội
Mô hình hồi quy tuyến tính bội có dạng tổng quát như sau:
: hệ số tự do (hệ số chặn)
: hệ số hồi quy riêng, đo lường tác động riêng của phần biến lên Y với điều kiện các biến số khác trong mô hình không đổi Cụ thể hơn, nếu các biến khác trong mô hình không đổi, giá trị kỳ vọng của Y sẽ tăng đơn vị nếu tăng 1 đơn vị sai số ngẫu nhiên.
Như vậy, “Hồi quy tuyến tính” là một phương pháp để dự đoán giá trị biến phụ thuộc (Y) dựa trên giá trị của biến độc lập (X) Nó có thể được sử dụng cho các trường hợp chúng ta muốn dự đoán một số lượng liên tục Ví dụ: dự đoán thời gian người dùng dừng lại một trang nào đó hoặc số người đã truy cập vào một website nào đó,… Bằng dữ liệu thu thập được, ta đi ước lượng hàm hồi quy của tổng thể, đó là ước lượng các tham số của tổng thể: ,,…,.
Ước lượng các tham số của mô hình hồi quy tuyến tính bội
Do không biết tổng thế, nên chúng ta không biết giá trị trung bình tổng thể của biến phụ thuộc là đúng ở mức độ nào Do vậy, chúng ta phải dựa vào những dữ liệu mẫu để ước lượng.
Trên một mẫu có n cá thể, gọi là hồi quy mẫu.
Với một cá thể mẫu sinh ra gọi là phần dư SRF.
Ta có hàm hồi quy mẫu tổng quát được viết dưới dạng như sau:
Ký hiệu: là ước lượng của Chúng ta trông đợi là ước lượng không chênh lệch nhiều của , hơn nữa phải là một ước lượng hiệu quả.
1.2.2 Phương pháp bình phương cực tiểu (OSL – Ordinary Least Squares)
Phương pháp bình phương cực tiểu được đưa ra bởi nhà Toán học Đức Carl Friedrich Gauss Tư tưởng của phương pháp này là cực tiểu tổng bình phương của các phần dư Các giả thiết của phương pháp bình phương cực tiểu cho mô hình hồi quy tuyến tính bội như sau: a Hàm hồi quy là tuyến tính theo các tham số Điều này có nghĩa là quá trình hồi quy trên thực tế được miêu tả bởi mối quan hệ dưới dạng hoặc mối quan hệ thực tế có thể được viết lại ví dụ như dưới dạng lấy loga cả hai vế. b E() = 0: Kỳ vọng của các yếu tối ngẫu nhiên bằng 0
Trung bình tổng thể sai số là bằng 0 Điều này có nghĩa là có một số giá trị sai số mang dấu dương và một số sai số mang dấu âm Do hàm xem như là đường trung bình nên có thể giả định rằng các sai số ngẫu nhiên trên sẽ bị loại trừ nhau, ở mức trung bình, trong tổng thể c Cov(,) = 0: Không có sự tương quan giữa các
Không có sự tương quan giữa các quan sát của yếu tố sai số Nếu ta xem xét các chuỗi số liệu thời gian (dữ liệu được thu thập từ một nguồn trong nhiều khoảng thời gian khác nhau), yếu tố sai số trong khoảng thời gian này không có bất kỳ một tương quan nào với yếu tố sai số trong khoảng thời gian trước đó. d Var() = :Phương sai bằng nhau và thuần nhất với mọi
Tất cả giá trị được phân phối giống nhau với cùng phương sai sao cho:
Var() e có phân phối chuẩn Điều này rất quan trọng khi phát sinh khoảng tin cậy và thực hiện kiểm định giả thuyết trong những phạm vi là mẫu nhỏ Nhưng phạm vi mẫu lớn hơn, điều này trở nên không mấy quan trọng. f Giữa các không có quan hệ tuyến tính
Nếu có quan hệ tuyến tính thì người ta nói rằng có hiện tượng đa cộng tuyến.
1.2.3 Độ phù hợp của mô hình Để có thể biết mô hình giải thích được như thế nào hay bao nhiêu % sự biến thiên của dữ liệu, người ta sử dụng
Ta có thể viết SST = SSE + SSR Ý nghĩa
- SST là tổng bình phương của tất cả các sai lệch giữa các giá trị quan sát Yi và giá trị trung bình.
- SSE là tổng bình phương của tất cả các sai lệch giữa các giá trị của biến phụ thuộc Y nhận được từ hàm hồi quy mẫu và giá trị trung bình của chúng Phần này đo độ chính xác của hàm hồi quy
- SSR là tổng bình phương của tất cả các sai lệch giữa các giá trị quan sát Y và các giá trị nhận được từ hàm hồi quy.
SST được chia thành 2 phần: 1 phần do SSE và 1 phần do SSR gây ra.
Ta có: 0≤R2≤1, R2 cao nghĩa là mô hình ước lượng được giải thích được một mức độ cao sự biến thiên của dữ liệu.
- Nếu R2=1, nghĩa là đường hồi quy giải thích 100% thay đổi của y.
- Nếu R2=0, nghĩa là mô hình không đưa ra thông tin nào về sự thay đổi của biến phụ thuộc y.
Trong mô hình hồi quy 2 biến thì R2 đo độ thích hợp của hàm hồi quy Nó chính là tỷ lệ của toàn bộ sự biến đổi của biến phụ thuộc y do biến giải thích x gây ra.
Trong mô hình hồi quy đa biến tỷ lệ của toàn bộ sự khác biệt của biến y do tất cả các biến x2 và x3 gây ra được gọi là hệ số xác định bội, ký hiệu là R2:
1.2.4 Kiểm định giả thiết đối với
Kiểm định ý nghĩa thống kê của các hệ số hồi quy có ý nghĩa hay không: kiểm định rằng biến giải thích có thực sự ảnh hường đến biến phụ thuộc hay không Nói cách khác là hệ số hồi quy có ý nghĩa thống kê hay không.
Có thể đưa ra giả thiết nào đó đối với , chẳng hạn
Loại giả thuyết Giả thuyết H0 Giả thuyết đối H1 Miền bác bỏ
Ta có thể sử dụng giá trị P-value: P-value < mức ý nghĩa thì bác bỏ giả thuyết H0 Đặt giả thuyết kiểm định :
1.2.5 Kiểm định ý nghĩa của mô hình
Trong mô hình hồi quy đa biến, giả thuyết “không” cho rằng mô hình không có ý nghĩa được hiểu là tất cả các hệ số hồi quy riêng đều bằng 0. Ứng dụng kiểm định Wald (thường được gọi là kiểm định F) được tiến hành cụ thể như sau:
Giả thuyết đối là H1: “có ít nhất một trong những giá trị khác 0”.
Trước tiên hồi quy Y theo một số hàng không đổi và , sau đó tính tổng bình phương sai số SSRR, SSRU Phân phối F là tỉ số của hai biến ngẫu nhiên phân phối khi bình phương độc lập Điều này cho ta trị thống kê:
Vì H0: , nhận thấy rằng trị thống kê kiểm định đối với giả thuyết này sẽ là:
Bước 3: Tra số liệu trong bảng F tương ứng với bậc tự do (k-1) cho tử số và (n-k) cho mẫu số, và với mức ý nghĩa α cho trước.
Bước 4: Bác bỏ giả thuyết H0 ở mức ý nghĩa α nếu Đối với phương pháp giá trị P-value, tính giá trị p=P(F>|H0) và bác bỏ H0 nếu p đủ điều kiện để phân tích tiếp ANOVA
Giả thiết H0: “trung bình bằng nhau” p-value ≤ 0.05 : bác bỏ H0 => đủ điều kiện để khẳng định có sự khác biệt giữa các nhóm đối với biến phụ thuộc p-value ≥ 0.05 : chấp nhận H0 => chưa đủ điều kiện để khẳng định có sự khác biệt giữa các nhóm đối với biến phụ thuộc.
Khi có sự khác biệt thì có thể phân tích sâu hơn để tìm ra sự khác biệt như thế nào giữa các nhóm quan sát bằng các kiểm định Tukey, LSD, Bonferroni, Duncan,…
PHẦN CHUNG
Hoạt động
1.1 Đọc dữ liệu (Import Data): gia_nha.csv Đọc dữ liệu “gia_nha.csv”.
1.2 Làm sạch dữ liệu (Data Cleaning)
(a) _ Tạo một dữ liệu mới chỉ bao gồm các biến chính mà ta quan tâm, lưu với tên là new_DF
Hình 1 Code R và kết quả khi đọc dữ liệu và xem 3 dòng đầu tiên của dữ liệu
Hình 2 Code R và kết quả khi tạo một dữ liệu mới chỉ bao gồm các biến chính
(b) _ Kiểm tra dữ liệu khuyết trong new_DF
Hình 3 Code R và kết quả khi kiểm tra dữ liệu khuyết trong new_DF Nhận xét: Dựa vào kết quả thu được khi kiểm tra dữ liệu khuyết trong new_DF, ta thấy có 20 dữ liệu bị khuyết tại biến “price” Vậy nên ta cần xử lý các dữ liệu khuyết đó. Phương pháp xử lí được nhóm đề xuất là xóa toàn bộ dòng dữ liệu nào mà phần quan sát của biến ”price” bị khuyết Ưu điểm là đơn giản và nhanh, nhưng nếu lượng dữ liệu bị khuyết chiếm tỉ lệ lớn thì việc xóa hết đi sẽ khiến phần dữ liệu bị giảm độ tin cậy. _ Xóa toàn bộ dòng dữ liệu nào mà phần quan sát của biến price bị khuyết
_ Kiểm tra lại xem còn dữ liệu khuyết hay không
Nhận xét: Ta thấy sau khi xử lý, không còn dữ liệu nào bị khuyết nữa.
Hình 4 Code R khi xóa toàn bộ dòng dữ liệu nào mà phần quan sát của biến price bị khuyết
Hình 5 Code R và kết quả sau khi kiểm tra lại
1.3 Làm rõ dữ liệu (Data Visualization)
(a) _ Tạo một data mới (gồm các biến như new_DF đã làm sạch dữ liệu) và chuyển đổi các biến price, sqft_above, sqft_living, sqft_living15 lần lượt thành log(price), log(sqft_above), log(sqft_living), log(sqft_living15).
(b) _ Tính các giá trị thống kê mô tả (trung bình, độ lệch chuẩn, min, max, trung vị) cho các biến price, sqft_above, sqft_living, sqft_living15 đã chuyển sang dạng log(x). Xuất KQ dưới dạng bảng
Hình 7 Code R và kết quả khi tính các biến price, sqft_above, sqft_living, sqft_living15 (c) _ Đối với các biến phân loại, lập bảng thống kê số lượng cho từng chủng loại Hình 6 Code R và kết quả khi chuyển đổi các biến sang dạng log(x)
Hình 8 Code R và kết quả khi lập bảng thống kê số lượng cho các biến phân loại
(d) _ Vẽ biểu đồ histogram thể hiện phân phối của biến price
Hình 9 Code R và kết quả khi vẽ biểu đồ histogram thể hiện phân phối của biến log(price)
Nhận xét: Dựa trên biểu đồ histogram của biến price, ta nhận thấy phân phối của biến có dạng phân phối chuẩn Dựa trên biểu đồ ta thấy phân phối của log.price có dạng phân phối chuẩn Phân bối tần số cao nhất của log.price tập trung chủ yếu từ 12.5 đến13; phân bố tần số thấp nhất từ 15.5 đến 16
(e) _ Vẽ biểu đồ boxplot thể hiện phân phối của biến price theo từng phân loại của biến floors
_ Vẽ biểu đồ boxplot thể hiện phân phối của biến price theo từng phân loại của biến condition
Hình 10 Code R và kết quả khi vẽ biểu đồ boxplot thể hiện phân phối của biến price theo từng phân loại của biến floors
Hình 11 Code R và kết quả khi vẽ biểu đồ boxplot thể hiện phân phối của biến log(price+1) theo từng phân loại của biến condition
(f) _ Dùng lệnh pairs() vẽ các phân phối của biến price theo biến sqft_above, sqft_living và sqft_living15
Ta thu được biểu đồ như sau:
1.4 Xây dựng các mô hình hồi quy tuyến tính (Fitting linear regression models)
Chúng ta muốn khám phá rằng có những nhân tố nào và tác động như thế nào đến giá nhà ở quận King.
(a) _ Xét mô hình hồi quy tuyến tính bao gồm biến price là một biến phụ thuộc, và tất cả các biến còn lại đều là biến độc lập Hãy dùng lệnh lm() để thực thi mô hình hồi quy tuyến tính bội
Vì 2 biến floors và condition là 2 biến định tính nên ta chuyển chúng sang dạng factor. (b) _ Dựa vào kết quả của mô hình hồi quy tuyến tính trên, những biến nào bạn sẽ loại khỏi mô hình tương ứng với mức tin cậy 5%?
Thực hiện lệnh summary(M1), ta thu được bảng sau:
Hình 12 Biểu đồ biểu thị mối quan hệ giữa các biến thu được bằng lệnh pairs()
Nhận xét: Giá trị Pr(>|t|) hay p-value là ngưỡng mà một biến hồi quy có bác bỏ giả thuyết H0 hay không Xét trong bảng giá trị trên, giá trị p-value của biến condition2 là lớn hơn 5% nên chấp nhận giả thuyết H0 do đó biến này không có ý nghĩa trong mô hình Dựa trên lập luận này, ta loại bỏ biến condition2 ở mức ý nghĩa 5%.
Vì trong biến condition bao gồm biến condition2 không có ý nghĩa và các biến condition3,4,5 lại có ý nghĩa thống kê nên ta thử loại bỏ biến condition ra khỏi mô hình xem hiệu quả thay đổi thế nào.
(c) _ Xét 2 mô hình tuyến tính cùng bao gồm biến price là biến phụ thuộc nhưng: + mô hình M1 chứa tất cả các biến còn lại là biến độc lập
+ mô hình M2 là loại bỏ biến condition từ mô hình M1
Hãy dùng lệnh anova() để đề xuất mô hình hồi quy hợp lý hơn
Sau khi lệnh anova(M1,M2) được thực hiện, ta thu được bảng sau:
Dựa trên kết quả ta thấy p-value < mức ý nghĩa 5% do đó ta bác bỏ giả thiết H0, vậy 2 mô hình có hiệu quả khác nhau và 1 trong 2 mô hình sẽ hiệu quả hơn, so sánh R hiệu 2 chỉnh của 2 mô hình ta thấy R ở mô hình 1 > mô hình 2 nên ta chọn mô hình 1 là mô 2 hình phù hợp hơn.
(d) _ Chọn mô hình hợp lý hơn từ câu (c) hãy suy luận sự tác động của các biến lên giá nhà
Hình 13 So sánh hai mô hình hồi quy
Thực hiện lệnh summary(M1), ta thu được bảng sau:
Từ đó, ta thấy diện tích trung bình của 15 ngôi nhà gần nhất trong khu dân cư và diện tích khuôn viên nhà có tác động lớn và tích cực đến sự thay đổi của giá nhà, trong khi diện tích ngôi nhà lại có xu hướng làm giảm giá nhà xuống mức thấp hơn Số tầng của ngôi nhà có ảnh hướng đến giá nhà, nhưng nhìn chung không mang tính chất quyết định.
(e) _ Từ mô hình hồi quy mà bạn chọn ở câu (c) hãy dùng lệnh plot() để vẽ đồ thị biểu thị sai số hồi quy (residuals) và giá trị dự báo (fitted values) Nêu ý nghĩa và nhận xét đồ thị
Thực hiện lệnh plot(M1) ta thu được đồ thị như hình:
Nhận xét: Đồ thị (Residuals vs Fitted) vẽ các giá trị sai số hồi quy tương ứng với các giá trị dự báo, dùng để kiểm tra 3 giả định: tính tuyến tính của dữ liệu (giả định 1); các sai số có kì vọng bằng 0 (giả định 2) và phương sai các sai số là hằng số (giả định 3) Nhìn đồ thị ta thấy đường màu đỏ là đường cong, không phải đường nằm ngang nên Y không có quan hệ tuyến tính với các biến độc lập Đường màu đỏ chưa nằm sát đường Y=0 nên không thỏa mãn giả định các sai số có kì vọng bằng 0 Các điểm sai số hầu như tập trung ở phần chính giữa đồ thị, không phân bố ngẫu nhiên nên giả định phương sai các sai số là hằng số cũng không thỏa mãn.
Chiều dài khoảng tin cậy cho kết quả dự báo ở thuộc tính x1 nhỏ hơn x2 do đó ở thuộc tính x1 sẽ cho kết quả dự báo chính xác hơn.
Hoạt động
2.1 Đọc file dữ liệu, thực hiện thống kê mô tả và kiểm định:
2.1.1 Đọc dữ liệu vào R và tính toán các giá trị thống kê mô tả cho biến weight theo từng loại thức ăn (feed) tương ứng
Ta sử dụng hàm read.csv() để đọc dữ liệu: chicken_feed 0.05 (mức ý nghĩa) nên ta chưa bác bỏ được giả thiết H0. Vậy biến weight ở loại thức ăn casein tuân theo phân phối chuẩn. Đối với horsebean: horsebean = subset(chicken_feed, feed == "horsebean") qqnorm(horsebean$weight) qqline(horsebean$weight)
Biểu đồ QQ-plot cho ta thấy những giá trị quan sát đa phần nằm trên đường thẳng kì vọng của phân phối chuẩn do đó biến weight đối với horsebean tuân theo phân bố chuẩn.
Ngoài ra, ta có thể dùng hàm shapiro.test để kiểm tra: shapiro.test(horsebean$weight)
Shapiro-Wilk normality test data: horsebean$weight
Giả thiết H0: Trọng lượng trung bình gà con tuân theo phân phối chuẩn
Giả thiết H1: Trọng lượng trung bình gà con không tuân theo phân phối chuẩn
Vì Pr(>F) = 0.5698 > 0.05 (mức ý nghĩa) nên ta chưa bác bỏ được giả thiết H0 Vậy biến weight ở loại thức ăn horsebean tuân theo phân bố chuẩn. Đối với linseed: linseed = subset(chicken_feed, feed == "linseed") qqnorm(linseed$weight) qqline(linseed$weight)
PHẦN RIÊNG
ĐỀ BÀI
Dữ liệu được cho trong file "auto-mpg.csv" là bộ dữ liệu tiêu thụ nhiên liệu của xe trong thành phố Dữ liệu được lấy từ UCI Machine Learning Repository (https://archive.ics.uci.edu/ml/datasets/Auto+MPG) Bộ dữ liệu gồm 398 quan trắc trên 9 biến sau:
• mpg: (continuous) mức tiêu thụ nhiên liệu tính theo dặm trên galon (miles/gallon)
• cylinders: (multi-valued discrete) số xy lanh
• displacement: (continuous) kích thước động cơ
• horsepower: (continuous) công suất động cơ.
• acceleration: (continuous) gia tốc xe
• model year: (multi-valued discrete) năm sản xuất model (2 số cuối)
• origin: (multi-valued discrete) nơi sản xuất: 1 - North American, 2 - Europe, 3 - Asia.
• car name: (multi-valued discrete) tên xe
1 Nhập và "làm sạch" dữ liệu (lưu ý, biến "horsepower" có 6 quan trắc thiếu dữ liệu; xét xem có dữ liệu ngoại lai không?), thực hiện các thống kê mô tả (Chú ý các cột của file "auto-mpg.csv" được phân tách bởi dấu ";", khi đọc file dữ liệu dùng lệnh
"read.csv" cần thêm sep = ";")
2 Chia bộ dữ liệu làm 2 phần: mẫu huấn luyện (training dataset) gồm 200 quan trắc đặt tên "auto_mpg1" và mẫu kiểm tra (validation dataset) gồm các quan trắc còn lại trong bộ dữ liệu ban đầu đã "làm sạch", đặt tên "auto_mpg2"
3 Chọn mô hình tốt nhất giải thích cho biến phụ thuộc "mpg" thông qua việc chọn lựa các biến độc lập phụ hợp trong 8 biến độc lập còn lại từ mẫu huấn luyện "
"auto_mpg1" Cần trình bày từng bước phương pháp chọn, tiêu chuẩn chọn mô hình, lý do chọn phương pháp đó
4 Kiểm tra các giả định (giả thiết) của mô hình
5 Nêu ý nghĩa của mô hình đã chọn
6 Dự báo (Prediction): Sử dụng mẫu kiểm tra (validation dataset) "auto_mpg2" và dựa vào mô hình tốt nhất được chọn trên đưa số liệu dự báo cho biến phụ thuộc "mpg" Gọi kết quả dự báo này là biến "predict_mpg" 7 So sánh kết quả dự báo "predict_mpg" với giá trị thực tế của "mpg" Rút ra nhận xét?
1.2 ANOVA (Phân tích phương sai 1 yếu tố):
Trình bày mô hình phân tích phương sai một yếu tố để so sánh mức tiêu thụ nhiên liệu ở các nhóm xe có xuất xứ khác nhau Chúng ta cần kiểm tra các giả thuyết của các giả thuyết giả định dươc dùng để tiến hanh phân tích Anova sau đây:
1 Mức tiêu thụ nhiên liệu ở các nhóm xuất xứ khác nhau tuân theo phân phối chuẩn
2 Mức tiêu thụ nhiên liệu ở các nhóm xuất xứ khác nhau có phương sai bằng nhau
3 Mức tiêu thụ nhiên liệu của từng nhóm xuất xứ được lấy ngẫu nhiên và độc lập.
Thực hiện
2.1.1 Nhập và làm sạch dữ liệu, thực hiện các thống kê mô tả Đọc tệp tin
Hình 14 Code R và kết quả khi đọc tệp tin và xem 10 dòng đầu tiên của tệp tin
2.1.2 Kiểm tra dữ liệu khuyết.
Nhận xét: Dựa trên kết quả, ta có thể nhận thấy biến horsepower chứa 6 dữ liệu khuyết (ở dòng 33; 127; 331; 337; 355; 375), và chiếm tỷ lệ 1,5% (< 10%) so với tổng quan sát của tệp tin, nên ta sẽ xử lý bằng cách xoá các quan sát chứa dữ liệu khuyết của biến horsepower.
Hình 15 Code R và kết quả khi kiểm tra dữ liệu khuyết
Hình 16 Code R và kết quả khi xoá cácuan sát chứ dữ liệu khuyết của biến horsepower
Kiểm tra lại tệp tin khi đã xử lý dữ liệu khuyết
Hình 10 Code R và kết quả kiểm tra lại dữ liệu khuyết sau khi đã xử lý Nhận xét: Sau khi xử lý, tệp tin không còn dữ liệu khuyết Kiểm tra và chuyển biến horsepower về dạng numeric.
Hình 17 Code R và kết quả kiểm tra outliers trong biến horsepower
Nhận xét: Dựa trên kết quả, ta nhận thấy biến horsepower có 10 outliers ở các quan sát thứ 7, 8, 9, 14, 26, 28, 67, 94, 95, 116 Ta có nhiều phương pháp xử lý outliers, tuy nhiên vì lượng quan sát là outliers tương đối nhỏ (chỉ chiếm khoảng 3% dữ liệu), nên ta sẽ xoá các quan sát này ra khỏi tệp tin
Hình 18 Code R và kết quả tìm outliers và xoá các quan sát này ra khỏi tệp tin
2.1.4 Tính các giá trị thống kê mô tả (trung bình, độ lệch chuẩn, min, max, trung vị) cho các biến mpg, displacement, horsepower, weight, acceleration Xuất kết quả dưới dạng bảng
Hình 19 Code R và kết quả khi tính thống kê mô tả cho các biến mpg, displacement, horsepower, weight, acceleration
2.1.5 Vẽ biểu đồ histogram thể hiện phân phối cho biến mgp.
Hình 20 Code R và kết quả khi vẽ biểu đồ histogram thể hiện phân phối cho biến mgp
2.1.6 Vẽ biểu đồ boxplot thể hiện phân phối của mgp theo phân loại của biến cylinders.
Hình 21 Code R và kết quả khi vẽ biểu đồ boxplot thể hiện phân phối của mgp theo phân loại của biến cylinders
2.1.7 Vẽ biểu đồ boxplot thể hiện phân phối của mgp theo phân loại của biến origin
Hình 22 Code R và kết quả khi vẽ biểu đồ boxplot thể hiện phân phối của mgp theo phân loại của biến origin
2.1.8 Vẽ biểu đồ phân tán thể hiện phân phối của mgp theo biến displacement
Hình 23 Code R và kết quả khi vẽ biểu đồ phân tán thể hiện phân phối của Y1, Y2 theo biến displacement
2.1.9 Vẽ biểu đồ phân tán thể hiện phân phối của mgp theo biến horsepower
Hình 24 Code R và kết quả khi vẽ biểu đồ phân tán thể hiện phân phối của mgp theo biến horsepower
2.1.10 Vẽ biểu đồ phân tán thể hiện phân phối của mgp theo biến weight
Hình 25 Code R và kết quả khi vẽ biểu đồ phân tán thể hiện phân phối của mgp theo biến weight
2.1.11 Vẽ biểu đồ phân tán thể hiện phân phối của mgp theo biến acceleration
Hình 26 Code R và kết quả khi vẽ biểu đồ phân tán thể hiện phân phối của mgp theo biến acceleration
Nhận xét: Dựa trên các đồ thị phân tán, ta thấy mgp có mối quan hệ tuyến tính với các biến displacement, horsepower, weight (nghịch biến), tuy nhiên lại không quan hệ tuyến tính với biến acceleration Ta có thể đoán displacement, horsepower, weight là các nhân tố ảnh hưởng đến mức tiêu thụ nhiên liệu, còn acceleration thì không ảnh hưởng đến mức tiêu thụ nhiên liệu.
2.1.12 Chia bộ dữ liệu làm 2 phần: mẫu huấn luyện (training dataset) và mẫu kiểm tra (validation dataset) Chia bộ dữ liệu làm 2 phần: mẫu huấn luyện (training dataset) gồm 200 quan trắc đặt tên auto_mpg1 và mẫu kiểm tra (validation dataset) gồm các quan trắc còn lại trong bộ dữ liệu ban đầu đã “làm sạch”, đặt tên auto_mpg2
Hình : code R và kết quả khi chia bộ dữ liệu làm 2 phần
2.1.13 Chọn mô hình tốt nhất giải thích cho biến phụ thuộc "mpg" Để đánh giá sự ảnh hưởng của các nhân tố lên biến phụ thuộc "mpg", ta xem xét các biến trong dữ liệu Ở đây ta thấy các biến độc lập trong dữ liệu là các biến định định lượng, một số biến phân loại Và ngoài ra ở đây ta có nhiều nhân tố độc lập có thể xem xét để đưa vào mô hình Do đó phương pháp phân tích ta chọn ở đây là xây dựng mô hình hồi quy tuyến tính đa biến Ở mô hình hồi quy tuyến tính, ta sẽ không đưa biến car_name vào mô hình hồi quy vì car_name là biến phân loại với rất nhiều giá trị, khi đưa vào mô hình hồi quy sẽ khiến mô hình phức tạp hơn Ngoài ra, ta có thể nhận thấy tên xe có thể không ảnh hưởng đến mức tiêu thụ nhiên liệu của xe Do đó, ta xây dựng mô hình hồi quy model_1 gồm biến phụ thuộc mpg và các biến độc lập là các biến (cylinders; displacement; horsepower; weight; acceleration; model_year; origin) từ mẫu huấn luyện auto_mpg1 Mô hình được biểu diễn như sau: mpg = β0 +β1 ×cylinders+β2 ×displacement+β3 ×horsepower +β4 ×weigh+β5 ×acceleration+ β6 × model_year + β7 × origin.
Ta thực hiện ước lượng các hệ số βi , i = 0, , 7
Hình 27 Code R và kết quả khi xây dựng mô hình hồi quy tuyến tính model_1 Nhận xét: Từ kết quả phân tích, ta thu được: βb0 = −1.599e + 01; βb1 = −2.424e − 01; βb2 = 1.667e − 02; βb3 = −3.404e − 02; βb4 = −6.182e − 03 βb5 = 2.550e − 02; βb6 7.475e − 01; βb7 = 1.402e + 00 Như vậy, đường thẳng hồi quy ước lượng cho bởi phương trình sau: mpg=−1.599e+01−2.424e−01×cylinders+1.667e−02×displacement−3.404e−02×horse power− 6.182e − 03 × weigh + 2.550e − 02 × acceleration + 7.475e − 01 × model_year + 1.402e + 00 × origin Ta thấy rằng p-value tương ứng với thống kê F bé hơn 2.2e − 16, có ý nghĩa rất cao Điều này chỉ ra rằng, ít nhất một biến dự báo trong mô hình có ý nghĩa giải thích rất cao cho biến mgp Ta cũng nhận thấy rằng p-value >
0 của bài toán kiểm định giả thuyết H0: “Hệ số ứng với cylinders, acceleration không có ý nghĩa thống kê” cho thấy rằng các biến cylinders, acceleration này không có ý nghĩa đối với mô hình hồi quy ta vừa xây dựng, do đó ta có thể loại bỏ biến cylinders, acceleration ra khỏi mô hình hồi quy Ta xây dựng mô hình model_2 bỏ đi biến acceleration từ model_1
Hình : code R và kết quả khi xây dựng mô hình hồi quy tuyến tính model_2
Hình 28 Code R và kết quả khi xây dựng mô hình hồi quy tuyến tính model_2
Ta xây dựng mô hình model_3 bỏ đi biến cylinders từ model_2
Hình 29 Code R và kết quả khi xây dựng mô hình hồi quy tuyến tính model_3
So sánh hai model_1 và model_2 Giả thuyết H0: Hai mô hình model_1 và model_2 hiệu quả giống nhau Đối thuyết H1: Hai mô hình model_1 và model_2 hiệu quả khác nhau.
Nhận xét: Ta nhận thấy p-value = 0.81 của bài toán lớn hơn mức ý nghĩa α = 0.05, cho ta kết luận hiệu quả của hai mô hình cho thấy model_1 và model_2 hiệu quả giống nhau" So sánh hai model_2 và model_3 Giả thuyết H0: Hai mô hình model_2 và model_3 hiệu quả giống nhau Đối thuyết H1: Hai mô hình model_2 và model_3 hiệu quả khác nhau
Hình 30 Code R và kết quả khi so sánh hai model_2 và model_3
Nhận xét: Ta nhận thấy p-value = 0.4927 của bài toán lớn hơn mức ý nghĩa α = 0.05, cho ta kết luận hiệu quả của hai mô hình cho thấy model_2 và model_3 hiệu quả giống nhau" Do đó ta có thể thấy 3 mô hình model_1, model_2, model_3 hiệu quả như nhau. Mặt khác ta dựa vào hệ số R2 hiệu chỉnh = 0.8153 ở model_3 là cao nhất Do đó ta sẽ chọn mô hình hợp nhất là model_3 1.3.4 Kiểm tra các giả định (giả thiết) của mô hình Nhắc lại các giả định của mô hình hồi quy: Yi = β0 + β1.X1 + βi Xi + i , i 1, n + Tính tuyến tính của dữ liệu: mối quan hệ giữa biến dự báo X và biến phụ thuộc Y được giả sử là tuyến tính + Sai số có phân phối chuẩn + Phương sai của các sai số là hằng số: i N(0, σ2 ) + Các sai số 1, , n thì độc lập với nhau Ta thực hiện∼ phân tích thặng dư để kiểm tra các giả định của mô hình.
Hình 31 Code R và kết quả khi vẽ đồ thị phân tích thặng dư để kiểm tra các giả định của mô hình Đồ thị thứ 1 (Residuals vs Fitted) vẽ các giá trị dự báo với các giá trị thặng dư (sai số) tương ứng, dùng để kiểm tra tính tuyến tính của dữ liệu (giả định 1) và tính đồng nhất của các phương sai sai số (giả định 3) Nếu như giả định về tính tuyến tính của dữ liệuKHÔNG thỏa, ta sẽ quan sát thấy rằng các điểm thặng dư (residuals) trên đồ thị sẽ phân bố theo một hình mẫu (pattern) đặc trưng nào đó (ví dụ parabol) Nếu đường màu đỏ trên đồ thị phân tán là đường thẳng nằm ngang mà không phải là đường cong, thì giả định tính tuyến tính của dữ liệu được thỏa mãn Để kiểm tra giả định thứ 3 (phương sai đồng nhất) thì các điểm thặng dự phải phân tán đều nhau xung quanh đường thẳng y = 0 Đồ thị thứ 2 (Normal Q-Q) cho phép kiểm tra giả định về phân phối chuẩn của các sai số Nếu các điểm thặng dư nằm trên cùng 1 đường thẳng thì điều kiện về phân phối chuẩn được thỏa Đồ thị thứ 3 (Scale - Location) vẽ căn bậc hai của các giá trị thặng dư được chuẩn hóa với các giá trị dự báo, được dùng để kiểm tra giả định thứ 3 (phương sai của các sai số là hằng số) Nếu như đường màu đỏ trên đồ thị là đường thẳng nằm ngang và các điểm thặng dư phân tán đều xung quanh đường thẳng này thì giả định thứ 3 được thỏa Nếu như đường màu đỏ có độ dốc (hoặc cong) hoặc các điểm thặng dư phân tán không đều xung quanh đường thẳng này, thì giả định thứ 3 bị vi phạm. Đồ thị thứ 4 (Residuals vs Leverage) cho phép xác định những điểm có ảnh hưởng cao (influential observations), nếu chúng có hiện diện trong bộ dữ liệu Những điểm có ảnh hưởng cao này có thể là các điểm outliers, là những điểm có thể gây nhiều ảnh hưởng nhất khi phân tích dữ liệu Nếu như ta quan sát thấy một đường thẳng màu đỏ đứt nét (Cook’s distance), và có một số điểm vượt qua đường thẳng khoảng cách này, nghĩa là các điểm đó là các điểm có ảnh hưởng cao Nếu như ta chỉ quan sát thấy đường thẳng khoảng cách Cook ở góc của đồ thị và không có điểm nào vượt qua nó, nghĩa không có điểm nào thực sự có ảnh hưởng cao
Nhận xét: + Đồ thị Normal Q-Q cho thấy giả định sai số có phân phối chuẩn chưa thực sự thoả mãn + Đồ thị thứ 1 (Residuals vs Fitted) cho thấy giả định về tính tuyến tính của dữ liệu hơi vi phạm + Đồ thị thứ 1 và thứ 3 (Scale - Location) cho ta thấy rằng giả định về tính đồng nhất của phương sai cũng hơi bị vi phạm Tuy nhiên, ta cũng thấy này sự vi phạm này tương đối nhỏ và có thể chấp nhận được + Đồ thị thứ 4 chỉ ra có các quan trắc thứ 323, 327 và 388 có thể là các điểm có ảnh hưởng cao trong bộ dữ liệu Tuy nhiên ta cũng quan sát thấy rằng các điểm này chưa vượt qua đường thẳng khoảng cách Cook (đường thẳng đứt nét màu đỏ Cook’s distance) Do vậy, các điểm này chưa thực sự là các điểm có ảnh hưởng cao trong bộ dữ liệu Do đó ta không cần phải loại bỏ chúng khi phân tích
Nêu ý nghĩa của mô hình đã chọn: Mô hình hồi quy tuyến tính về sự ảnh hưởng các nhân tố (displacement, horsepower, weight, model_year, origin) lên mgp: mpg −1.597e + 01 + 1.229e − 02 × displacement − 3.680e − 02 × horsepower − 6.076e − 03 × weigh + 7.461e − 01 × model_year + 1.379e + 00 × origin Hệ số xác định hiệu chỉnh (Adjusted R-squared): R2 hiệu chỉnh = 0.8153 nghĩa là 81.53% sự biến thiên trong mức tiêu thụ nhiên liệu mpg được giải thích bởi các biến độc lập Để xét ảnh hưởng cụ thể của từng biến độc lập, ta xét các hệ số hồi quy (βi) và p-value tương ứng.