CMU: Machine Learning Blog
85

Thủ thuật

Forking-Sequences: Phương pháp huấn luyện dự báo đa bước hiệu quả về thống kê và tính toán

(giờ Việt Nam)

Tóm tắt AI

Nhóm nghiên cứu tại CMU giới thiệu Forking-Sequences, một phương pháp huấn luyện cho phép dự báo toàn bộ chuỗi thời gian chỉ trong một lần truyền tiến mà không cần thêm tham số, giúp tối ưu hóa hiệu suất tính toán.

Bản dịch AI

Forking-Sequences — Part I: Statistically and Computationally Efficient Multi-Horizon Forecasting

Dựa trên: Potosnak, W., Wolff, M., Cao, M., Ma, R., Konstantinova, T., Efimov, D., Mahoney, M.W., Oreshkin, B., & Olivares, K.G. "Forking-Sequences: Statistically and Computationally Efficient Multi-Horizon Forecasting with Reduced Volatility." Transactions on Machine Learning Research, 2026.

(Tuyên bố miễn trừ trách nhiệm: Mã nguồn triển khai không được sử dụng trong bài báo; không liên kết với Amazon — được cung cấp như một tài liệu tham khảo cho forking-sequences và forecast ensembling)

Tóm tắt (TL;DR)

Dự báo đa thời đoạn (multi-horizon forecasting) đã trở thành phương pháp mặc định trong các ứng dụng năng lượng, tài chính, chuỗi cung ứng và chăm sóc sức khỏe, vì nó cung cấp cho các nhà hoạch định cái nhìn toàn cảnh về các quỹ đạo tương lai thay vì chỉ là các kết quả tại một điểm duy nhất, từ đó hỗ trợ lập kế hoạch ngắn hạn, trung hạn và dài hạn. Tuy nhiên, cách huấn luyện một mô hình có ảnh hưởng lớn đến mức đáng ngạc nhiên đối với cả hiệu quả thống kê, hiệu quả tính toán lẫn độ chính xác, và một trong những lựa chọn kiến trúc mạnh mẽ nhất cho việc này lại là một trong những lựa chọn ít được khám phá nhất: forking-sequences.

Forking-sequences đã góp phần định hình thiết kế của các mạng thần kinh MQForecaster cho các ứng dụng công nghiệp, với những ví dụ đáng chú ý bao gồm MQCNN [1], MQT [2] và SPADE [3]. Tuy nhiên, cho đến nay, nó vẫn chưa được định nghĩa chính thức, chứng minh về mặt lý thuyết hay đánh giá hệ thống. Bài viết này sẽ đi sâu vào forking-sequences là gì, tại sao nó là một mô hình huấn luyện hiệu quả hơn về mặt thống kê và tính toán, cũng như cách nó tác động đến độ chính xác của dự báo trên các loại encoder khác nhau. Phần II sẽ đề cập đến lợi ích đi kèm: giảm biến động dự báo thông qua ensembling.

Window-Sampling so với Forking-Sequences

Hầu hết các mô hình dự báo thần kinh đều sử dụng một thiết kế kiến trúc tiêu chuẩn được gọi là window-sampling (lấy mẫu cửa sổ). Trong thiết lập này, mô hình mã hóa một cửa sổ lịch sử có độ dài cố định và giải mã một dự báo đa thời đoạn duy nhất từ đó. Phương pháp window-sampling phân đoạn chuỗi thành các cửa sổ có kích thước L; và các cửa sổ được xử lý độc lập tại mỗi ngày tạo dự báo (FCD - Forecast Creation Date), hay thời điểm mà dự báo được đưa ra. Encoder xuất ra một trạng thái ẩn cho mỗi vị trí trong chân trời dự báo; chúng ta sử dụng [h] = [1,..., H] để lập chỉ mục cho embedding tương ứng với mỗi bước chân trời h:

