Multicollinearity là gì, cách nhận biết và khắc phục trong SPSS

Thống kê··14 phút đọc

Multicollinearity là gì

Multicollinearity, tiếng Việt thường gọi là đa cộng tuyến, xảy ra khi một biến độc lập có quan hệ tuyến tính khá mạnh với một hoặc nhiều biến độc lập khác trong cùng mô hình hồi quy. Khi đó, mô hình khó tách riêng ảnh hưởng của từng biến lên biến phụ thuộc. Bạn vẫn có thể chạy được hồi quy, nhưng hệ số hồi quy, sai số chuẩn và p-value có thể trở nên không ổn định.

Trong hồi quy tuyến tính, multicollinearity được đánh giá giữa các biến độc lập, không phải giữa biến độc lập và biến phụ thuộc. Hai chỉ số bạn thường thấy trong bảng Coefficients của SPSS là ToleranceVIF.

Công thức thường dùng là:

Tolerance_j = 1 - R²_j

VIF_j = 1 / Tolerance_j

Trong đó, R²_j là hệ số xác định khi biến độc lập thứ j được hồi quy theo các biến độc lập còn lại. Tolerance càng nhỏ thì VIF càng lớn, cho thấy biến đó có thể đang trùng lặp nhiều thông tin với các biến khác.

Bạn cần phân biệt đa cộng tuyến với outliers, vì outliers là quan sát bất thường, còn multicollinearity là vấn đề về mối quan hệ giữa các biến trong mô hình.

Ý nghĩa của multicollinearity trong nghiên cứu định lượng

Multicollinearity ảnh hưởng trực tiếp đến quyết định giữ biến, diễn giải giả thuyết và kết luận về tác động của các yếu tố. Khi hai biến độc lập đo những nội dung rất gần nhau, mô hình có thể khó xác định biến nào thực sự giải thích biến phụ thuộc.

Một biểu hiện thường gặp là mô hình có R Square khá tốt nhưng nhiều biến lại có p-value lớn trong bảng Coefficients. Cũng có trường hợp dấu của hệ số hồi quy ngược với giả thuyết hoặc thay đổi mạnh khi bạn thêm, bớt một biến. Những dấu hiệu này chưa đủ để kết luận có đa cộng tuyến, nhưng là lý do để kiểm tra ToleranceVIF.

Hậu quả thường gặp gồm:

  • Sai số chuẩn của hệ số hồi quy tăng, làm giảm khả năng phát hiện tác động có ý nghĩa thống kê.
  • Hệ số hồi quy có thể dao động mạnh giữa các mô hình gần giống nhau.
  • Dấu âm hoặc dấu dương của hệ số có thể trái với kỳ vọng lý thuyết.
  • Việc diễn giải tác động riêng của từng biến trở nên khó bảo vệ trước hội đồng.
  • Một biến có thể không có ý nghĩa thống kê dù tương quan đơn biến với biến phụ thuộc khá rõ.

Multicollinearity không tự động có nghĩa là mô hình phải bỏ ngay một biến. Nếu hai khái niệm khác nhau về mặt lý thuyết, bạn cần xem cả bằng chứng thống kê, nội dung thang đo và mô hình nghiên cứu. Việc xóa biến chỉ để làm VIF đẹp hơn có thể khiến mô hình mất ý nghĩa.

Nếu đề tài của bạn có biến tương tác, hãy phân biệt đa cộng tuyến với biến điều tiết. Biến điều tiết trả lời câu hỏi một mối quan hệ thay đổi như thế nào theo điều kiện khác, còn multicollinearity phản ánh mức độ chồng lấn giữa các biến đưa vào cùng phương trình. Bạn có thể xem thêm moderating là gìmoderator là gì để tránh trộn hai khái niệm này.

Bạn có thể xem thêm các bài trong chủ đề Thống kê khi cần đối chiếu multicollinearity với các bước kiểm tra hồi quy khác.

Multicollinearity bao nhiêu là đạt

Trong các luận văn định lượng, VIF và Tolerance thường được dùng để đánh giá đa cộng tuyến. Tuy nhiên, ngưỡng cần được ghi cùng nguồn, không nên trình bày như một quy luật tuyệt đối áp dụng cho mọi đề tài. Bảng dưới đây tập trung vào ngưỡng phổ biến khi báo cáo hồi quy và PLS-SEM.

