Bài 53 và bài 54 các bạn đã hiểu rõ và thực hành thuần thục mô hình hồi quy đơn biến. Trong bài học này Tui trình bày về hồi quy đa biến – Multiple Linear Regression. Hầu hết các dự báo với bài toán hồi quy thường rơi vào mô hình đa biến. Ví dụ bài 54 ta tính giá nhà dựa trên mô hình đơn biến, nhưng trong thực tế giá nhà nó lệ thuộc vào nhiều yếu tố như Số phòng, số tầng, mặt tiền… Đó chính là dấu hiệu của đa biến.
Hay dự báo giá sản phẩm lệ thuộc vào màu sắc, chất lượng… đây cũng là dấu hiệu của đa biến.
- Multiple Linear Regression: Mô hình hồi quy tuyến tính đa biến có nhiều hơn một biến độc lập, biểu diễn mối quan hệ tuyến tính giữa các biến độc lập và biến phụ thuộc.
- Về cơ bản không có sự khác biệt giữa hồi quy tuyến tính ‘giản đơn’ và ‘đa biến’. Cả hai đều làm việc tuân theo nguyên tắc OLS –Ordinary Least Square và thuật toán để có được đường hồi quy tối ưu nhất cũng tương tự. Trong trường hợp sau, phương trình hồi quy sẽ có một hình dạng như sau:
Công thức chung:
Y=B0+B1*X1+B2*X2+B3*X3…..+Bn*Xn
- Bi: Các hệ số khác nhau
- Xi: Các biến độc lập khác nhau
Bài học này chúng ta dùng Microsoft Excel để lập trình các dữ kiện phục cho cho mô hình hồi quy đa biến.
Giả sử ta có tập dữ liệu như dưới đây:
Color | Quality | Price |
7 | 5 | 65 |
3 | 7 | 38 |
5 | 8 | 51 |
8 | 1 | 38 |
9 | 3 | 55 |
5 | 4 | 43 |
4 | 0 | 25 |
2 | 6 | 33 |
8 | 7 | 71 |
6 | 4 | 51 |
9 | 2 | 49 |
Quan sát tập dữ liệu trên gồm có 3 biến Color, Quality, Price.
- Biến độc lập: Color, Quality
- Biến phụ thuộc: Price
Dùng hồi quy tuyến tính để tính Price predicted, thực hiện các công thức trong Microsoft Excel.
Ta Cần tính được 4 đại lượng dưới đây:
- (X’X)
- (X’X)_inv
- (X’Y)
- B_hat
Sau đó lắp ráp công thức:
Y=B0+B1*X1+B2*X2+B3*X3…..+Bn*Xn
Ta bắt đầu thực hiện:
Bước 1: Chèn cột x0 có giá trị như hình dưới đây (mặc định là 1)
Bạn quan sát, dữ liệu gốc gồm có 3 cột trong Excel: Color, Quality, Price
Sau đó ta chèn x0 là cột đầu tiền trong ma trận dữ liệu mới
Bước 2: Tính (X’X)
Nhập công thức, lựa chọn các cột như hình và nhấn Enter
Lưu ý tích ma trận (X’X) sử dụng công thức MMULT trả về tích ma trận của 2 mảng, và TRANSPOSE chuyển vị ma trận.
Lý thuyết hàm TRANSPOSE:
Lý thuyết hàm MMULT:
Bạn quan sát thật kỹ địa chỉ ô Excel, nó tùy thuộc vào dữ liệu nhập mà địa chỉ sẽ khác nhau.
Nếu bạn nhập cấu trúc dữ liệu như Tui hướng dẫn, thì công thức không đổi.
Sau khi nhập công thức xong, thì nhấn phím Enter, ta có kết quả thường xuất hiện là #VALUE! (chú ý đây không phải lỗi)
Sau đó ta thực hiện tuần tự 3 bước như hình:
(01) #VALUE! Sẽ xuất hiện
(02) Bôi đen ma trận 3×3 vì có 3 biến độc lập bao gồm x0 (K, L, M), tổng cộng 9 ô
(03) Di chuyển trỏ chuột tới ô địa chỉ của Excel: Nhấn CTRL+SHIFT+ENTER
Sau khi nhấn CTRL+SHIFT+ENTER, ta có kết quả tích 2 ma trận (X’X):
Bước 3: Tính (X’X)_inv
Nhập công thức, lựa chọn các cột như hình và nhấn Enter
Ta dùng công thứ MINVERSE để tính (X’X)_inv. Hàm MINVERSE trả về ma trận nghịch đảo của một ma trận được lưu trữ trong một mảng.
Lý thuyết công thức MINVERSE:
Sau khi nhập công thức MINVERSE và nhấn Enter, ta có kết quả:
Ta tiếp tục thực hiện các thao tác để Excel tính toán toàn bộ các ô dữ liệu cho ma trận nghịch đảo (X’X)_inv, thự hiện theo đúng thứ tự các bước sau:
(01) Giá trị sẽ xuất hiện
(02) Bôi đen ma trận 3×3 của inv (cột K, L, M), bôi đủ 9 Cell cho (X’X)_inv
(03) Di chuyển trỏ chuột tới ô địa chỉ của Excel: Nhấn CTRL+SHIFT+ENTER
Các bạn thực hiện đúng các bước theo hình trên,
Sau khi nhấn CTRL+SHIFT+ENTER, ta có kết quả:
Bước 4: Tính (X’Y)
Nhập công thức, lựa chọn các cột như hình và nhấn Enter
Lưu ý tích ma trận (X’Y) sử dụng công thức MMULT trả về tích ma trận của 2 mảng, và TRANSPOSE chuyển vị ma trận.
Lý thuyết hàm TRANSPOSE:
Lý thuyết hàm MMULT:
Sau khi nhập công thức và nhấn Enter, ta có kết quả:
Ta thấy Excel ra giá trị #VALUE!, lưu ý đây không phải lỗi.
Ta bôi đen 3 Cell của (X’Y) và thực hiện theo đúng thứ tự 3 bước sau:
(01) Giá trị sẽ xuất hiện
(02) Bôi đen cột K, bôi đủ 3 cell cho (X’Y)
(03) Di chuyển trỏ chuột tới ô địa chỉ của Excel: Nhấn CTRL+SHIFT+ENTER
Sau khi nhấn CTRL+SHIFT+ENTER, ta có kết quả:
Bước 5: Tính B_hat
Nhập công thức, lựa chọn các cột như hình và nhấn Enter
Lưu ý B_hat tính tích 2 ma trận (X’X)_inv và (X’Y), ta dùng công thức MMULT như trên, cùng với kéo các ma trận đúng địa chỉ ô Cell.
Sau khi nhận công thức hoàn tất, nhấn phím Enter, ta có kết quả:
Ta tiếp tục thực hiện đúng thứ tự các bước sau:
(01) Giá trị sẽ xuất hiện
(02) Bôi đen cột N, bôi đủ 3 cell cho B_hat
(03) Di chuyển trỏ chuột tới ô địa chỉ của Excel: Nhấn CTRL+SHIFT+ENTER
Sau khi nhấn CTRL+SHIFT+ENTER, ta có kết quả:
Bước 6: Lắp ráp công thức để tính:
Y=B0+B1*X1+B2*X2+B3*X3…..+Bn*Xn
Bổ sung thêm cột Predicted Price cho file excel, và lắp ráp công thức như dưới đây:
Bạn quan sát kỹ cách ráp công thức B_hat để nhân vào các biến độc lập cho cột Predicted Price.
- N9 là B0
- N10 là B1
- N11 là B2
predicted price=N9+N10*F2+N11*G2
Các dấu $ là địa chỉ tuyệt đối vì B0, B1, B2 là cố định.
Sau khi nhấn Enter, bạn kéo công thức xuống hết các dòng dữ liệu để xem Predicted Price:
Bước 7: Kiểm tra sai số khi Prediction, sử dụng Square Error, MSE, RMSE:
Cột Squared Error Tui mới bổ sung ở trên, đơn giản chỉ là lấy giá trị thực – giá trị prediction. Nó phục vụ để tính MSE và RMSE
MSE tính theo công thức: Trung bình cộng của Squared Error
RMSE tính theo công thức: Là căn bậc 2 của MSE
Như vậy tới đây Tui đã hoàn tất việc hướng dẫn phương trình hồi quy tuyến tính với mô hình Đa Biến. các công thức thực hiện trên Microsoft Excel
các bạn cần làm lại nhiều lần để hiểu rõ lý thuyết vì sao sử dụng các ma trận, các thao tác trên ma trận ở trên để có thể vận dụng thực hiện hồi quy đa biến vào dự báo giá nhà.
Bạn có thể tải file Excel chi tiết Tui thực hiện ở đây, trong Excel có link và youtube hướng dẫn tham khảo:
https://www.mediafire.com/file/un0avja9x86mex7/Multiple-Linear-Regression.xlsx/file
Bài tập danh cho các bạn: Hãy vận dụng các kiến thức đã được học để thực hiện bài Hồi quy đa biến với tập dữ liệu dưới đây:
x1 | x2 | x3 | y |
0.76 | 7.01 | 0.94 | 33.52 |
4.25 | 14.45 | 0.84 | 42.89 |
5.71 | 42.28 | 0.83 | 12.04 |
3.58 | 11.13 | 0.24 | 6.91 |
0.45 | 3 | 0.48 | 6.57 |
0.13 | 63.46 | 0.18 | 2.07 |
1 | 48.25 | 0.35 | 4.18 |
0.76 | 24.8 | 0.34 | 58.45 |
7.56 | 13.85 | 0.55 | 29.64 |
0.76 | 50.46 | 0.43 | 48.87 |
0.42 | 3.1 | 0.94 | 33.75 |
2.93 | 11.21 | 0.53 | 0.04 |
5.64 | 18.11 | 0.09 | 16.75 |
3.93 | 21.56 | 0.43 | 4.63 |
0.5 | 11.2 | 0.79 | 61.69 |
0.2 | 7.62 | 0.33 | 24.55 |
1.09 | 22.54 | 0.94 | 32.9 |
1.95 | 44.38 | 0.9 | 9.23 |
3.81 | 5.5 | 0.61 | 11.4 |
5.41 | 11.73 | 0.29 | 27.64 |
– x1, x2,x3 là biến độc lập
– y là biến phụ thuộc
-Đánh giá chất lượng mô hình bằng MSE và RMSE
Bài học tiếp theo Tui hướng dẫn kết nối MySQL Server và thực hiện hồi quy tuyến tính trên tập dữ liệu retails. Các bạn chú ý theo dõi
Chúc các bạn thành công