\[ \mathbf{h}_{t,[h]} = \mathrm{Encoder}\left(\mathbf{Y}_{[t]}\right) \qquad \text{và} \qquad %\ \hat{\mathbf{Y}}_{t,[h]} = \mathrm{Decoder}\left(\mathbf{h}_{t,[h]}\right). \]

Window-sampling được mô tả trong Hình 1.

Forking-sequences áp dụng một cách tiếp cận khác: nó đồng thời mã hóa và giải mã toàn bộ chuỗi thời gian trên tất cả các FCD trong một lần truyền tiến (forward pass), tạo ra một lưới đầy đủ các dự báo đa thời đoạn cùng một lúc. Thay vì một trạng thái ẩn duy nhất cho mỗi cửa sổ, encoder xuất ra một biểu diễn ẩn cho mỗi FCD, và một bộ giải mã (decoder) dùng chung sẽ biến mỗi biểu diễn đó thành dự báo đa thời đoạn của riêng nó:

\[ \mathbf{h}_{[t][h]} = \mathrm{Encoder}\left(\mathbf{Y}_{[t]}\right) \qquad \text{và} \qquad %\\ \hat{\mathbf{Y}}_{[t][h]} = \mathrm{Decoders}\left(\mathbf{h}_{[t][h]}\right). \]

Forking-sequences được mô tả trong Hình 2.

Hình 2: Forking-sequences

Các ý tưởng tương tự như forking-sequences đã xuất hiện trong tài liệu về dự báo hàng thập kỷ nay, mặc dù không truyền cảm hứng cho việc thiết kế hoặc huấn luyện kiến trúc mạng thần kinh. Đáng chú ý nhất, [4] đã giới thiệu kiểm chứng chéo chuỗi thời gian (time-series cross-validation) như một kỹ thuật lựa chọn mô hình có tính đến động lực học thời gian và sự phụ thuộc dữ liệu, giải quyết các hạn chế của kiểm chứng chéo cổ điển; phương pháp này giả định các quan sát FCD độc lập.

Forking-sequences cũng có những điểm tương đồng về mặt khái niệm với kỹ thuật teacher-forcing, đáng chú ý nhất là thông qua mục tiêu dự đoán token tiếp theo [5], đây là một chiến lược học tự hồi quy (autoregressive) huấn luyện các mô hình dự đoán token tiếp theo dựa trên các token trước đó. Tuy nhiên, một sự khác biệt chính giữa kỹ thuật teacher-forcing tiêu chuẩn được sử dụng trong các mô hình tự hồi quy NLP và phương pháp forking-sequences được sử dụng trong dự báo thần kinh là sự sao chép mục tiêu ngầm định phát sinh trong các dự báo đa thời đoạn. Trong khi các mô hình NLP thường chỉ được huấn luyện để dự đoán token tiếp theo, các mô hình dự báo phải dự đoán các quỹ đạo tương lai dài hơn, tạo ra nhiều bước tương lai cho mỗi FCD. Ngoài sự khác biệt này, forking-sequences thực hiện điều tương tự cho chuỗi thời gian: nó chuyển đổi một chuỗi thành một tập hợp đầy đủ các mục tiêu huấn luyện đa thời đoạn chồng lấp, nhân lên tín hiệu giám sát được trích xuất từ mỗi chuỗi với chi phí bổ sung không đáng kể.

Lợi ích 1: Hiệu quả thống kê (Gradient tốt hơn)

Trong quá trình huấn luyện, các gradient được tính toán dựa trên các tham số mô hình cho các cập nhật SGD nhằm giảm thiểu hàm mất mát (loss). Chúng tôi sử dụng Quantile Loss (QL) trong các thí nghiệm của mình. Gradient được tính toán trên một minibatch có độ dài B. Với kiến trúc window-sampling, các mất mát đa thời đoạn được thu thập trong một batch B cho các FCD riêng lẻ:

