Chuyển tới nội dung chính

Baseline ngẫu nhiên và đối chứng dương

Học xong các bài trước, bạn đã huấn luyện được mô hình và in ra được độ chính xác. Bài này hỏi hai câu mà con số độ chính xác không tự trả lời được, và nếu không hỏi thì mọi kết quả đều có thể là ảo.

Câu thứ nhất: so với đoán bừa thì mô hình hơn bao nhiêu? Câu thứ hai, khó hơn và ít người hỏi: làm sao biết chính phép kiểm của mình không bị hỏng?

1. Độ chính xác không có nghĩa nếu thiếu mốc so sánh

Một mô hình đạt 95 phần trăm độ chính xác nghe rất tốt. Nhưng nếu bài toán là phát hiện một loại bệnh xuất hiện ở 3 phần trăm dân số, thì mô hình chỉ cần trả lời không bệnh cho mọi ca là đã đạt 97 phần trăm, cao hơn mô hình kia mà không học gì cả.

Nên trước khi đọc bất kỳ con số đánh giá nào, phải xác định mốc so sánh ngẫu nhiên, tiếng Anh gọi là chance baseline. Đó là mức mà một mô hình không có tri thức gì cũng đạt được.

Bài toánMốc ngẫu nhiên hợp lý
Phân loại nhị phân cân bằng50 phần trăm
Phân loại nhị phân lệch, lớp hiếm chiếm 3 phần trăm97 phần trăm bằng cách luôn đoán lớp đa số
Phân loại k lớp cân bằng1 chia k
Hồi quysai số của mô hình luôn đoán giá trị trung bình
Xếp hạng, gợi ýthứ tự ngẫu nhiên, hoặc xếp theo độ phổ biến

Hãy xem một ví dụ có thật. Có một công cụ tự nhận là dùng AI để dự đoán xổ số Vietlott Power 6/55, mỗi kỳ đưa ra bốn bộ 6 số theo bốn chiến lược khác nhau. Nó tự lưu nhật ký dự đoán kèm kết quả thực tế, nên ta đánh giá được nó một cách khách quan.

Mốc ngẫu nhiên ở đây tính được chính xác. Chọn bừa 6 số từ 55 số, kỳ vọng số số trúng bằng 6 nhân 6 chia 55, tức 0,655.

Chiến lượcSố số trúng trung bình trên 62 kỳMốc ngẫu nhiênThống kê z
AI tổng hợp0,7260,655+0,73
Số nóng0,7580,655+1,07
Số nguội0,7260,655+0,73
Tương quan0,7900,655+1,40

Nhìn cột thứ hai thì cả bốn đều cao hơn mốc ngẫu nhiên. Nếu dừng ở đây, ta sẽ kết luận công cụ có tác dụng. Nhưng cột z cho biết chênh lệch đó nằm trong phạm vi dao động ngẫu nhiên: không giá trị nào vượt 2, ngưỡng thông thường của ý nghĩa thống kê.

Cao hơn baseline chưa đủ

Gần như mọi mô hình sẽ cho con số cao hơn mốc ngẫu nhiên một chút, đơn giản vì nhiễu. Câu hỏi đúng không phải là có cao hơn không, mà là cao hơn có vượt sai số ngẫu nhiên không. Muốn trả lời thì phải có sai số chuẩn, nghĩa là phải biết cỡ mẫu.

2. Đối chứng dương, hay cách phát hiện phép kiểm hỏng

Đây là phần quan trọng nhất của bài, và nó là kỹ năng mà rất ít sinh viên được dạy.

Giả sử bạn đã cẩn thận: có tập kiểm định riêng, có mốc so sánh, có tính thống kê t. Vẫn còn một khả năng chưa loại trừ được, đó là chính quy trình phân tích của bạn bị lỗi và tự sinh ra kết quả từ hư không. Khi điều này xảy ra, bạn sẽ nhận được một phát hiện trông rất thuyết phục, có số liệu đầy đủ, và hoàn toàn sai.

