Muốn biết một mô hình dự báo có tốt hay không, đừng hỏi nó đoán đúng bao nhiêu trận; hãy hỏi xác suất nó đưa ra sát sự thật đến đâu. Brier score và log loss là hai thước đo phổ biến nhất cho việc này. Cả hai đều chấm điểm từng dự báo xác suất, thưởng cho sự chính xác và phạt nặng sự tự tin sai chỗ. Bài này tính tay từng bước với tám trận giả định để bạn thấy chúng hoạt động ra sao.
Vì sao “đoán đúng bao nhiêu trận” là thước đo tồi
Giả sử mô hình nói đội chủ nhà có 55% thắng và chủ nhà thua. Nếu đánh giá theo đúng/sai, mô hình bị tính là sai, nhưng thực ra nó chỉ nói rằng chuyện đó xảy ra gần nửa số lần. Một mô hình khác nói chủ nhà thắng 95% rồi cũng thua trận đó mới thật sự có lỗi nặng. Chấm theo đúng/sai không phân biệt được hai tình huống, trong khi chấm theo xác suất thì có.
Điều kiện để công bằng là phải đánh giá trên các dự báo đã được công bố trước khi trận diễn ra, và trên đủ nhiều trận. Dự báo đưa ra sau khi biết kết quả không có giá trị gì.
Tính Brier score bằng tay
Brier score là trung bình của bình phương chênh lệch giữa xác suất dự báo và kết quả (1 nếu sự kiện xảy ra, 0 nếu không). Càng thấp càng tốt, thấp nhất là 0. Một dự báo “chia đôi” luôn cho 0,5 mỗi lần sẽ đạt đúng 0,25, và đó là mốc tối thiểu mà mô hình nghiêm túc phải vượt qua.
Ví dụ: hai mô hình giả định X và Y dự báo xác suất “chủ nhà thắng” cho cùng tám trận minh hoạ. Số liệu hoàn toàn tự đặt, không thuộc trận đấu thật.
| Trận | Kết quả chủ nhà | Xác suất X | Brier X | Xác suất Y | Brier Y |
|---|---|---|---|---|---|
| Trận 1 | thắng | 0,70 | 0,0900 | 0,95 | 0,0025 |
| Trận 2 | không thắng | 0,30 | 0,0900 | 0,05 | 0,0025 |
| Trận 3 | thắng | 0,60 | 0,1600 | 0,90 | 0,0100 |
| Trận 4 | thắng | 0,55 | 0,2025 | 0,30 | 0,4900 |
| Trận 5 | không thắng | 0,20 | 0,0400 | 0,80 | 0,6400 |
| Trận 6 | không thắng | 0,45 | 0,2025 | 0,05 | 0,0025 |
| Trận 7 | thắng | 0,65 | 0,1225 | 0,95 | 0,0025 |
| Trận 8 | không thắng | 0,35 | 0,1225 | 0,10 | 0,0100 |
| Trung bình | 0,1288 | 0,1450 |
Với trận 1: X nói 0,70, chủ nhà thắng nên sai số là 1 − 0,70 = 0,30, bình phương là 0,0900. Y nói 0,95 nên bình phương chỉ còn 0,0025. Nhìn trận 5, Y báo 0,80 nhưng chủ nhà không thắng, bình phương là 0,6400; đó là lúc sự tự tin sai chỗ phải trả giá. Kết quả: Brier của X là 0,1288, của Y là 0,1450, và cả hai đều tốt hơn mốc 0,25.
Log loss: thước đo khắt khe hơn với sự tự tin sai
Log loss lấy trung bình của −ln(xác suất mà mô hình gán cho điều thật sự xảy ra). Nếu bạn gán 0,95 cho điều đúng, phạt rất nhỏ; nếu gán 0,05 cho điều đúng, phạt rất lớn, và khi xác suất tiến sát 0 thì phạt tiến tới vô cùng. Một dự báo chia đôi luôn cho ln 2 = 0,6931.
| Thước đo | Mô hình X | Mô hình Y | Dự báo chia đôi |
|---|---|---|---|
| Brier score | 0,1288 | 0,1450 | 0,2500 |
| Log loss | 0,4381 | 0,4037 | 0,6931 |
Bảng dưới cho thấy hai kiểu phạt khác nhau thế nào, tính cho một dự báo mà xác suất gán cho điều thật sự xảy ra là p:
| Xác suất gán cho điều đã xảy ra | Phạt Brier | Phạt log loss |
|---|---|---|
| 0,90 | 0,0100 | 0,1054 |
| 0,70 | 0,0900 | 0,3567 |
| 0,50 | 0,2500 | 0,6931 |
| 0,30 | 0,4900 | 1,2040 |
| 0,10 | 0,8100 | 2,3026 |
| 0,05 | 0,9025 | 2,9957 |
Khi p giảm từ 0,5 xuống 0,05, phạt Brier chỉ tăng từ 0,25 lên khoảng 0,90, còn phạt log loss tăng từ 0,69 lên gần 3,00. Nói cách khác, log loss trừng phạt gần như không khoan nhượng những dự báo cho rằng một điều gần như không thể xảy ra, vậy mà nó xảy ra.
Điểm thú vị: trên cùng tám trận, Brier xếp X trên Y, còn log loss lại xếp Y trên X. Hai thước đo không bất đồng về đúng sai, chúng khác nhau ở cách thưởng phạt. Brier có mức phạt tối đa cho mỗi dự báo là 1, trong khi log loss có thể phạt rất nặng một dự báo cực đoan. Với tám trận, thứ hạng dễ đảo chiều chỉ vì một vài trận; đó là lý do không nên rút kết luận trên mẫu nhỏ.
Quy trình chọn và dùng thước đo
- Chọn thước đo trước khi nhìn kết quả. Chọn sau khi biết ai thắng là cách tự lừa mình quen thuộc.
- Luôn có mốc so sánh. Dự báo chia đôi, hoặc tần suất thắng sân nhà của giải đấu trong quá khứ, là mốc tối thiểu.
- Giữ dữ liệu kiểm tra tách riêng. Mô hình được chỉnh theo dữ liệu nào thì không được chấm bằng đúng dữ liệu đó.
- Báo kèm khoảng dao động. Chia mẫu thành nhiều nhóm, tính điểm mỗi nhóm, xem mức dao động giữa các nhóm.
- Xem thêm hiệu chỉnh. Điểm số tổng hợp không cho biết mô hình lệch ở vùng xác suất nào; cần bảng hiệu chỉnh để thấy điều đó.
Giới hạn khi áp dụng cho bóng đá
Bóng đá ít bàn thắng nên kết quả nhiễu rất mạnh, và một mô hình tốt cũng chỉ cải thiện điểm số so với mốc chia đôi ở mức khiêm tốn. Đừng kỳ vọng những con số thấp như trong các bài toán phân loại ảnh. Ngoài ra, ba kết cục thắng-hoà-thua cần các phiên bản mở rộng của thước đo, tính trên cả ba xác suất. Cuối cùng, điểm số cao hay thấp luôn chỉ có nghĩa khi đặt cạnh một mô hình khác hoặc một mốc tham chiếu cùng mẫu.
Một thói quen hữu ích là đặt hai con số cạnh nhau: điểm của mô hình và điểm của mốc chia đôi. Hiệu của chúng, đôi khi gọi là “kỹ năng”, cho biết mô hình thực sự thêm được bao nhiêu thông tin. Nếu hiệu này gần bằng 0 trên một mẫu lớn, mọi công thức phức tạp phía sau thực chất chưa đem lại gì. Ngược lại, hiệu nhỏ nhưng ổn định qua nhiều mùa giải đã là một thành tích đáng ghi nhận trong môn thể thao nhiễu như bóng đá. Đây cũng là lý do người làm mô hình thường kiên nhẫn theo dõi hàng trăm dự báo thay vì tuyên bố thành công sau vài tuần.
Lưu ý: nội dung chỉ giải thích khái niệm đánh giá mô hình, số liệu là giả định minh hoạ và chỉ mang tính tham khảo. Nếu bạn liên hệ chủ đề này với cá cược, hãy nhớ rằng đó là hoạt động chỉ dành cho người từ 18 tuổi trở lên và luôn có rủi ro mất tiền.