\[ \nabla \mathcal{L} = \frac{1}{B \times H} \sum^{B}_{b=1} \sum^{H}_{h=1} \nabla \mathrm{QL} \left(y_{b,h},\; \hat{y}_{b,h}). \right. \]

Với forking-sequences, gradient được tính toán từ các mất mát thu thập trên tất cả T FCD trong chuỗi cùng một lúc cho minibatch có độ dài B của các chuỗi thời gian riêng lẻ:

\[ \nabla \mathcal{L}_{T} = \frac{1}{B \times T \times H} \sum^{B}_{b=1} \sum^{T}_{t=1} \sum^{H}_{h=1} \nabla \mathrm{QL} \left(y_{b,t,h},\; \hat{y}_{b,t,h} \right). \]

Bài báo chứng minh một kết quả lý thuyết quan trọng:

Định lý 1 (Mức tăng SNR của Forking-Sequences dưới sự phụ thuộc M).

Nếu T mẫu gradient phụ thuộc M (M-dependent), phương sai của ước lượng gradient forking-sequences giảm tuyến tính (O(1/T)), và tỷ lệ tín hiệu trên nhiễu (SNR) của nó tăng tuyến tính (O(T)).

Nói một cách đơn giản: forking-sequences gộp thông tin gradient trên nhiều FCD trong một chuỗi duy nhất. Vì các mẫu này chỉ tương quan cục bộ (các FCD gần nhau về thời gian thì phụ thuộc nhau, nhưng sự phụ thuộc đó biến mất sau một độ trễ nhất định), việc lấy trung bình trên nhiều mẫu hơn sẽ làm giảm phương sai của ước lượng gradient theo tốc độ tuyến tính, O(1/T) theo số lượng FCD, đây chính là cơ chế đằng sau luật số lớn yếu cổ điển. Điều này mang lại tác động kép trong việc cải thiện hiệu quả thống kê:

Hình 3: Sự hội tụ tối ưu hóa mô hình MQForecaster trên dữ liệu hàng giờ M4, sử dụng kỹ thuật forking-sequences (nét liền) hoặc window-sampling (nét đứt). Quantile loss trên (a) tập huấn luyện và (b) tập kiểm chứng theo các bước huấn luyện luôn thấp hơn đối với các mô hình forking-sequences. Trên các kiến trúc, forking-sequences cho thấy những cải thiện về quantile loss trên tập kiểm chứng.

Hình 4: Forking-sequences mang lại tỷ lệ tín hiệu trên nhiễu (SNR) gradient cao hơn cho các mô hình LSTM, cho thấy các tín hiệu huấn luyện ổn định hơn. SNR gradient của Transformer vẫn tương đối ổn định cho cả forking-sequences và window-sampling, vì các Transformer không bị ảnh hưởng bởi hiện tượng triệt tiêu gradient (vanishing gradients).

Lợi ích 2: Hiệu quả tính toán

Ngoài việc huấn luyện, forking-sequences còn giúp quá trình suy luận (inference) rẻ hơn đáng kể, đặc biệt là đối với suy luận theo kiểu kiểm chứng chéo, nơi mô hình cần tạo dự báo tại nhiều FCD cuốn chiếu (rolling FCDs).

Window-sampling tính toán lại encoder từ đầu tại mỗi FCD. Vì các cửa sổ cuốn chiếu liên tiếp chồng lấp lên nhau rất nhiều, phần lớn việc tính toán lại đó là dư thừa; encoder đang xử lý lại dữ liệu đầu vào mà nó thực tế đã thấy, chỉ để loại bỏ kết quả và bắt đầu lại ở FCD tiếp theo. Forking-sequences tránh hoàn toàn điều này: nó mã hóa toàn bộ chuỗi một lần, truyền các trạng thái ẩn về phía trước qua các FCD thay vì tính toán lại từ đầu mỗi lần.

