Học máy
Chào mừng các bạn đến với Chương 29, một chương cực kỳ thú vị và hiện đại trong lĩnh vực Kinh tế lượng: Học máy (Machine Learning). Đây là một chủ đề lớn và đang phát triển nhanh chóng, mở ra những cánh cửa mới cho việc phân tích dữ liệu kinh tế phức tạp. Với vai trò là Giáo sư của các bạn, tôi cam kết sẽ giúp các bạn tiếp cận những khái niệm nâng cao này một cách dễ hiểu nhất, từng bước một.
Trong chuỗi bài học này, chúng ta sẽ khám phá một tập hợp các phương pháp thuật toán được thiết kế để xử lý các tình huống mà các mô hình kinh tế lượng truyền thống gặp khó khăn, đặc biệt là khi chúng ta có quá nhiều biến số hoặc dữ liệu quá lớn. Chúng ta sẽ đi sâu vào các kỹ thuật thu hẹp hệ số như Hồi quy Ridge và Lasso, các phương pháp dựa trên cây như Rừng ngẫu nhiên, và các phương pháp suy luận hiện đại như Học máy Kép/Đã điều chỉnh (DML).
Mục tiêu không chỉ là hiểu các công cụ này hoạt động như thế nào về mặt toán học, mà còn là cách áp dụng chúng một cách hiệu quả trong Stata để giải quyết các vấn đề kinh tế thực tế. Hãy chuẩn bị tinh thần để khám phá một lĩnh vực mà ranh giới giữa Khoa học Máy tính và Kinh tế lượng đang ngày càng mờ đi. Đây là một kỹ năng vô giá cho sự nghiệp nghiên cứu và phân tích dữ liệu của các bạn sau này!
1. Ba khái niệm cốt lõi: Dữ liệu lớn, Số chiều lớn, và Học máy
Trước khi đi sâu vào các mô hình cụ thể, chúng ta cần làm rõ ba khái niệm thường đi kèm với nhau trong bối cảnh hiện đại của kinh tế lượng:
1.1. Dữ liệu lớn (Big Data)
Dữ liệu lớn thường được sử dụng để mô tả các tập dữ liệu có quy mô hoặc độ phức tạp bất thường so với các ứng dụng truyền thống. Mặc dù định nghĩa về “lớn” thay đổi theo ngành và thời gian, nó thường đề cập đến các tập dữ liệu có hàng triệu quan sát. Trong kinh tế học, dữ liệu lớn có thể phát sinh từ hồ sơ hành chính của chính phủ, dữ liệu điều tra hộ gia đình quy mô lớn, hoặc dữ liệu quét siêu thị. Thách thức chính liên quan đến dữ liệu lớn là việc lưu trữ, truyền tải và tính toán.
1.2. Số chiều lớn (High Dimensionality)
Số chiều lớn mô tả các tập dữ liệu có số lượng biến bất thường lớn. Khái niệm này thường đề cập đến hàng trăm hoặc hàng nghìn biến. Trong tài liệu lý thuyết, “số chiều lớn” được sử dụng đặc biệt trong ngữ cảnh mà $p \gg n$, nghĩa là số lượng biến $p$ lớn hơn nhiều so với số lượng quan sát $n$. Đây là một thách thức lớn đối với các phương pháp hồi quy truyền thống.
1.3. Học máy (Machine Learning)
Học máy là một tập hợp các phương pháp tiếp cận thuật toán cho việc học thống kê. Các phương pháp này chủ yếu tập trung vào dự đoán điểm trong các bối cảnh có cấu trúc chưa biết. Các phương pháp học máy thường cho phép kích thước mẫu lớn, số lượng biến lớn, và hình thức cấu trúc chưa biết. Đối với kinh tế lượng, học máy có thể được coi là một phương pháp “rất phi tham số” (highly nonparametric). Thay vì giả định rằng hàm trung bình có điều kiện $m(X) = E[Y | X]$ có một hình dạng cụ thể (ví dụ: tuyến tính), học máy cho phép $X$ có số chiều cao và không yêu cầu thông tin trước về những biến nào là quan trọng nhất.
Lưu ý cho sinh viên: Tài liệu học máy thường sử dụng các thuật ngữ khác biệt so với kinh tế lượng truyền thống. Ví dụ, họ nói về “huấn luyện” (training) thay vì “ước lượng” (estimation) và “đặc điểm” (features) thay vì “biến hồi quy” (regressors). Trong chuỗi bài này, chúng ta sẽ sử dụng ngôn ngữ kinh tế lượng tiêu chuẩn để các bạn dễ dàng kết nối với kiến thức đã học.
Chúng ta sẽ tập trung vào học có giám sát (supervised learning), tức là xây dựng quy tắc dự đoán cho biến phụ thuộc $Y$ dựa trên các biến độc lập $X$ có số chiều cao, vì đây là một sự mở rộng tự nhiên của hồi quy tuyến tính.
Sau khi đã nắm vững ba khái niệm nền tảng này, chúng ta sẽ chuyển sang thảo luận về bối cảnh mà các phương pháp học máy trở nên cần thiết: Hồi quy đa chiều. Đây là nơi mà các công cụ truyền thống của chúng ta bắt đầu gặp khó khăn.
2. Hồi quy đa chiều (High-Dimensional Regression)
Chúng ta đã quen thuộc với mô hình hồi quy tuyến tính $Y = X’ \beta + e$, trong đó $X$ và $\beta$ là các véc-tơ $p \times 1$. Trong các mô hình hồi quy thông thường, chúng ta thường nghĩ rằng số lượng biến $p$ là nhỏ so với kích thước mẫu $n$.
CÁC GIẢ ĐỊNH VỀ SỐ CHIỀU TRONG KINH TẾ LƯỢNG
- Lý thuyết tham số truyền thống: Giả định $p$ là cố định khi $n \to \infty$. Điều này được diễn giải là $p$ nhỏ hơn nhiều so với $n$.
- Lý thuyết phi tham số: Giả định $p \to \infty$ nhưng với tốc độ chậm hơn nhiều so với $n$. Điều này được diễn giải là $p$ khá lớn nhưng vẫn nhỏ hơn nhiều so với $n$.
- Hồi quy đa chiều: Mô tả ngữ cảnh mà $p$ rất lớn, bao gồm cả trường hợp $p > n$ (số biến lớn hơn số quan sát).
Có thể có vẻ khó tin khi nghĩ về một ứng dụng có nhiều biến hồi quy hơn quan sát ($p > n$). Tuy nhiên, tình huống này xuất hiện trong nhiều bối cảnh kinh tế:
Hồi quy chuỗi (Series Regression): Như chúng ta đã học ở Chương 20, một hàm hồi quy có thể được xấp xỉ bằng một chuỗi vô hạn các biến cơ sở biến đổi. Mặc dù các mô hình thực tế chỉ sử dụng một số lượng biến vừa phải, mô hình trung bình có điều kiện thực sự có thể có vô số biến hồi quy.
Biến nhị phân và tương tác: Nhiều ứng dụng kinh tế liên quan đến một số lượng lớn các biến nhị phân, rời rạc và phân loại. Một mô hình hồi quy bão hòa chuyển đổi tất cả các biến này thành biến nhị phân và bao gồm tất cả các tương tác. Ví dụ, mười biến nhị phân tương tác hoàn toàn tạo ra 1024 biến hồi quy. Hai mươi biến nhị phân tương tác hoàn toàn tạo ra hơn một triệu biến hồi quy!
Dữ liệu lớn hiện đại: Nhiều tập dữ liệu “lớn” hiện đại chứa hàng ngàn biến hồi quy tiềm năng. Rất khó để biết trước biến nào là có liên quan và biến nào là không liên quan.
Khi $p > n$, ước lượng bình phương tối thiểu (Least Squares Estimator) $\hat{\beta}_{ols}$ không được xác định duy nhất vì ma trận $X’X$ có hạng thiếu (deficient rank). Hơn nữa, ngay cả khi $p < n$ nhưng "lớn", ma trận $X'X$ có thể gần như suy biến (near-singular) hoặc có điều kiện kém (ill-conditioned), khiến ước lượng bình phương tối thiểu không ổn định về mặt số học và có phương sai cao. Do đó, chúng ta cần chuyển sang các phương pháp ước lượng khác ngoài bình phương tối thiểu, và đó chính là lúc các công cụ học máy phát huy tác dụng.
Để hiểu rõ hơn về cách các phương pháp học máy giải quyết vấn đề hồi quy đa chiều này, chúng ta sẽ bắt đầu với các công cụ thu hẹp hệ số. Nhưng trước tiên, chúng ta cần ôn lại một khái niệm toán học quan trọng: các chuẩn p-norm. Đây là nền tảng để hiểu cách các phương pháp như Lasso và Ridge hoạt động.
📚 Bài tiếp theo: Tiếp tục bài 1 về Nền tảng Thu hẹp và Hồi quy Ridge
💡 Lưu ý: Hãy đảm bảo đã nắm vững các khái niệm chính về Dữ liệu lớn, Số chiều lớn và Học máy trước khi tiếp tục. Chúng ta sẽ đi sâu vào các công cụ toán học và kinh tế lượng cụ thể ở bài học tiếp theo.
3. Cấu trúc chuỗi bài học: Học máy trong Kinh tế lượng
Chuỗi bài học này được thiết kế để dẫn dắt các bạn từ những khái niệm cơ bản nhất của hồi quy đa chiều đến các phương pháp suy luận tiên tiến nhất trong học máy. Hãy theo dõi từng bước để xây dựng nền tảng kiến thức vững chắc!
- Bài 1: Nền tảng Thu hẹp và Hồi quy RidgeChúng ta sẽ khám phá các chuẩn p-norm và đi sâu vào Hồi quy Ridge, một phương pháp thu hẹp hệ số mạnh mẽ để xử lý đa cộng tuyến và số chiều lớn.
- Bài 2: Lasso, Elastic Net và Lựa chọn biếnHọc về Lasso (Least Absolute Shrinkage and Selection Operator), một công cụ vừa thu hẹp vừa chọn biến, cùng với Elastic Net và Post-Lasso.
- Bài 3: Lý thuyết Tiệm cận Lasso và Tính thưaNghiên cứu các điều kiện lý thuyết phức tạp như REC (Restricted Eigenvalue Condition) và các tốc độ hội tụ dưới giả định cấu trúc thưa.
- Bài 4: Học máy dựa trên Cây và Rừng ngẫu nhiênKhám phá Cây hồi quy (Regression Trees), Bagging và Rừng ngẫu nhiên (Random Forests) như các phương pháp phi tham số linh hoạt.
- Bài 5: Lasso trong Hồi quy Biến công cụ (Lasso IV)Áp dụng Lasso để giải quyết vấn đề biến công cụ yếu hoặc nhiều biến công cụ trong mô hình IV.
- Bài 6: Suy luận Hậu Lựa chọn (DS và PR Lasso)Tìm hiểu cách thực hiện suy luận thống kê chính xác sau khi đã chọn biến bằng Lasso thông qua các phương pháp Double Selection và Post-Regularization.
- Bài 7: Học máy Kép/Đã điều chỉnh (DML)Nghiên cứu phương pháp DML tiên tiến nhất, kết hợp các kỹ thuật học máy với chia mẫu để đạt được suy luận tiệm cận chuẩn.
- Bài 8: Hướng dẫn thực hành tổng hợp với StataThực hành step-by-step các kỹ thuật Lasso, Ridge và DML bằng Stata, sử dụng dữ liệu mô phỏng để củng cố kiến thức đã học.
MỤC TIÊU HỌC TẬP
- Hiểu sâu lý thuyết: Nắm vững các phương pháp thu hẹp (Ridge, Lasso) và các phương pháp phi tham số (Trees, Forests).
- Thực hành thành thạo: Sử dụng Stata một cách tự tin cho hồi quy đa chiều và các mô hình học máy.
- Phân tích thực tế: Có khả năng diễn giải kết quả và đưa ra kết luận có ý nghĩa trong bối cảnh dữ liệu lớn.
- Tư duy phản biện: Nhận biết hạn chế của các phương pháp truyền thống và hiểu được lợi ích của các phương pháp học máy hiện đại.
TÀI LIỆU THAM KHẢO
- Chính: Hansen, B.E. (2022). Econometrics – Chương 29: Machine Learning.
- Bổ sung: Hastie, T., Tibshirani, R., & Friedman, J. (2008). The Elements of Statistical Learning – Tài liệu kinh điển về học máy.
- Thực hành: Belloni, A., Chernozhukov, V., & Hansen, B. E. (2014). High-Dimensional Econometrics and Lasso.
- Stata: Tham khảo gói
lassopack,dsregress, vàxporegresstrong Stata.
4. Phụ lục: Dữ liệu mô phỏng cho chuỗi bài viết
Để đảm bảo tính nhất quán và dễ dàng thực hành, chúng ta sẽ sử dụng một bộ dữ liệu mô phỏng đơn giản nhưng có số chiều lớn, dựa trên ví dụ kinh điển về hồ sơ kinh nghiệm và lương. Bộ dữ liệu này sẽ được sử dụng xuyên suốt các bài học thực hành.
Tên tập dữ liệu: high_dim_wage.dta
Mục tiêu: Ước lượng log lương (log_wage) dựa trên kinh nghiệm (experience) và một tập hợp lớn các biến kiểm soát (X1 đến X100).
Cấu trúc dữ liệu:
- $n = 1000$ quan sát (sinh viên/người lao động).
- $p = 101$ biến độc lập (1 biến kinh nghiệm + 100 biến kiểm soát).
- Chỉ có 5 biến kiểm soát (trong số 100 biến) thực sự có tác động khác 0 (cấu trúc thưa).
Hướng dẫn tạo dữ liệu trong Stata
Các bạn hãy mở Stata và chạy đoạn code dưới đây để tạo bộ dữ liệu mô phỏng. Đây là bước chuẩn bị quan trọng trước khi chúng ta bắt đầu các phân tích phức tạp.
* ==================================================
* TẠO DỮ LIỆU MÔ PHỎNG CHO HỒI QUY ĐA CHIỀU
* ==================================================
clear all
set obs 1000
set seed 29052024 * Thiết lập hạt giống để tái lập kết quả
* 1. Tạo biến kinh nghiệm (experience) và log lương (log_wage)
gen experience = runiform(1, 40)
gen log_wage = 3 + 0.05*experience - 0.001*experience^2 + rnormal(0, 0.5)
* 2. Tạo 100 biến kiểm soát (X1 đến X100)
forvalues i = 1/100 {
gen X`i' = rnormal(0, 1)
}
* 3. Thiết lập cấu trúc thưa (Sparsity): Chỉ 5 biến có tác động thực sự
* Các hệ số thực (beta) là: 0.5, -0.3, 0.2, 0.4, -0.1
replace log_wage = log_wage + 0.5*X1
replace log_wage = log_wage - 0.3*X10
replace log_wage = log_wage + 0.2*X25
replace log_wage = log_wage + 0.4*X50
replace log_wage = log_wage - 0.1*X99
* 4. Lưu dữ liệu
save high_dim_wage.dta, replace
* 5. Kiểm tra dữ liệu
describe
summarize log_wage experience X1 X10 X25 X50 X99
Bây giờ, chúng ta đã có một bộ dữ liệu hoàn hảo để thực hành các kỹ thuật học máy. Hãy chuyển sang bài học đầu tiên, nơi chúng ta sẽ khám phá các công cụ toán học nền tảng và phương pháp Hồi quy Ridge.
📚 Bài tiếp theo: Nền tảng Thu hẹp và Hồi quy Ridge
💡 Lưu ý: Hãy đảm bảo đã nắm vững các khái niệm chính trong bài này trước khi tiếp tục.