CHƯƠNG 1: TỔNG QUAN VỀ CHUỖI THỜI GIAN VÀ DỰ BÁO TRÊN CHUỖI THỜI GIAN 1. CHUỖI THỜI GIAN 1. Khái niệm chuỗi thời gian Chuỗi thời gian là một khái niệm quan trọng trong lĩnh vực phân tích dữ liệu và dự báo. Nó đề cập đến việc thu thập và tổ chức dữ liệu theo thời gian để phân tích xu hướng, mô hình hóa và dự đoán các sự thay đổi trong thời gian tương lai.
Trong chuỗi thời gian, mỗi điểm dữ liệu được gắn với một thời điểm cụ thể và thường có thứ tự thời gian. Các điểm dữ liệu này có thể được ghi lại với tần suất khác nhau, từ giây, phút, giờ, ngày, tháng đến năm, tùy thuộc vào tần suất quan sát và mục đích của nghiên cứu. Điều này nghĩa là mỗi điểm dữ liệu trong chuỗi thời gian có một giá trị và thời gian tương ứng.[1] Ngoài ra, chuỗi thời gian còn cung cấp thông tin về sự biến đổi của một biến số theo thời gian và cho phép chúng ta phân tích các xu hướng, mô hình hóa quy luật và dự đoán các giá trị tương lai. Nó thường được sử dụng trong nhiều lĩnh vực như kinh tế học, tài chính, khoa học môi trường, y học, hệ thống điện, giao thông vận tải và nhiều lĩnh vực khác.
1: Doanh thu hàng quý của công ty Johnson & Johnson bằng USD từ năm 1960 đến năm 1980. Các thành phần của chuỗi thời gian Trên thực tế, tất cả các chuỗi thời gian đều có thể phân rã thành ba thành phần là xu hướng (trend), mùa vụ (seasonal) và phần còn lại (residuals). Dựa vào các thành phần đó, có thể đào sâu vào chuỗi thời gian và nâng cao hiểu biết về chúng. Việc trực quan hóa các thành phần của một chuỗi thời gian được gọi là phân rã (decomposition).
Phân rã được xác định là một nhiệm vụ thống kê giúp tách một chuỗi thời gian thành các thành phần khác nhau. Chúng ta có thể trực quan hóa từng thành phần riêng lẻ, điều này sẽ giúp chúng ta nhận diện xu hướng và mùa vụ trong dữ liệu, điều mà không phải lúc nào cũng dễ dàng chỉ bằng cách nhìn vào tập dữ liệu. [1] Một ví dụ về phân rã chuỗi thời gian để hiểu rõ về các thành phần: Hình 1. 2: Thu nhập mỗi cổ phiếu hàng quý của Johnson & Johnson.
- Trend: Là sự thay đổi chậm và liên tục theo thời gian. Nó thể hiện xu hướng chung hoặc dài hạn của dữ liệu trong một khoảng thời gian nhất định. Xu hướng có thể là tăng dần (positive trend), giảm dần (negative trend) hoặc ổn định (flat trend). Đây là tính chất đặc trưng phổ biến trong dữ liệu chuỗi thời gian.
Đối với ví dụ trên, có thể thấy rằng xu hướng ban đầu là phẳng và sau đó tăng mạnh, điều này có nghĩa là chúng ta có một xu hướng tăng trong dữ liệu. 3: Tính xu hướng của cổ phiếu hàng quý của Johnson & Johnson. 5 - Seasonal: Là sự biến đổi có chu kỳ lặp lại và định kỳ trong dữ liệu. Nó xuất hiện khi có sự ảnh hưởng của yếu tố mùa vụ, ví dụ như thay đổi theo mùa hay chu kỳ hàng ngày, hàng tuần, hàng tháng hoặc hàng năm.
Tính mùa vụ thường liên quan đến các yếu tố tự nhiên hoặc hành vi kinh tế/chính trị có chu kỳ lặp lại theo thời gian. Nhìn vào ví dụ, có thể thấy rằng trong suốt một năm hoặc bốn quý, lợi nhuận trên mỗi cổ phiếu ban đầu thấp, tăng lên và giảm lại vào cuối năm. 4: Tính mùa vụ của cổ phiếu hàng quý của Johnson & Johnson. - Residuals: Là phần còn lại sau khi đã loại bỏ xu hướng và thành phần mùa vụ từ chuỗi dữ liệu gốc.
Residuals đại diện cho sự khác biệt giữa giá trị quan sát thực tế và giá trị được dự đoán bởi mô hình. Chúng được sử dụng để kiểm tra tính phù hợp của mô hình và phân tích những biến động không thể giải thích bằng xu hướng và mùa vụ. 5: Residuals của cổ phiếu hàng quý của Johnson & Johnson. Định nghĩa chuỗi dừng Chuỗi dừng là một khái niệm quan trọng khi làm việc với chuỗi thời gian.
Một chuỗi thời gian được xác định là một chuỗi dừng khi các thuộc tính thống kê của chuỗi không thay đổi theo thời gian. Nó có trung bình không đổi, phương sai không đổi và tự tương quan không đổi, và các thuộc tính này không phụ thuộc vào thời gian. Điều này 6 có nghĩa là các thông số thống kê của chuỗi dừng không thay đổi qua các khoảng thời gian khác nhau.[1] Một chuỗi dừng cung cấp một cơ sở ổn định để áp dụng các mô hình dự báo. Nếu chuỗi thời gian không dừng, nghĩa là nó có xu hướng, biến động ngẫu nhiên hay các yếu tố mùa vụ, các mô hình dự báo dựa trên tính dừng sẽ không phù hợp và dự báo từ các mô hình đó sẽ không đáng tin cậy.
6:Doanh thu từ the Broadway show ‘Wicked’. Mặc dù nó có sự lên xuống, nhưng rằng giá trị trung bình và độ lệch chuẩn của các giá trị này vẫn là đường ngang phẳng, nên đây vẫn là chuỗi dừng. Phương pháp kiểm định chuỗi dừng Khi phân tích một chuỗi thời gian thì việc xác định chuỗi có tính chất dừng không là điều rất cần thiết để quá trình phân tích mang lại hiệu quả cao. Có nhiều phương pháp để kiểm tra tính dừng của một chuỗi thời gian và một trong những phương pháp phổ biến là: - Visual test: Bằng cách vẽ biểu đồ, có thể nhận biết một số đặc điểm của chuỗi có dấu hiệu của sự biến đổi trung bình và phương sai theo thời gian.
Nếu thấy xu hướng tăng giảm hoặc biến động dài hạn, thì chuỗi có thể không ổn định và cần được chuyển đổi để đạt được tính dừng. - Summary Statistics: Một cách khác để kiểm tra tính dừng là xem xét các thống kê tổng quan của chuỗi thời gian. Bằng cách tính các giá trị trung bình, phương sai và các tham số khác để xác định xem chuỗi có thay đổi theo thời gian hay không. Nếu các giá trị này không thay đổi đáng kể, thì chuỗi thời gian có thể được coi là chuỗi dừng.
7 - Statistical Tests: Sử dụng các kiểm tra thống kê để kiểm tra xem các kỳ vọng về tính dừng có được đáp ứng hay đã bị vi phạm. Có nhiều kiểm tra thống kê được sử dụng nhưng có hai phương pháp phổ biến là Augmented Dickey-Fuller (ADF) và Kwiatkowski Phillips Schmidt Shin (KPSS). Phân loại chuỗi dừng Trong phân tích chuỗi dữ liệu, việc xác định đúng loại chuỗi dừng là một bước quan trọng. Các loại chuỗi dừng khác nhau cho biết về tính chất và cách xử lý của chuỗi dữ liệu đó.
Về cơ bản có 3 loại chuỗi dừng: - Strict Stationary: Một chuỗi dữ liệu được coi là strict stationary khi thỏa mãn định nghĩa toán học về điều kiện dừng. Điều này có nghĩa là giá trị trung bình, phương sai và hiệp phương sai của chuỗi không phụ thuộc vào thời gian. Trong một chuỗi dữ liệu strict stationary, các đặc tính thống kê của chuỗi không thay đổi theo thời gian và không có xu hướng hay biến động. Một chuỗi dữ liệu strict stationary là lý tưởng để thực hiện các dự đoán và mô hình hóa dự báo.[9] Một chuỗi mà xác suất của mọi tập giá trị {xt1, xt2, ., xtk} giống như tập dịch chuyển thời gian {xt1+h, xt2+h,.
Điều này có nghĩa là: [10] Pr{xt1 ≤ c1, ., xtk ≤ ck} = Pr{xt1+h ≤ c1, .1) Trong đó: - Pr: xác suất (probability) - c: giá trị ngưỡng (threshold value) trong các phép so sánh xác suất - x: các giá trị trong chuỗi thời gian - h: tham số dịch chuyển thời gian (time shift parameter) - Trend stationary: Một chuỗi dữ liệu không có đơn vị gốc (unit root) nhưng có xu hướng được gọi là chuỗi dữ liệu trend stationary. Khi loại bỏ xu hướng, chuỗi dữ liệu kết quả sẽ trở thành strict stationary. Kiểm tra KPSS phân loại một chuỗi dữ liệu là stationary dựa trên sự có mặt hay không có đơn vị gốc. Điều này có nghĩa là chuỗi dữ liệu có thể là strict stationary hoặc trend stationary.[9] - Difference Stationary: Một chuỗi dữ liệu thời gian có thể trở thành strict stationary thông qua việc lấy sai phân được gọi là difference stationary.
Điều này có nghĩa là nếu ta lấy sai phân giữa các giá trị liền kề trong chuỗi dữ liệu ban đầu, ta thu 8 được một chuỗi dữ liệu mới có tính chất strict stationary. Việc lấy sai phân chuỗi dữ liệu có thể giúp loại bỏ các xu hướng, mô hình hóa biến động ngắn hạn và làm giảm độ phức tạp của dữ liệu. Kiểm tra Augmented Dickey-Fuller (ADF) là một phương pháp phổ biến để kiểm tra tính chất difference stationary của một chuỗi dữ liệu. Chuẩn hóa chuỗi thời gian Các chuỗi thời gian trong thực tế thường sẽ có các vấn đề như là chuỗi phi tuyến tính, yếu tố ngẫu nhiên hoặc nhiễu (noise) hay phân bố không đồng đều, do đó sẽ làm ảnh hưởng đến kết quả khi được áp dụng vào các bài toán.
Vì thế chuẩn hóa chuỗi thời gian là một bước quan trọng trong quá trình phân tích và mô hình hóa chuỗi thời gian. Chuẩn hóa chuỗi thời gian là quá trình chuyển đổi chuỗi thời gian thành một dạng chuỗi có tính chất nhất định hoặc phân phối đồng nhất. Mục đích của việc chuẩn hóa chuỗi thời gian là để tạo ra một chuỗi có thể được so sánh và phân tích một cách hiệu quả. Một số phương pháp chuẩn hóa chuỗi thời gian phổ biến như: Chuẩn hóa theo z-score: Phương pháp này biến đổi chuỗi thời gian thành chuỗi có trung bình bằng 0 và độ lệch chuẩn bằng 1.
Bằng cách này, các giá trị trong chuỗi được đo lường dựa trên số lượng độ lệch chuẩn so với trung bình. Công thức: (𝑥−𝑚𝑒𝑎𝑛) xscaled = (1.2) 𝑠𝑡𝑑 Trong đó: - x: giá trị ban đầu trong chuỗi thời gian - mean: trung bình của chuỗi thời gian - std: độ lệch chuẩn của chuỗi thời gian Min-max scaling: Phương pháp này biến đổi chuỗi thời gian thành chuỗi có giá trị nhỏ nhất là 0 và giá trị lớn nhất là 1. Quá trình này được thực hiện bằng cách trừ giá trị nhỏ nhất và sau đó chia cho phạm vi giá trị (giá trị lớn nhất trừ giá trị nhỏ nhất). Công thức: (𝑥 − 𝑚𝑖𝑛) xscaled = (1.3) (𝑚𝑎𝑥 − 𝑚𝑖𝑛) Trong đó: 9 - x: giá trị ban đầu trong chuỗi thời gian - min và max: giá trị tối thiểu và tối đa trong chuỗi thời gian.
Chuẩn hóa theo logarit: Phương pháp này thường được sử dụng khi chuỗi thời gian có biên độ lớn hoặc phân tán không đồng nhất.