Độ nhạy và độ đặc hiệu là gì? Cách đọc kết quả trong SPSS

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

Bạn mở file dữ liệu lên và thấy đề tài đang yêu cầu đánh giá khả năng phân loại của một biến dự báo, nhưng chưa rõ độ nhạy và độ đặc hiệu là gì. Hai chỉ số này thường xuất hiện cùng ROC Curve, Classification Table hoặc bảng kết quả của một mô hình phân loại. Chúng trả lời hai câu hỏi khác nhau: mô hình có phát hiện đúng bao nhiêu trường hợp thật sự thuộc nhóm dương tính, và có loại đúng bao nhiêu trường hợp thật sự thuộc nhóm âm tính.

Độ nhạy và độ đặc hiệu là gì

Độ nhạy, tiếng Anh là sensitivity, cho biết tỷ lệ các trường hợp thật sự dương tính được mô hình hoặc phép đo nhận diện đúng. Nếu trong dữ liệu có 100 người thật sự thuộc nhóm dương tính và công cụ nhận diện đúng 80 người, độ nhạy của công cụ trong ví dụ đó là 80%.

Độ đặc hiệu, tiếng Anh là specificity, cho biết tỷ lệ các trường hợp thật sự âm tính được nhận diện đúng. Nếu có 100 người thật sự thuộc nhóm âm tính và công cụ phân loại đúng 90 người, độ đặc hiệu là 90%.

Cả hai chỉ số đều được tính từ bảng đối chiếu giữa trạng thái thực tế và trạng thái dự đoán. Bốn thành phần bạn cần nhận diện là:

  • True Positive, viết tắt là TP: trường hợp thật sự dương tính và được dự đoán là dương tính.
  • False Negative, viết tắt là FN: trường hợp thật sự dương tính nhưng bị dự đoán là âm tính.
  • True Negative, viết tắt là TN: trường hợp thật sự âm tính và được dự đoán là âm tính.
  • False Positive, viết tắt là FP: trường hợp thật sự âm tính nhưng bị dự đoán là dương tính.

Công thức thường được trình bày như sau:

  • Độ nhạy = TP / (TP + FN)
  • Độ đặc hiệu = TN / (TN + FP)

Mẫu số của độ nhạy chỉ gồm các trường hợp thật sự dương tính. Mẫu số của độ đặc hiệu chỉ gồm các trường hợp thật sự âm tính. Đây là điểm cần nhớ khi bạn đọc bảng phân loại, vì đổi nhầm mẫu số sẽ dẫn tới diễn giải sai.

Trong luận văn định lượng, hai chỉ số này phù hợp khi biến kết quả có các nhóm rõ ràng, chẳng hạn có hoặc không có một đặc điểm, đạt hoặc không đạt một điều kiện, hoặc thuộc nhóm dương tính và âm tính theo một tiêu chuẩn tham chiếu. Với biến phụ thuộc liên tục như điểm hài lòng, ý định mua hoặc hiệu suất, bạn thường cần một phương pháp khác, chẳng hạn kiểm định t test, ANOVA hoặc hồi quy, tùy câu hỏi nghiên cứu.

Ý nghĩa của độ nhạy và độ đặc hiệu trong nghiên cứu định lượng

Độ nhạy và độ đặc hiệu giúp bạn đánh giá một quy tắc phân loại, một ngưỡng cắt hoặc khả năng dự đoán của mô hình. Chúng không chỉ cho biết mô hình dự đoán đúng bao nhiêu phần trăm, mà còn cho biết mô hình sai theo hướng nào.

Độ nhạy cao thường được quan tâm khi bỏ sót một trường hợp dương tính gây hậu quả lớn. Trong tình huống đó, FN là lỗi đáng chú ý. Độ đặc hiệu cao lại cần thiết khi việc gắn nhãn dương tính nhầm cho một trường hợp âm tính gây tốn kém hoặc tạo quyết định sai. Khi ấy, FP là lỗi cần theo dõi.

