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án | Mốc ngẫu nhiên hợp lý |
|---|---|
| Phân loại nhị phân cân bằng | 50 phần trăm |
| Phân loại nhị phân lệch, lớp hiếm chiếm 3 phần trăm | 97 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ằng | 1 chia k |
| Hồi quy | sai 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ược | Số số trúng trung bình trên 62 kỳ | Mốc ngẫu nhiên | Thống kê z |
|---|---|---|---|
| AI tổng hợp | 0,726 | 0,655 | +0,73 |
| Số nóng | 0,758 | 0,655 | +1,07 |
| Số nguội | 0,726 | 0,655 | +0,73 |
| Tương quan | 0,790 | 0,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ê.
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.
| Nhóm | Số kỳ | Tỷ lệ trung bình | Lệch so với chung | Biểu diễn |
|---|---|---|---|---|
| ít số ngày sinh≤ 2 số trong khoảng 1-31 | 27 | 0.908 | -9.1% | |
| trung bình thấpđúng 3 số trong khoảng 1-31 | 30 | 0.978 | -2.2% | |
| trung bình caođúng 4 số trong khoảng 1-31 | 45 | 1.025 | +2.6% | |
| nhiều số ngày sinh≥ 5 số trong khoảng 1-31 | 25 | 1.076 | +7.7% |
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ê.
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ểm | Cách phát hiện |
|---|---|---|
| Lỗi quy trình phân tích | Tạ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ệu | Nhầ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ọc | Tiê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ần | Sá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ả.
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
- 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.
- 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.
- 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.
- Có đại lượng nào tính được bằng hai đường độc lập để đối chiếu không.
- 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.
- 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ó.
- 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Đối chứng dương trong phân tích dữ liệu nghĩa là gì?
- 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?
- 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ì?
- 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ì?
- 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ì?
- 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.