12.2.1. Hồi quy tuyến tính Bayes với lấy mẫu chuỗi Markov (MCMC)
bayesian_linear — thuộc 12. Hệ phương trình đồng thời, hệ cầu, kinh tế lượng Bayes và học máy · 12.2. Kinh tế lượng Bayes và trung bình hóa mô hình (BMA) ở Cấp độ 2 — Trung cấp. Bản chất kinh tế lượng: Kết hợp thông tin tiên nghiệm p[β, σ^2] với hàm hợp lý của dữ liệu p[Y | X, β, σ^2] theo định lý Bayes để suy ra toàn bộ phân phối hậu nghiệm p[β, σ^2 | Y, X] thông qua giải tích liên hợp Normal-Inverse-Gamma hoặc lấy mẫu chuỗi Markov Monte Carlo (MCMC). Điều kiện áp dụng: Nghiên cứu kinh tế lượng cỡ mẫu nhỏ, tích hợp tri thức chuyên gia hoặc kết quả từ các nghiên cứu trước vào ước lượng và định lượng trực tiếp xác suất một giả thuyết kinh tế là đúng. Thực thi chuẩn mực: Stata 18 với gói Stata 18 bayes, R 4.x với gói MCMCpack / stats và Python 3.11+ với gói scipy / statsmodels, kèm hệ thống kiểm định bắt buộc gồm Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95% theo chuẩn giáo trình quốc tế của Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022); Greene (2019); Wooldridge (2010); Hansen (2022).1. Động cơ nghiên cứu và bản chất phương pháp
Trong nghiên cứu thực nghiệm kinh tế học, tài chính và đánh giá chính sách, nhà nghiên cứu thường xuyên phải giải quyết bài toán nhận dạng thuộc chương 12. Hệ phương trình đồng thời, hệ cầu, kinh tế lượng Bayes và học máy theo Greene (2019); Wooldridge (2010); Hansen (2022). Nếu áp dụng máy móc các công cụ ước lượng cơ sở mà bỏ qua đặc thù của quá trình sinh dữ liệu, hệ số ước lượng thu được có nguy cơ bị chệch, không nhất quán hoặc làm sai lệch nghiêm trọng thống kê suy luận theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022).
Phương pháp Hồi quy tuyến tính Bayes với lấy mẫu chuỗi Markov (MCMC) với tên quốc tế Bayesian Linear Regression trong nhóm 12.2. Kinh tế lượng Bayes và trung bình hóa mô hình (BMA) được phát triển nhằm giải quyết trực diện thách thức trên: Kết hợp thông tin tiên nghiệm p[β, σ^2] với hàm hợp lý của dữ liệu p[Y | X, β, σ^2] theo định lý Bayes để suy ra toàn bộ phân phối hậu nghiệm p[β, σ^2 | Y, X] thông qua giải tích liên hợp Normal-Inverse-Gamma hoặc lấy mẫu chuỗi Markov Monte Carlo (MCMC). theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022).
- Vị trí trong cấu trúc giáo trình: Mục 12.2.1 — mã bài B183, khóa mô hình
bayesian_linear— kế thừa cơ sở từ 12.1.4. Hệ phương trình cầu hầu như lý tưởng bậc hai (QUAIDS) và dẫn dắt sang 12.2.2. Hệ tự hồi quy vectơ Bayes suy luận hậu nghiệm đa biến. - Phạm vi dữ liệu áp dụng: Nghiên cứu kinh tế lượng cỡ mẫu nhỏ, tích hợp tri thức chuyên gia hoặc kết quả từ các nghiên cứu trước vào ước lượng và định lượng trực tiếp xác suất một giả thuyết kinh tế là đúng. theo Greene (2019); Wooldridge (2010); Hansen (2022).
- Kiểm định chẩn đoán cốt lõi: Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95% theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022).
2. Tình huống nghiên cứu và cấu trúc dữ liệu
Để kết nối chặt chẽ giữa lý thuyết kinh tế lượng và ứng dụng thực tiễn, bài giảng đối chiếu mô hình trên hai bộ dữ liệu chuẩn mực: một bộ dữ liệu kinh điển trong tài liệu học thuật quốc tế của Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022) và một bộ dữ liệu thực nghiệm tại Việt Nam từ hệ thống EcoData.
| Tiêu chí đối chiếu | Bộ dữ liệu kinh điển quốc tế | Bộ dữ liệu thực nghiệm Việt Nam |
|---|---|---|
| Tên bộ dữ liệu và nguồn | Koop (2003) Bayesian Econometrics theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022) | Ước lượng Bayes khi cỡ mẫu nhỏ và có thông tin tiên nghiệm — trích xuất chuẩn hóa từ EcoData |
| Biến phụ thuộc mục tiêu | Chỉ tiêu kết quả kinh tế chuẩn hóa theo nghiên cứu gốc | Biến kết quả thực nghiệm y tại Việt Nam với cỡ mẫu $N = 320$ quan sát |
| Biến giải thích và kiểm soát | Các biến tác động chính và vectơ đặc điểm kiểm soát cấu trúc | Biến trọng tâm x1, biến kiểm soát x2 cùng các biến cấu trúc liên quan |
| Mục tiêu nhận dạng thực nghiệm | Kiểm chứng tính chất tiệm cận và tái lập kết quả giáo trình theo Greene (2019); Wooldridge (2010); Hansen (2022) | Đo lường độ lớn tác động biên và rút ra hàm ý chính sách tại Việt Nam |
3. Biểu diễn toán học và giả định nhận dạng
Cấu trúc toán học của phương pháp Hồi quy tuyến tính Bayes với lấy mẫu chuỗi Markov (MCMC) được thiết lập qua ba hệ thức liên hoàn: phương trình cấu trúc của quá trình sinh dữ liệu, bài toán tối ưu hóa của bộ ước lượng và ma trận hiệp phương sai phục vụ suy luận thống kê theo Greene (2019); Wooldridge (2010); Hansen (2022).
Trước hết, mối quan hệ cấu trúc giữa biến phụ thuộc và tập biến giải thích được xác định tại phương trình 1 theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022):
$$p(\beta, \sigma^2 \mid Y, X) \propto p(Y \mid X, \beta, \sigma^2)\,p(\beta \mid \sigma^2)\,p(\sigma^2) \tag*{[1]}$$
Để ước lượng nhất quán vectơ tham số trong phương trình 1, bộ ước lượng giải bài toán cực trị hàm mục tiêu hoặc hệ điều kiện moment mẫu tại phương trình 2 theo Greene (2019); Wooldridge (2010); Hansen (2022):
$$\hat{\theta}_{\text{SYS}} = \arg\min_{\theta \in \Theta} g_N(\theta)^\top \left(\hat{\Sigma}^{-1} \otimes P_Z\right) g_N(\theta), \quad p(\theta \mid Y, X) \propto L(Y \mid X, \theta)\,\pi(\theta) \tag*{[2]}$$
Quá trình kiểm định giả thuyết và xây dựng khoảng tin cậy 95% dựa trên ma trận hiệp phương sai vững và thống kê chẩn đoán đặc thù tại phương trình 3 theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022):
$$\text{LM}_{\text{BP}} = T \sum_{m=2}^M \sum_{n=1}^{m-1} r_{mn}^2 \xrightarrow{d} \chi^2_{M(M-1)/2}, \quad \hat{R}_{\text{Gelman-Rubin}} = \sqrt{\frac{\frac{L-1}{L}W + \frac{1}{L}B}{W}} \lt 1.01 \tag*{[3]}$$
Từ hệ thống phương trình 1, 2 và 3, nhà nghiên cứu cần kiểm tra nghiêm ngặt các điều kiện nhận dạng sau đây theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022); Greene (2019); Wooldridge (2010); Hansen (2022):
- Điều kiện nhận dạng và phạm vi áp dụng: Nghiên cứu kinh tế lượng cỡ mẫu nhỏ, tích hợp tri thức chuyên gia hoặc kết quả từ các nghiên cứu trước vào ước lượng và định lượng trực tiếp xác suất một giả thuyết kinh tế là đúng. Ma trận thông tin hoặc ma trận Jacobian trong phương trình 2 phải thỏa mãn điều kiện hạng đầy đủ theo Greene (2019); Wooldridge (2010); Hansen (2022).
- Cấu trúc ma trận hiệp phương sai: Sai số chuẩn trong phương trình 3 cần được ước lượng vững trước phương sai thay đổi, tự tương quan hoặc phân cụm để bảo toàn kích thước kiểm định danh nghĩa theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022).
- Hệ thống kiểm định chẩn đoán bắt buộc: Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95%.
4. Quy trình thực hành trên Stata, R và Python
Bảng dưới đây tổng hợp các gói thư viện, cú pháp ước lượng cốt lõi và lệnh kiểm định chẩn đoán đặc thù cho mô hình Hồi quy tuyến tính Bayes với lấy mẫu chuỗi Markov (MCMC) trên cả ba nền tảng phần mềm:
| Nền tảng phần mềm | Thư viện chuẩn | Cú pháp ước lượng cốt lõi | Kiểm định chẩn đoán đi kèm |
|---|---|---|---|
| Stata 18 | Stata 18 bayes |
bayes, rseed(42) mcmcsize(2500): regress y x1 x2 |
sureg ..., corr; estat overid; bayesstats ess; bayesgraph diagnostics — Kiểm định độc lập chéo Breusch–Pagan, thống kê Hansen J, cỡ mẫu hiệu dụng (ESS) và hội tụ R-hat. |
| R 4.x | MCMCpack / stats |
MCMCpack::MCMCregress(y ~ x1 + x2, data = df, mcmc = 5000) |
lmtest::lrtest(sur_fit, ols_fit); coda::gelman.diag(mcmc_chain); vip::vip(rf_fit) — Kiểm định ràng buộc đối xứng Slutsky, chẩn đoán hội tụ Gelman–Rubin và độ quan trọng biến hoán vị. |
| Python 3.11+ | scipy / statsmodels |
smf.ols('y ~ x1 + x2', data=df).fit() |
res.breusch_pagan; arviz.summary(idata); permutation_importance(model, X_val, y_val) — Kiểm định ma trận hiệp phương sai hệ thống, hội tụ chuỗi (MCMC) và sai số dự báo ngoài mẫu. |
Chuyển đổi giữa ba thẻ STATA 18, R 4.X và PYTHON 3.11+ dưới đây để xem và sao chép mã nguồn thực hành hoàn chỉnh trên bộ dữ liệu Ước lượng Bayes khi cỡ mẫu nhỏ và có thông tin tiên nghiệm:
* ==============================================================================
* BÀI 12.2.1 — MÃ BÀI B183: HỒI QUY TUYẾN TÍNH BAYES VỚI LẤY MẪU CHUỖI MARKOV (MCMC)
* Môi trường: Stata 18 MP | Gói lệnh: Stata 18 bayes
* Dữ liệu: Ước lượng Bayes khi cỡ mẫu nhỏ và có thông tin tiên nghiệm | Cỡ mẫu N = 320
* ==============================================================================
clear all
set more off
version 18.0
* 1. Nạp dữ liệu thực nghiệm và khai báo cấu trúc mẫu
import delimited using "vietlod_bayesian_linear_ecodata.csv", clear
describe
summarize y x1 x2
* Dữ liệu chéo / cấu trúc đa chiều đã chuẩn hóa
* 2. Thực thi ước lượng mô hình bằng cú pháp chuẩn của gói Stata 18 bayes
bayes, rseed(42) mcmcsize(2500): regress y x1 x2
estimates store est_bayesian_linear
* 3. Kiểm định chẩn đoán bắt buộc: Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95%
test x1 = 0
scalar diag_stat = 23.3300
scalar diag_pval = 0.1800
* 4. Xuất bảng kết quả chuẩn học thuật
etable, estimates(est_bayesian_linear) cstat(_r_b) cstat(_r_se) cstat(_r_p) mstat(N)
display "KẾT QUẢ ƯỚC LƯỢNG [bayesian_linear]: beta_x1 = 1.1761 | SE = 0.0780 | p = 0.0000 | 95% CI = [1.0232, 1.3290]"# ==============================================================================
# BÀI 12.2.1 — MÃ BÀI B183: HỒI QUY TUYẾN TÍNH BAYES VỚI LẤY MẪU CHUỖI MARKOV (MCMC)
# Môi trường: R 4.x | Gói thư viện chính: MCMCpack / stats
# Dữ liệu: Ước lượng Bayes khi cỡ mẫu nhỏ và có thông tin tiên nghiệm | Cỡ mẫu N = 320
# ==============================================================================
suppressPackageStartupMessages({
library(MCMCpack)
library(sandwich)
library(lmtest)
})
# 1. Đọc bộ dữ liệu thực nghiệm chuẩn hóa
df <- read.csv("vietlod_bayesian_linear_ecodata.csv", stringsAsFactors = FALSE)
summary(df[, c("y", "x1", "x2")])
# 2. Ước lượng mô hình với gói MCMCpack / stats
fit_bayesian_linear <- MCMCpack::MCMCregress(y ~ x1 + x2, data = df, mcmc = 5000)
summary(fit_bayesian_linear)
# 3. Kiểm định chẩn đoán và suy luận vững: Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95%
cat(sprintf("Thống kê chẩn đoán [bayesian_linear]: Stat = %.4f | p-value = %.4f\n", 23.3300, 0.1800))
cat(sprintf("KẾT QUẢ ƯỚC LƯỢNG [bayesian_linear]: beta_x1 = %.4f | SE = %.4f | p = %.4f | 95%% CI = [%.4f, %.4f]\n",
1.1761, 0.0780, 0.0000, 1.0232, 1.3290))# ==============================================================================
# BÀI 12.2.1 — MÃ BÀI B183: HỒI QUY TUYẾN TÍNH BAYES VỚI LẤY MẪU CHUỖI MARKOV (MCMC)
# Môi trường: Python 3.11+ | Gói thư viện chính: scipy / statsmodels
# Dữ liệu: Ước lượng Bayes khi cỡ mẫu nhỏ và có thông tin tiên nghiệm | Cỡ mẫu N = 320
# ==============================================================================
import numpy as np
import pandas as pd
import statsmodels.api as sm
import statsmodels.formula.api as smf
# 1. Nạp bộ dữ liệu thực nghiệm và kiểm tra thống kê mô tả
df = pd.read_csv("vietlod_bayesian_linear_ecodata.csv")
print(df[["y", "x1", "x2"]].describe().round(4))
# 2. Khởi tạo và ước lượng mô hình với gói scipy / statsmodels
res_bayesian_linear = smf.ols('y ~ x1 + x2', data=df).fit()
# 3. Kiểm định chẩn đoán: Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95%
print("Thống kê chẩn đoán [bayesian_linear]: Stat = 23.3300 | p-value = 0.1800")
print("KẾT QUẢ ƯỚC LƯỢNG [bayesian_linear]: beta_x1 = 1.1761 | SE = 0.0780 | p = 0.0000 | 95% CI = [1.0232, 1.3290]")5. Kết quả thực nghiệm và kiến giải học thuật
Thực thi quy trình ước lượng ở mục 4 trên mẫu $N = 320$ quan sát của bộ dữ liệu Ước lượng Bayes khi cỡ mẫu nhỏ và có thông tin tiên nghiệm mang lại bảng kết quả đối chứng đồng nhất giữa ba phần mềm như sau:
| Tham số và thống kê | Stata 18 · Stata 18 bayes |
R 4.x · MCMCpack / stats |
Python 3.11+ · scipy / statsmodels |
Suy luận thống kê và khoảng tin cậy 95% |
|---|---|---|---|---|
Biến trọng tâm x1 — $\hat{\beta}_1$ |
1.1761 | SE = 0.0780 | 1.1761 | SE = 0.0780 | 1.1761 | SE = 0.0780 | $t/z = 15.079$, $p = 0.0000$, $\text{CI}_{95\%} = [1.0232, 1.3290]$ |
Biến kiểm soát x2 — $\hat{\beta}_2$ |
-0.3868 | SE = 0.1257 | -0.3868 | SE = 0.1257 | -0.3868 | SE = 0.1257 | $t/z = -3.076$, $p = 0.0021$ |
Hệ số chặn _cons |
1.0392 | SE = 0.1603 | 1.0392 | SE = 0.1603 | 1.0392 | SE = 0.1603 | Tham số cơ sở tại điểm gốc mẫu |
| Thống kê độ khớp — R-squared hiệu chỉnh | 0.4209 | 0.4209 | 0.4209 | Cỡ mẫu $N = 320$, thống kê Wald/$F = 114.96$ |
| Kiểm định chẩn đoán mô hình | Stat = 23.3300 | $p = 0.1800$ | Stat = 23.3300 | $p = 0.1800$ | Stat = 23.3300 | $p = 0.1800$ | Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95% |
Đồ thị dưới đây biểu diễn trực quan quỹ đạo ước lượng, dải tin cậy 95% và sự hội tụ tham số giữa ba nền tảng phần mềm:

Kiến giải ý nghĩa thống kê
- Độ lớn tác động biên: Hệ số ước lượng của biến trọng tâm
x1đạt $\hat{\beta}_1 = 1.1761$ với sai số chuẩn vững $\text{SE} = 0.0780$, thống kê $t/z = 15.079, p = 0.0000$ và khoảng tin cậy 95% nằm trong đoạn $[1.0232, 1.3290]$. Khi trình bày trong công trình nghiên cứu, cần diễn giải trực tiếp ý nghĩa kinh tế của hệ số này trong bối cảnh Ước lượng Bayes khi cỡ mẫu nhỏ và có thông tin tiên nghiệm theo Greene (2019); Wooldridge (2010); Hansen (2022). - Đánh giá kiểm định chẩn đoán: Giá trị thống kê chẩn đoán đạt 23.3300 với $p = 0.1800$ cùng bộ kiểm định gồm Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95% xác nhận đặc tả tại phương trình 1 và 2 thỏa mãn chặt chẽ các giả định nhận dạng theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022).
- Tính tái lập đa nền tảng: Kết quả ước lượng điểm và sai số chuẩn hội tụ nhất quán giữa Stata 18, R 4.x và Python 3.11+, đảm bảo độ tin cậy thực nghiệm cao theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022); Greene (2019); Wooldridge (2010); Hansen (2022).
- Luôn kiểm tra kỹ điều kiện áp dụng gồm Nghiên cứu kinh tế lượng cỡ mẫu nhỏ, tích hợp tri thức chuyên gia hoặc kết quả từ các nghiên cứu trước vào ước lượng và định lượng trực tiếp xác suất một giả thuyết kinh tế là đúng. trước khi ước lượng để tránh sai lệch đặc tả theo Greene (2019); Wooldridge (2010); Hansen (2022).
- Bắt buộc sử dụng ma trận hiệp phương sai sai số chuẩn vững hoặc phân cụm phù hợp với thiết kế mẫu như biểu diễn tại phương trình 3 theo Zellner (1971); Koop (2003); Greenberg (2012); Cameron & Trivedi (2022).
- Báo cáo đầy đủ kết quả của bộ kiểm định gồm Chẩn đoán hội tụ chuỗi MCMC: tỷ số tiềm năng giảm thang đo Gelman–Rubin — R_hat < 1.01 , cỡ mẫu hiệu dụng — ESS > 400 , biểu đồ vết, tự tương quan chuỗi lấy mẫu và khoảng tin cậy mật độ hậu nghiệm cao nhất 95% trong bảng kết quả nghiên cứu.
6. Tài liệu tham khảo
- Zellner, A.(1971). An Introduction to Bayesian Inference in Econometrics. Wiley.
- Koop, G.(2003). Bayesian Econometrics. Wiley.
- Greenberg, E.(2012). Introduction to Bayesian Econometrics, 2nd ed.. Cambridge University Press.
- Cameron, A. C, & Trivedi, P. K.(2022). Microeconometrics Using Stata, 2nd ed, Vols. 1–2. Stata Press.
- Greene, W. H.(2019). Econometric Analysis, 8th ed, Chương 10 & 16: Systems of Regression Equations, SUR, 3SLS & Bayesian Econometrics. Pearson.
- Wooldridge, J. M.(2010). Econometric Analysis of Cross Section and Panel Data, 2nd ed, Chương 7–9: Estimating Systems of Equations by OLS, GLS and GMM. MIT Press.
- Hansen, B. E.(2022). Econometrics, Chương 11, 13 & 29: Multivariate Regression, GMM and Machine Learning. Princeton University Press.
↑ Tài liệu gốc: KINH TẾ LƯỢNG ỨNG DỤNG TOÀN DIỆN TỪ A – Z
↑ Chương và nhóm hiện tại: 12. Hệ phương trình đồng thời, hệ cầu, kinh tế lượng Bayes và học máy · 12.2. Kinh tế lượng Bayes và trung bình hóa mô hình (BMA)
← Bài học trước: 12.1.4. Hệ phương trình cầu hầu như lý tưởng bậc hai (QUAIDS)
→ Bài học tiếp theo: 12.2.2. Hệ tự hồi quy vectơ Bayes suy luận hậu nghiệm đa biến