Bạn không nên kết luận một mô hình tốt chỉ vì độ nhạy cao. Một quy tắc có thể phân loại gần như tất cả trường hợp là dương tính, từ đó đạt độ nhạy cao nhưng tạo ra nhiều FP và có độ đặc hiệu thấp. Ngược lại, quy tắc quá chặt có thể tăng độ đặc hiệu nhưng bỏ sót nhiều trường hợp dương tính.

ROC Curve giúp xem sự đánh đổi này khi ngưỡng phân loại thay đổi. Trên đồ thị ROC, trục tung thường thể hiện sensitivity và trục hoành thể hiện 1 - specificity. Mỗi điểm trên đường cong tương ứng với một ngưỡng cắt. Bạn cần xem ngưỡng nào phù hợp với mục tiêu nghiên cứu, thay vì chọn một con số chỉ vì nó làm cho một chỉ số cao hơn.

Nếu đề tài của bạn dùng một biến dự báo liên tục để phân loại hai nhóm, SPSS có thể tạo ROC Curve và cung cấp các ngưỡng cắt. Nếu bạn đang so sánh trung bình giữa các nhóm, hãy xem thêm hướng dẫn về kiểm định t test hoặc one factor ANOVA, vì đó là câu hỏi phân tích khác với đánh giá độ nhạy và độ đặc hiệu.

Độ nhạy và độ đặc hiệu bao nhiêu là tốt

Không có một ngưỡng duy nhất áp dụng cho mọi đề tài để kết luận độ nhạy và độ đặc hiệu bao nhiêu là tốt. Mức chấp nhận được phụ thuộc vào mục tiêu phân loại, hậu quả của FP và FN, tiêu chuẩn tham chiếu, cỡ mẫu và cách chọn ngưỡng cắt. Bạn cần nêu căn cứ lựa chọn trong chương phương pháp, thay vì tự đặt một mốc rồi gọi đó là đạt.

Bảng dưới đây dùng để kiểm tra cách diễn giải, không phải bảng ngưỡng chung cho mọi lĩnh vực. Các hàng đều chỉ ra điều cần đối chiếu trong nghiên cứu của bạn.

Chỉ số hoặc thông tinCâu hỏi cần trả lờiCách diễn giải thận trọngNguồn cần đối chiếu
Độ nhạyTrong các trường hợp thật sự dương tính, mô hình nhận diện đúng bao nhiêuCao hơn thường đồng nghĩa với ít FN hơn, nhưng có thể đi kèm nhiều FP hơnTiêu chuẩn phương pháp và lĩnh vực của đề tài
Độ đặc hiệuTrong các trường hợp thật sự âm tính, mô hình nhận diện đúng bao nhiêuCao hơn thường đồng nghĩa với ít FP hơn, nhưng có thể đi kèm nhiều FN hơnTiêu chuẩn phương pháp và lĩnh vực của đề tài
ROC CurveCác ngưỡng cắt làm thay đổi sensitivity và specificity ra saoChọn ngưỡng theo mục tiêu nghiên cứu, không chỉ theo một chỉ sốTiêu chuẩn tham chiếu của nghiên cứu
Classification TableBao nhiêu TP, TN, FP và FN được tạo raKiểm tra số lượng tuyệt đối trước khi viết tỷ lệ phần trămQuy tắc phân loại và dữ liệu thực tế
Cỡ mẫu từng nhómNhóm dương tính và âm tính có đủ quan sát để so sánh khôngMột tỷ lệ đẹp từ nhóm quá nhỏ vẫn có thể thiếu ổn địnhThiết kế mẫu và kế hoạch phân tích

Trong bài viết về độ nhạy và độ đặc hiệu, không nên lấy các ngưỡng của Cronbach's Alpha, KMO hoặc factor loading để đánh giá mô hình phân loại. Những chỉ số đó thuộc về độ tin cậy và phân tích nhân tố, không trả lời cùng một câu hỏi. Tương tự, bảng ANOVA dùng để kiểm định khác biệt trung bình giữa các nhóm, không tự động cung cấp độ nhạy hay độ đặc hiệu.

Khi trình bày, bạn có thể báo cáo đồng thời độ nhạy, độ đặc hiệu, số TP, TN, FP, FN, ngưỡng cắt và cách xác định trạng thái thật. Nếu chỉ đưa một tỷ lệ phần trăm mà không cho biết mẫu số và tiêu chuẩn tham chiếu, người đọc khó kiểm tra kết luận.