Chỉ số hoặc tiêu chíCách đọc trong thực hànhNguồn
ToleranceGiá trị càng gần 1 càng cho thấy biến ít bị giải thích bởi các biến độc lập còn lại. Tolerance rất thấp là dấu hiệu cần kiểm tra đa cộng tuyến.(Field, 2013)
VIF trong hồi quyVIF dưới 5 thường được dùng như ngưỡng kiểm tra thực hành.(Hair và cộng sự, 2019)
VIF trong PLS-SEMVIF dưới 5 là mức thường được báo cáo khi đánh giá collinearity giữa các predictor.(Hair và cộng sự, 2019)
VIF từ 5 trở lênCần xem lại tương quan, nội dung biến, cách mã hóa và cấu trúc mô hình trước khi quyết định xử lý.(Hair và cộng sự, 2019)
Cỡ mẫu hồi quyVới m biến độc lập, một quy tắc được trích dẫn là n từ 50 + 8m trở lên. Đây là tiêu chí về cỡ mẫu, không phải ngưỡng VIF.(Tabachnick và Fidell, 2013)

Trong SPSS, bạn có thể dùng VIF dưới 5 làm tiêu chí chính nếu phương pháp và tài liệu của đề tài phù hợp. Tolerance thường được đọc cùng VIF để kiểm tra chéo. Đừng viết rằng mọi VIF dưới 10 đều chắc chắn đạt nếu chương phương pháp của bạn đang sử dụng ngưỡng dưới 5.

Với SmartPLS, VIF thuộc nhóm đánh giá collinearity trong mô hình đo lường hoặc mô hình cấu trúc tùy vị trí kiểm tra. Các chỉ số CFI, TLIRMSEA thuộc nhóm đánh giá độ phù hợp của CB-SEM, không nên đưa vào bài báo cáo multicollinearity của PLS-SEM.

Cách đọc multicollinearity trên output

Nếu bạn đang kiểm tra hồi quy tuyến tính bằng SPSS, mở Analyze > Regression > Linear. Đưa biến phụ thuộc vào ô Dependent, các biến giải thích vào ô Independent(s), sau đó bấm Statistics. Chọn Estimates, Model fit, Collinearity diagnostics và tiếp tục chạy mô hình.

Bảng cần đọc là Coefficients. Hai cột ToleranceVIF nằm trong phần Collinearity Statistics. Bạn đọc từng dòng biến độc lập, không đọc một giá trị chung cho cả mô hình.

Số liệu minh họa

Bảng dưới đây là số liệu minh họa được định dạng theo output SPSS. Đây không phải kết quả của một nghiên cứu cụ thể.

CoefficientsBStd. ErrorBetatSig.ToleranceVIF
Constant0.8420.3172.6570.009
Chất lượng cảm nhận0.2860.0710.3014.0280.0000.6421.558
Giá trị cảm nhận0.1940.0830.1762.3370.0220.5141.946
Sự thuận tiện0.0910.0780.0841.1670.2470.2384.202
Ý định tiếp tục0.3580.0960.3263.7290.0000.2054.878

Trong ví dụ này, Ý định tiếp tục có VIF = 4.878, vẫn thấp hơn 5 nhưng đã khá sát ngưỡng. Bạn không nên chỉ nhìn cột Sig. rồi kết luận. Biến này có p-value bằng 0.000 theo cách SPSS hiển thị, nhưng việc có ý nghĩa thống kê không loại bỏ khả năng biến đang chia sẻ thông tin với các predictor khác.

Sự thuận tiện có VIF = 4.202. Nếu nghiên cứu dùng ngưỡng VIF dưới 5, giá trị này có thể được chấp nhận, nhưng nên kiểm tra thêm tương quan giữa các biến và nội dung các biến quan sát. Nếu có VIF từ 5 trở lên, cần xem lại trước khi diễn giải hệ số.

Đừng đọc VIF như phần trăm tác động. VIF = 4 không có nghĩa biến đó tác động 4% lên biến phụ thuộc. Nó phản ánh mức độ phóng đại phương sai của ước lượng do quan hệ với các biến độc lập khác.

Khi multicollinearity không đạt thì xử lý thế nào

Bạn nên xử lý theo thứ tự từ nguyên nhân dữ liệu đến nguyên nhân mô hình. Mỗi thay đổi cần được ghi lại để có thể giải trình trong chương 4.

Kiểm tra mã hóa và dữ liệu gốc

