8 Chương 7: Mô hình Log-linear cho Bảng Ngẫu nhiên
Lời mở đầu
Trong các chương trước, trọng tâm của chúng ta là các mô hình hồi quy (Logistic, Ordinal, v.v.), nơi chúng ta xác định rõ một biến là “biến phản hồi” và các biến còn lại là “biến độc lập”. Cách tiếp cận này rất mạnh mẽ khi mục tiêu là dự báo hoặc giải thích một kết quả cụ thể. Tuy nhiên, trong nhiều trường hợp, mối quan tâm của chúng ta lại không tập trung vào một biến duy nhất mà là vào cấu trúc liên hợp tổng thể giữa một tập hợp các biến định tính. Chúng ta muốn trả lời các câu hỏi như: “Các biến này liên quan với nhau như thế nào?”, “Có mối tương tác nào giữa ba hay nhiều biến không?”, “Mô hình liên hệ đơn giản nhất nào có thể mô tả được dữ liệu?”.
Để trả lời những câu hỏi này, chúng ta sẽ tìm hiểu về một họ mô hình khác: Mô hình Log-linear. Tên gọi của nó xuất phát từ việc mô hình hóa logarit của tần số kỳ vọng trong các ô của bảng ngẫu nhiên như một hàm tuyến tính của các tham số. Mô hình Log-linear không phân biệt biến độc lập và biến phụ thuộc; thay vào đó, nó đối xử với tất cả các biến một cách đối xứng và tập trung vào việc mô tả các mối liên hệ (associations) và tương tác (interactions) giữa chúng.
Mô hình Log-linear đặc biệt hữu ích cho việc phân tích các bảng ngẫu nhiên nhiều chiều (từ ba chiều trở lên), nơi việc kiểm tra các mối liên hệ có điều kiện bằng các phương pháp ở Chương 2 trở nên phức tạp. Nó cung cấp một khung làm việc thanh lịch, dựa trên nền tảng GLM (cụ thể là hồi quy Poisson), để lựa chọn mô hình phù hợp nhất mô tả cấu trúc dữ liệu. Hơn nữa, việc hiểu rõ mô hình Log-linear sẽ mang lại một cái nhìn sâu sắc về mối quan hệ mật thiết giữa nó và mô hình Logistic, giúp chúng ta thấy được bức tranh toàn cảnh hơn về phân tích dữ liệu định tính.
Mục tiêu chương
Sau khi hoàn thành chương này, người học sẽ có khả năng:
- Hiểu rõ khái niệm và mục đích của mô hình Log-linear trong phân tích cấu trúc liên hợp của các biến định tính.
- Nắm vững mối quan hệ giữa mô hình Log-linear, phân phối Poisson và GLM.
- Xây dựng, ước lượng và diễn giải các mô hình Log-linear cho bảng hai chiều và ba chiều.
- Biết cách lựa chọn mô hình Log-linear phù hợp.
- Hiểu rõ mối liên hệ giữa mô hình Log-linear và mô hình Logistic.
- Ứng dụng R để phân tích mô hình Log-linear.
8.1 Giới thiệu mô hình Log-linear
8.1.1 Mục đích và vai trò
Mô hình Log-linear là một lớp các mô hình thống kê được thiết kế để phân tích các tần số trong các ô của một bảng ngẫu nhiên. Vai trò chính của nó là: 1. Mô tả cấu trúc liên hợp: Xác định và mô tả các mối liên hệ hai chiều (pairwise associations) và các tương tác bậc cao hơn (higher-order interactions) giữa các biến định tính. 2. Lựa chọn mô hình: Tìm ra mô hình liên hệ đơn giản nhất (most parsimonious model) mà vẫn phù hợp với dữ liệu quan sát. 3. Làm mịn dữ liệu: Cung cấp các ước lượng tần số kỳ vọng đã được “làm mịn” (smoothed) dựa trên cấu trúc mô hình, hữu ích khi bảng dữ liệu có nhiều ô tần số 0 hoặc tần số nhỏ. 4. Kiểm định giả thuyết phức tạp: Kiểm tra các giả thuyết về tính độc lập có điều kiện và liên hợp đồng nhất trong các bảng nhiều chiều.
Khác với các mô hình hồi quy trước đó, mô hình Log-linear không có biến phản hồi được định trước. Tất cả các biến trong bảng đều được xem xét vai trò ngang nhau trong việc hình thành cấu trúc của bảng.
8.1.2 Mối quan hệ với phân phối Poisson và GLM (hàm liên kết log)
Nền tảng của mô hình Log-linear chính là hồi quy Poisson. Hãy xem xét các tần số ô \(n_{ij}\) trong một bảng ngẫu nhiên. Chúng ta có thể coi mỗi \(n_{ij}\) là một hiện thực hóa của một biến ngẫu nhiên dạng đếm. Nếu chúng ta giả định rằng các \(n_{ij}\) này tuân theo phân phối Poisson độc lập với các giá trị kỳ vọng (trung bình) là \(m_{ij}\), tức là \(n_{ij} \sim \text{Poisson}(m_{ij})\), thì đây chính là thành phần ngẫu nhiên của một GLM. \(E(n_{ij}) = m_{ij}\)
Mô hình Log-linear, đúng như tên gọi, mô hình hóa logarit của các tần số kỳ vọng này như một hàm tuyến tính của các tham số. \(\log(m_{ij}) = \text{Tổ hợp tuyến tính của các tham số}\)
Điều này hoàn toàn khớp với kiến trúc của một GLM cho dữ liệu dạng đếm: * Thành phần ngẫu nhiên: Phân phối Poisson. * Hàm liên kết: Hàm Log (là hàm liên kết kinh điển của phân phối Poisson). * Thành phần hệ thống: Một tổ hợp tuyến tính của các tham số biểu thị các hiệu ứng chính và tương tác.
Do đó, mô hình Log-linear thực chất là một trường hợp đặc biệt của hồi quy Poisson, và chúng ta có thể ước lượng nó bằng cách sử dụng hàm glm() trong R với family = poisson. Mối liên hệ này cung cấp một nền tảng lý thuyết vững chắc và các công cụ suy diễn thống kê quen thuộc (MLE, LRT, kiểm định Wald, Deviance) cho mô hình Log-linear.
8.2 Mô hình Log-linear cho bảng ngẫu nhiên hai chiều (IxJ)
Hãy bắt đầu với trường hợp đơn giản nhất: một bảng hai chiều với biến dòng \(X\) (có \(I\) mức) và biến cột \(Y\) (có \(J\) mức). Gọi \(m_{ij}\) là tần số kỳ vọng trong ô \((i,j)\).
8.2.1 Mô hình bão hòa (Saturated model)
Mô hình bão hòa là mô hình phức tạp nhất, nó có đủ tham số để mô tả dữ liệu một cách hoàn hảo. Điều này có nghĩa là tần số kỳ vọng ước tính từ mô hình sẽ bằng đúng tần số quan sát: \(\hat{m}_{ij} = n_{ij}\). Phương trình của mô hình bão hòa là: \[ \log(m_{ij}) = \lambda + \lambda_i^X + \lambda_j^Y + \lambda_{ij}^{XY} \] Trong đó: * \(\lambda\): là một hằng số chung (tương tự hệ số chặn). * \(\lambda_i^X\): là hiệu ứng chính (main effect) của mức thứ \(i\) của biến \(X\). Nó đo lường độ lệch của log-tần số kỳ vọng của dòng \(i\) so với giá trị trung bình chung. * \(\lambda_j^Y\): là hiệu ứng chính của mức thứ \(j\) của biến \(Y\). * \(\lambda_{ij}^{XY}\): là hiệu ứng tương tác (interaction effect) giữa mức \(i\) của \(X\) và mức \(j\) của \(Y\). Nó đo lường mức độ mà mối liên hệ giữa \(X\) và \(Y\) khác biệt so với những gì có thể dự đoán được chỉ từ các hiệu ứng chính. Sự tồn tại của \(\lambda_{ij}^{XY} \ne 0\) cho thấy \(X\) và \(Y\) không độc lập.
Để mô hình có thể nhận dạng được, các ràng buộc thường được áp dụng, ví dụ như \(\sum_i \lambda_i^X = 0\), \(\sum_j \lambda_j^Y = 0\), \(\sum_i \lambda_{ij}^{XY} = 0\) cho mọi \(j\), và \(\sum_j \lambda_{ij}^{XY} = 0\) cho mọi \(i\).
Mô hình bão hòa luôn có Deviance bằng 0 và \(p-1\) bậc tự do (với \(p\) là số tham số). Nó không hữu ích cho việc suy diễn nhưng là mô hình tham chiếu để so sánh với các mô hình đơn giản hơn.
8.2.2 Mô hình độc lập (Independence model)
Mô hình độc lập là mô hình đơn giản nhất, nó giả định rằng hai biến \(X\) và \(Y\) là độc lập thống kê. Điều này tương đương với việc đặt tất cả các hiệu ứng tương tác bằng 0 (\(\lambda_{ij}^{XY} = 0\)). Phương trình của mô hình độc lập là: \[ \log(m_{ij}) = \lambda + \lambda_i^X + \lambda_j^Y \] Mô hình này chỉ chứa các hiệu ứng chính. Tần số kỳ vọng dưới mô hình này chính là tần số mà chúng ta đã tính ở Chương 2 dưới giả thuyết độc lập: \(m_{ij} = \frac{n_{i.}n_{.j}}{N}\). Mối liên hệ giữa các tham số và tần số biên là: * \(\exp(\lambda + \lambda_i^X + \lambda_j^Y) = \exp(\lambda) \exp(\lambda_i^X) \exp(\lambda_j^Y)\)
8.2.3 Diễn giải các tham số
- Tham số \(\lambda\) (lambda): Các tham số này được diễn giải tốt nhất thông qua so sánh.
- Hiệu ứng chính (\(\lambda_i^X, \lambda_j^Y\)): Mô tả phân phối biên của các biến.
- Hiệu ứng tương tác (\(\lambda_{ij}^{XY}\)): Đây là các tham số quan trọng nhất, chúng mô tả mối liên hệ giữa các biến. Trong bảng 2x2, có một mối liên hệ trực tiếp giữa \(\lambda_{11}^{XY}\) và log của odds ratio: \(\log(OR) = \log\left(\frac{m_{11}m_{22}}{m_{12}m_{21}}\right) = 4\lambda_{11}^{XY}\) Nếu \(\lambda_{ij}^{XY}=0\), thì \(\log(OR)=0\), tức \(OR=1\), hai biến độc lập.
8.3 Mô hình Log-linear cho bảng ngẫu nhiên ba chiều (IxJxK)
Với ba biến \(X, Y, Z\), các mô hình Log-linear trở nên cực kỳ hữu ích. Chúng ta có thể xây dựng một hệ thống phân cấp các mô hình, từ đơn giản nhất (độc lập hoàn toàn) đến phức tạp nhất (bão hòa). Ký hiệu vắn tắt: \((X, Y, Z)\) là mô hình độc lập hoàn toàn, \((XY, Z)\) là mô hình \(Z\) độc lập với cặp \((X,Y)\), \((XY, XZ, YZ)\) là mô hình không có tương tác bậc ba.
8.3.1 Các mô hình về tính độc lập
- Độc lập hoàn toàn (Mutual independence): \(X, Y, Z\) độc lập với nhau.
- Ký hiệu: \((X, Y, Z)\)
- Phương trình: \(\log(m_{ijk}) = \lambda + \lambda_i^X + \lambda_j^Y + \lambda_k^Z\)
- Ý nghĩa: Không có bất kỳ mối liên hệ hai chiều nào.
- Độc lập có điều kiện (Conditional independence): Ví dụ, \(X\) và \(Y\) độc lập có điều kiện cho trước \(Z\).
- Ký hiệu: \((XZ, YZ)\)
- Phương trình: \(\log(m_{ijk}) = \lambda + \lambda_i^X + \lambda_j^Y + \lambda_k^Z + \lambda_{ik}^{XZ} + \lambda_{jk}^{YZ}\)
- Ý nghĩa: Trong mỗi tầng của \(Z\), \(X\) và \(Y\) là độc lập. Mối liên hệ giữa \(X\) và \(Y\) có thể được giải thích hoàn toàn bởi \(Z\).
- Độc lập từng cặp (Joint independence): Ví dụ, \(Z\) độc lập với cặp \((X,Y)\).
- Ký hiệu: \((XY, Z)\)
- Phương trình: \(\log(m_{ijk}) = \lambda + \lambda_i^X + \lambda_j^Y + \lambda_k^Z + \lambda_{ij}^{XY}\)
- Ý nghĩa: Biến \(Z\) không liên quan đến \(X\) và cũng không liên quan đến \(Y\).
8.3.2 Các mô hình có tương tác
- Mô hình liên hợp đồng nhất (Homogeneous association / No three-factor interaction):
- Ký hiệu: \((XY, XZ, YZ)\)
- Phương trình: \(\log(m_{ijk}) = \lambda + \lambda_i^X + \lambda_j^Y + \lambda_k^Z + \lambda_{ij}^{XY} + \lambda_{ik}^{XZ} + \lambda_{jk}^{YZ}\)
- Ý nghĩa: Có mối liên hệ hai chiều giữa tất cả các cặp biến, nhưng mối liên hệ giữa hai biến bất kỳ (ví dụ \(X,Y\)) là như nhau (đồng nhất) ở tất cả các mức của biến thứ ba (\(Z\)). Giả định này tương đương với việc không có tương tác bậc ba. Odds ratio \(OR_{XY(k)}\) là không đổi với mọi \(k\).
- Mô hình bão hòa (Saturated model):
- Ký hiệu: \((XYZ)\)
- Phương trình: \(\log(m_{ijk}) = \lambda + \lambda_i^X + \dots + \lambda_{ij}^{XY} + \dots + \lambda_{ijk}^{XYZ}\)
- Ý nghĩa: Có tương tác bậc ba \(\lambda_{ijk}^{XYZ} \ne 0\). Điều này có nghĩa là mối liên hệ giữa hai biến bất kỳ thay đổi tùy thuộc vào mức của biến thứ ba. \(OR_{XY(k)}\) không hằng số qua các mức của \(k\).
8.4 Suy diễn thống kê cho mô hình Log-linear
8.4.1 Ước lượng tham số (MLE)
Các tham số \(\lambda\) được ước lượng bằng MLE, thường thông qua thuật toán IRLS, giống như các GLM khác.
8.4.2 Kiểm định độ phù hợp của mô hình (Goodness-of-fit: \(G^2\), \(\chi^2\))
Sau khi ước lượng một mô hình Log-linear (ví dụ, mô hình độc lập có điều kiện), chúng ta cần đánh giá xem nó có phù hợp với dữ liệu không. Chúng ta so sánh mô hình này với mô hình bão hòa. * Thống kê Deviance (\(G^2\)): \(G^2 = 2 \sum n_{ijk} \log(n_{ijk} / \hat{m}_{ijk})\), trong đó \(\hat{m}_{ijk}\) là tần số kỳ vọng ước tính từ mô hình đang xét. \(G^2\) đo lường sự khác biệt giữa mô hình hiện tại và mô hình bão hòa. * Thống kê Chi-bình phương Pearson (\(X^2\)): \(X^2 = \sum \frac{(n_{ijk} - \hat{m}_{ijk})^2}{\hat{m}_{ijk}}\). Cả hai thống kê này đều xấp xỉ tuân theo phân phối \(\chi^2\) với số bậc tự do \(df\) bằng số tham số tương tác bị đặt bằng 0 so với mô hình bão hòa. * Quyết định: Một p-value lớn (ví dụ > 0.05) là điều mong muốn. Nó có nghĩa là không có đủ bằng chứng để bác bỏ mô hình, tức là mô hình đơn giản hơn này phù hợp tốt với dữ liệu.
8.5 Lựa chọn mô hình Log-linear (Model Selection)
Mục tiêu chính là tìm ra mô hình đơn giản nhất (ít tham số nhất) mà vẫn phù hợp với dữ liệu (có p-value lớn trong kiểm định GOF).
8.5.1 Kiểm định sự khác biệt Deviance khi so sánh các mô hình lồng nhau
Đây là phương pháp chính để lựa chọn. Nếu chúng ta có hai mô hình lồng nhau, \(M_1\) (đơn giản hơn) và \(M_2\) (phức tạp hơn), chúng ta có thể kiểm tra xem việc thêm các tham số vào \(M_2\) có cải thiện độ phù hợp một cách có ý nghĩa không. * Thống kê kiểm định: \(G^2(M_1|M_2) = G^2(M_1) - G^2(M_2)\) * Phân phối: Thống kê này tuân theo phân phối \(\chi^2\) với \(df = df_1 - df_2\). * Quyết định: Một p-value nhỏ cho thấy các tham số thêm vào trong \(M_2\) là có ý nghĩa, và chúng ta nên chọn mô hình \(M_2\) phức tạp hơn.
8.5.2 Quy trình lựa chọn thuận (forward) và ngược (backward)
- Lựa chọn ngược (Backward Elimination):
- Bắt đầu từ mô hình bão hòa (mô hình \((XYZ)\)).
- Bước 1: Loại bỏ tương tác bậc cao nhất (\(\lambda^{XYZ}\)) và kiểm tra mô hình \((XY, XZ, YZ)\). Nếu mô hình này phù hợp (p-value lớn), chúng ta chấp nhận nó và đi tiếp.
- Bước 2: Từ mô hình \((XY, XZ, YZ)\), thử loại bỏ từng hiệu ứng tương tác hai chiều (ví dụ, kiểm tra mô hình \((XZ, YZ)\) bằng cách loại \(\lambda^{XY}\)). Nếu mô hình đơn giản hơn vẫn phù hợp, ta chấp nhận nó.
- Tiếp tục cho đến khi việc loại bỏ thêm bất kỳ tham số nào cũng làm cho mô hình không còn phù hợp với dữ liệu.
- Lựa chọn thuận (Forward Selection):
- Bắt đầu từ mô hình đơn giản nhất (ví dụ, độc lập hoàn toàn \((X,Y,Z)\)).
- Lần lượt thêm vào các hiệu ứng tương tác hai chiều và kiểm tra xem hiệu ứng nào giúp cải thiện mô hình nhiều nhất (giảm Deviance nhiều nhất).
- Tiếp tục cho đến khi việc thêm bất kỳ tham số nào cũng không cải thiện mô hình một cách có ý nghĩa.
Lựa chọn ngược thường được ưu tiên hơn vì nó ít có khả năng bỏ sót các tương tác quan trọng.
8.6 Mối liên hệ giữa mô hình Log-linear và mô hình Logistic
Đây là một mối liên hệ cực kỳ quan trọng. Bất kỳ mô hình logistic nào cũng có một mô hình log-linear tương ứng.
8.6.1 Cách chuyển đổi từ mô hình Log-linear sang mô hình Logistic
Hãy xem xét một bảng ba chiều với \(Y\) là biến phản hồi nhị phân, \(X\) và \(Z\) là các biến độc lập. Mô hình logistic cho \(P(Y=1|X,Z)\) có dạng: \(\log\left(\frac{P(Y=1|X=i, Z=k)}{P(Y=2|X=i, Z=k)}\right) = \text{logit}(P(Y=1|...)) = \text{Tổ hợp tuyến tính của X, Z}\)
Mô hình này tương đương với một mô hình log-linear cụ thể. Ví dụ: * Mô hình logistic chỉ có hệ số chặn: \(\text{logit} = \beta_0\) tương đương với mô hình log-linear \((XZ, Y)\). * Mô hình logistic \(\text{logit} = \beta_0 + \beta_i^X\) tương đương với mô hình log-linear \((XZ, YX)\). * Mô hình logistic \(\text{logit} = \beta_0 + \beta_i^X + \beta_k^Z\) tương đương với mô hình log-linear \((XZ, YX, YZ)\). * Mô hình logistic có tương tác \(\text{logit} = \beta_0 + \beta_i^X + \beta_k^Z + \beta_{ik}^{XZ}\) tương đương với mô hình log-linear \((XYZ)\) (bão hòa).
Nguyên tắc chung: Một mô hình logistic dự báo biến \(Y\) từ các biến \(X_1, ..., X_p\) tương đương với một mô hình log-linear thỏa mãn hai điều kiện: 1. Nó chứa tất cả các hiệu ứng tương tác giữa các biến độc lập (ví dụ, tương tác \(X_1X_2...X_p\)). 2. Nó chứa các hiệu ứng tương tác giữa \(Y\) và từng biến độc lập \(X_j\).
8.6.2 Khi nào sử dụng mô hình Log-linear và khi nào sử dụng mô hình Logistic
- Sử dụng mô hình Logistic khi:
- Có một biến phản hồi rõ ràng và mục tiêu là dự báo hoặc giải thích biến đó.
- Các biến độc lập là hỗn hợp (cả định tính và định lượng). Mô hình Log-linear về cơ bản chỉ dùng cho các biến định tính (biến định lượng cần được phân nhóm).
- Bạn không quan tâm đến các mối liên hệ giữa các biến độc lập với nhau.
- Sử dụng mô hình Log-linear khi:
- Không có một biến phản hồi rõ ràng; bạn muốn nghiên cứu cấu trúc liên hợp tổng thể.
- Tất cả các biến đều là định tính.
- Bạn muốn kiểm tra các giả thuyết phức tạp về tính độc lập có điều kiện.
- Bạn quan tâm đến các mối liên hệ giữa các biến “độc lập”.
8.7 Ứng dụng R trong phân tích mô hình Log-linear
Có hai cách chính để ước lượng mô hình log-linear trong R:
8.7.1 Sử dụng hàm glm() với family=poisson(link="log")
Đây là cách tiếp cận hiện đại và linh hoạt, dựa trên mối liên hệ giữa mô hình log-linear và hồi quy Poisson.
# Ví dụ: Dữ liệu UCBAdmissions (Admit, Gender, Dept)
data(UCBAdmissions)
ucb_df <- as.data.frame.table(UCBAdmissions) # Chuyển thành data frame dạng 'long'
# Mô hình độc lập hoàn toàn (A, G, D)
model_indep <- glm(Freq ~ Admit + Gender + Dept, data = ucb_df, family = poisson)
summary(model_indep)
# Mô hình không có tương tác bậc ba (AG, AD, GD)
# Dấu * tạo ra cả hiệu ứng chính và tương tác: A*G = A + G + A:G
model_no_int3 <- glm(Freq ~ (Admit + Gender + Dept)^2, data = ucb_df, family = poisson)
# Hoặc: Freq ~ Admit*Gender + Admit*Dept + Gender*Dept
summary(model_no_int3)
# Mô hình bão hòa (AGD)
model_sat <- glm(Freq ~ Admit*Gender*Dept, data = ucb_df, family = poisson)
summary(model_sat)
# So sánh các mô hình bằng LRT
anova(model_indep, model_no_int3, test = "Chisq")
anova(model_no_int3, model_sat, test = "Chisq")Phân tích anova cho phép chúng ta lựa chọn mô hình. Ví dụ, so sánh model_no_int3 và model_sat giúp kiểm tra sự tồn tại của tương tác bậc ba.
8.7.2 Sử dụng hàm loglm() trong gói MASS
Đây là hàm cổ điển được thiết kế riêng cho mô hình log-linear. Nó làm việc trực tiếp với đối tượng table.
library(MASS)
data(UCBAdmissions)
# Mô hình độc lập hoàn toàn (A, G, D)
loglm_indep <- loglm(~ Admit + Gender + Dept, data = UCBAdmissions)
summary(loglm_indep) # Output sẽ có G^2 và X^2
# Mô hình độc lập có điều kiện (Admit-Gender, cho trước Dept)
# (AD, GD)
loglm_cond_indep <- loglm(~ Admit*Dept + Gender*Dept, data = UCBAdmissions)
summary(loglm_cond_indep)
# Mô hình không có tương tác bậc ba
loglm_no_int3 <- loglm(~ (Admit + Gender + Dept)^2, data = UCBAdmissions)
summary(loglm_no_int3)loglm cung cấp output súc tích, tập trung vào kiểm định độ phù hợp (\(G^2, X^2\)).
8.8 Tóm tắt chương
Chương 6 đã giới thiệu mô hình Log-linear như một công cụ mạnh mẽ để phân tích cấu trúc liên hợp trong các bảng ngẫu nhiên, đặc biệt là bảng nhiều chiều.
- Bản chất của Mô hình Log-linear: Chúng ta đã hiểu rằng mô hình này không phân biệt biến độc lập/phụ thuộc mà tập trung mô tả logarit của tần số kỳ vọng như một hàm tuyến tính của các hiệu ứng chính và tương tác.
- Nền tảng GLM: Mô hình Log-linear về cơ bản là một ứng dụng của hồi quy Poisson với hàm liên kết Log. Điều này cho phép chúng ta sử dụng toàn bộ khung lý thuyết và công cụ suy diễn của GLM.
- Mô hình hóa Bảng Hai chiều và Ba chiều: Đã học cách xây dựng và diễn giải các mô hình khác nhau, từ mô hình độc lập, liên hợp đồng nhất, đến mô hình bão hòa, thông qua các tham số \(\lambda\).
- Lựa chọn mô hình: Kỹ thuật chính để chọn ra mô hình phù hợp nhất là so sánh các mô hình lồng nhau bằng Kiểm định Tỷ số hợp lý (hiệu số Deviance), thường được thực hiện theo quy trình lựa chọn ngược.
- Mối liên hệ với Mô hình Logistic: Một điểm nhấn quan trọng là việc làm rõ mối quan hệ một-một giữa các mô hình logistic và các mô hình log-linear tương ứng, giúp hiểu sâu hơn về cả hai phương pháp.
- Thực hành với R: Đã thực hành xây dựng và so sánh các mô hình log-linear bằng cả hai phương pháp: hàm
glm()hiện đại và hàmloglm()cổ điển.
Nắm vững mô hình Log-linear cung cấp một góc nhìn toàn diện hơn về dữ liệu định tính, bổ sung hoàn hảo cho các kỹ thuật hồi quy đã học và là bước đệm cho các chủ đề nâng cao hơn.
8.9 Case studies
Case Study 6.1: Phân tích các yếu tố liên quan đến tai nạn ô tô
Bối cảnh: Dữ liệu về 1000 vụ tai nạn ô tô được thu thập, bao gồm:
Severity(Mức độ nghiêm trọng: Nhẹ, Nặng),Location(Vị trí: Đô thị, Nông thôn), vàDriver_Age(Nhóm tuổi người lái: Trẻ <25, Trung niên 25-60, Già >60).Nhiệm vụ:
- Xác định mô hình log-linear đơn giản nhất phù hợp với dữ liệu.
- Bắt đầu từ mô hình bão hòa và sử dụng quy trình lựa chọn ngược.
- Diễn giải mô hình cuối cùng bằng lời.
Phân tích bằng R:
# Giả lập dữ liệu set.seed(601) df_accident <- data.frame( Severity = factor(sample(c("Nhẹ", "Nặng"), 1000, replace=TRUE, prob=c(0.7,0.3))), Location = factor(sample(c("Đô thị", "Nông thôn"), 1000, replace=TRUE))), Driver_Age = factor(sample(c("Trẻ", "Trung niên", "Già"), 1000, replace=TRUE, prob=c(0.3,0.5,0.2))) ) # Tạo bảng tần số accident_table <- xtabs(~ Severity + Location + Driver_Age, data = df_accident) # 1 & 2. Lựa chọn ngược library(MASS) # Mô hình bão hòa (S*L*A) # Mô hình không có tương tác bậc ba (SL, SA, LA) model1 <- loglm(~ Severity*Location + Severity*Driver_Age + Location*Driver_Age, data=accident_table) summary(model1) # Kiểm tra xem mô hình này có phù hợp không (p-value lớn) # Nếu model1 phù hợp, thử loại bỏ từng tương tác 2 chiều # Loại bỏ tương tác Location:Age model2a <- loglm(~ Severity*Location + Severity*Driver_Age, data=accident_table) anova(model2a, model1) # p-value nhỏ -> không nên loại bỏ L:A # Loại bỏ tương tác Severity:Age model2b <- loglm(~ Severity*Location + Location*Driver_Age, data=accident_table) anova(model2b, model1) # Loại bỏ tương tác Severity:Location model2c <- loglm(~ Severity*Driver_Age + Location*Driver_Age, data=accident_table) anova(model2c, model1) # 3. Diễn giải: Dựa vào mô hình tốt nhất. Ví dụ, nếu model1 là tốt nhất, # kết luận là có mối liên hệ hai chiều giữa tất cả các cặp biến, nhưng mối liên hệ này # là đồng nhất (ví dụ, mối liên hệ giữa mức độ nghiêm trọng và vị trí là như nhau # ở tất cả các nhóm tuổi).
Case Study 6.2: Mối liên hệ giữa Giáo dục, Giới tính và Quan điểm chính trị
Bối cảnh: Một khảo sát xã hội thu thập dữ liệu về
Education(Học vấn: Dưới ĐH, Đại học trở lên),Gender(Giới tính: Nam, Nữ), vàParty(Đảng phái ưa thích: Đảng A, Đảng B, Trung lập).Nhiệm vụ:
- Sử dụng
glm()để xây dựng các mô hình log-linear có thể có. - Sử dụng
anova()để so sánh các mô hình và tìm ra mô hình phù hợp nhất. - Nếu mô hình cuối cùng là độc lập có điều kiện, ví dụ (EG, PG), hãy diễn giải ý nghĩa của nó.
- Sử dụng
Phân tích bằng R:
# Giả lập dữ liệu set.seed(602) df_politics <- data.frame( Education = factor(sample(c("DuoiDH", "TrenDH"), 500, replace=TRUE)), Gender = factor(sample(c("Nam", "Nu"), 500, replace=TRUE)), Party = factor(sample(c("A", "B", "Trunglap"), 500, replace=TRUE, prob=c(0.4,0.4,0.2))) ) df_politics_table <- xtabs(~ ., data=df_politics) df_politics_long <- as.data.frame(df_politics_table) # Xây dựng các mô hình m_sat <- glm(Freq ~ Education*Gender*Party, data=df_politics_long, family=poisson) m_noint3 <- glm(Freq ~ Education*Gender + Education*Party + Gender*Party, data=df_politics_long, family=poisson) m_cond_indep_EP_G <- glm(Freq ~ Education*Party + Gender, data=df_politics_long, family=poisson) # (EP, G) m_cond_indep_EG_PG <- glm(Freq ~ Education*Gender + Party*Gender, data=df_politics_long, family=poisson) # (EG, PG) # So sánh anova(m_cond_indep_EG_PG, m_noint3, m_sat, test="Chisq") # 3. Diễn giải (EG, PG): # Mối liên hệ giữa Học vấn và Đảng phái là độc lập, với điều kiện đã biết Giới tính. # Nói cách khác, nếu chúng ta chỉ xem xét Nam hoặc chỉ xem xét Nữ, thì học vấn không # liên quan đến việc chọn đảng phái. Tuy nhiên, có mối liên hệ giữa Học vấn-Giới tính # và Đảng phái-Giới tính.
Case Study 6.3: Chuyển đổi giữa Mô hình Log-linear và Logistic
Bối cảnh: Sử dụng lại dữ liệu từ Case Study 6.2. Nhà nghiên cứu muốn xây dựng một mô hình logistic để dự báo việc chọn
Partylà “Trung lập” hay không (biến nhị phânIs_Neutral), dựa trênEducationvàGender.Nhiệm vụ:
- Tạo biến nhị phân
Is_Neutral. - Xây dựng mô hình logistic:
Is_Neutral ~ Education * Gender. - Tìm mô hình log-linear tương ứng với mô hình logistic này.
- So sánh các hệ số từ hai mô hình để thấy mối liên hệ.
- Tạo biến nhị phân
Phân tích bằng R:
# 1. Tạo biến nhị phân df_politics$Is_Neutral <- ifelse(df_politics$Party == "Trunglap", 1, 0) # 2. Xây dựng mô hình logistic logit_model <- glm(Is_Neutral ~ Education * Gender, data = df_politics, family = binomial) summary(logit_model) # 3. Tìm mô hình log-linear tương ứng # Biến phản hồi là Party, biến độc lập là Education, Gender # Mô hình log-linear tương ứng sẽ có tương tác bậc cao nhất giữa các biến độc lập (E*G) # và các tương tác giữa biến phản hồi và các biến độc lập (P*E, P*G) # Ký hiệu: (EG, PE, PG) # Tuy nhiên, vì Y là nhị phân (Trung lập vs Không), nên biến Party cũng là nhị phân # Ta dùng lại df_politics_long df_politics_long$Is_Neutral <- ifelse(df_politics_long$Party == "Trunglap", "Yes", "No") loglin_equiv <- glm(Freq ~ Education*Gender + Is_Neutral*Education + Is_Neutral*Gender, data = df_politics_long, family = poisson) summary(loglin_equiv) # 4. So sánh: Các hệ số tương tác với Is_Neutral trong mô hình log-linear sẽ # tỷ lệ với các hệ số tương ứng trong mô hình logistic.
8.10 Bài tập
8.10.1 Bài tập lý thuyết
- Mục đích chính của mô hình Log-linear là gì? Nó khác với mô hình hồi quy logistic như thế nào về mục tiêu phân tích?
- Giải thích mối quan hệ giữa mô hình Log-linear, phân phối Poisson và GLM.
- Trong mô hình log-linear cho bảng 2x2, \(\log(m_{ij}) = \lambda + \lambda_i^X + \lambda_j^Y + \lambda_{ij}^{XY}\), tham số nào cho biết hai biến X và Y không độc lập? Mối liên hệ giữa tham số đó và Odds Ratio là gì?
- Mô hình log-linear \((XY, XZ, YZ)\) cho bảng 3 chiều có ý nghĩa là gì? Giả định nào được đặt ra trong mô hình này?
- Mô hình log-linear \((XY, Z)\) có ý nghĩa là gì?
- Khi đánh giá độ phù hợp của một mô hình log-linear, một p-value lớn (ví dụ > 0.1) từ kiểm định Deviance có ý nghĩa tốt hay xấu? Tại sao?
- Mô tả quy trình lựa chọn mô hình ngược (backward elimination) trong phân tích log-linear cho bảng 3 chiều.
- Nêu ít nhất một tình huống bạn sẽ ưu tiên sử dụng mô hình Logistic và một tình huống bạn sẽ ưu tiên sử dụng mô hình Log-linear.
- Một mô hình logistic dự báo biến Y (nhị phân) từ hai biến độc lập định tính X và Z, không có tương tác: \(\text{logit}(P(Y=1)) = \beta_0 + \beta_i^X + \beta_k^Z\). Mô hình log-linear tương ứng có ký hiệu là gì?
- Tại sao mô hình Log-linear thường không phù hợp khi có các biến độc lập là biến liên tục?
8.10.2 Bài tập thực hành với R
- Phân tích bảng 2 chiều: Sử dụng dữ liệu
HairEyeColor.- Tạo bảng 2 chiều gộp giữa
HairvàEye. - Sử dụng
glm()vớifamily=poissonđể ước lượng mô hình độc lập~ Hair + Eye. - Xem
summary()của mô hình. Dựa vào Deviance và df, bạn kết luận gì về giả thuyết độc lập? - So sánh kết quả này với kết quả từ
chisq.test().
- Tạo bảng 2 chiều gộp giữa
- Mô hình bão hòa và độc lập: Vẫn dùng bảng
HairvsEye.- Ước lượng mô hình bão hòa
~ Hair * Eye. - Deviance của mô hình bão hòa là bao nhiêu? Tại sao?
- Sử dụng
anova()để so sánh mô hình độc lập và mô hình bão hòa. p-value của kiểm định này có ý nghĩa gì?
- Ước lượng mô hình bão hòa
- Phân tích bảng 3 chiều với
loglm(): Sử dụng dữ liệuTitaniccó sẵn trong R. Các biến làClass,Sex,Age,Survived.- Tạo một bảng 3 chiều gộp giữa
Class,Sex,Survived(bỏ quaAge). - Sử dụng
loglm()để ước lượng và kiểm tra độ phù hợp của mô hình liên hợp đồng nhất \((CS, CS, SS)\). - Kiểm tra mô hình độc lập có điều kiện:
Survivedđộc lập vớiClasscho trướcSex. Ký hiệu mô hình này là gì? Ước lượng và kiểm tra nó.
- Tạo một bảng 3 chiều gộp giữa
- Lựa chọn mô hình với
glm(): Vẫn dùng bảng 3 chiều từ bài 13 (Class,Sex,Survived).- Chuyển bảng thành data frame dạng
long(với cộtFreq). - Sử dụng
glm()vàanova()để thực hiện quy trình lựa chọn ngược, bắt đầu từ mô hình bão hòa. - Mô hình cuối cùng bạn chọn là gì? Diễn giải mô hình đó.
- Chuyển bảng thành data frame dạng
- Mối liên hệ giữa Log-linear và Logistic: Sử dụng dữ liệu từ bài 13.
- Xây dựng mô hình logistic
glm()để dự báoSurviveddựa trênClassvàSex(có cả tương tác). - Mô hình log-linear tương ứng với mô hình logistic này là gì?
- Xây dựng mô hình log-linear đó và xác nhận rằng Deviance của nó bằng 0.
- Xây dựng mô hình logistic
- Nghịch lý Simpson dưới góc nhìn Log-linear: Sử dụng dữ liệu
UCBAdmissions.- Tạo bảng 2 chiều gộp giữa
AdmitvàGender. Chạy mô hình log-linear độc lập và cho thấy nó không phù hợp. - Xây dựng mô hình log-linear \((AD, GD)\) cho bảng 3 chiều
AdmitxGenderxDept. Mô hình này có ý nghĩa là gì? Nó có phù hợp với dữ liệu không? - Xây dựng mô hình \((AG, AD, GD)\). So sánh nó với mô hình ở câu b. Kết luận gì về sự tồn tại của liên hệ
Admit-Gendersau khi đã kiểm soátDept?
- Tạo bảng 2 chiều gộp giữa
- Diễn giải hệ số: Sử dụng mô hình liên hợp đồng nhất \((CS, SS, CS)\) từ bài 13.
- Trích xuất các hệ số của mô hình.
- Tìm hiểu cách diễn giải một hệ số tương tác, ví dụ
Class1st:SexMale.
- Đồ thị Mosaic và Mô hình Log-linear:
- Vẽ biểu đồ mosaic cho mô hình độc lập của bảng
HairvsEye. - Sử dụng
mosaic()với tùy chọnshade=TRUEđể tô màu các ô dựa trên phần dư. So sánh hình ảnh này với kết quả kiểm định độ phù hợp từ bài 11. - Vẽ biểu đồ mosaic cho mô hình liên hợp đồng nhất của bảng
Titanic3 chiều.
- Vẽ biểu đồ mosaic cho mô hình độc lập của bảng
- Phân tích dữ liệu cá nhân: Tìm một bộ dữ liệu có ít nhất 3 biến định tính từ Kaggle hoặc UCI (ví dụ, bộ dữ liệu Mushroom).
- Chọn ra 3 biến bạn quan tâm.
- Tạo bảng chéo 3 chiều.
- Thực hiện quy trình lựa chọn mô hình log-linear để tìm ra cấu trúc liên hợp giữa 3 biến này.
- Viết một đoạn văn ngắn tóm tắt kết quả của bạn.
- Ước lượng tần số ô: Sử dụng mô hình tốt nhất bạn tìm thấy ở bài 14.
- Sử dụng hàm
fitted()để trích xuất các tần số kỳ vọng \(\hat{m}_{ijk}\) từ mô hình đó. - Tạo một bảng so sánh giữa tần số quan sát (\(n_{ijk}\)) và tần số kỳ vọng ước tính (\(\hat{m}_{ijk}\)).
- Sử dụng hàm
8.11 Tài liệu tham khảo
- Agresti, A. (2013). Categorical Data Analysis (3rd ed.). Wiley. (Chương 9 là tài liệu tham khảo chính).
- Bishop, Y. M. M., Fienberg, S. E., & Holland, P. W. (1975). Discrete Multivariate Analysis: Theory and Practice. MIT Press. (Tác phẩm kinh điển về mô hình log-linear).
- Friendly, M., & Meyer, D. (2016). Discrete Data Analysis with R: Visualization and Modeling Techniques for Categorical and Count Data. Chapman and Hall/CRC.
- Knoke, D., & Burke, P. J. (1980). Log-Linear Models. Sage Publications.
- Powers, D. A., & Xie, Y. (2008). Statistical Methods for Categorical Data Analysis (2nd ed.). Emerald Group Publishing.
- Venables, W. N., & Ripley, B. D. (2002). Modern Applied Statistics with S (4th ed.). Springer. (Tài liệu tham khảo cho gói
MASS).
```