Cách đọc độ nhạy và độ đặc hiệu trên output

Trong SPSS, đường dẫn thường dùng là Analyze > Classify > ROC Curve. Bạn đưa biến kiểm định vào ô Test Variable, đưa biến thể hiện trạng thái thật vào ô State Variable, sau đó khai báo giá trị đại diện cho nhóm dương tính trong Value of the State Variable. Tên mục có thể thay đổi nhẹ tùy phiên bản SPSS, nhưng bạn cần kiểm tra kỹ nhóm nào đang được mã hóa là dương tính.

Các phần thường được đọc gồm Area Under the Curve, Coordinates of the Curve và bảng phân loại nếu bạn đã thiết lập ngưỡng. Coordinates of the Curve cho biết tại từng giá trị cắt, SPSS tính sensitivity và 1 - specificity. Muốn đọc độ đặc hiệu, bạn phải lấy quan hệ tương ứng với 1 - specificity hoặc bảng phân loại, không đọc nhầm cột này thành specificity.

Số liệu minh họa

Bảng sau 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 cột được sắp theo dạng bạn thường gặp khi kiểm tra kết quả ROC và bảng phân loại trong SPSS.

Output hoặc chỉ sốGiá trị minh họaCách đọc
Test VariableDiem_du_baoBiến liên tục dùng để phân loại
State VariableTrang_thaiBiến thể hiện trạng thái thật
Value of the State Variable1Mã 1 được xem là dương tính
Cut-off6.50Ngưỡng dùng để chuyển điểm dự báo thành nhãn
Sensitivity0.800Nhận diện đúng 80% trường hợp thật sự dương tính
1 - Specificity0.200Tỷ lệ FP trong nhóm thật sự âm tính là 20%
Specificity0.800Nhận diện đúng 80% trường hợp thật sự âm tính
Area Under the Curve0.842Diện tích dưới đường cong của mô hình minh họa
TP40Dương tính thật và dự đoán dương tính
FN10Dương tính thật nhưng dự đoán âm tính
TN48Âm tính thật và dự đoán âm tính
FP12Âm tính thật nhưng dự đoán dương tính

Với các số liệu minh họa trên, độ nhạy được tính từ 40 / (40 + 10), còn độ đặc hiệu được tính từ 48 / (48 + 12). Bạn cần kiểm tra phép tính từ TP, FN, TN và FP khi bảng output có đủ các ô. Nếu output chỉ hiển thị Sensitivity1 - Specificity, hãy suy ra cẩn thận và ghi rõ cách bạn chuyển đổi.

AUC là chỉ số tổng hợp về khả năng phân biệt của biến dự báo trên nhiều ngưỡng. AUC không thay thế cho độ nhạy và độ đặc hiệu tại ngưỡng bạn chọn. Một mô hình có AUC tương đối tốt vẫn có thể không phù hợp với mục tiêu cụ thể nếu ngưỡng được chọn tạo ra quá nhiều FN hoặc FP.

Cách viết vào luận văn: “Tại ngưỡng cắt [giá trị], mô hình đạt độ nhạy [giá trị]% và độ đặc hiệu [giá trị]%. Kết quả này cho thấy mô hình nhận diện đúng [tỷ lệ]% trường hợp thật sự dương tính và [tỷ lệ]% trường hợp thật sự âm tính trong mẫu nghiên cứu. Ngưỡng cắt được lựa chọn dựa trên [tiêu chí hoặc mục tiêu nghiên cứu], với tiêu chuẩn dương tính được xác định là [mô tả tiêu chuẩn].” Bạn thay toàn bộ phần trong ngoặc vuông bằng kết quả và quy ước thật trong file của mình.

Khi độ nhạy và độ đặc hiệu không đạt thì xử lý thế nào

Trước tiên, kiểm tra mã hóa của biến trạng thái. Nếu nhóm dương tính là 1 nhưng bạn khai báo 0 trong Value of the State Variable, SPSS có thể tính theo hướng ngược với giả thuyết của bạn. Đây là lỗi thiết lập, cần sửa trước khi cân nhắc thay đổi mô hình.