Trước tiên, kiểm tra các biến có bị nhập nhầm thang đo, đảo chiều sai hoặc nhập trùng cột hay không. Một biến đáng lẽ được mã hóa từ 1 đến 5 nhưng lại có giá trị 51 sẽ làm kết quả lệch. Bạn cũng cần kiểm tra các biến định danh, biến kiểm soát và biến giả đã được mã hóa đúng chưa.

Nếu bạn dùng biến tổng hợp, hãy chắc rằng điểm trung bình hoặc tổng điểm được tính đúng từ các biến quan sát đã đạt yêu cầu. Có thể xem hướng xử lý thang đo ở bài scale là gì, nhất là khi hai thang đo có nhiều biến quan sát diễn đạt gần giống nhau.

Xem ma trận tương quan và nội dung biến

Chạy Analyze > Correlate > Bivariate để xem tương quan giữa các biến độc lập. Tương quan cao là dấu hiệu cảnh báo, nhưng không thay thế cho VIF trong mô hình hồi quy. Sau đó đọc lại câu chữ của các biến quan sát. Hai khái niệm có thể tương quan vì chúng thực sự gần nhau về lý thuyết, hoặc vì bảng hỏi dùng cách diễn đạt gần như trùng lặp.

Loại một biến có cơ sở lý thuyết yếu hơn

Nếu hai biến đo gần cùng một nội dung và một biến có cơ sở lý thuyết yếu hơn, bạn có thể cân nhắc loại biến đó. Quyết định cần dựa trên mô hình nghiên cứu, thang đo gốc, độ tin cậy và mục tiêu nghiên cứu, không chỉ dựa vào việc biến nào có p-value lớn hơn.

Sau khi loại, chạy lại mô hình và lưu cả output trước, sau khi xử lý. Không nên xóa liên tục nhiều biến cho đến khi VIF đạt mà không ghi lại các vòng chạy.

Gộp hoặc điều chỉnh mô hình khi lý thuyết cho phép

Trong một số nghiên cứu, các biến quá gần nhau có thể được mô hình hóa thành một khái niệm rộng hơn. Cách này chỉ phù hợp khi có lập luận lý thuyết và thang đo hỗ trợ. Bạn không nên gộp hai biến chỉ vì chúng có tương quan cao.

Nếu đa cộng tuyến xuất hiện do tạo biến tương tác, có thể cân nhắc mean-centering các biến thành phần trước khi tạo tích tương tác. Cách này giúp giảm tương quan không cần thiết giữa biến gốc và biến tương tác, nhưng không giải quyết việc hai khái niệm gốc vốn đã trùng lặp về nội dung.

Giữ biến và giải trình khi VIF vẫn trong ngưỡng

Nếu VIF dưới ngưỡng bạn đã chọn, biến vẫn có thể được giữ dù VIF không bằng 1. Trong bài viết, bạn cần nêu ngưỡng, kết quả cao nhất và kết luận về collinearity. Nếu VIF cao nhưng vẫn dưới ngưỡng, hãy trình bày thận trọng và giải thích vì sao giữ biến dựa trên lý thuyết.

Nếu VIF vượt ngưỡng rõ ràng, việc đổi phần mềm hoặc chạy lại nhiều lần không làm nguyên nhân biến mất. AMOS, JASP hay R có thể cung cấp cách kiểm tra khác, nhưng dữ liệu và cấu trúc mô hình vẫn là nền tảng. Thuê dịch vụ chạy SPSS có thể tiết kiệm thời gian thao tác, nhưng bạn vẫn cần hiểu lý do giữ hoặc loại biến khi bị hỏi ở buổi bảo vệ.

Phân biệt multicollinearity với tương quan và mediator

Tương quan là mức độ hai biến đi cùng nhau, thường được xem xét từng cặp. Multicollinearity là vấn đề của một biến độc lập khi được xem xét cùng toàn bộ các biến độc lập còn lại trong một phương trình. Vì vậy, ma trận tương quan thấp giữa từng cặp chưa chắc bảo đảm mô hình không có collinearity trong mọi cấu hình, và tương quan cao cũng chưa tự động quyết định phải xóa biến.

Mediator, hay biến trung gian, là biến giải thích cơ chế truyền tác động từ X đến Y. Ví dụ, X ảnh hưởng đến mediator, rồi mediator ảnh hưởng đến Y. Đây là câu hỏi về đường dẫn và tác động gián tiếp, không phải tên gọi khác của multicollinearity. Bạn có thể xem bài mediator là gì khi mô hình của bạn có tác động trung gian.