Hình 5: Kiểm chứng thực nghiệm về độ phức tạp tính toán thông qua các phép đo thời gian thực trên các phương pháp suy luận khác nhau. T đại diện cho độ dài chuỗi thời gian, và L biểu thị kích thước cửa sổ trong window-sampling bị giới hạn.

Tốc độ tăng "hệ số T" được đo so với window-sampling (đầy đủ; lịch sử không giới hạn), nơi encoder của mỗi FCD xử lý lại toàn bộ lịch sử đã thấy cho đến nay. Đối với LSTM, CNN và RNN, điều này làm giảm độ phức tạp từ O(T²) xuống O(T). Đối với Transformer, cơ chế tự chú ý (self-attention) không giới hạn có chi phí O(T³) (mỗi trong số T FCD thực hiện lại một lượt chú ý O(T²)), trong khi forking-sequences thực hiện điều đó một lần ở mức O(T²), mang lại mức tăng gấp T lần như được hiển thị trong Bảng 1.

Tuy nhiên, trong thực tế, các Transformer thường sử dụng một cửa sổ cố định, bị giới hạn (lookback bị chặn với độ dài L) thay vì lịch sử không giới hạn, do độ phức tạp bậc hai của cơ chế chú ý đầy đủ. So với mức cơ sở này, O(T²) của forking-sequences chỉ vượt trội hơn O(T·L²) của window-sampling bị giới hạn khi T < L². Để giữ được cả lợi ích thống kê và tính toán của forking-sequences trong chế độ này, các FCD có thể được lấy mẫu thành các phân đoạn nơi T ≤ L², thay vì áp dụng trên toàn bộ chiều dài chuỗi.

Kết quả thực nghiệm: Cải thiện độ chính xác trên Benchmark M-Series

Để đánh giá tác động của mô hình huấn luyện đối với độ chính xác dự báo, chúng tôi đã huấn luyện các mô hình MQForecaster chỉ thay đổi encoder (MLP, RNN, LSTM, CNN, Transformer, State Space/S4) với forking-sequences so với window-sampling, và đánh giá trên 16 tập dữ liệu trải dài các cuộc thi M1, M3, M4 và Tourism, sử dụng các chỉ số độ chính xác là sCRPS (scaled Continuous Ranked Probability Score) và MAE (Mean Absolute Error).

Hình 6: Phân phối phần trăm cải thiện trong các chỉ số (a) sCRPS và (b) MAE trên các tập dữ liệu cho các loại encoder khác nhau được huấn luyện bằng forking-sequences so với window-sampling. Chỉ số của mỗi tập dữ liệu được lấy trung bình qua 5 lần chạy với các hạt giống ngẫu nhiên khác nhau. Phần trăm cải thiện lớn hơn 0 cho thấy forking-sequences đạt được sai số dự báo thấp hơn.

Trong khi tất cả các biến thể encoder với forking-sequences đều cho thấy sCRPS được cải thiện, mức độ cải thiện thay đổi đáng kể giữa các kiến trúc encoder và từng tập dữ liệu như được hiển thị trong Hình 6, cho thấy phân phối phần trăm cải thiện trong các chỉ số sCRPS và MAE trên các tập dữ liệu cho các loại encoder khác nhau được huấn luyện bằng forking-sequences so với window-sampling. Đối với các mô hình encoder LSTM, việc huấn luyện với forking-sequences đã giảm sCRPS trung bình 49,3% trên các tập dữ liệu so với phương pháp window-sampling. Mức tăng trung vị nhất quán trên các tập dữ liệu được quan sát thấy đối với các encoder RNN (46,2%) và CNN (28,6%), trong khi các encoder Transformer (24,7%) và StateSpace (6,4%) cho thấy mức cải thiện nhỏ hơn.

Dự báo chuỗi thời gianMachine LearningTối ưu hóaCMUNghiên cứu AI
Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ CMU: Machine Learning Blog. Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.