Chia dữ liệu chuỗi thời gian thành các bộ huấn luyện / kiểm tra / xác nhận


11

Cách tốt nhất để phân chia dữ liệu chuỗi thời gian thành các bộ xác thực / kiểm tra / xác thực, trong đó bộ xác thực sẽ được sử dụng để điều chỉnh siêu tham số?

Chúng tôi có dữ liệu bán hàng hàng ngày trong 3 năm và kế hoạch của chúng tôi là sử dụng 2015-2016 làm dữ liệu đào tạo, sau đó lấy mẫu ngẫu nhiên 10 tuần từ dữ liệu 2017 để được sử dụng làm bộ xác thực và 10 tuần nữa từ dữ liệu 2017 cho bộ kiểm tra. Sau đó, chúng tôi sẽ tiến lên phía trước vào mỗi ngày trong bộ kiểm tra và xác nhận.

Câu trả lời:


7

Bạn nên sử dụng phân chia dựa trên thời gian để tránh sự thiên vị về phía trước. Đào tạo / xác nhận / kiểm tra theo thứ tự này theo thời gian.

Bộ kiểm tra phải là phần gần đây nhất của dữ liệu. Bạn cần mô phỏng một tình huống trong môi trường sản xuất, trong đó sau khi đào tạo một mô hình bạn đánh giá dữ liệu đến sau thời gian tạo ra mô hình. Do đó, việc lấy mẫu ngẫu nhiên mà bạn sử dụng để xác nhận và đào tạo là không tốt.


4

Tôi nghĩ rằng cách đầy đủ nhất để tận dụng dữ liệu chuỗi thời gian của bạn để đào tạo / xác nhận / kiểm tra / dự đoán là:

nhập mô tả hình ảnh ở đây

Là hình ảnh tự giải thích? Nếu không, xin vui lòng bình luận và tôi sẽ thêm văn bản ...


3

Thay vì chỉ tạo một bộ tập huấn luyện / xác nhận, bạn có thể tạo thêm các bộ như vậy.

Tập huấn luyện đầu tiên có thể là dữ liệu 6 tháng (học kỳ đầu tiên của năm 2015) và tập xác thực sau đó sẽ là ba tháng tiếp theo (tháng 7-8 / 2015). Tập huấn luyện thứ hai sẽ là sự kết hợp của tập huấn luyện và xác nhận đầu tiên. Bộ xác nhận sau đó là ba tháng tiếp theo (tháng 9-10 / 2015). Và như thế.

Đây là một biến thể của xác thực chéo K-Fold trong đó các bộ huấn luyện là sự kết hợp của bộ đào tạo và xác thực trước đó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.