Cách phát hiện đơn giản đến bất ngờ: chạy lại đúng quy trình đó trên nhãn ngẫu nhiên. Nếu dữ liệu vô nghĩa cũng cho ra phát hiện tương đương, thì quy trình của bạn không đo được gì cả. Kỹ thuật này gọi là đối chứng dương, tiếng Anh là positive control, mượn từ thực nghiệm sinh học.

Công cụ dưới đây tái hiện một sai lầm có thật, xảy ra trong lúc phân tích dữ liệu Vietlott. Câu hỏi nghiên cứu là: người chơi Việt Nam có hay chọn số theo ngày sinh không, tức là khi kết quả quay ra nhiều số nhỏ hơn hoặc bằng 31 thì có nhiều người trúng giải ba hơn bình thường không.

Bấm lần lượt ba nút và quan sát.

Đối chứng dương: phép kiểm này có đo được gì không?127 kỳ có số người trúng
Giả thuyết đem kiểm. Người chơi hay chọn số theo ngày sinh, nên khi kết quả quay ra nhiều số trong khoảng 1-31 thì đáng lẽ nhiều người trúng giải ba hơn. Đặc trưng là số lượng số ≤ 31 trong bộ 6 số, nhãn là số người trúng giải ba của kỳ đó.
Cách làm: chia số người trúng giải ba của mỗi kỳ cho trung vị trượt (cửa sổ 7 kỳ), rồi lấy trung bình tỷ lệ đó theo từng nhóm đặc trưng. Đây chính là cách làm sai.
NhómSố kỳTỷ lệ trung bìnhLệch so với chungBiểu diễn
ít số ngày sinh≤ 2 số trong khoảng 1-31270.908-9.1%
trung bình thấpđúng 3 số trong khoảng 1-31300.978-2.2%
trung bình caođúng 4 số trong khoảng 1-31451.025+2.6%
nhiều số ngày sinh≥ 5 số trong khoảng 1-31251.076+7.7%
Biên độ giữa nhóm cao nhất và nhóm thấp nhất: 16.8 điểm phần trăm.
Bảng này trông rất thuyết phục: biên độ 16.8 điểm phần trăm, các nhóm lại xếp gần như đúng chiều giả thuyết. Đây chính là lúc dễ viết ngay một câu “chúng tôi phát hiện...”. Đừng vội, hãy bấm sang chế độ 2.
Quy tắc rút ra. Trước khi tin bất kỳ phát hiện nào, hãy chạy lại đúng quy trình đó trên nhãn ngẫu nhiên. Nếu nhãn ngẫu nhiên cũng cho kết quả tương đương nhãn thật thì phép kiểm không đo được gì cả. Khi ấy việc cần làm là sửa phương pháp, không phải báo cáo phát hiện. Một phép kiểm hỏng vẫn có thể nói “sạch” hoặc “có ý nghĩa” rất thuyết phục, nên đối chứng dương là bước bắt buộc chứ không phải bước tuỳ chọn.

Nút thứ nhất cho một phát hiện đẹp, mức chênh lệch hai chữ số, hoàn toàn khớp với giả thuyết đặt ra. Rất dễ dừng ở đây và đi viết báo cáo.

Nút thứ hai là cú đấm. Nhãn ngẫu nhiên, không mang thông tin gì, cũng cho mức chênh lệch tương đương. Phép kiểm đã hỏng, và cái gọi là phát hiện chỉ là sản phẩm phụ của cách chuẩn hoá dữ liệu.

Nút thứ ba là cách làm đúng: hồi quy có kiểm soát xu hướng thời gian, đọc hệ số cùng sai số chuẩn và thống kê t. Kết luận đảo chiều hoàn toàn, không có ý nghĩa thống kê.

Vì sao phương pháp thứ nhất hỏng

Chuẩn hoá bằng cách chia cho trung vị trượt tạo ra một tỷ số có phân bố lệch phải, nên giá trị trung bình của nó tự nhiên lớn hơn 1. Khi chia dữ liệu thành các nhóm nhỏ, phương sai trong từng nhóm lớn, và các mức chênh lệch hai chữ số xuất hiện ngẫu nhiên. Lỗi nằm ở bước tiền xử lý, không nằm ở dữ liệu, nên không cách nào phát hiện bằng cách nhìn vào kết quả.

