Xác thực chéo K-fold là một kỹ thuật được sử dụng để đánh giá hiệu suất của một mô hình. Nó đặc biệt hữu ích khi ước tính mức độ khái quát hóa của một mô hình đối với dữ liệu mới, chưa được nhìn thấy. Quá trình này bao gồm việc chia tập dữ liệu thành các tập con 'k' hoặc các phần có kích thước xấp xỉ bằng nhau. Dưới đây là bảng phân tích các bước:
1. Tách tập dữ liệu:
Tập dữ liệu được chia thành các tập con hoặc tập hợp con có kích thước bằng nhau 'k'. Ví dụ: nếu bạn có 1.000 mẫu và chọn 'k' là 5 thì mỗi nếp gấp sẽ chứa 200 mẫu.
2. Đào tạo và đánh giá lặp lại:
Mô hình được đào tạo 'k' lần. Trong mỗi lần lặp, một nếp gấp khác nhau được sử dụng làm tập xác thực và các nếp gấp còn lại được sử dụng để huấn luyện. Ví dụ:
-
Lần 1: Gấp 1 để xác thực, Gấp 2 thành k để huấn luyện
-
Lặp lại 2: Gấp 2 để xác thực, Gấp 1 và 3 thành k để huấn luyện
-
Lặp lại 3: Gấp 3 để xác thực, Gấp 1 và 2 và 4 thành k để đào tạo
-
... và cứ như vậy cho đến khi tất cả các nếp gấp đã được sử dụng làm bộ xác thực.
3. Đánh giá hiệu suất:
Sau mỗi lần lặp, hiệu suất của mô hình được đánh giá bằng cách sử dụng số liệu đã chọn (ví dụ: độ chính xác, độ chính xác, khả năng thu hồi, v.v.) trên bộ xác thực. Các chỉ số hiệu suất từ mỗi lần lặp lại được tính trung bình hoặc kết hợp để đưa ra ước tính tổng thể về hiệu suất của mô hình.
4. Tổng hợp các số liệu:
Các số liệu hiệu suất (ví dụ: điểm chính xác) từ mỗi lần lặp được tính trung bình hoặc kết hợp để đưa ra đánh giá tổng thể về hiệu suất của mô hình. Số liệu tổng hợp này thể hiện hiệu suất dự kiến của mô hình đối với dữ liệu chưa được xem.
Ưu điểm của xác thực chéo K-Fold so với việc phân chia thử nghiệm/tàu hỏa đơn giản
-
Sử dụng dữ liệu tốt hơn: Xác thực chéo K-Fold giúp sử dụng dữ liệu có sẵn tốt hơn vì mỗi mẫu được sử dụng cho cả đào tạo và xác thực.
-
Giảm phương sai trong ước tính hiệu suất: Nó cung cấp ước tính đáng tin cậy hơn về hiệu suất mô hình bằng cách giảm phương sai liên quan đến một phần tách đào tạo/kiểm tra.
-
Khái quát hóa: Nó giúp hiểu cách mô hình hoạt động trên các tập hợp con dữ liệu khác nhau, từ đó đánh giá khả năng khái quát hóa của nó.
Chọn giá trị của 'k'
-
Giá trị 'k' cao hơn: Việc sử dụng giá trị 'k' cao hơn (ví dụ: 10 trở lên) dẫn đến các tập hợp xác thực nhỏ hơn, điều này có thể dẫn đến độ lệch thấp hơn trong ước tính hiệu suất nhưng chi phí tính toán cao hơn.
-
Giá trị 'k' thấp hơn: Sử dụng giá trị 'k' thấp hơn (ví dụ: 3 hoặc 5) giảm chi phí tính toán nhưng có thể dẫn đến độ lệch cao hơn trong ước tính hiệu suất do xác thực nhỏ hơn bộ.
Trong các tình huống thực tế
-
Đối với các tập dữ liệu lớn, giá trị 'k' cao hơn có thể tốn kém về mặt tính toán.
-
Khi tập dữ liệu nhỏ, 'k' cao hơn có thể không cung cấp đủ dữ liệu trong từng phần để đào tạo mô hình mạnh mẽ.
-
Nói chung, các giá trị như 5 hoặc 10 thường được sử dụng vì chúng tạo ra sự cân bằng giữa hiệu quả tính toán và ước tính hiệu suất đáng tin cậy.