Dự báo chuỗi thời gian cùng công nghệ Học sâu

Dự báo chuỗi thời gian cùng công nghệ Học sâu

(Nguồn: https://blog.vinbigdata.org/)

Dự báo chuỗi thời gian (Time series forecasting) hiện là lĩnh vực nghiên cứu rất phổ biến. Dễ dàng tìm thấy nhiều loại dữ liệu chuỗi thời gian trong y học, dự báo thời tiết, sinh học, quản lý chuỗi cung ứng và dự báo giá cổ phiếu, v.v. 

Dự báo chuỗi thời gian hiện được ứng dụng phổ biến trong nhiều lĩnh vực
Dự báo chuỗi thời gian hiện được ứng dụng phổ biến trong nhiều lĩnh vực

Với sự nở rộ của dữ liệu cùng sức mạnh tính toán trong những năm gần đây, học sâu (deep learning) đã trở thành lựa chọn hàng đầu để xây dựng các mô hình dự báo chuỗi thời gian. Trong khi các mô hình Học máy truyền thống – chẳng hạn như mô hình tự hồi quy (AR) hoặc Exponential smoothing (san bằng hàm mũ) thực hiện quá trình chuyển đổi tập dữ liệu thô ban đầu thành tập các thuộc tính theo cách thủ công và việc tối ưu hóa tham số cũng phải dựa trên chọn lọc các đặc trưng, thì mô hình Học sâu chỉ học các tính năng trực tiếp chỉ từ dữ liệu. Nhờ đó, nó giúp tăng tốc quá trình chuẩn bị dữ liệu và có thể học các mẫu dữ liệu phức tạp hơn một cách đầy đủ. Trong bài viết dưới đây, VinBigdata sẽ giới thiệu một số cách tiếp cận Học sâu phổ biến nhất đối với Dự báo chuỗi thời gian.

Khái quát về chuỗi thời gian

Chuỗi thời gian (time series) bao gồm một số đặc trưng chính, có thể kể đến:

  • Xu hướng dài hạn: Xu hướng dài hạn là hướng tổng thể chung của dữ liệu thu được khi bỏ qua bất kỳ tác động ngắn hạn nào như biến động theo mùa hoặc nhiễu.
  • Tính thời vụ: Tính thời vụ đề cập đến các biến động định kỳ được lặp lại trong tất cả các khoảng thời gian.
  • Tính ổn định: Tính ổn định là một đặc tính quan trọng của chuỗi thời gian. Chuỗi thời gian được cho là cố định nếu giá trị trung bình, phương sai và hiệp phương sai của nó không thay đổi đáng kể theo thời gian. 
  • Nhiễu: Mọi tập dữ liệu đều có nhiễu, điều đó đề cập đến các dao động hoặc biến thể ngẫu nhiên do các yếu tố không thể kiểm soát gây nên.
  • Tự tương quan: Đây là mối tương quan giữa chuỗi thời gian và phiên bản trễ của chính nó. Tự tương quan được sử dụng để xác định tính thời vụ và xu hướng trong dữ liệu chuỗi thời gian.

Dự báo chuỗi thời gian cùng công nghệ Học máy

Một số mô hình học máy truyền thống được sử dụng để dự báo chuỗi thời gian bao gồm ARIMA và Exponential smoothing (san bằng hàm mũ). ARIMA là sự kết hợp giữa các phương pháp tiếp cận Tự hồi quy (AR) và Trung bình động (MA) trong việc xây dựng mô hình tổng hợp của chuỗi thời gian. Mô hình này khá đơn giản, nhưng có thể cho kết quả tốt. Nó bao gồm các tham số để tính đến tính thời vụ, xu hướng dài hạn, tự hồi quy và trung bình động, từ đó xử lý tự tương quan được nhúng trong dữ liệu.

Tuy nhiên, nhược điểm của Học máy truyền thống là: 

  • Các đặc trưng bị thiếu có thể ảnh hưởng đến hiệu suất của các mô hình;
  • Các mô hình học máy không thể nhận ra các mẫu phức tạp trong dữ liệu;
  • Học máy không có hiệu quả tốt trong dự báo dài hạn.

Dự báo chuỗi thời gian bằng công nghệ Học sâu

Việc sử dụng học sâu để dự báo chuỗi thời gian đã khắc phục được những hạn chế của học máy truyền thống với nhiều cách tiếp cận khác nhau. Hiện nay, Mạng thần kinh hồi quy (RNN) là kiến ​​trúc cổ điển và được sử dụng nhiều nhất cho các bài toán Dự báo chuỗi thời gian. RNN có ưu điểm ở chỗ:

Hiệu suất của RNN không bị ảnh hưởng đáng kể bởi các giá trị bị thiếu.

  • RNN có thể tìm thấy các mẫu phức tạp trong chuỗi thời gian đầu vào.
  • RNN cho kết quả tốt trong việc dự báo dài hạn, nhiều hơn là chỉ một vài bước.
  • RNN có thể mô hình hóa chuỗi dữ liệu để giả định mối tương quan giữa các mẫu

Tuy nhiên, một số hạn chế của RNN là: 

  • Khi được đào tạo trên chuỗi thời gian dài, RNN thường gặp phải vấn đề biến mất/bùng nổ gradient. Điều đó có nghĩa là các thông số trong các lớp ẩn không thay đổi nhiều hoặc dẫn đến sự không ổn định về số liệu và hành vi. Nguyên nhân là bởi vì gradient của hàm ảnh hưởng đến khả năng ghi nhớ của nó.
  • RNN có khả năng ghi nhớ hạn chế, do đó, có thể sẽ bỏ qua một số yếu tố của quá khứ trong việc dự đoán tương lai.
  • Việc đào tạo RNN rất phức tạp và tốn kém về mặt hạ tầng tính toán.

Do những nhược điểm này, các phần mở rộng khác nhau của RNN đã được thiết kế để giảm bớt bộ nhớ trong, như mạng nơ-ron hai chiều, LSTM, GRU, Cơ chế chú ý.

  • Bộ nhớ dài – ngắn hạn (LSTM) được phát triển dựa trên RNN để khắc phục vấn đề gradient biến mất;
  • Gated Recurrent Unit (GRU), tương tự như LSTM, là một dạng tiến hóa khác của RNN. GRU giúp giảm thiểu vấn đề gradient biến mất, với việc sử dụng các cổng, điều chỉnh luồng thông tin qua chuỗi trình tự. Việc sử dụng LSTM và GRU cho kết quả đáng kể trong các ứng dụng như nhận dạng giọng nói, tổng hợp giọng nói, hiểu ngôn ngữ tự nhiên, v.v.
  • Mô hình Bộ mã hóa-Giải mã: Mô hình này dành cho các RNN nhằm giải quyết những vấn đề liên quan đến việc chuỗi đầu vào có độ dài khác với chuỗi đầu ra;
  • Cơ chế chú ý khắc phục tình trạng giảm hiệu suất của mô hình Bộ mã hóa – giải mã khi có các chuỗi dài, sử dụng một vectơ ngữ cảnh khác nhau cho mỗi bước thời gian. Cơ chế chú ý cho kết quả tốt trong nhiều lĩnh vực như NLP, phân loại phân vị, phân loại tài liệu, v.v.

Việc mở rộng bộ nhớ có ý nghĩa quan trọng trong một số lĩnh vực nhất định như tài chính, nơi đòi hỏi ghi nhớ càng nhiều dữ liệu lịch sử càng tốt, để phục vụ quá trình dự đoán các bước tiếp theo.

(Nguồn tham khảo: Towards Data Science)

Bình luận về bài viết này