TÓM TẮT CUỐN SÁCH: 2019_Generalized Linear Models With Examples in R_9781441901170.pdf
Mục tiêu:
được trích dẫn của cuốn sách “Generalized Linear Models With Examples in R”, tập trung vào các khái niệm về mô hình
thống kê, hồi quy tuyến tính và các mô hình tuyến tính tổng quát (GLM),, cũng như các phương pháp chẩn đoán và ước
lượng liên quan. Cuốn sách sử dụng ngôn ngữ R để minh họa các khái niệm và thực hiện phân tích.
Notebooklm.google.com; để hiểu chi tiết hơn về nội dung của tài liệu cần đọc hiểu và có cách nhìn sâu sắc và chi
tiết hơn về nội dung của tài liệu.
Các nội dung chính của từng chương:
Chương này giới thiệu khái niệm cơ bản về mô hình thống kê như một cách để mô tả cả các đặc điểm ngẫu nhiên và có hệ
thống của dữ liệu. Nó nhấn mạnh tầm quan trọng của việc sử dụng các mô hình để phân tích dữ liệu (“Data analysis: The
need for models?” - Reese, 1986).
Dữ liệu được trình bày thông qua các ví dụ (như dữ liệu FEV – dung tích phổi):
Age: tuổi (số)
FEV: dung tích thở ra (lít)
Ht: chiều cao (cm)
Gender: giới tính (F/M)
Smoke: hút thuốc (0/1)
Biến số được chia thành:
Biến liên tục(quantitative) → covariates.
Biến phân loại(qualitative) → factors.
Plotting là bước đầu để hiểu dữ liệu, phát hiện xu hướng và mối quan hệ.
Vẽ biểu đồ (scatter plot, boxplot) cho nhìn xu hướng, phát hiện quan hệ phi tuyến, thay đổi phương sai, điểm ngoại
lai (outlier) và tương tác giữa các biến. Ví dụ: FEV tăng theo tuổi và chiều cao, phân bố khác biệt nhẹ theo giới
tính, người hút thuốc thường lớn tuổi hơn nên có FEV trung bình cao hơn dù quan hệ nhân quả chưa được khẳng định.
Để đưa biến phân loại vào mô hình, ta mã hóa thành biến giả (dummy variable):
Với 𝑘 mức ⇒ cần 𝑘−1 biến giả.
Ví dụ: Gender (F/M) → biến 𝑥 Gender=1 nếu Male, 0 nếu Female (mức tham chiếu).
Có thể đổi mức tham chiếu bằng relevel() trong R.
Hệ thống: mô tả mối quan hệ giữa kỳ vọng các biến giải thích:
\[ \mu_i = \mathbb{E}[y_i] = f(\beta_0 + \beta_1 x_{1i} + \cdots + \beta_p x_{pi}) \] Thành phần ngẫu nhiên – mô tả sai số: Var(𝑦𝑖) quy định dạng phân phối (normal, binomial, …).
Hệ số hồi quy \(\beta_j\): thay đổi trung bình của \(y\) khi \(x_j\) tăng 1 đơn vị (giữ các biến khác cố định).
Một ý tưởng quan trọng được trích dẫn từ một nguồn khác (không được cung cấp đầy đủ trong trích đoạn) là các mô hình
là sự đơn giản hóa thực tế và do đó không bao giờ hoàn toàn chính xác, nhưng chúng có thể là công cụ có giá trị để
hiểu dữ liệu.
Mục đích của một mô hình ảnh hưởng đến cách nó được phát triển. Các mục đích có thể bao gồm mô tả, dự đoán và hiểu
mối quan hệ giữa các biến.
Mô tả/diễn giải – hiểu cơ chế, ước lượng ảnh hưởng.
Dự đoán – tối ưu độ chính xác trên dữ liệu mới.
Nguyên lý Occam: mô hình phải cân bằng giữa độ khớp và đơn giản.
Mô hình quá đơn giản → bỏ lỡ tín hiệu.
Mô hình quá phức tạp → overfitting.
Có sự đánh đổi giữa độ chính xác của một mô hình (khả năng phù hợp chặt chẽ với dữ liệu) và sự đơn giản của nó (số
lượng tham số). Việc lựa chọn mô hình thường liên quan đến việc cân bằng hai yếu tố này.
Cuốn sách phân biệt giữa thực nghiệm (nơi có thể suy luận nguyên nhân - kết quả) và nghiên cứu quan sát (nơi chỉ có thể thiết lập mối liên hệ)
Kết quả mô hình chỉ áp dụng cho quần thể mà dữ liệu được thu thập từ đó.
Không nên ngoại suy kết quả ngoài phạm vi giá trị đã quan sát.
Mô hình hồi quy tuyến tính là loại phổ biến nhất trong tất cả các mô hình hồi quy.
Đây là một trường hợp đặc biệt của mô hình tuyến tính tổng quát (GLM).
Chương này giới thiệu:
Khái niệm và ký hiệu của mô hình.
Ước lượng bình phương tối thiểu (OLS).
Hồi quy đơn và hồi quy bội.
Diễn giải hệ số hồi quy.
Suy luận thống kê.
Phân tích phương sai (ANOVA).
So sánh mô hình lồng và không lồng.
Chọn mô hình tốt nhất
Định nghĩa:Mô hình hồi quy tuyến tính mô tả mối quan hệ giữa biến phản hồi \(y\) và các biến giải thích \(x_1, x_2, \ldots, x_p\) thông qua một biểu thức tuyến tính, cùng với một giả định về phân phối và phương sai của phần dư.
Biểu diễn mô hình:
\[ y_i = \beta_0 + \beta_1 x_{1i} + \beta_2 x_{2i} + \cdots + \beta_p x_{pi} + \varepsilon_i \]
Với giả định:
\(\varepsilon_i \sim \mathcal{N}(0, \sigma^2)\)
Các phần dư \(\varepsilon_i\) là độc lập và có phương sai không đổi.
Cấu trúc mô hình:
Mô hình gồm 2 thành phần:
1. Ngẫu nhiên (random component):
Phương sai của \(y_i\) được giả định là:
\[ \text{Var}[y_i] = \frac{\sigma^2}{w_i} \]
Trong đó:
\(\sigma^2\) là phương sai chưa biết.
\(w_i\) là trọng số (prior weight), thường là \(1\) với mọi \(i\) trong mô hình hồi quy thông thường.
2. Hệ thống (systematic component):
\[ \mu_i = \mathbb{E}[y_i] = \beta_0 + \sum_{j=1}^{p} \beta_j x_{ji} \]
Các loại mô hình hồi quy đặc biệt:
Simple Linear Regression: \(p = 1\), mô hình chỉ có một biến giải thích.
Ordinary Linear Regression: tất cả các trọng số \(w_i = 1\), tức là phương sai đồng nhất.
Multiple Linear Regression: \(p > 1\), có nhiều biến giải thích trong mô hình.
Normal Linear Regression: giả định phân phối chuẩn cho \(y_i\):
\[ y_i \sim \mathcal{N}\left(\mu_i, \frac{\sigma^2}{w_i}\right) \]
Mục tiêu:
ìm các \(\hat{\beta}_j\) sao cho hàm mục tiêu là tổng bình phương phần dư có trọng số (RSS) được tối thiểu hóa:
\[ RSS = \sum_{i=1}^{n} w_i \left(y_i - \mu_i\right)^2 \]
Trong đó:
Trong hồi quy đơn (p = 1):
Ước lượng hệ số hồi quy được tính như sau:
\[ \hat{\beta}_1 = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sum (x_i - \bar{x})^2} \]
\[ \hat{\beta}_0 = \bar{y} - \hat{\beta}_1 \bar{x} \]
Dạng ma trận của mô hình:
Mô hình hồi quy tuyến tính có thể được viết dưới dạng ma trận:
\[ y = X\beta + \varepsilon \]
Trong đó:
Ước lượng OLS:
\[ \hat{\beta} = (X^T W X)^{-1} X^T W y \]
Phần dư và phương sai ước lượng:
Giá trị dự đoán (fitted values):
\[ \hat{\mu}_i = \hat{y}_i = \hat{\beta}_0 + \sum_{j=1}^{p} \hat{\beta}_j x_{ji} \]
Ước lượng phương sai phần dư:
\[ s^2 = \frac{RSS}{n - p'} \]
Sai số chuẩn của \(\hat{\beta}_j\):
\[ SE(\hat{\beta}_j) = \sqrt{s^{2} \cdot \bigl( X^{T} X \bigr)^{-1}_{jj}} \]
Khoảng tin cậy cho \(\hat{\beta}_j\):
\[ \hat{\beta}_j \pm t_{\alpha/2, \, n - p} \times SE(\hat{\beta}_j) \]
Mô hình hóa: model <- lm(y ~ x1 + x2, data = dataset)
Kết quả mô hình:
summary(model)
confint(model)
anova(model)
\(\beta_0\): giá trị trung bình của \(y\) khi tất cả các biến \(x_j = 0\).
\(\beta_j\): mức thay đổi kỳ vọng của \(y\) khi \(x_j\) tăng 1 đơn vị, giữ các biến khác không đổi.
Giả sử kiểm định với
\[ H_0: \beta_j = 0 \]
và thống kê kiểm định
\[ t = \frac{\hat{\beta}_j}{SE(\hat{\beta}_j)} \sim t_{n-p} \]
Trong đó:
\(\hat{\beta}_j\) là hệ số ước lượng của biến \(j\),
\(SE(\hat{\beta}_j)\) là sai số chuẩn của \(\hat{\beta}_j\),
\(t_{n-p}\) là phân phối t với \(n-p\) bậc tự do.
Giá trị tổng phương sai \(TSS\) được tính theo công thức:
\[ TSS = \sum_{i=1}^{n} (y_i - \bar{y})^2 \]
Tổng phương sai được phân tích thành hai phần:
\[ TSS = SSR + RSS \]
Trong đó:
\[ SSR = \sum_{i=1}^{n} (\hat{y}_i - \bar{y})^2 \]
\[ RSS = \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 \]
Hệ số xác định \(R^2\) được định nghĩa là:
\[ R^2 = \frac{SSR}{TSS} = 1 - \frac{RSS}{TSS} \]
Định nghĩa:Hai mô hình được gọi là lồng nhau (nested models) khi mô hình đơn giản hơn (reduced model) là một trường hợp đặc biệt của mô hình phức tạp hơn (full model), tức là nó được tạo ra bằng cách loại bỏ một hay nhiều biến khỏi mô hình đầy đủ.
Kiểm định F:
\[ F = \frac{(RSS_{\text{reduced}} - RSS_{\text{full}}) / (p_{\text{full}} - p_{\text{reduced}})}{s^2_{\text{full}}} \]
Trong đó:
\(RSS_{\text{reduced}}\) là tổng bình phương phần dư của mô hình rút gọn,
\(RSS_{\text{full}}\) là tổng bình phương phần dư của mô hình đầy đủ,
\(p_{\text{full}}\) và \(p_{\text{reduced}}\) lần lượt là số tham số của mô hình đầy đủ và mô hình rút gọn,
\(s^2_{\text{full}}\) là ước lượng phương sai phần dư của mô hình đầy đủ, được tính bằng:
\[ s^2_{\text{full}} = \frac{RSS_{\text{full}}}{n - p_{\text{full}}} \]
với \(n\) là số quan sát.
Định nghĩa:Hai mô hình được gọi là không lồng (non-nested) nếu không có mô hình nào là một trường hợp đặc biệt (submodel) của mô hình còn lại.
AIC(Akaike Information Criterion) là chỉ số dùng để đánh giá độ phù hợp của mô hình, đồng thời phạt mức độ phức tạp của mô hình:
\[ AIC = -2 \cdot \ell(\hat{\theta}) + 2k \]
trong đó:
\(\ell(\hat{\theta})\) là log-likelihood tại ước lượng MLE \(\hat{\theta}\),
\(k\) là số tham số trong mô hình (bao gồm cả hệ số hằng số \(\beta_0\)).
BIC(Bayesian Information Criterion) tương tự AIC nhưng mức phạt độ phức tạp mạnh hơn, được tính bằng:
\[ BIC = -2 \cdot \ell(\hat{\theta}) + \log(n) \cdot k \]
trong đó:
\(n\) là kích thước mẫu,
\(k\) và \(\ell(\hat{\theta})\) như trên.
Nguyên tắc chọn mô hình:
AIC/BIC càng nhỏ càng tốt.
Nếu AIC của mô hình A < mô hình B khoảng 2 điểm trở lên, mô hình A được ưu tiên hơn đáng kể.
Định nghĩa:Lựa chọn mô hình là quá trình tìm ra tập hợp biến giải thích tốt nhất (phù hợp, đơn giản) để mô hình hóa biến phản hồi.
Có nhiều chiến lược lựa chọn mô hình:
Forward selection:bắt đầu từ mô hình rỗng, thêm biến từng bước.
Backward elimination:bắt đầu từ mô hình đầy đủ, loại bỏ từng biến.
Stepwise selection:kết hợp cả thêm và bớt biến ở mỗi bước.
Một số hàm sử dụng:
step(): chọn mô hình theo hướng forward/backward/stepwise.
drop1(), add1(): thêm hoặc bớt biến với kiểm định F.
extractAIC(): trả về AIC và số tham số.
Sau khi xây dựng một mô hình hồi quy tuyến tính, công việc không kết thúc ở việc ước lượng các hệ số hồi quy và kiểm định ý nghĩa thống kê. Một bước quan trọng không thể thiếu là chẩn đoán mô hình – tức là đánh giá xem mô hình đã được xây dựng có thực sự phù hợp với dữ liệu hay không.
Chẩn đoán mô hình hồi quy là một phần thiết yếu trong phân tích dữ liệu vì nó giúp ta:
Xác minh các giả định cơ bản của mô hình hồi quy tuyến tính có được thỏa mãn hay không (ví dụ như quan hệ tuyến tính, phương sai không đổi, phân phối chuẩn…).
Phát hiện những quan sát bất thường như điểm ngoại lai (outliers) hoặc điểm có ảnh hưởng lớn (influential observations) – những điểm có thể bóp méo kết quả ước lượng hoặc kiểm định.
Đánh giá độ tin cậy của các hệ số ước lượng.
Đề xuất cách cải thiện mô hình, ví dụ: biến đổi biến, thêm hoặc bớt biến giải thích, sử dụng mô hình phi tuyến hoặc tổng quát (GLM) thay thế.
Nếu bỏ qua bước này, người phân tích dễ rơi vào bẫy của việc “phù hợp quá mức” (overfitting), hiểu sai mối quan hệ giữa các biến, hoặc dự đoán sai lệch trong thực tế. Do đó, chẩn đoán mô hình không phải là tùy chọn – mà là một phần bắt buộc trong phân tích hồi quy nghiêm túc.
Trong chương này, chúng ta sẽ học cách:
Kiểm tra các giả định của mô hình hồi quy.
Sử dụng phần dư (residuals) để kiểm tra độ phù hợp.
Phát hiện và xử lý các điểm ảnh hưởng lớn.
Đo lường hiện tượng đa cộng tuyến và cách giảm thiểu.
Một mô hình hồi quy tuyến tính tiêu chuẩn đòi hỏi phải thỏa mãn 4 giả định cơ bản:
1. Giả định 1: Quan hệ tuyến tính
Mô hình giả định rằng trung bình của biến phản hồi \(y\) là hàm tuyến tính của các biến giải thích \(x_1, x_2, \ldots, x_p\).
Nếu quan hệ thật sự là phi tuyến mà ta vẫn dùng mô hình tuyến tính, kết quả ước lượng có thể bị thiên lệch và dự đoán sai.
\(\Rightarrow\) Cách kiểm tra:vẽ biểu đồ phần dư so với giá trị dự đoán, nếu thấy xu hướng cong (parabola, S-shape…) thì có thể là mô hình sai dạng.
2. Giả định 2: Phương sai không đổi (Homoscedasticity)
\[ \text{Var}(y_i) = \sigma^2 \]
\(\Rightarrow\) Cách kiểm tra:vẽ đồ thị phần dư. Nếu phần dư có dạng hình nón (rộng dần hoặc hẹp lại) thì có thể bị heteroscedasticity.
3. Giả định 3: Độc lập
Các quan sát \((x_i, y_i)\) phải độc lập nhau.
Nếu dữ liệu có tính chuỗi thời gian, dữ liệu lồng ghép (nested data) hoặc phân nhóm (clustered), thì mô hình tuyến tính cơ bản không còn phù hợp.
\(\Rightarrow\) Cách kiểm tra:nếu dữ liệu theo thời gian, nên kiểm tra phần dư có xu hướng (autocorrelation) hay không.
4. Giả định 4: Phân phối chuẩn của sai số
\(\Rightarrow\) Cách kiểm tra:dùng biểu đồ Q-Q plot (quantile-quantile) để so sánh phần dư với phân phối chuẩn.
Phần dư là công cụ trung tâm để chẩn đoán mô hình. Có nhiều cách tính phần dư:
1. Raw residual (Phần dư thô):
\[ e_i = y_i - \hat{y}_i \] Đơn giản là hiệu giữa giá trị thực tế và giá trị dự đoán.
2. Standardized residual (Phần dư chuẩn hóa):
\[ r_i = \frac{e_i}{\hat{\sigma} \sqrt{1 - h_{ii}}} \]
Giúp so sánh phần dư giữa các điểm có leverage khác nhau.
\(h_{ii}\): leverage – mức ảnh hưởng của điểm \(i\) lên dự đoán \(\hat{y}_i\).
3. Studentized residual:
\[ t_i = \frac{e_i}{\hat{\sigma}_{(i)} \sqrt{1 - h_{ii}}} \]
Giống standardized residual nhưng dùng \(\hat{\sigma}_{(i)}\) – phương sai ước lượng không dùng quan sát \(i\) \(\rightarrow\) chính xác hơn.
Dùng để phát hiện ngoại lai vì nó gần với phân phối t.
Một số biểu đồ quan trọng:
Residual vs Fitted Plot:kiểm tra tuyến tính và phương sai không đổi.
Normal Q-Q Plot: kiểm tra phân phối chuẩn của phần dư.
Scale-Location Plot:chuẩn hóa phần dư để dễ phát hiện heteroscedasticity.
Residuals vs Leverage Plot:xác định điểm ảnh hưởng lớn.
Định nghĩa:Là các điểm dữ liệu mà giá trị phản hồi \(y_i\) khác biệt lớn so với dự đoán từ mô hình, dù biến \(x_i\) không bất thường.
Dùng studentized residual để kiểm tra.
Quy tắc ngưỡng:
\(|t_i| > 2\): nghi ngờ.
\(|t_i| > 3\): có thể là ngoại lai đáng kể.
\(\Rightarrow\) Ngoại lai không nhất thiết có ảnh hưởng lớn, nhưng cần kiểm tra kỹ.
Định nghĩa:Là những điểm dữ liệu mà nếu bị loại bỏ, mô hình sẽ thay đổi đáng kể.
Các chỉ số phổ biến để đo ảnh hưởng:
1. Leverage (Hệ số đòn bẩy):
\[ h_{ii} = x_i^T (X^T X)^{-1} x_i \]
Đo khoảng cách của \(x_i\) đến trung tâm của các điểm \(x\).
Nếu \(h_{ii} > \frac{2p}{n}\): điểm có leverage cao.
2. Cook’s Distance (Khoảng cách Cook):
\[ D_i = \frac{p \hat{\sigma}^2 e_i^2}{(1 - h_{ii})^2 h_{ii}} \]
Kết hợp giữa độ lệch (residual) và leverage.
Nếu \(D_i > 0.5\): có thể có ảnh hưởng.
Nếu \(D_i > 1\): ảnh hưởng lớn cần xem xét kỹ.
3. DFBETAS:
\[ \text{DFBETAS}_{ij} = \frac{\hat{\beta}_j - \hat{\beta}_{j(i)}}{\text{SE}(\hat{\beta}_{j(i)})} \]
Mức thay đổi của hệ số \(\beta_j\) khi loại bỏ quan sát \(i\).
Dùng để kiểm tra ảnh hưởng của từng điểm lên từng hệ số cụ thể.
Định nghĩa:Xảy ra khi hai hay nhiều biến giải thích có tương quan cao, khiến cho ước lượng \(\beta_j\) không ổn định (nhỏ thay đổi dữ liệu \(\rightarrow\) lớn thay đổi hệ số).
Variance Inflation Factor (VIF):
\[ \mathrm{VIF}_j = \frac{1}{1 - R_j^2} \]
\(R_j^2\) : hệ số xác định khi hồi quy \(x_j\) lên tất cả các biến còn lại.
Nếu \(\mathrm{VIF}_j > 5\) hoặc \(> 10\): có vấn đề cần xử lý.
Khi mô hình vi phạm giả định:
Dùng biến đổi (log, sqrt, Box-Cox…).
Dùng mô hình phi tuyến hoặc mô hình GLM.
Loại bỏ hoặc thay thế điểm ảnh hưởng quá lớn.
Thêm biến bị thiếu hoặc loại bớt biến gây nhiễu.
Phương pháp bình phương tối thiểu (OLS) chỉ hoạt động hiệu quả khi dữ liệu thỏa mãn các giả định như phân phối chuẩn, phương sai không đổi, và biến phản hồi liên tục. Tuy nhiên, nhiều loại dữ liệu thực tế không tuân theo những điều kiện đó – ví dụ: dữ liệu nhị phân, đếm, hoặc dương liên tục. Khi đó, Maximum Likelihood Estimation (MLE) là phương pháp mạnh mẽ hơn, dùng để ước lượng các tham số trong mô hình tổng quát.
MLE là nền tảng cho mô hình tuyến tính tổng quát (GLM), vốn là trung tâm của phần còn lại trong sách.
Định nghĩa:Hàm hợp lý là một hàm xác suất của toàn bộ dữ liệu đã quan sát, biểu diễn như một hàm của tham số \(\theta\).
Giả sử ta có một mẫu gồm \(n\) quan sát độc lập \(y_1, y_2, \ldots, y_n\), với mỗi \(y_i\) có phân phối xác suất \(f(y_i; \theta)\), thì:
Hàm hợp lý:
\[ L(\theta) = \prod_{i=1}^{n} f(y_i; \theta) \]
Trong đó:
\(L(\theta)\): hàm hợp lý
\(\theta\): vector các tham số cần ước lượng
\(f(y_i; \theta)\): mật độ xác suất (hoặc khối xác suất) của \(y_i\)
Log-hợp lý (log-likelihood):
\[ \ell(\theta) = \log L(\theta) = \sum_{i=1}^{n} \log f(y_i; \theta) \] Trong đó:
Dễ đạo hàm hơn vì tích thành tổng.
Giá trị cực đại của \(\ell(\theta)\) trùng với \(L(\theta)\).
Định nghĩa:MLE là giá trị \(\hat{\theta}\) của tham số \(\theta\) sao cho log-likelihood đạt cực đại.
\[ \hat{\theta} = \arg\max_{\theta} \, \ell(\theta) \] Để tìm \(\hat{\theta}\), ta giải:
\[ \frac{d\ell(\theta)}{d\theta} = 0 \]
\(\Rightarrow\) Đây gọi là phương trình điểm (score equation).
1. Hàm điểm (Score Function):
\[ U(\theta) = \frac{d\ell(\theta)}{d\theta} \]
2. Ma trận thông tin Fisher:
\[ I(\theta) = -\mathbb{E} \left[ \frac{d^2 \ell(\theta)}{d\theta^2} \right] \]
\(I(\theta)\): kỳ vọng âm của đạo hàm bậc hai log-likelihood → đo độ cong.
Là xấp xỉ ngược lại của phương sai: \[ \mathrm{Var}(\hat{\theta}) \approx \frac{1}{I(\theta)} \]
MLE có nhiều tính chất tốt về mặt lý thuyết, đặc biệt khi kích thước mẫu n lớn:
Tính chất | Giải thích |
---|---|
Nhất quán | \(\hat{\theta} \to \theta\) khi \(n \to \infty\) |
Không chệch tiệm cận | Độ lệch giữa \(\hat{\theta}\) và \(\theta\) tiến về 0 |
Hiệu quả | MLE đạt giới hạn Cramér–Rao, là ước lượng “tốt nhất” |
Tiệm cận chuẩn | Khi \(n\) lớn, phân phối của \(\hat{\theta}\) gần chuẩn: \(\hat{\theta} \sim \mathcal{N}(\theta, I(\theta)^{-1})\) |
Muốn kiểm tra giả thuyết:
\[ H_0: \theta = \theta_0 \]
ta có ba cáchphổ biến:
1. Wald Test:
\[ Z = \frac{\hat{\theta} - \theta_0}{SE(\hat{\theta})}, \quad Z \sim N(0,1) \]
2. Likelihood Ratio Test (LRT):
\[ LR = 2 \left[ \ell(\hat{\theta}) - \ell(\theta_0) \right] \sim \chi^2_{df} \]
So sánh log-likelihood của mô hình đầy đủ và mô hình rút gọn.
\(df\): số tham số bị ràng buộc trong \(H_0\).
3. Score Test (Lagrange Multiplier Test):
\[ S = \frac{U(\theta_0)^2}{I(\theta_0)} \sim \chi^2_1 \]
Không cần ước lượng mô hình đầy đủ.
Khi không thể dùng kiểm định LRT (do mô hình không lồng), ta dùng:
1. AIC – Akaike Information Criterion:
\[ \text{AIC} = -2\ell + 2k \]
\(k\): số tham số trong mô hình
\(\ell\): log-likelihood tại MLE
2. BIC – Bayesian Information Criterion:
\[ \text{BIC} = -2\ell + \log(n) \cdot k \]
→ Chọn mô hình có AIC/BIC thấp hơn.
Hồi quy logistic (nhị phân):
\[ y_i \sim \text{Bernoulli}(\pi_i), \quad \log\left(\frac{\pi_i}{1 - \pi_i}\right) = x_i^T \beta \]
Hồi quy Poisson (đếm):
\[ y_i \sim \text{Poisson}(\mu_i), \quad \log(\mu_i) = x_i^T \beta \]
Hồi quy Gamma (dương liên tục):
\[ y_i \sim \text{Gamma}(\alpha, \mu_i), \quad \log(\mu_i) = x_i^T \beta \]
→ Cả ba đều dùng MLEđể ước lượng \(\beta\), chứ không dùng OLS.
Mô hình tuyến tính tổng quát (GLM) là một khuôn khổ mạnh mẽ cho việc mô hình hóa các loại dữ liệu khác nhau – không chỉ dữ liệu liên tục có phân phối chuẩn như trong hồi quy tuyến tính. GLM bao gồm hồi quy logistic, hồi quy Poisson, hồi quy Gamma… và mở rộng khả năng phân tích đến dữ liệu nhị phân, đếm, tỷ lệ và dương liên tục.
Mỗi GLM được xây dựng trên cùng một nguyên lý chung gồm ba thành phần chính: phân phối xác suất, hàm liên kết, và thành phần tuyến tính.
1. Thành phần ngẫu nhiên (Random component)
Biến phản hồi \(y_i\) được giả định phân phối theo một phân phối thuộc họ hàm mũ một tham số (One-Parameter Exponential Family):
\[ f(y_i; \theta_i, \phi) = \exp \left\{ \frac{y_i \theta_i - b(\theta_i)}{\phi} + c(y_i, \phi) \right\} \]
Ý nghĩa các ký hiệu:
→ Họ hàm mũ bao gồm Normal, Poisson, Binomial, Gamma,…
2. Thành phần hệ thống (Systematic component)
Giống như hồi quy tuyến tính, GLM vẫn dùng một predictor tuyến tính:
\[ \eta_i = x_i^T \beta = \beta_0 + \beta_1 x_{i1} + \cdots + \beta_p x_{ip} \]
Ý nghĩa:
Đây là thành phần chứa ảnh hưởng của các biến độc lập lên mô hình.
3. Hàm liên kết (Link function)
GLM dùng một hàm liên kết \(g(\cdot)\) để kết nối trung bình \(\mu_i = E[y_i]\) với predictor tuyến tính \(\eta_i\):
\[ g(\mu_i) = \eta_i \quad \text{hay} \quad \mu_i = g^{-1}(\eta_i) \]
→ Cho phép mô hình hóa các biến phản hồi có đặc tính phi tuyến, không âm, giới hạn trong khoảng (0,1),…
Hàm liên kết thường dùng:
Phân phối | \(\mu_i = E[y_i]\) | Link function \(g(\mu)\) | Ghi chú |
---|---|---|---|
Normal | \(\mu \in \mathbb{R}\) | \(g(\mu) = \mu\) (identity) | Hồi quy tuyến tính chuẩn |
Binomial | \(\mu \in (0,1)\) | \(g(\mu) = \log \frac{\mu}{1-\mu}\) | Logistic regression |
Poisson | \(\mu > 0\) | \(g(\mu) = \log(\mu)\) | Hồi quy đếm |
Gamma | \(\mu > 0\) | \(g(\mu) = \log(\mu)\) hoặc \(g(\mu) = \frac{1}{\mu}\) | Mô hình dữ liệu dương |
1. Hồi quy Logistic (nhị phân)
\[ y_i \sim \text{Bernoulli}(\pi_i) \]
\[ g(\pi_i) = \log \left(\frac{\pi_i}{1-\pi_i}\right) = \eta_i \]
\[ \pi_i = P(y_i = 1 \mid x_i) \]
2. Hồi quy Poisson (đếm)
\[ y_i \sim \text{Poisson}(\mu_i) \]
\[ \log(\mu_i) = x_i^T \beta \]
\(\mu_i\): số sự kiện kỳ vọng xảy ra.
Dùng cho dữ liệu: số ca bệnh, số lần vi phạm, số giao dịch…
3. Hồi quy Gamma (dương liên tục)
\[ y_i \sim \text{Gamma}(\alpha, \mu_i) \]
Hàm liên kết:
\[ g(\mu_i) = \log(\mu_i) \quad \text{hoặc} \quad g(\mu_i) = \frac{1}{\mu_i} \]
Trong GLM, phương sai của \(y_i\) không cần bằng nhau mà được mô hình hóa như hàm của \(\mu_i\):
\[ \text{Var}(y_i) = \phi \cdot V(\mu_i) \]
Trong đó:
Hàm \(V(\mu)\) tùy theo phân phối như sau:
Phân phối | \(V(\mu)\) |
---|---|
Normal | 1 |
Binomial | \(\mu (1 - \mu)\) |
Poisson | \(\mu\) |
Gamma | \(\mu^2\) |
Việc mô hình hóa phương sai như trên giúp xử lý được hiện tượng phương sai thay đổi (heteroscedasticity), vốn là một giả định bị vi phạm trong phương pháp OLS (Hồi quy tuyến tính thông thường).
Canonical Link Functionlà hàm liên kết sao cho predictor tuyến tính chính là tham số tự nhiên \(\theta\) trong phân phối họ hàm mũ:
\[ \theta_i = \eta_i = x_i^T \beta \]
Ví dụ về hàm liên kết chuẩn (canonical link):
Phân phối | Hàm liên kết (Link function) |
---|---|
Binomial | logit: \(\log\frac{\mu}{1-\mu}\) |
Poisson | log: \(\log(\mu)\) |
Normal | identity: \(\mu\) |
Lưu ý:Dù GLM gọi là “tuyến tính”, nhưng mối quan hệ giữa \(y\) và \(x\) có thể phi tuyếndo sử dụng hàm liên kết (link function).
Sau khi xác định được cấu trúc của một GLM (gồm phân phối xác suất, hàm liên kết và thành phần tuyến tính), bước tiếp theo là ước lượng các hệ số hồi quy \(\beta\) trong mô hình.
Khác với hồi quy tuyến tính cổ điển – nơi ta dùng phương pháp bình phương tối thiểu (OLS) – trong GLM, các hệ số được ước lượng bằng phương pháp hợp lý tối đa (Maximum Likelihood Estimation - MLE)thông qua một thuật toán gọi là Iteratively Reweighted Least Squares (IRLS).
Phương pháp IRLS thực hiện việc cập nhật các ước lượng \(\beta\) lặp đi lặp lại, mỗi lần dựa trên trọng số được điều chỉnh sao cho phù hợp với phân phối của dữ liệu và hàm liên kết được chọn.
Cho dữ liệu gồm:
Biến phản hồi: \(y_1, y_2, \ldots, y_n\) có thể là biến đếm, nhị phân hoặc liên tục dương…
Biến giải thích: \(x_{i1}, \ldots, x_{ip}\) với \(i=1, \ldots, n\).
Mô hình GLM được biểu diễn như sau:
\[ g(\mu_i) = \eta_i = \mathbf{x}_i^T \boldsymbol{\beta} \]
với
\[ \mu_i = E[y_i] = g^{-1}(\mathbf{x}_i^T \boldsymbol{\beta}) \]
Mục tiêu là tìm ước lượng \(\hat{\boldsymbol{\beta}}\) sao cho hàm log-likelihood đạt cực đại:
\[ \ell(\boldsymbol{\beta}) = \sum_{i=1}^n \log f(y_i; \theta_i) \]
trong đó:
\(f(y_i; \theta_i)\) là hàm mật độ xác suất (hoặc hàm khối xác suất) của biến \(y_i\),
\(\theta_i\) là tham số tự nhiên trong phân phối thuộc họ hàm mũ,
\(\theta_i\) có quan hệ với \(\mu_i\), từ đó liên hệ với \(\boldsymbol{\beta}\).
Việc ước lượng này thường được thực hiện bằng phương pháp hợp lý tối đa (MLE), sử dụng thuật toán Iteratively Reweighted Least Squares (IRLS).
1. Thuật toán IRLS (Iteratively Reweighted Least Squares):
GLM sử dụng thuật toán IRLS để tìm ước lượng \(\hat{\boldsymbol{\beta}}\). Thuật toán dựa trên việc lặp lại các bước hồi quy tuyến tính có trọng số.
2. Ý tưởng cơ bản:
Ở mỗi vòng lặp, mô hình GLM được xấp xỉ bằng một hồi quy tuyến tính với trọng số.
Biến giả (working response)\(\mathbf{z}\) và ma trận trọng số\(\mathbf{W}\) được cập nhật liên tục ở mỗi bước.
3. Hệ phương trình IRLS:
\[ \mathbf{X}^T \mathbf{W} \mathbf{X} \hat{\boldsymbol{\beta}} = \mathbf{X}^T \mathbf{W} \mathbf{z} \]
Trong đó:
\(\mathbf{X}\) là ma trận thiết kế,
\(\mathbf{W}\) là ma trận trọng số kích thước \(n \times n\),
\(\mathbf{z}\) là vector biến giả \(n \times 1\), tính theo công thức:
\[ z_i = \eta_i + \frac{y_i - \mu_i}{\frac{d \mu_i}{d \eta_i}} \]
\[ W_i = \left(\frac{d \mu_i}{d \eta_i}\right)^2 \Big/ \mathrm{Var}(y_i) \]
Quá trình này được lặp lại cho đến khi các ước lượng \(\boldsymbol{\beta}\) hội tụ.
Hàm điểm (Score Function)
Hàm điểm là đạo hàm của log-likelihood theo vector hệ số \(\boldsymbol{\beta}\):
\[ U(\boldsymbol{\beta}) = \frac{\partial \ell(\boldsymbol{\beta})}{\partial \boldsymbol{\beta}} \]
Đây là hệ phương trình mà khi giải \(U(\boldsymbol{\beta}) = 0\), ta thu được ước lượng cực đại \(\hat{\boldsymbol{\beta}}\).
Ma trận thông tin Fisher
Ma trận thông tin Fisher là kỳ vọng âm của đạo hàm bậc hai của log-likelihood:
\[ \mathcal{I}(\boldsymbol{\beta}) = - \mathbb{E} \left[ \frac{\partial^2 \ell(\boldsymbol{\beta})}{\partial \boldsymbol{\beta} \, \partial \boldsymbol{\beta}^T} \right] \]
Ma trận này đóng vai trò như một thước đo độ “sắc nét” của log-likelihood tại điểm cực đại và được dùng để đánh giá độ chính xác của ước lượng.
Phương sai của \(\hat{\boldsymbol{\beta}}\)
Khi đã có ma trận thông tin Fisher, phương sai hiệp phương sai của vector hệ số ước lượng được tính là:
\[ \mathrm{Var}(\hat{\boldsymbol{\beta}}) = \mathcal{I}(\hat{\boldsymbol{\beta}})^{-1} \]
Nếu sử dụng thuật toán IRLS, ma trận thông tin Fisher được xấp xỉ bởi:
\[ \mathrm{Var}(\hat{\boldsymbol{\beta}}) = (\mathbf{X}^T \mathbf{W} \mathbf{X})^{-1} \]
Trong đó:
\(\mathbf{X}\): ma trận thiết kế,
\(\mathbf{W}\): ma trận trọng số tại nghiệm hội tụ,
Công thức này xuất hiện tự nhiên từ bước giải hệ phương trình IRLS.
Ghi chú
Công thức phương sai trên rất quan trọng để tính khoảng tin cậy và kiểm định giả thuyết trong GLM.
Với các mô hình lớn, ma trận \((\mathbf{X}^T \mathbf{W} \mathbf{X})^{-1}\) thường được tính thông qua giải hệ phương trình thay vì đảo trực tiếp để tránh sai số số học.
Sai số chuẩn (Standard Error)
Sau khi có được ước lượng \(\hat{\boldsymbol{\beta}}\) và ma trận phương sai hiệp phương sai \(\mathrm{Var}(\hat{\boldsymbol{\beta}})\), ta tính sai số chuẩncho từng hệ số \(\hat{\beta}_j\) như sau:
\[ \mathrm{SE}(\hat{\beta}_j) = \sqrt{[\mathrm{Var}(\hat{\boldsymbol{\beta}})]_{jj}} \]
Trong đó, \([\cdot]_{jj}\) là phần tử hàng \(j\), cột \(j\) trong ma trận phương sai.
Khoảng tin cậy \(100(1 - \alpha)\%\)
Khoảng tin cậy cho hệ số \(\hat{\beta}_j\) được tính bằng công thức:
\[ \hat{\beta}_j \pm z_{\alpha/2} \cdot \mathrm{SE}(\hat{\beta}_j) \]
Trong đó:
\(z_{\alpha/2}\) là bách phân vị \(1 - \alpha/2\) của phân phối chuẩn chuẩn hóa (thường tra từ bảng Z),
Ví dụ: với \(\alpha = 0.05\), \(z_{0.025} \approx 1.96\) (tương ứng khoảng tin cậy 95%).
Kiểm định Wald
Kiểm định Wald giúp đánh giá giả thuyết:
\[ H_0: \beta_j = 0 \quad \text{vs} \quad H_1: \beta_j \neq 0 \]
Thống kê kiểm định:
\[ Z = \frac{\hat{\beta}_j}{\mathrm{SE}(\hat{\beta}_j)} \sim \mathcal{N}(0, 1) \]
Dựa vào giá trị \(Z\), ta có thể tính p-value và đưa ra kết luận thống kê.
Ghi chú
Kiểm định Wald được dùng phổ biến do tính đơn giản và có thể thực hiện ngay sau khi có ước lượng và phương sai.
Nếu \(|Z| > z_{\alpha/2}\), bác bỏ \(H_0\), tức là hệ số \(\beta_j\) có ý nghĩa thống kê.
Trong một số mô hình GLM, đặc biệt là khi phân phối thuộc họ phân phối mũ (exponential family) không chuẩn hóa, ta cần ước lượng tham số phân tán \(\phi\).
Công thức ước lượng:
\[ \hat{\phi} = \frac{1}{n - p} \sum_{i=1}^{n} \frac{(y_i - \hat{\mu}_i)^2}{V(\hat{\mu}_i)} \]
Trong đó:
\(n\): số quan sát
\(p\): số tham số trong mô hình (bao gồm hệ số chặn nếu có)
\(\hat{\mu}_i = \mathbb{E}[y_i] = g^{-1}(\eta_i)\): giá trị kỳ vọng được ước lượng
\(V(\hat{\mu}_i)\): hàm phương sai, phụ thuộc vào phân phối:
Phân phối | Hàm phương sai \(V(\mu)\) |
---|---|
Gaussian | \(1\) |
Poisson | \(\mu\) |
Binomial (logit) | \(\mu(1 - \mu)\) |
Sau khi ước lượng các tham số \(\beta\) trong GLM, bước tiếp theo là đánh giá xem mô hình có phù hợp với dữ liệu không, và nếu có nhiều mô hình cạnh tranh, thì nên chọn mô hình nào là tốt nhất.
Các công cụ đánh giá bao gồm:
Deviance (độ lệch)
Kiểm định \(\chi^2\)
AIC, BIC
So sánh mô hình lồng và không lồng
Đồ thị phần dư và điểm ảnh hưởng
Định nghĩa:
Deviance là đại lượng đo sự khác biệt giữa mô hình hiện tại và mô hình đầy đủ (saturated model) – tức mô hình khớp hoàn toàn với dữ liệu.
\[ D(y; \hat{\mu}) = 2 \left[ \ell(y; y) - \ell(\hat{\mu}; y) \right] \]
Giải thích ký hiệu:
\(\ell(y; y)\): log-likelihood của mô hình bão hòa (saturated model)
\(\ell(\hat{\mu}; y)\): log-likelihood của mô hình đang xét
\(\Rightarrow\) Deviance càng nhỏ → mô hình càng gần với mô hình bão hòa → phù hợp hơn.
Khi hai mô hình lồng nhau, ta có thể so sánh bằng kiểm định sai biệt deviance:
Công thức kiểm định:
\[ \Delta D = D_{\text{reduced}} - D_{\text{full}} \sim \chi^2_{df} \]
Trong đó:
\(\Rightarrow\) Nếu \(\Delta D\) lớn và p-value nhỏ → mô hình đầy đủ tốt hơn.
Khi các mô hình không lồng nhau, ta dùng tiêu chí thông tin để so sánh:
AIC (Akaike Information Criterion):
\[ AIC = -2\ell + 2k \]
\(\ell\): log-likelihood
\(k\): số tham số trong mô hình
BIC (Bayesian Information Criterion):
\[ BIC = -2\ell + \log(n) \cdot k \]
\(\Rightarrow\) Chọn mô hình có AIC/BIC thấp hơn.
\(\Rightarrow\) BIC phạt các mô hình phức tạp nhiều hơnso với AIC.
Phần dư (residuals):
\[ e_i = y_i - \hat{\mu}_i \]
\[ r_i = \frac{y_i - \hat{\mu}_i}{\sqrt{V(\hat{\mu}_i)}} \]
\[ d_i = \text{sign}(y_i - \hat{\mu}_i) \cdot \sqrt{2\left[\ell(y_i; y_i) - \ell(\hat{\mu}_i; y_i)\right]} \]
Biểu đồ kiểm tra mô hình (Diagnostic plots):
Residuals vs Fitted
Normal Q-Q (nếu mô hình gần phân phối chuẩn)
Scale-Location plot
Cook’s distance vs Leverage
Các biểu đồ này giúp phát hiện điểm ngoại laivà điểm ảnh hưởng mạnhđến mô hình.
Phép kiểm định Pearson đo sự khác biệt giữa dữ liệu quan sát và giá trị kỳ vọng từ mô hình:
\[ X^2 = \sum_{i=1}^n \frac{(y_i - \hat{\mu}_i)^2}{V(\hat{\mu}_i)} \]
Nếu \(X^2\) lớn hơn mức kỳ vọng theo phân phối \(\chi^2_{df}\) → mô hình có thể không phù hợpvới dữ liệu.
Một số mô hình GLM như Poissonhoặc Binomialgiả định hệ số phân tán là:
\[ \phi = 1 \]
Tuy nhiên, trong thực tế, nếu phương sai quan sátlớn hơn phương sai lý thuyết, ta gọi là overdispersion(quá phân tán).
Kiểm tra overdispersion:
Hệ số phân tán ước lượng được tính theo công thức:
\[ \hat{\phi} = \frac{\text{Deviance}}{n - p} \]
\(n\): số quan sát
\(p\): số tham số trong mô hình
\(\Rightarrow\) Nếu:
\[ \hat{\phi} > 1.5 \]
→ Mô hình có thể bị overdispersed(quá phân tán)
\(\Rightarrow\) Trong trường hợp này, cần điều chỉnh mô hình, ví dụ:
Sử dụng quasi-Poisson
Hoặc Negative Binomial
Hồi quy logistic là một trong những mô hình phổ biến nhất thuộc họ GLM, được dùng để mô hình hóa dữ liệu nhị phân (binary), tức khi biến phản hồi
\[ y \in \{0,1\} \]
Ví dụ: bệnh/không bệnh, mua/không mua, đạt/không đạt.
Đặc điểm:
\[
\mu_i = E[y_i] = P(y_i=1) \in (0,1)
\]
Sử dụng hàm liên kết logit:
\[
g(\mu_i) = \log\left(\frac{\mu_i}{1-\mu_i}\right) = \eta_i = x_i^T \beta
\]
Biến phản hồi
\[
y_i \in \{0,1\}
\]
phân phối theo:
\[ y_i \sim \text{Bernoulli}(\pi_i) \]
Trong đó:
\[
\pi_i = P(y_i=1)
\]
và:
\[
\log\left(\frac{\pi_i}{1-\pi_i}\right) = x_i^T \beta
\]
Log-likelihood cho toàn bộ mẫu:
\[
\ell(\beta) = \sum_{i=1}^n \left[ y_i \log(\pi_i) + (1 - y_i)
\log(1-\pi_i) \right]
\]
Không có nghiệm giải tường minh → dùng IRLS để tìm \(\hat{\beta}\).
Khi dùng logit link:
\[
\eta_i = \log\left(\frac{\pi_i}{1-\pi_i}\right) = x_i^T \beta
\]
→ \(\beta_j\) đại diện cho log odds
ratio:
\[
\text{Odds ratio} = \exp(\beta_j)
\]
Nếu \(\beta_j > 0\): biến \(x_j\) làm tăng khả năng \(y=1\)
Nếu \(\beta_j < 0\): biến \(x_j\) làm giảm khả năng \(y=1\)
Sau khi ước lượng \(\hat{\beta}\), ta kiểm định từng hệ số:
Kiểm định Wald:
\[
Z_j = \frac{\hat{\beta}_j}{SE(\hat{\beta}_j)} \sim N(0,1)
\]
Khoảng tin cậy 95%:
\[
\hat{\beta}_j \pm z_{0.975} \cdot SE(\hat{\beta}_j)
\]
Chuyển sang odds ratio bằng
\[
\exp(\hat{\beta}_j)
\]
Deviance:
\[
D = -2 \left[ \ell(\hat{\beta}) - \ell_{\text{saturated}} \right]
\]
Kiểm định deviance giữa mô hình đầy đủ và mô hình rút gọn.
Pseudo-\(R^2\):
\[
R^2 = 1 - \frac{D_{\text{model}}}{D_{\text{null}}}
\]
Có thể mở rộng logistic regression để bao gồm nhiều biến giải thích:
\[ \log\left(\frac{\pi_i}{1-\pi_i}\right) = \beta_0 + \beta_1 x_{i1} + \cdots + \beta_p x_{ip} \]
→ Mô hình đa biến logistic.
Khi dữ liệu không phải từng quan sát riêng lẻ, mà là tổng hợp
\[
\frac{y_i}{n_i}
\]
ta dùng:
\[
y_i \sim \text{Binomial}(n_i, \pi_i)
\]
Log-likelihood:
\[
\ell(\beta) = \sum_{i=1}^n \left[ y_i \log(\pi_i) + (n_i - y_i)
\log(1-\pi_i) \right]
\]
Hồi quy Poisson là một mô hình thuộc họ GLM, được sử dụng để mô hình hóa các biến phản hồi là số lượng sự kiện đếm được trên một đơn vị quan sát, chẳng hạn như:
Số lần nhập viện
Số vụ tai nạn giao thông
Số lỗi phần mềm phát sinh
Đặc biệt phù hợp khi:
Biến phản hồi \(y \in \{0, 1, 2, \ldots \}\)
Dữ liệu không âm, rời rạc
Mục tiêu là ước lượng số sự kiện trung bình theo các đặc tính \(x\)
Hàm xác suất: \[ P(y_i) = \frac{e^{-\mu_i} \mu_i^{y_i}}{y_i!}, \quad y_i = 0, 1, 2, \ldots \]
Trong đó:
\[ \mu_i = E[y_i] : \text{số sự kiện kỳ vọng của quan sát thứ } i \]
\[ \text{Var}(y_i) = \mu_i \quad : \text{đặc điểm then chốt} \]
Hàm liên kết (canonical):
\[ \eta_i = \log(\mu_i) = x_i^T \beta \implies \mu_i = e^{x_i^T \beta} \]
Hàm log đảm bảo:
\[ \mu_i > 0 \]
Mối quan hệ tuyến tính trên log-scale.
Log-likelihood của mô hình:
\[ \ell(\beta) = \sum_{i=1}^n \left[ y_i \log(\mu_i) - \mu_i - \log(y_i!) \right] \]
Thay \(\mu_i = e^{x_i^T \beta}\), ta được:
\[ \ell(\beta) = \sum_{i=1}^n \left[ y_i x_i^T \beta - e^{x_i^T \beta} - \log(y_i!) \right] \]
Score function (đạo hàm log-likelihood):
\[ U(\beta) = \sum_{i=1}^n x_i (y_i - \mu_i) \]
Giải phương trình \(U(\beta) = 0\) → tìm \(\hat{\beta}\) bằng IRLS.
Trong hồi quy Poisson:
Mỗi \(\beta_j\) là tác động log tuyến tính đến số sự kiện trung bình.
\(e^{\beta_j}\) là tỷ lệ thay đổi kỳ vọng \(\mu\) khi \(x_j\) tăng 1 đơn vị, giữ các biến khác không đổi.
Ví dụ:
\(\beta_j = 0.693 \Rightarrow e^{0.693} = 2\): số sự kiện kỳ vọng gấp đôi khi \(x_j\) tăng 1 đơn vị.
\(\beta_j = -0.223\) → giảm khoảng 20%.
Offset là gì? Khi quan sát không đồng nhất về thời gian/phạm vi, cần điều chỉnh bằng offset.
Ví dụ:
Quan sát 1: 5 tai nạn trong 10 ngày
Quan sát 2: 2 tai nạn trong 2 ngày
Không thể so sánh số tuyệt đối → dùng tỷ lệ:
\[
\frac{\mu_i}{t_i} \implies \log(\mu_i) = \log(t_i) + x_i^T \beta
\]
Trong đó \(\log(t_i)\) là offset– không có hệ số, nhưng được đưa vào mô hình.
Trong lý thuyết:
\[ \mathrm{Var}(y_i) = \mu_i \]
Nhưng thực tế thường thấy:
\[ \mathrm{Var}(y_i) > \mu_i \quad \Rightarrow \quad \text{overdispersion} \]
Nguyên nhân do bỏ sót biến quan trọng, quá nhiều giá trị 0, hoặc biến động ngẫu nhiên vượt mức.
Hệ số phân tán:
\[ \hat{\phi} = \frac{\text{Deviance}}{n - p} \]
Nếu \(\hat{\phi} > 1.5\) thì đáng lo ngại.
Cách xử lý:
Sử dụng quasi-Poisson: điều chỉnh phương sai mà không thay đổi kỳ vọng.
Dùng Negative Binomial: thêm tham số \(\alpha\) để điều chỉnh phương sai.
Deviance:kiểm tra mức độ phù hợp của mô hình.
AIC:chọn mô hình tốt nhất.
Kiểm định deviance:so sánh hai mô hình lồng nhau.
Biểu đồ phần dư:
Residuals vs fitted
Deviance residuals
Cook’s distance
Kiểm định Pearson chi-square:
\[ X^2 = \sum_{i=1}^n \frac{(y_i - \mu_i)^2}{\mu_i} \quad \Rightarrow \quad X^2 \sim \chi^2_{n-p} \]
Mô hình | Khi nào dùng |
---|---|
Poisson | Dữ liệu đếm, phương sai gần bằng kỳ vọng (\(\mathrm{Var}(y) \approx E(y)\)) |
Quasi-Poisson | Khi có overdispersion nhẹ, giữ cùng hàm liên kết (link function) |
Negative Binomial | Khi overdispersion nặng hoặc dữ liệu có quá nhiều giá trị 0 |
Hồi quy Gamma là một mô hình thuộc họ GLM dùng để mô hình hóa các biến phản hồi dương liên tục có phương sai tăng theo giá trị trung bình.
Ví dụ ứng dụng:
Chi phí y tế
Thời gian sống (survival time)
Lượng tiêu thụ năng lượng
Giả định biến ngẫu nhiên \(y_i\) phân phối Gamma với tham số:
\[ y_i \sim Gamma(\alpha, \mu_i) \]
Trong đó:
\(\mu_i = E[y_i]\) là kỳ vọng.
Phương sai:
\[
Var(y_i) = \frac{\mu_i^2}{\alpha} = \phi \mu_i^2
\]
Phương sai tỷ lệ với bình phương kỳ vọng, phù hợp khi biến thiên tỷ lệ không đổi.
Hàm mật độ xác suất:
\[ f(y; \mu, \phi) = \frac{1}{\Gamma(1/\phi)} \left(\frac{1}{\phi \mu}\right)^{1/\phi} y^{\frac{1}{\phi}-1} \exp\left(-\frac{y}{\phi \mu}\right) \]
Hàm này thuộc họ hàm mũ (exponential family), với:
\[ \theta = -\frac{1}{\mu} \]
\[ b(\theta) = -\log(-\theta) \]
Hàm phương sai:
\[ V(\mu) = \mu^2 \]
\(\phi\) là tham số phân tán.
Mặc định trong GLM:
\[ g(\mu_i) = \log(\mu_i) = \eta_i = x_i^T \beta \]
Các tùy chọn khác:
Identity: \(g(\mu) = \mu\)
Inverse: \(g(\mu) = \frac{1}{\mu}\)
Link log được dùng phổ biến nhất vì đảm bảo \(\mu > 0\).
Ước lượng tham số \(\beta\) bằng phương pháp hợp lý tối đa (MLE) qua thuật toán IRLS.
Hàm log-likelihood:
\[ \ell(\beta) = \sum_{i=1}^n \left[-\log(\mu_i) - \frac{y_i}{\mu_i} \right] + \text{hằng số} \]
với:
\[ \mu_i = e^{x_i^T \beta} \]
Phương trình điểm:
\[ \frac{\partial \ell}{\partial \beta} = \sum_{i=1}^n x_i \left( y_i - \frac{\mu_i}{\mu_i^2} \cdot \frac{d\mu_i}{d\eta_i} \right) = 0 \]
Dùng IRLS để giải phương trình và tìm nghiệm \(\hat{\beta}\).
Với link log:
\[ \log(\mu_i) = \beta_0 + \beta_1 x_{i1} + \cdots + \beta_p x_{ip} \implies \mu_i = e^{x_i^T \beta} \]
Mỗi hệ số \(\beta_j\) được hiểu là tác động trên log-scale, nghĩa là ảnh hưởng đến log của kỳ vọng trung bình.
\[ e^{\beta_j} \]
tức là hệ số tỷ lệ thay đổi của \(\mu\).
\[ Z_j = \frac{\hat{\beta}_j}{SE(\hat{\beta}_j)} \sim \mathcal{N}(0,1) \]
\[ \hat{\beta}_j \pm z_{\alpha/2} \cdot SE(\hat{\beta}_j) \]
\[ \left(e^{\hat{\beta}_j - z_{\alpha/2} SE(\hat{\beta}_j)}, \quad e^{\hat{\beta}_j + z_{\alpha/2} SE(\hat{\beta}_j)} \right) \]
\[ D = 2 \sum_{i=1}^n \left[ \frac{y_i - \mu_i}{\mu_i} - \log\left(\frac{y_i}{\mu_i}\right) \right] \]
\[ X^2 = \sum_{i=1}^n \left( \frac{y_i - \mu_i}{\mu_i} \right)^2 \]
Hai chỉ số này dùng để đánh giá độ phù hợp của mô hình và phát hiện hiện tượng overdispersionnếu có.
Mô hình | Khi dùng |
---|---|
Hồi quy tuyến tính | Khi dữ liệu phân phối chuẩn, phương sai không đổi |
Hồi quy Gamma | Khi dữ liệu dương, phương sai tỷ lệ với bình phương trung bình |
Hồi quy log-normal | Khi \(\log(y)\) phân phối chuẩn (sau biến đổi log) |
Dữ liệu nhị phân dạng 0/1 được mô hình hóa bằng hồi quy logistic. Tuy nhiên, nếu dữ liệu có dạng tổng hợp (grouped) hoặc thể hiện dưới dạng tỷ lệ, ví dụ:
20 thành công trong 30 thử nghiệm → \(y = 20, n = 30\)
Tỷ lệ mắc bệnh ở mỗi quận
Tỷ lệ sinh viên đậu trong từng lớp
→ Cần dùng GLM dạng nhị thức tổng quát (binomial GLM), áp dụng cho số lần thành công trên số lần thử.
Với \(y_i \sim \text{Binomial}(n_i, \pi_i)\), ta mô hình hóa:
\[ \log \left(\frac{\pi_i}{1 - \pi_i}\right) = \eta_i = x_i^T \beta \implies \pi_i = \frac{e^{x_i^T \beta}}{1 + e^{x_i^T \beta}} \]
Trong đó:
\(y_i\): số thành công trong nhóm \(i\)
\(n_i\): tổng số thử nghiệm trong nhóm \(i\)
\(\pi_i\): xác suất thành công
\(\mu_i = E[y_i] = n_i \pi_i\)
\(\text{Var}(y_i) = n_i \pi_i (1 - \pi_i)\)
→ Phù hợp cho dữ liệu dạng “n trials, k successes”.
Hàm log-likelihood:
\[ \ell(\beta) = \sum_{i=1}^n \left[ y_i \log(\pi_i) + (n_i - y_i) \log(1 - \pi_i) \right] \]
Tối đa hóa log-likelihood bằng IRLS (như logistic), nhưng có thêm yếu tố \(n_i\).
Biến giả và trọng số:
\[ w_i = n_i \pi_i (1 - \pi_i) \]
\[ z_i = \eta_i + \frac{y_i - n_i \pi_i}{n_i \pi_i (1 - \pi_i)} \]
Dạng dữ liệu | Mô hình tương ứng | Ghi chú |
---|---|---|
0/1 từng cá nhân | Hồi quy logistic | \(y_i \sim \text{Bernoulli}(\pi_i)\) |
Nhóm nhiều cá nhân | Binomial GLM với \(y_i / n_i\) | \(y_i \sim \text{Binomial}(n_i, \pi_i)\) |
→ Mô hình nhóm cho kết quả ước lượng chính xác hơn vì dùng nhiều thông tin hơn trên mỗi quan sát.
Nếu \(y_i / n_i\) được ghi dưới dạng tỷ lệ (0 < tỷ lệ < 1), ta vẫn dùng mô hình:
\[ \log \left(\frac{y_i / n_i}{1 - y_i / n_i}\right) = x_i^T \beta \]
→ Nhưng phải chỉ rõ số lần thử \(n_i\) để tính đúng phương sai.
Wald test cho các hệ số
Kiểm định deviance giữa mô hình đầy đủ và rút gọn
AIC/BIC để chọn mô hình
Phần dư Pearson / deviance để phát hiện điểm bất thường
Giống hồi quy logistic, mô hình binomial giả định:
\[ \text{Var}(y_i) = n_i \pi_i (1 - \pi_i) \]
Nếu thấy phương sai quan sát lớn hơn → overdispersion.
Kiểm tra:
\[ \hat{\phi} = \frac{\text{Deviance}}{n - p} \]
→ Nếu \(\hat{\phi} > 1.5\): cần chuyển sang mô hình quasi-binomial
Mô hình Tweedie GLMmở rộng họ hàm mũ bằng cách cho phép phân phối có đặc điểm trung gian giữa các phân phối quen thuộc như:
Gaussian
Poisson
Gamma
Inverse Gaussian
Mô hình Tweedie phù hợp với các loại dữ liệu có đặc điểm:
Liên tục dương + rất nhiều giá trị 0 (ví dụ: dữ liệu chi phí, có người không tiêu dùng)
Phân tán quá mức (overdispersion)
Có cả phần rời rạc(0, 1, 2, …) lẫn liên tục dương
→ Ứng dụng rộng rãi trong bảo hiểm, tài chính, y tế, và các bài toán zero-inflated data.
Tweedie là một lớp phân phối thuộc họ hàm mũ (exponential family), với hàm phương saicó dạng:
\[ \text{Var}(Y) = \phi \mu^p \]
Trong đó:
\(\mu = \mathbb{E}[Y]\): kỳ vọng
\(\phi > 0\): hệ số phân tán
\(p\): chỉ số sức mạnh (power index)
\(p\) | Phân phối tương ứng |
---|---|
0 | Gaussian (Normal) |
1 | Poisson |
\((1, 2)\) | Tweedie hỗn hợp (0 + dương liên tục) |
2 | Gamma |
3 | Inverse Gaussian |
→ Với \(1 < p < 2\), mô hình Tweedie hỗn hợpcó thể:
Tái hiện được số lượng lớn giá trị 0
Mô hình hóa được giá trị dương liên tục
Rất phù hợpcho các bài toán như chi phí bảo hiểm, tổn thất, dữ liệu có số 0 và giá trị tiền tệ.
variable_explain <- data.frame(
Ten_Bien = c("Unnamed: 0", "PurchaseDate", "CustomerID", "Gender", "MaritalStatus",
"Homeowner", "Children", "AnnualIncome", "City", "StateorProvince",
"Country", "ProductFamily", "ProductDepartment", "ProductCategory",
"UnitsSold", "Revenue"),
Y_Nghia = c("Chỉ số dòng (tự sinh, có thể bỏ qua)",
"Ngày mua hàng",
"Mã khách hàng",
"Giới tính của khách hàng (M = Nam, F = Nữ)",
"Tình trạng hôn nhân (S = Độc thân, M = Đã kết hôn)",
"Có sở hữu nhà không (Y = Có, N = Không)",
"Số lượng con của khách hàng",
"Mức thu nhập hàng năm (ví dụ: $30K - $50K)",
"Thành phố nơi khách hàng sống",
"Bang hoặc tỉnh",
"Quốc gia (trong file là USA)",
"Nhóm sản phẩm chính (ví dụ: Food, Drink)",
"Phòng ban sản phẩm (ví dụ: Snack Foods, Produce)",
"Danh mục chi tiết sản phẩm (ví dụ: Candy, Vegetables)",
"Số lượng sản phẩm đã bán",
"Doanh thu từ đơn hàng (USD)")
)
library(knitr)
## Warning: package 'knitr' was built under R version 4.3.3
Ten_Bien | Y_Nghia |
---|---|
Unnamed: 0 | Chỉ số dòng (tự sinh, có thể bỏ qua) |
PurchaseDate | Ngày mua hàng |
CustomerID | Mã khách hàng |
Gender | Giới tính của khách hàng (M = Nam, F = Nữ) |
MaritalStatus | Tình trạng hôn nhân (S = Độc thân, M = Đã kết hôn) |
Homeowner | Có sở hữu nhà không (Y = Có, N = Không) |
Children | Số lượng con của khách hàng |
AnnualIncome | Mức thu nhập hàng năm (ví dụ: $30K - $50K) |
City | Thành phố nơi khách hàng sống |
StateorProvince | Bang hoặc tỉnh |
Country | Quốc gia (trong file là USA) |
ProductFamily | Nhóm sản phẩm chính (ví dụ: Food, Drink) |
ProductDepartment | Phòng ban sản phẩm (ví dụ: Snack Foods, Produce) |
ProductCategory | Danh mục chi tiết sản phẩm (ví dụ: Candy, Vegetables) |
UnitsSold | Số lượng sản phẩm đã bán |
Revenue | Doanh thu từ đơn hàng (USD) |
Chuyển đổi biến nhị phân Gender: F = 0, M = 1 MaritalStatus: S = 0, M = 1 Homeowner: N = 0, Y = 1
Chuyển đổi AnnualIncome
Chuyển đổi PurchaseDate Chuyển ngày mua thành số ngày kể từ ngày đầu tiên (2007-12-18).
Chuyển đổi các biến danh mục bằng mã hóa tần suất Sử dụng tần suất xuất hiện để mã hóa các biến City, StateorProvince, Country, ProductFamily, ProductDepartment, ProductCategory.
## Warning in instance$preRenderHook(instance): It seems your data is too big for
## client-side DataTables. You may consider server-side processing:
## https://rstudio.github.io/DT/server.html
Mục | Ý_nghĩa |
---|---|
Số dòng | 14059 dòng dữ liệu (giao dịch tại siêu thị) |
Số cột | 23 cột biến |
Biến dạng chuỗi (character) | 6 biến dạng chuỗi |
Biến dạng số (numeric) | 16 biến dạng số |
Biến | Số_giá_trị_khác_nhau | Ý_nghĩa | |
---|---|---|---|
City | City | 23 | Thành phố nơi khách hàng sống (~23 thành phố) |
StateorProvince | StateorProvince | 10 | Tỉnh/bang nơi cư trú (~10 bang) |
Country | Country | 3 | Quốc gia (USA, Canada, Mexico…) |
ProductFamily | ProductFamily | 3 | Nhóm sản phẩm chính (Food, Drink, Non-Consumables) |
ProductDepartment | ProductDepartment | 22 | Phòng ban sản phẩm (22 loại: Snacks, Produce…) |
ProductCategory | ProductCategory | 45 | Danh mục sản phẩm chi tiết (45 loại: Candy, Vegetables…) |
Biến | Mean | SD | Giải_thích | |
---|---|---|---|---|
CustomerID | CustomerID | 5116.90 | 2920.76 | Mã khách hàng duy nhất |
Gender | Gender | 0.49 | 0.50 | Giới tính đã mã hoá (F = 0, M = 1) |
MaritalStatus | MaritalStatus | 0.49 | 0.50 | Tình trạng hôn nhân đã mã hoá (S = 0, M = 1) |
Homeowner | Homeowner | 0.60 | 0.49 | Sở hữu nhà đã mã hoá (N = 0, Y = 1) |
Children | Children | 2.53 | 1.49 | Trung bình mỗi khách có 2–3 con |
AnnualIncome | AnnualIncome | 57849.06 | 36072.43 | Thu nhập hộ gia đình (đã chuyển từ khoảng sang số trung bình) |
UnitsSold | UnitsSold | 4.08 | 1.17 | Mỗi giao dịch bán ~4 đơn vị sản phẩm |
Revenue | Revenue | 13.00 | 8.22 | Mỗi giao dịch tạo ra trung bình ~13 USD |
PurchaseDateDays | PurchaseDateDays | NaN | NA | Số ngày kể từ mốc 18/12/2007 |
City_freq | City_freq | 826.36 | 319.08 | Tần suất thành phố xuất hiện |
StateorProvince_freq | StateorProvince_freq | 2648.81 | 1515.59 | Tần suất tỉnh/bang xuất hiện |
Country_freq | Country_freq | 7517.44 | 3046.35 | Tần suất quốc gia xuất hiện |
ProductFamily_freq | ProductFamily_freq | 7945.11 | 3576.54 | Tần suất nhóm sản phẩm |
ProductDepartment_freq | ProductDepartment_freq | 1123.39 | 550.92 | Tần suất phòng ban sản phẩm |
ProductCategory_freq | ProductCategory_freq | 713.86 | 574.60 | Tần suất loại sản phẩm chi tiết |
###Tổng hợp các biểu đồ thống kê định tính
library(ggplot2)
ggplot(d, aes(x = as.factor(Children))) +
geom_bar(fill = "blue") +
geom_text(stat = "count", aes(label = ..count..), vjust = -0.5) +
labs(x = "Số con", y = "Số khách hàng", title = "Phân bố số con của khách hàng")
## Warning: The dot-dot notation (`..count..`) was deprecated in ggplot2 3.4.0.
## ℹ Please use `after_stat(count)` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
ggplot(d, aes(x = AnnualIncome)) +
geom_bar(fill = "red", color = "black") +
labs(x = "Khoảng thu nhập", y = "Tần suất", title = "Biểu đồ tần suất thu nhập hàng năm") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
library(ggplot2)
ggplot(d, aes(x = City)) +
geom_bar(fill = "yellow", color = "black") +
labs(x = "Thành phố", y = "Tần số", title = "Biểu đồ tần số khách hàng ở các thành phố") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
library(ggplot2)
ggplot(d, aes(x = StateorProvince)) +
geom_bar(fill = "blue", color = "black") +
labs(x = "Bang", y = "Tần số", title = "Biểu đồ tần số khách hàng ở các bang") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
library(ggplot2)
ggplot(d, aes(x = Country)) +
geom_bar(fill = "#00FFCC", color = "black") +
labs(x = "Quốc gia", y = "Tần số", title = "Biểu đồ tần số khách hàng ở các quốc gia") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
library(ggplot2)
ggplot(d, aes(x = ProductDepartment)) +
geom_bar(fill = "pink", color = "black") +
labs(x = "Sản phẩm", y = "Tần số", title = "Bộ phận sản phẩm khách hàng mua") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
library(ggplot2)
ggplot(d, aes(x = ProductCategory)) +
geom_bar(fill = "#66CC99", color = "black") +
labs(x = "Sản phẩm", y = "Tần số", title = "Danh mục sản phẩm khách hàng mua") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
library(ggplot2)
ggplot(d, aes(x = ProductDepartment)) +
geom_bar(fill = "#99CC99", color = "black") +
labs(x = "Sản phẩm", y = "Tần số", title = "Bộ phận sản phẩm khách hàng mua") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Thực hiện tính toán các thống kê mô tả (bao gồm giá trị trung bình, độ lệch chuẩn, giá trị nhỏ nhất, lớn nhất và các phân vị) cho các biến định lượng trong tập dữ liệu.
Các biến cần phân tích bao gồm: CustomerID, Gender, MaritalStatus, Homeowner, Children, AnnualIncome, UnitsSold, Revenue, PurchaseDateDays, cùng với các biến phản ánh tần suất mua hàng.
## Warning: There were 2 warnings in `summarise()`.
## The first warning was:
## ℹ In argument: `across(...)`.
## Caused by warning in `min()`:
## ! no non-missing arguments to min; returning Inf
## ℹ Run `dplyr::last_dplyr_warnings()` to see the 1 remaining warning.
## Warning: Expected 2 pieces. Additional pieces discarded in 42 rows [64, 65, 66, 67, 68,
## 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, ...].
Biến | Mean | StdDev | Min | Q1 | Median | Q3 | Max | freq |
---|---|---|---|---|---|---|---|---|
CustomerID | 5.116902e+03 | 2.920755e+03 | 3.0e+00 | 2549.00 | 5060.00 | 7633.00 | 10280.0 | NA |
Gender | 4.900064e-01 | 4.999179e-01 | 0.0e+00 | 0.00 | 0.00 | 1.00 | 1.0 | NA |
MaritalStatus | 4.883704e-01 | 4.998825e-01 | 0.0e+00 | 0.00 | 0.00 | 1.00 | 1.0 | NA |
Homeowner | 6.006117e-01 | 4.897901e-01 | 0.0e+00 | 0.00 | 1.00 | 1.00 | 1.0 | NA |
Children | 2.530336e+00 | 1.491852e+00 | 0.0e+00 | 1.00 | 3.00 | 4.00 | 5.0 | NA |
AnnualIncome | 5.784906e+04 | 3.607243e+04 | 2.0e+04 | 40000.00 | 40000.00 | 80000.00 | 160000.0 | NA |
UnitsSold | 4.080589e+00 | 1.174421e+00 | 1.0e+00 | 3.00 | 4.00 | 5.00 | 8.0 | NA |
Revenue | 1.300451e+01 | 8.215543e+00 | 5.3e-01 | 6.84 | 11.25 | 17.37 | 56.7 | NA |
City | NA | NA | NA | NA | NA | NA | NA | 826.3576 |
City | NA | NA | NA | NA | NA | NA | NA | 319.0806 |
City | NA | NA | NA | NA | NA | NA | NA | 75.0000 |
City | NA | NA | NA | NA | NA | NA | NA | 633.0000 |
City | NA | NA | NA | NA | NA | NA | NA | 866.0000 |
City | NA | NA | NA | NA | NA | NA | NA | 926.0000 |
City | NA | NA | NA | NA | NA | NA | NA | 1386.0000 |
StateorProvince | NA | NA | NA | NA | NA | NA | NA | 2648.8131 |
StateorProvince | NA | NA | NA | NA | NA | NA | NA | 1515.5929 |
StateorProvince | NA | NA | NA | NA | NA | NA | NA | 75.0000 |
StateorProvince | NA | NA | NA | NA | NA | NA | NA | 1297.0000 |
StateorProvince | NA | NA | NA | NA | NA | NA | NA | 2733.0000 |
StateorProvince | NA | NA | NA | NA | NA | NA | NA | 4567.0000 |
StateorProvince | NA | NA | NA | NA | NA | NA | NA | 4567.0000 |
Country | NA | NA | NA | NA | NA | NA | NA | 7517.4386 |
Country | NA | NA | NA | NA | NA | NA | NA | 3046.3527 |
Country | NA | NA | NA | NA | NA | NA | NA | 809.0000 |
Country | NA | NA | NA | NA | NA | NA | NA | 3688.0000 |
Country | NA | NA | NA | NA | NA | NA | NA | 9562.0000 |
Country | NA | NA | NA | NA | NA | NA | NA | 9562.0000 |
Country | NA | NA | NA | NA | NA | NA | NA | 9562.0000 |
ProductFamily | NA | NA | NA | NA | NA | NA | NA | 7945.1060 |
ProductFamily | NA | NA | NA | NA | NA | NA | NA | 3576.5416 |
ProductFamily | NA | NA | NA | NA | NA | NA | NA | 1250.0000 |
ProductFamily | NA | NA | NA | NA | NA | NA | NA | 2656.0000 |
ProductFamily | NA | NA | NA | NA | NA | NA | NA | 10153.0000 |
ProductFamily | NA | NA | NA | NA | NA | NA | NA | 10153.0000 |
ProductFamily | NA | NA | NA | NA | NA | NA | NA | 10153.0000 |
ProductDepartment | NA | NA | NA | NA | NA | NA | NA | 1123.3864 |
ProductDepartment | NA | NA | NA | NA | NA | NA | NA | 550.9161 |
ProductDepartment | NA | NA | NA | NA | NA | NA | NA | 59.0000 |
ProductDepartment | NA | NA | NA | NA | NA | NA | NA | 699.0000 |
ProductDepartment | NA | NA | NA | NA | NA | NA | NA | 1072.0000 |
ProductDepartment | NA | NA | NA | NA | NA | NA | NA | 1600.0000 |
ProductDepartment | NA | NA | NA | NA | NA | NA | NA | 1994.0000 |
ProductCategory | NA | NA | NA | NA | NA | NA | NA | 713.8588 |
ProductCategory | NA | NA | NA | NA | NA | NA | NA | 574.5957 |
ProductCategory | NA | NA | NA | NA | NA | NA | NA | 35.0000 |
ProductCategory | NA | NA | NA | NA | NA | NA | NA | 277.0000 |
ProductCategory | NA | NA | NA | NA | NA | NA | NA | 425.0000 |
ProductCategory | NA | NA | NA | NA | NA | NA | NA | 903.0000 |
ProductCategory | NA | NA | NA | NA | NA | NA | NA | 1728.0000 |
Bảng thống kê mô tả trên phản ánh đặc điểm của một tập dữ liệu khách hàng và sản phẩm với sự kết hợp giữa các biến
định lượng và định tính. Đối với các biến định lượng, dữ liệu cho thấy sự phân bố khá rõ ràng và hợp lý. Ví dụ, giới
tính và tình trạng hôn nhân có tỷ lệ gần như cân bằng (trung bình khoảng 0.49), cho thấy tập dữ liệu không bị thiên
lệch giới hay hôn nhân. Tỷ lệ sở hữu nhà ở đạt khoảng 60%, phản ánh phần lớn khách hàng có chỗ ở ổn định. Số lượng con
trung bình là 2.53 với độ lệch chuẩn cao, cho thấy sự đa dạng trong quy mô gia đình. Thu nhập hàng năm trung bình
khoảng 57,849 USD nhưng có độ lệch chuẩn lớn (~36,000 USD), thể hiện sự chênh lệch đáng kể về mức sống giữa các khách
hàng. Số lượng sản phẩm bán ra (UnitsSold) có giá trị trung bình khoảng 4.08 với độ lệch chuẩn thấp, chứng tỏ doanh số
tương đối ổn định. Doanh thu (Revenue) trung bình là 13.00 nhưng có giá trị tối đa lên tới 56.7, cho thấy có một số
khách hàng tạo ra doanh thu rất cao, có thể là những khách hàng tiềm năng hoặc mua hàng với số lượng lớn.
Về các biến định tính như thành phố (City), tỉnh bang (StateorProvince), quốc gia (Country), nhóm sản phẩm
(ProductFamily), phòng ban sản phẩm (ProductDepartment), và danh mục sản phẩm (ProductCategory), dữ liệu không cung
cấp các thống kê tóm tắt truyền thống mà chỉ thể hiện tần suất xuất hiện. Tuy nhiên, có thể thấy sự phân bố không đồng đều giữa các nhóm. Một số thành phố, bang hoặc quốc gia có số lượng khách hàng áp đảo, trong khi những nơi khác chỉ có vài chục đến vài trăm người, gợi ý sự tập trung dân cư hoặc thị trường tại một số khu vực nhất định. Tương tự, một số
nhóm sản phẩm và danh mục sản phẩm xuất hiện rất phổ biến, trong khi những nhóm khác ít phổ biến hơn, cho thấy có sự
khác biệt lớn trong mức độ tiêu thụ giữa các loại hàng hóa.
Tổng thể, bảng thống kê mô tả cho thấy tập dữ liệu tương đối phong phú và đa dạng, phản ánh đặc điểm nhân khẩu học,
tài chính, cũng như hành vi mua sắm của khách hàng. Tuy nhiên, một số biến định danh có sự chênh lệch lớn về tần suất
xuất hiện, cần được xem xét kỹ lưỡng trong các phân tích tiếp theo để tránh hiện tượng thiên lệch hoặc làm sai lệch kết luận.