Cũng cần phân biệt moderator với mediator. Moderator làm thay đổi độ mạnh hoặc hướng của mối quan hệ, còn mediator nằm trên cơ chế truyền tác động. Cả hai loại mô hình đều có thể phát sinh collinearity khi đưa nhiều biến vào phương trình, nhưng cách xây dựng giả thuyết và cách kiểm định là khác nhau.

Lỗi thường gặp

Chỉ nhìn p-value để kết luận không có đa cộng tuyến

p-value cho biết bằng chứng về hệ số trong mô hình, còn VIF và Tolerance giúp đánh giá mức độ chồng lấn giữa các predictor. Một biến có p-value lớn chưa chắc là biến gây đa cộng tuyến, và một biến có p-value nhỏ cũng không chứng minh mô hình không có vấn đề này.

Dùng ngưỡng nhưng không ghi nguồn

Câu “VIF dưới 10 là đạt” xuất hiện khá nhiều trong luận văn, nhưng nếu bạn chọn ngưỡng khác với tài liệu phương pháp thì hội đồng có thể hỏi căn cứ. Hãy ghi rõ tiêu chí bạn dùng, nguồn trích dẫn và giá trị VIF lớn nhất quan sát được.

Xóa biến chỉ để làm đẹp output

Xóa biến có thể làm VIF giảm nhưng đồng thời làm thay đổi ý nghĩa mô hình. Trước khi xóa, hãy kiểm tra biến đó có phải thành phần bắt buộc của giả thuyết hay không, thang đo có bị mất nội dung quan trọng không và kết quả sau khi xóa có còn trả lời câu hỏi nghiên cứu không.

Nhầm VIF với độ tin cậy thang đo

VIF không thay thế Cronbach's Alpha, Composite Reliability hay AVE. Độ tin cậy và giá trị thang đo trả lời câu hỏi biến có đo lường nhất quán, phù hợp hay không. VIF trả lời câu hỏi các predictor có bị chồng lấn trong mô hình hay không.

Câu hỏi thường gặp

Multicollinearity là gì trong SPSS?

Trong SPSS, multicollinearity là tình trạng các biến độc lập trong mô hình hồi quy có quan hệ tuyến tính mạnh với nhau. Bạn kiểm tra chủ yếu qua cột ToleranceVIF trong bảng Coefficients, đồng thời xem xét bối cảnh lý thuyết và dữ liệu gốc.

VIF bao nhiêu là đạt?

VIF dưới 5 thường được dùng làm ngưỡng thực hành trong báo cáo PLS-SEM và kiểm tra collinearity, theo (Hair và cộng sự, 2019). Bạn nên ghi rõ ngưỡng đã chọn và không khẳng định rằng một giá trị sát ngưỡng chắc chắn không cần xem xét thêm.

Tolerance bao nhiêu là đạt?

Tolerance càng thấp thì nguy cơ đa cộng tuyến càng cao, vì nó cho biết phần thông tin riêng còn lại của một predictor sau khi xét các predictor khác. Khi đọc output, hãy dùng Tolerance cùng VIF thay vì tách riêng một chỉ số. Nếu giá trị thấp bất thường, kiểm tra lại mã hóa, biến trùng lặp và cấu trúc mô hình.

Bị multicollinearity thì phải làm sao?

Bạn hãy kiểm tra dữ liệu, mã hóa, tương quan giữa các biến và nội dung thang đo trước. Sau đó mới cân nhắc loại một biến có cơ sở lý thuyết yếu hơn, điều chỉnh mô hình hoặc giữ biến nếu VIF vẫn nằm trong ngưỡng đã chọn. Mọi thay đổi cần được lưu lại và giải trình.

Có cần chạy lại hồi quy khi VIF cao không?

Nếu VIF vượt ngưỡng, bạn nên chạy lại sau khi có một quyết định xử lý có căn cứ. Chạy lại mà không thay đổi dữ liệu hoặc mô hình chỉ tạo thêm một bản output, không giải quyết nguyên nhân. Hãy lưu output gốc và output sau xử lý để so sánh.

Mở file của bạn, vào đúng bảng Coefficients, ghi lại VIF và Tolerance của từng biến, sau đó kiểm tra ngưỡng cùng nguồn trước khi quyết định xóa hay giữ biến. Nếu cần chạy phân tích trên chính file .sav hoặc .csv và theo dõi từng vòng xử lý, bạn có thể dùng M4 phân tích của DoThesis.