[Lần đầu tiên tôi đăng câu hỏi này lên Stack Overflow tại đây nhưng không nhận được bất kỳ câu trả lời nào, vì vậy tôi nghĩ tôi đã thử ở đây. Xin lỗi nếu đăng lại không được phép.]
Tôi đã cố gắng sử dụng triển khai thuật toán Holt-Winters này để dự báo chuỗi thời gian trong Python nhưng đã chạy vào một rào cản ... về cơ bản, đối với một số chuỗi đầu vào (dương), đôi khi nó dự báo các số âm, rõ ràng không phải là trường hợp Ngay cả khi các dự báo không phải là tiêu cực, đôi khi chúng cực kỳ không chính xác - các đơn đặt hàng có cường độ cao hơn / thấp hơn mức cần thiết. Cung cấp cho thuật toán nhiều thời gian dữ liệu hơn để làm việc dường như không có ích, và trên thực tế thường làm cho dự báo tồi tệ hơn.
Dữ liệu tôi đang sử dụng có các đặc điểm sau, có thể là sự cố:
Rất thường xuyên được lấy mẫu (một điểm dữ liệu cứ sau 15 phút, trái ngược với dữ liệu hàng tháng như ví dụ sử dụng) - nhưng từ những gì tôi đã đọc, thuật toán Holt-Winters không nên có vấn đề với điều đó. Có lẽ điều đó chỉ ra một vấn đề với việc thực hiện?
Có nhiều chu kỳ - có các đỉnh hàng ngày (tức là cứ 96 điểm dữ liệu) cũng như chu kỳ hàng tuần của dữ liệu cuối tuần thấp hơn đáng kể so với dữ liệu ngày trong tuần - ví dụ: các ngày trong tuần có thể đạt đỉnh khoảng 4000 nhưng cuối tuần đạt cực đại 1000 - nhưng ngay cả khi tôi chỉ đưa ra đó là dữ liệu ngày thường, tôi gặp vấn đề về số âm.
Có điều gì tôi đang thiếu với việc triển khai hoặc sử dụng thuật toán Holt-Winters nói chung không? Tôi không phải là người thống kê nên tôi đang sử dụng các giá trị 'mặc định' của alpha, beta và gamma được chỉ định trong liên kết ở trên - đó có phải là vấn đề không? Một cách tốt hơn để tính toán các giá trị này là gì?
Hoặc ... có thuật toán nào tốt hơn để sử dụng ở đây hơn Holt-Winters không? Cuối cùng, tôi chỉ muốn tạo dự báo hợp lý từ dữ liệu lịch sử ở đây. Tôi đã thử làm mịn theo cấp số nhân và theo cấp số nhân nhưng (theo như tôi hiểu) không hỗ trợ tính định kỳ trong dữ liệu.
Tôi cũng đã xem xét việc sử dụng gói dự báo R thay vì thông qua rpy2 - điều đó có cho tôi kết quả tốt hơn không? Tôi tưởng tượng rằng tôi vẫn sẽ phải tính toán các tham số, v.v., vì vậy sẽ chỉ là một ý tưởng tốt nếu vấn đề hiện tại của tôi nằm ở việc thực hiện thuật toán ...?
Bất kỳ trợ giúp / đầu vào sẽ được đánh giá rất cao!