3. Hai sai lầm có thật trong cùng một phân tích

Đoạn phân tích Vietlott nói trên còn chứa một lỗi thứ hai, thuộc loại khác hẳn và cũng rất đáng học.

Bộ dữ liệu có 1372 kỳ quay, nhưng chỉ 127 kỳ gần nhất công bố số người trúng. Khi tính lượng vé bán trung bình mỗi kỳ, tổng được lấy trên 127 kỳ có dữ liệu nhưng lại đem chia cho 1372. Kết quả sai lệch hơn 10 lần, và nó không hề gây lỗi chương trình, không có cảnh báo nào, con số in ra vẫn trông hợp lý.

Hai lỗi này minh hoạ hai họ khác nhau:

Loại lỗiĐặc điểmCách phát hiện
Lỗi quy trình phân tíchTạo ra phát hiện giả có vẻ thuyết phụcĐối chứng dương, chạy lại trên nhãn ngẫu nhiên
Lỗi kế toán dữ liệuNhầm mẫu số, nhầm phạm vi, nhầm đơn vịKiểm tính nhất quán, đối chiếu chéo từ hai đường tính độc lập

Cách phát hiện lỗi thứ hai đáng được nhấn mạnh: hãy tính cùng một đại lượng bằng hai con đường độc lập rồi so. Trong phân tích Vietlott, lượng vé bán ước lượng từ số người trúng giải ba, sau đó dùng để dự đoán số lần nổ jackpot. Dự đoán ra 7,38 lần, thực tế 7 lần. Sự khớp nhau của hai đường tính độc lập là bằng chứng rằng cả hai đều đúng.

4. Tiền đăng ký, hay vì sao thứ tự thời gian quyết định giá trị bằng chứng

Có một loại sai lệch mà đối chứng dương không bắt được, vì nó không nằm trong mã nguồn mà nằm trong thứ tự bạn làm việc.

Khi đã nhìn thấy kết quả rồi mới quyết định phân tích thế nào, bạn gần như chắc chắn sẽ tìm ra một cách phân tích làm kết quả trông có ý nghĩa. Không cần gian lận, chỉ cần thử vài lựa chọn hợp lý rồi giữ lại lựa chọn cho ra bức tranh đẹp nhất. Hiện tượng này có tên là bậc tự do của người nghiên cứu, và nó đủ sức tạo ra kết quả có ý nghĩa thống kê từ dữ liệu hoàn toàn vô nghĩa.

Cách chặn duy nhất là tiền đăng ký, tiếng Anh là pre-registration: ghi lại giả thuyết, phương pháp và tiêu chí đánh giá trước khi nhìn thấy dữ liệu kiểm định.

Ca sau đây minh hoạ đúng cơ chế đó. Chiều ngày 18 tháng 7 năm 2026, trước kỳ quay Power 6/55 số 01373, sáu bộ số được chốt và ghi lại công khai, kèm tiêu chí chọn được nêu rõ từ trước: né vùng số nhỏ hơn hoặc bằng 31 để giảm rủi ro chia giải, và tuyên bố thẳng rằng điều này không làm tăng xác suất trúng.

Kết quả quay ra là 22, 41, 45, 48, 54, 55. Nó có dáng rất giống các bộ đã chốt, chỉ 1 số dưới 31 và tổng 265 so với trung bình lịch sử 168.

Nếu chưa tiền đăng kýVì đã tiền đăng ký
Dễ kể lại rằng phương pháp đã nắm được cấu trúc kết quảTiêu chí ghi từ trước nói rõ mục tiêu là giảm chia giải, không phải dự báo, nên sự tương đồng về dáng không thuộc phạm vi tuyên bố nào cả
Có thể đổi tiêu chí đánh giá sang độ giống về phân bố, một chỉ số trông có vẻ khoa họcTiêu chí đánh giá đã chốt là số phần tử trùng nhau và tiền thưởng, hai đại lượng không thể diễn giải lại
Sáu bộ trắng tay vẫn có thể được trình bày như một thành công một phầnSáu bộ trắng tay là trắng tay, và điều đó được ghi nhận đúng như vậy

