CROSS VALIDATION LÀ GÌ

     

Hello anh em Mì AI, hôm nay chúng ta sẽ cùng khám phá về K-Fold cross validation, một tốt chiêu khá tuyệt khi bọn họ không có tương đối nhiều dữ liệu cho các bài toàn Machine Learning với Deep Learning nhé.

Bạn đang xem: Cross validation là gì

K-Fold CV là một phương thức để review model một cách đúng đắn khi bọn họ train model nhưng bao gồm quá ít dữ liệu.

Phần 1 – Vấn đề review “sai” model khi train với không nhiều dữ liệu

Chắc hẳn bằng hữu đã quen thuộc với bí quyết chia dữ liệu train, valdiation và thử nghiệm đúng không? ví dụ như hình sau:

*

Bây giờ đồng hồ ta tạm bỏ lỡ Test set sang một bên chính vì đó là tập chúng ta sẽ thực hiện để kiểm tra mã sản phẩm sau lúc train chấm dứt để xem mã sản phẩm sẽ handle tài liệu như làm sao trong thực tế. Chúng ta xét train và val phối thôi nha!

Thông thường các bạn sẽ thấy bọn họ hay chia train/val theo xác suất 80/20 đúng không nhỉ nhỉ? 80% tài liệu (sau lúc đã bỏ phần test) sẽ là tài liệu để train mã sản phẩm và 20% còn sót lại sẽ làm tài liệu để kiểm tra model trong quá trình train.

Xem thêm: Cách Gỡ Bỏ Phương Thức Thanh Toán Trên Iphone, Chỉnh Sửa Hoặc Xóa Phương Thức Thanh Toán

Việc phân chia này trọn vẹn okie nếu như khách hàng có lượng dữ liệu đủ lớn. Mặc dù nhiên khi chúng ta có ít dữ liệu thì câu hỏi chia như này đang dẫn đến model của bạn hoạt động cực kém. Lý do? Là vì rất có thể một số điểm dữ liệu bổ ích cho qúa trình train đã trở nên bạn ném vào để gia công validation, chạy thử và mã sản phẩm không có cơ hội học điểm tài liệu đó. Thậm chí, thỉnh thoảng do ít dữ liệu nên có một vài class chỉ bao gồm trong validation, test mà không tồn tại trong train (do việc chia train, val là trọn vẹn ngẫu nhiên) dẫn mang lại một tác dụng tồi tệ khi validation với test. Với nếu bọn họ dựa tức thì vào hiệu quả đó để review rằng mã sản phẩm không xuất sắc thì thật là oan uổng đến nó giống như một học viên không được học Tiếng Anh mà phải đi thi TOEFL vậy =))

Và chính là lúc chúng ta cần đến K-Fold Cross Validation!

Phần 2 – Vậy K-Fold Cross Validation là gì?

K-Fold CV vẫn giúp họ đánh giá một model rất đầy đủ và đúng mực hơn khi họ có một tập dữ liệu không lớn. Để sau đó họ đưa ra quyết định mã sản phẩm đó có tương xứng với dữ liệu, việc hiện tại hay là không để mà chỉ dẫn next action.

Xem thêm: Dụng Cụ Để Đo Nhiệt Độ Không Khí Là Gì, Và Cách Sử Dụng

Bắt đầu nhé!

*

Như hình bên train, các bạn sẽ thấy:

Phần dữ liệu Test data sẽ được để riêng biệt và giành cho bước đánh giá sau cùng nhằm chất vấn “phản ứng” của mã sản phẩm khi gặp mặt các dữ liệu unseen trả toàn.Phần tài liệu Training thì sẽ được chia tình cờ thành K phần (K là một số nguyên, hay lựa chọn là 5 hoặc 10). Sau đó train model K lần, các lần train sẽ chọn một phần làm tài liệu validation cùng K-1 phần còn sót lại làm dữ liệu training. Công dụng đánh giá chỉ model ở đầu cuối sẽ là vừa phải cộng kết quả đánh giá của K lần train. Đó chính là lý vì vì sao ta nhận xét khách quan liêu và chính xác hơn.

Sau khi đánh giá xong model cùng 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 1 trong những 2 cách sau để tạo nên model sau cuối (để đưa theo dùng predict):

Cách một: Trong quá trình train những fold, ta giữ giàng model tốt nhất và mang model đó di sử dụng luôn. Bí quyết này đang có điểm mạnh là không cần train lại nhưng lại sở hữu nhược điểm là mã sản phẩm sẽ không quan sát được all data và có thể không làm cho việc tốt với những dữ liệu trong thực tế.Cách hai: train model 1 đợt tiếp nhữa với tổng thể dữ liệu (không phân tách train, val nữa) và kế tiếp save lại và mang đi predict với thử nghiệm set để xem tác dụng như làm sao