You are on page 1of 2

K-Fold cross validation, đánh giá model hiệu

quả hơn khi có ít dữ liệu

Như hình bên trên:


 Phần dữ liệu Test data sẽ được để riêng và dành cho các bước đánh giá cuối
cùng nhằm kiểm tra ‘phản ứng’ của model khi gặp các dữ liệu unseen hoàn
toàn.
 Phần dữ liệu Training thì sẽ được chia ngẫu nhiên thành K phần (K là một số
nguyên, hay chọn là 5 hoặc 10). Sau đó train model K lần, mỗi lần train sẽ
chọn 1 phần làm dữ liệu validation và K-1 phần còn lại làm dữ liệu training.
Kết quả đánh giá model cuối cùng sẽ là trung bình cộng kết quả đánh giá của
K lần train. Đó chính là lý do vì sao ta đánh giá khách quan và chính xác
hơn.
Sau khi đánh giá xong model và nếu cảm thấy kết quả (ví dụ accuracy trung bình)
chấp nhận được thì ta có thể thực hiện một trong 2 cách sau để tạo ra model cuối
cùng (để mang đi dùng predict):
 Cách 1: Trong quá trình train các fold, ta luu lại model tốt nhất và mang nó
đi dùng luôn. Cách này có ưu điểm là không cần train lại nhưng có nhược
điểm là model sẽ không nhìn được all data và có thể không làm việc tốt với
các dữ liệu trong thực tế.
 Cách 2: train model lại 1 lần nữa với toàn bộ dữ liệu (không chia train, val
nữa) và sau đó save lại và mang đi predict với test để xem lại kết quả như
thế nào. 

You might also like