Tiếp theo, kiểm tra dữ liệu thiếu, outlier và đơn vị đo của biến dự báo. Một số điểm nhập sai hoặc cách mã hóa không thống nhất có thể làm đường ROC và các chỉ số thay đổi đáng kể. Bạn nên lưu một bản dữ liệu gốc, tạo bản làm sạch riêng và ghi lại từng thay đổi.

Sau đó, xem toàn bộ bảng Coordinates of the Curve thay vì chỉ xem một dòng. Có thể một ngưỡng khác tạo ra sự cân bằng phù hợp hơn giữa sensitivity và specificity. Ngưỡng này phải được giải thích bằng mục tiêu nghiên cứu và tiêu chuẩn tham chiếu, không nên chọn sau khi thử quá nhiều phương án rồi chỉ báo cáo phương án đẹp nhất.

Nếu kết quả vẫn chưa phù hợp, bạn có thể xem lại biến dự báo, cách xác định trạng thái thật và cỡ mẫu ở từng nhóm. Việc thêm biến, đổi mô hình hoặc gộp nhóm cần có lý do phương pháp trước khi chạy lại. Không nên xóa các quan sát chỉ vì chúng làm chỉ số thấp, trừ khi có căn cứ rõ ràng về lỗi dữ liệu hoặc tiêu chí loại mẫu đã được nêu từ trước.

Nếu một nhóm có quá ít quan sát, hãy trao đổi với giảng viên về giới hạn của kết quả và khả năng thu thập thêm dữ liệu. Phần mềm không thể sửa một thiết kế mẫu yếu. Trong luận văn, báo cáo trung thực độ nhạy, độ đặc hiệu và các lỗi phân loại thường có giá trị hơn việc chọn một ngưỡng làm kết quả trông đẹp hơn.

Phân biệt độ nhạy và độ đặc hiệu với chỉ số dễ nhầm

Độ chính xác, accuracy, là tỷ lệ dự đoán đúng trên toàn bộ quan sát. Nó gộp TP và TN, vì vậy có thể gây hiểu nhầm khi hai nhóm có kích thước rất khác nhau. Một mô hình có thể đạt accuracy cao do dự đoán tốt nhóm đông, nhưng lại bỏ sót phần lớn nhóm ít quan sát.

Positive Predictive Value, PPV, trả lời trong các trường hợp được dự đoán là dương tính thì có bao nhiêu trường hợp thật sự dương tính. Negative Predictive Value, NPV, trả lời trong các trường hợp được dự đoán là âm tính thì có bao nhiêu trường hợp thật sự âm tính. PPV và NPV chịu ảnh hưởng của tỷ lệ hiện diện của nhóm dương tính trong mẫu, còn sensitivity và specificity được tính theo trạng thái thật của từng nhóm.

Chỉ sốMẫu số chínhCâu hỏi trả lờiDễ nhầm với
SensitivityTP + FNTrong số dương tính thật, nhận diện đúng bao nhiêuAccuracy
SpecificityTN + FPTrong số âm tính thật, nhận diện đúng bao nhiêu1 - specificity
PPVTP + FPTrong số dự đoán dương tính, đúng bao nhiêuSensitivity
NPVTN + FNTrong số dự đoán âm tính, đúng bao nhiêuSpecificity
AccuracyTP + TN + FP + FNToàn bộ dự đoán đúng chiếm bao nhiêuSensitivity và specificity

Bạn cũng cần phân biệt độ nhạy, độ đặc hiệu với p-value. p-value phục vụ kiểm định giả thuyết thống kê, còn sensitivity và specificity mô tả hiệu quả phân loại theo một trạng thái tham chiếu. Hai loại thông tin này có thể xuất hiện trong cùng một nghiên cứu nhưng không thay thế cho nhau.

Lỗi thường gặp

Lỗi đầu tiên là gọi 1 - specificity là specificity. Trong bảng ROC, cột này thường xuất hiện trực tiếp vì trục hoành của ROC dùng false positive rate. Bạn cần đổi sang specificity bằng cách lấy 1 trừ đi giá trị đó, hoặc đọc từ bảng phân loại.

