Cách chạy VIF SmartPLS 4 và đọc kết quả đúng
VIF trong SmartPLS 4 dùng để làm gì
VIF, viết đầy đủ là Variance Inflation Factor, dùng để kiểm tra collinearity giữa các biến dự báo trong mô hình PLS-SEM. Khi hai hoặc nhiều biến độc lập có nội dung quá giống nhau, mô hình khó tách riêng ảnh hưởng của từng biến. Hệ quả là path coefficient có thể dao động mạnh, standard error tăng và kết luận về tác động của biến trở nên kém ổn định.
Trong SmartPLS 4, bạn thường gặp hai nhóm VIF. Inner VIF kiểm tra collinearity giữa các biến tiềm ẩn dự báo một biến nội sinh trong structural model. Outer VIF kiểm tra collinearity giữa các indicator tạo thành cùng một construct, chủ yếu khi bạn dùng formative measurement model. Với reflective measurement model, outer VIF thường không phải chỉ số trung tâm để đánh giá thang đo.
VIF không cho biết giả thuyết có được chấp nhận hay không. Nó cũng không thay thế cho path coefficient, t-value, p-value, R² hoặc confidence interval. Bạn cần đọc VIF ở đúng giai đoạn, sau đó mới xem mức độ giải thích và ý nghĩa thống kê của các đường dẫn. Nếu cần phân biệt bản thân chỉ số này với các chỉ số khác, bạn có thể xem thêm bài VIF là gì.
Chuẩn bị mô hình và dữ liệu
Trước khi mở SmartPLS 4, hãy xác định mô hình của bạn có reflective hay formative measurement model. Ở reflective model, các indicator phản ánh construct, chẳng hạn PU1, PU2 và PU3 cùng phản ánh Perceived Usefulness. Ở formative model, các indicator hợp thành construct, nên collinearity giữa các indicator cần được chú ý hơn.
File dữ liệu nên ở dạng .csv, mỗi dòng là một đáp viên và mỗi cột là một biến quan sát. Hàng đầu tiên chứa tên biến. Tên nên ngắn, không có dấu tiếng Việt, không có khoảng trắng và không trùng nhau, chẳng hạn PU1, PU2, SAT1, INT1. Các ô dữ liệu nên là số, cùng một cách mã hóa thang Likert. Bạn không nên để chữ như “đồng ý” trong cột mà SmartPLS cần đọc như biến số.
Trước khi import, kiểm tra các việc sau:
| Việc cần kiểm tra | Cách làm thực tế | Rủi ro nếu bỏ qua |
|---|---|---|
| Tên biến | Đặt mã duy nhất như PU1, PU2, SAT1 | SmartPLS nhận sai indicator hoặc khó nối dữ liệu |
| Missing value | Tìm ô trống, mã 99, 999 hoặc ký hiệu chữ | Kết quả có thể bị thiếu quan sát |
| Biến đảo chiều | Đảo mã trước khi tạo điểm đo | Tương quan giữa các indicator bị sai |
| Loại measurement model | Gán reflective hoặc formative theo mô hình lý thuyết | Đọc nhầm outer VIF và tiêu chí đánh giá |
| Hướng mũi tên | Kiểm tra đường dẫn giữa các construct | Inner VIF được tính cho sai phương trình |
Bạn cũng cần phân biệt measurement model và structural model. Measurement model nối construct với indicator. Structural model nối construct dự báo với construct nhận tác động. Inner VIF được tính theo từng construct nội sinh, vì vậy một biến dự báo có thể có VIF khác nhau trong các phương trình khác nhau nếu cấu trúc mô hình thay đổi.
Các bước thực hiện trong SmartPLS 4
Các đường dẫn dưới đây áp dụng cho SmartPLS 4. Giao diện SmartPLS 3 có thể đặt một số chức năng ở vị trí khác, nên bạn không nên đối chiếu máy móc từng nút giữa hai phiên bản.
Bước 1: Tạo project và import file CSV
Mở SmartPLS 4, tạo project mới rồi chọn import dữ liệu. Chọn file .csv đã chuẩn bị. Ở màn hình kiểm tra dữ liệu, xem tên cột, số dòng, kiểu dữ liệu và các giá trị thiếu. Nếu cột Likert bị nhận thành text, quay lại file gốc để sửa định dạng rồi import lại.
Bước 2: Vẽ measurement model và structural model
Tạo các construct trên canvas, kéo indicator vào đúng construct và nối các mũi tên theo giả thuyết. Ví dụ, PU, PEOU và TR có thể dự báo SAT, còn SAT dự báo INT. Kiểm tra lại direction của mũi tên. Một mũi tên ngược có thể làm thay đổi phương trình hồi quy và khiến bạn đọc VIF không đúng câu hỏi nghiên cứu.
Nếu construct là reflective, chọn đúng kiểu đo reflective. Nếu mô hình dùng formative, đặt formative theo thiết kế lý thuyết. VIF cần được diễn giải cùng với bản chất của thang đo, không chỉ dựa vào một con số hiện trên màn hình.
Bước 3: Chạy PLS-SEM Algorithm
Trong SmartPLS 4, chọn mô hình rồi chạy PLS-SEM Algorithm. Giữ thiết lập mặc định nếu bạn chưa có lý do phương pháp học để thay đổi. Sau khi chạy xong, mở phần kết quả của model. Bạn nên lưu kết quả của lần chạy đầu, đặc biệt nếu đang ghi nhật ký xử lý dữ liệu.
Ở giai đoạn này, hãy xem measurement model trước. Kiểm tra outer loading, Cronbach's Alpha, rho_A, Composite Reliability và AVE nếu construct của bạn là reflective. Với formative model, chú ý outer VIF, outer weights và ý nghĩa thống kê của weight. Cách làm này phù hợp với quy trình đánh giá measurement model trước structural model được trình bày trong (Hair và cộng sự, 2022).
Bước 4: Mở bảng Inner VIF Values
Trong cửa sổ kết quả của PLS-SEM Algorithm, tìm nhóm kết quả của structural model và mở Collinearity Statistics (VIF), sau đó chọn Inner VIF Values. SmartPLS sẽ hiển thị các construct nội sinh theo cột hoặc hàng, cùng những construct dự báo tương ứng.
Bạn chỉ đọc VIF giữa các construct cùng dự báo cho một biến nội sinh. Nếu SAT được dự báo bởi PU, PEOU và TR, hãy đọc VIF của PU, PEOU và TR trong phương trình SAT. Không cộng các VIF, không lấy trung bình toàn bộ bảng và không lấy VIF của biến phụ thuộc để kết luận riêng về một đường dẫn.
Bước 5: Kiểm tra Outer VIF khi mô hình formative
Nếu có construct formative, mở Collinearity Statistics (VIF) rồi chọn Outer VIF Values. Mỗi indicator formative sẽ có một VIF trong construct mà nó tạo thành. Khi outer VIF cao, xem lại sự trùng lặp nội dung giữa các indicator, cách đặt câu trong bảng hỏi và cơ sở lý thuyết của construct.
Bạn không nên xóa indicator chỉ vì VIF cao. Việc xóa cần cân nhắc nội dung khái niệm, outer weight, significance và giá trị bao phủ của thang đo. Một indicator có thể đại diện cho khía cạnh quan trọng dù đóng góp thống kê không mạnh.
Bước 6: Chạy Bootstrapping để đọc p-value
VIF được xem từ PLS-SEM Algorithm, còn p-value của path coefficient được xem sau Bootstrapping. Chọn Calculate, sau đó chọn Bootstrapping. Với báo cáo PLS-SEM, có thể dùng 5.000 bootstrap subsamples theo khuyến nghị trong (Hair và cộng sự, 2022). Giữ seed cố định nếu bạn muốn lần chạy có thể tái lập.
Sau khi chạy, mở Path Coefficients, T Statistics và P Values. Nếu muốn hiểu thêm cách chạy p-value bootstrap SmartPLS 4, xem p-value Bootstrap trong SmartPLS. VIF đạt không có nghĩa là đường dẫn chắc chắn có ý nghĩa thống kê, vì hai câu hỏi này được kiểm tra bằng hai nhóm kết quả khác nhau.
Đọc bảng kết quả
Bảng Inner VIF Values có hình thức gần như sau. Đây là số liệu minh họa, không phải kết quả của một nghiên cứu thật. Tên construct và số liệu chỉ nhằm chỉ cho bạn cách xác định đúng ô cần đọc.
| Construct dự báo | SAT | INT | Kết luận minh họa |
|---|---|---|---|
| PU | 2.184 | 1.932 | VIF dưới 5 trong cả hai phương trình |
| PEOU | 2.071 | 1.644 | VIF dưới 5 trong cả hai phương trình |
| TR | 1.836 | 1.508 | VIF dưới 5 trong cả hai phương trình |
| SAT | Không áp dụng | 2.276 | SAT chỉ là biến nội sinh của phương trình INT |
Trong bảng trên, PU, PEOU và TR cùng dự báo SAT, nên bạn đọc ba giá trị ở cột SAT. SAT, PU, PEOU và TR có thể được dùng trong các cấu trúc khác nhau, nhưng bạn phải đọc theo từng phương trình. Cột INT cho biết các construct đang được dùng để dự báo INT.
Bạn có thể mở rộng việc đọc kết quả theo chuỗi phân tích. Trước hết, xem VIF để kiểm tra collinearity. Tiếp theo, xem R² của biến nội sinh để biết tỷ lệ phương sai được giải thích. Sau đó, xem f² để đánh giá đóng góp của từng predictor, Q² để kiểm tra predictive relevance và path coefficient cùng p-value để kết luận giả thuyết. Bài R square và f square trong SmartPLS sẽ hữu ích khi bạn chuyển sang các bảng đó.
Nếu bạn đang tìm cách chạy path coefficient SmartPLS 4, hãy mở kết quả Path Coefficients sau khi chạy Bootstrapping. Cột thường cần báo cáo gồm Original Sample, Sample Mean, Standard Deviation, T Statistics và P Values. Path coefficient cho biết chiều và mức độ tác động trong mô hình, còn VIF chỉ cho biết mức độ chồng lấn giữa các predictor.
Ngưỡng đánh giá
Trong báo cáo PLS-SEM, VIF dưới 5 thường được dùng để kết luận chưa có collinearity nghiêm trọng theo (Hair và cộng sự, 2019). Một số nghiên cứu dùng ngưỡng chặt hơn, nhưng bạn cần ghi rõ tiêu chí đã chọn và áp dụng nhất quán. Bảng dưới đây đặt VIF trong cùng nhóm chỉ số PLS-SEM để bạn không trộn với fit index của CB-SEM.
| Chỉ số hoặc tiêu chí | Cách dùng trong báo cáo | Nguồn |
|---|---|---|
| VIF dưới 5 | Kiểm tra collinearity giữa predictor hoặc formative indicator | (Hair và cộng sự, 2019) |
| R² từ 0.75, 0.50, 0.25 | Lần lượt có thể diễn giải là substantial, moderate, weak | (Hair và cộng sự, 2011) |
| f² tại 0.02, 0.15, 0.35 | Lần lượt là effect size nhỏ, trung bình, lớn | (Cohen, 1988) |
| Q² lớn hơn 0 | Có predictive relevance cho construct nội sinh | (Stone, 1974) |
| Outer loading từ 0.7 | Tiêu chí tham khảo cho indicator trong PLS-SEM | (Chin, 1998) |
| CR từ 0.7, AVE từ 0.5 | Đánh giá reliability và convergent validity | (Fornell và Larcker, 1981) |
| HTMT dưới 0.85 hoặc 0.90 | Đánh giá discriminant validity tùy mức độ gần nhau của khái niệm | (Henseler và cộng sự, 2015) |
CFI, TLI, RMSEA và SRMR là nhóm fit index thường gắn với CB-SEM. Bạn không nên đưa các ngưỡng đó vào bảng đánh giá VIF hoặc dùng chúng để kết luận một mô hình SmartPLS đạt hay không đạt. Các chỉ số R², f², Q², path coefficient, CR, AVE, HTMT và VIF thuộc những câu hỏi đánh giá khác nhau.
Nếu một VIF vượt 5, hãy xem đây là dấu hiệu cần kiểm tra, không phải lệnh xóa biến tự động. Xem tương quan giữa các construct, nội dung indicator, mô hình lý thuyết và kết quả ở từng vòng chạy. Sau mỗi thay đổi, lưu phiên bản file, ghi rõ biến đã điều chỉnh và chạy lại toàn bộ quy trình cần thiết.
Cách trình bày trong chương 4
Bạn nên đặt VIF trong phần đánh giá collinearity của structural model, trước khi trình bày path coefficient và kiểm định giả thuyết. Bảng kết quả có thể gộp các predictor theo từng biến nội sinh, miễn người đọc biết mỗi con số thuộc phương trình nào.
Cách viết vào luận văn: “Kết quả kiểm tra collinearity cho thấy các giá trị Inner VIF của các biến dự báo biến [TÊN BIẾN NỘI SINH] dao động từ [VIF THẤP NHẤT] đến [VIF CAO NHẤT]. Các giá trị này đều nhỏ hơn 5, do đó chưa ghi nhận vấn đề collinearity đáng kể theo (Hair và cộng sự, 2019). Sau đó, kết quả Bootstrapping được sử dụng để đánh giá ý nghĩa thống kê của các path coefficient.”
Nếu có formative construct, viết riêng outer VIF: “Các giá trị Outer VIF của các indicator thuộc construct [TÊN CONSTRUCT] nằm trong khoảng [KHOẢNG VIF]. Kết quả này được xem xét cùng outer weight, p-value và cơ sở lý thuyết của từng indicator.” Không ghi “mô hình đạt VIF” như thể VIF là điểm tổng của toàn bộ mô hình.
Khi báo cáo tác động gián tiếp cụ thể SmartPLS 4, mở Specific Indirect Effects sau Bootstrapping. Khi báo cáo tác động tổng SmartPLS 4, mở Total Effects. Hai bảng này cần được đọc cùng hướng đường dẫn và confidence interval, không suy ra từ VIF. Path coefficient của đường dẫn trực tiếp có thể xem thêm tại Path coefficient trong SmartPLS.
Lỗi thường gặp
Đọc nhầm Inner VIF thành Outer VIF. Inner VIF liên quan đến predictor trong structural model. Outer VIF chủ yếu cần chú ý khi indicator tạo thành formative construct. Hãy kiểm tra tên bảng trước khi chép số vào chương 4.
Lấy VIF của mọi construct rồi báo cáo một giá trị chung. VIF gắn với từng phương trình nội sinh. Bạn cần chỉ rõ biến nào được dự báo và các predictor nào nằm trong phương trình đó.
Xóa biến chỉ để VIF giảm. Việc này có thể làm mất nội dung quan trọng của construct và tạo ra mô hình khó giải thích. Hãy kiểm tra lý thuyết, tương quan, cách đo và kết quả ở nhiều chỉ số trước khi điều chỉnh.
Dùng p-value để kết luận VIF. VIF không có p-value theo cách bạn dùng cho path coefficient. VIF được so với ngưỡng collinearity, còn p-value của tác động được đọc từ Bootstrapping.
Trộn SmartPLS với AMOS. SmartPLS dùng logic PLS-SEM, còn AMOS thường được dùng cho CB-SEM. Nếu mô hình của bạn chạy trên SmartPLS, hãy giữ nhóm chỉ số PLS-SEM và giải thích đúng mục đích của từng chỉ số.
Không lưu lại các vòng chạy. Khi loại indicator hoặc đổi cấu trúc, hãy lưu tên file theo phiên bản như model_v1, model_v2 và ghi lý do. Điều này giúp bạn trả lời khi giảng viên hỏi vì sao bảng kết quả trong bản nháp khác với kết quả cuối.
Câu hỏi thường gặp
VIF bao nhiêu là đạt trong SmartPLS 4?
VIF dưới 5 thường được dùng làm tiêu chí cho thấy chưa có collinearity nghiêm trọng trong PLS-SEM (Hair và cộng sự, 2019). Bạn vẫn cần ghi rõ đây là Inner VIF hay Outer VIF và phương trình nào được kiểm tra.
SmartPLS 4 có cần chạy Bootstrapping để xem VIF không?
Bạn xem VIF sau PLS-SEM Algorithm, trong bảng Inner VIF Values hoặc Outer VIF Values. Bootstrapping dùng để lấy t-value, p-value và confidence interval cho path coefficient, outer weight hoặc tác động gián tiếp.
VIF cao thì có phải xóa biến ngay không?
Chưa nên xóa ngay. Hãy xác định VIF cao thuộc predictor hay formative indicator, kiểm tra các biến có trùng nội dung không, xem lý thuyết và ghi lại lý do nếu điều chỉnh. Xóa biến chỉ vì muốn bảng đẹp có thể làm suy yếu giá trị nội dung của thang đo.
VIF và R² khác nhau như thế nào?
VIF kiểm tra mức độ chồng lấn giữa các predictor trong một phương trình. R² cho biết các predictor giải thích bao nhiêu phương sai của biến nội sinh. Một mô hình có R² cao vẫn có thể có VIF cao, vì hai chỉ số trả lời hai câu hỏi khác nhau.
Có dùng CFI và RMSEA để đánh giá mô hình SmartPLS không?
Bạn không nên đưa CFI và RMSEA của CB-SEM vào quy trình đánh giá PLS-SEM chỉ vì muốn có thêm fit index. Với SmartPLS, tập trung vào VIF, R², f², Q², path coefficient, CR, AVE và HTMT theo vai trò của từng chỉ số.
Mở file SmartPLS 4 của bạn, kiểm tra lại loại measurement model, chạy PLS-SEM Algorithm, xuất bảng Inner VIF Values hoặc Outer VIF Values, rồi ghi từng con số theo đúng phương trình trước khi viết chương 4. Nếu bạn muốn chạy trọn quy trình trên file .sav hoặc .csv của mình, M4 phân tích dữ liệu hỗ trợ bước này trong SmartPLS và SPSS.