Bài học chuyển giao được sang mọi thí nghiệm học máy: hãy chốt tiêu chí đánh giá trước khi chạy mô hình lần đầu. Nếu bạn chọn chỉ số sau khi đã thấy kết quả, chỉ số đó không còn là bằng chứng, nó chỉ là mô tả.

Dấu hiệu bạn đang trượt khỏi tiền đăng ký

Khi bạn thấy mình nghĩ những câu sau, hãy dừng lại và quay về tiêu chí ban đầu: thử đổi sang chỉ số khác xem có đẹp hơn không, bỏ vài mẫu ngoại lai này đi thì kết quả rõ hơn, chạy thêm mấy seed nữa rồi lấy seed tốt nhất, hoặc chia lại tập kiểm định theo cách khác.

Từng thao tác riêng lẻ đều có thể chính đáng. Vấn đề là bạn đang chọn chúng sau khi đã biết chúng ảnh hưởng tới kết luận thế nào.

5. Danh sách kiểm trước khi báo cáo bất kỳ kết quả nào

  1. Mốc ngẫu nhiên của bài toán này là bao nhiêu, và tôi đã tính nó chưa.
  2. Chênh lệch so với mốc có vượt sai số chuẩn không, cỡ mẫu là bao nhiêu.
  3. Tôi đã chạy quy trình này trên nhãn ngẫu nhiên chưa, nó có ra phát hiện không.
  4. Có đại lượng nào tính được bằng hai đường độc lập để đối chiếu không.
  5. Kết quả có được đánh giá trên dữ liệu tách riêng khỏi dữ liệu dùng để xây mô hình không.
  6. Nếu kết quả ngược với kỳ vọng của tôi, tôi có kiểm nó kỹ như khi nó thuận không.

Câu số 6 là câu khó nhất, vì nó nói về chính người phân tích. Khi kết quả khớp với điều ta mong đợi, ta có xu hướng dừng kiểm sớm. Khi nó ngược lại, ta lục tung mọi thứ để tìm lỗi. Sự bất đối xứng đó là nguồn sai lệch lớn nhất trong nghiên cứu thực nghiệm, và không công cụ thống kê nào sửa được nó.

Tự kiểm bài baseline và đối chứng dương0/7 đúngchưa trả lời
  1. 1Bài toán phát hiện gian lận thẻ, trong đó giao dịch gian lận chiếm 0,2 phần trăm. Mô hình của bạn đạt độ chính xác 99,5 phần trăm. Nhận định nào đúng?
  2. 2Đối chứng dương trong phân tích dữ liệu nghĩa là gì?
  3. 3Chuẩn hoá số người trúng bằng cách chia cho trung vị trượt rồi lấy trung bình theo nhóm tạo ra hiệu ứng giả. Lỗi này thuộc loại nào và phát hiện bằng cách nào?
  4. 4Bốn chiến lược dự đoán đều cho số số trúng trung bình cao hơn mốc ngẫu nhiên 0,655, với z từ +0,73 đến +1,40. Kết luận đúng là gì?
  5. 5Cách hiệu quả nhất để phát hiện lỗi kế toán dữ liệu, chẳng hạn chia cho nhầm mẫu số, là gì?
  6. 6Bạn chạy mô hình, thấy độ chính xác chưa đẹp, nên đổi sang chỉ số F1 thì thấy kết quả tốt hơn và quyết định báo cáo F1. Vấn đề ở đây là gì?
  7. 7Sáu bộ số được chốt công khai trước một kỳ quay xổ số, kèm tiêu chí ghi rõ là giảm rủi ro chia giải chứ không phải dự báo. Kết quả sau đó có phân bố rất giống các bộ đã chốt nhưng không bộ nào trúng giải. Vai trò của việc tiền đăng ký ở đây là gì?

Liên hệ

Bối cảnh đầy đủ của ca phân tích dùng trong bài này, gồm cả góc nhìn đạo đức về việc gắn nhãn AI cho một công thức gõ tay, được trình bày ở bài Nhận diện AI giả hiệu, một ca bóc tách có thật thuộc môn Đạo đức và pháp luật AI.