Lỗi thứ hai là không nói nhóm nào được xem là dương tính. Cùng một biến mã 0 và 1, nếu đổi giá trị trạng thái, sensitivity và specificity có thể đổi vai trò. Luận văn cần ghi rõ mã hóa và tiêu chuẩn xác định trạng thái thật.

Lỗi thứ ba là chọn ngưỡng chỉ dựa trên AUC. AUC phản ánh khả năng phân biệt tổng quát, còn quyết định tại một ngưỡng cụ thể cần xem cả hai chỉ số và hậu quả của FP, FN.

Lỗi thứ tư là báo cáo phần trăm mà không nêu số quan sát. Hãy lưu lại TP, TN, FP và FN để người đọc biết tỷ lệ được tính trên nhóm nào. Nếu một nhóm chỉ có ít quan sát, hãy nêu hạn chế này.

Lỗi cuối cùng là dùng độ nhạy và độ đặc hiệu cho mọi dạng biến phụ thuộc. Trước khi chạy SPSS, hãy xác định nghiên cứu của bạn có thật sự là bài toán phân loại hai nhóm hay đang hỏi về chênh lệch trung bình, liên hệ giữa biến hoặc tác động của nhiều biến.

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

Độ nhạy và độ đặc hiệu có phải là một chỉ số không

Không. Độ nhạy tập trung vào khả năng nhận diện đúng nhóm dương tính, còn độ đặc hiệu tập trung vào khả năng nhận diện đúng nhóm âm tính. Một mô hình có thể có độ nhạy cao nhưng độ đặc hiệu thấp, nên bạn cần đọc cả hai.

Độ nhạy và độ đặc hiệu trong SPSS nằm ở bảng nào

Khi chạy Analyze > Classify > ROC Curve, bạn thường xem Coordinates of the Curve để theo dõi sensitivity và 1 - specificity tại từng ngưỡng. Bạn cũng nên kiểm tra Classification Table nếu cần xác nhận TP, TN, FP và FN.

Độ nhạy và độ đặc hiệu bao nhiêu là tốt

Không có một mốc chung phù hợp cho mọi đề tài. Mức phù hợp phụ thuộc vào tiêu chuẩn tham chiếu, mục tiêu phân loại và chi phí của hai loại sai lầm. Hãy trình bày lý do chọn ngưỡng và báo cáo đồng thời cả hai chỉ số.

AUC cao có nghĩa là độ nhạy và độ đặc hiệu đều cao không

AUC cho biết khả năng phân biệt tổng thể trên nhiều ngưỡng. Nó không bảo đảm rằng tại ngưỡng bạn chọn, cả độ nhạy và độ đặc hiệu đều đạt mức mong muốn. Bạn vẫn phải đọc dòng tương ứng trong Coordinates of the Curve.

Có thể tăng độ nhạy và độ đặc hiệu cùng lúc không

Có thể xảy ra nếu bạn cải thiện biến dự báo hoặc mô hình, nhưng không nên mặc định rằng chỉ cần đổi ngưỡng là cả hai cùng tăng. Khi ngưỡng thay đổi, hai chỉ số thường có sự đánh đổi. Bạn cần nêu tiêu chí chọn ngưỡng trước khi kết luận.

Nếu kết quả không đẹp thì có được xóa dữ liệu không

Chỉ xóa khi quan sát vi phạm tiêu chí dữ liệu đã được xác định, chẳng hạn nhập sai hoặc không đáp ứng điều kiện mẫu. Không nên xóa chỉ vì một quan sát làm giảm sensitivity, specificity hoặc AUC. Hãy lưu bản dữ liệu gốc và ghi lại lý do của mọi thay đổi.

Mở file SPSS, xác nhận mã dương tính, kiểm tra bảng Coordinates of the Curve, rồi ghi lại TP, TN, FP và FN trước khi sửa mô hình. Nếu bạn cần chạy phân tích trên chính file .sav hoặc .csv và chuyển output thành kết quả có thể giải trình, hãy xem module M4 tại DoThesis.