+5

Chuỗi thời gian là gì? What is time series?

Chuỗi thời gian

Chuỗi thời gian (time series) là một chuỗi các điểm dữ liệu xảy ra theo thứ tự liên tiếp trong một khoảng thời gian. Một chuỗi thời gian sẽ theo dõi chuyển động của các điểm dữ liệu đã chọn (chẳng hạn như giá của chứng khoán) trong một khoảng thời gian xác định.
Ứng dụng của chuỗi thời gian trải khắp các ngành công nghiệp khác nhau như: quan sát hoạt động sóng điện trong não, đo lượng mưa, dự báo giá cổ phiếu, theo dõi doanh số bán lẻ hàng năm, người đăng ký hàng tháng, nhịp tim mỗi phút,...
Dữ liệu chuỗi thời gian là tập hợp các quan sát thu được thông qua các phép đo lặp lại theo thời gian. Dữ liệu chuỗi thời gian ở khắp mọi nơi, vì thời gian là thành phần của mọi thứ mà chúng ta có thể nhận biết được.

Sự khác biệt giữa dữ liệu chuỗi thời gian và dữ liệu chuỗi phi thời gian là gì?

Dữ liệu chuỗi không theo thời gian là bất kỳ dữ liệu nào độc lập với mọi thứ liên quan đến thời gian như dữ liệu Địa lý. Trong khi đó, trong dữ liệu chuỗi thời gian, thành phần phụ thuộc là yếu tố thời gian, tức là biến độc lập là thời gian và có ít nhất một biến phụ thuộc phụ thuộc vào biến thời gian đó. Dữ liệu thời tiết là một ví dụ điển hình về dữ liệu chuỗi thời gian.

Các thành phần của chuỗi thời gian

Một dữ liệu chuỗi thời gian thường được phân rã thành 4 thành phần con sau:

  • Xu hướng (trend): thành phần này chỉ ra xu hướng tổng quan của dữ liệu theo thời gian: lên hoặc xuống, tăng hoặc giảm. Chẳng hạn như lạm phát làm giá cả trung bình luôn có xu hướng tăng.
  • Mùa vụ (seasonality): thành phần chỉ ra các xu hướng theo mùa, theo tháng, theo quý,... Ví dụ:
    - Các sự kiện xảy ra tự nhiên, như biến động thời tiết
    - Thủ tục kinh doanh hoặc hành chính, như bắt đầu hoặc kết thúc năm tài chính.
    - Các sự kiện trên lịch, chẳng hạn như số ngày thứ Hai mỗi tháng hoặc các ngày lễ thay đổi theo từng năm.
  • Chu kì (cycle): thành phần chu kỳ, nó khác yếu tố mùa vụ ở chỗ thành phần này có sự vận động trong khoảng thời gian dài hơn (nhiều năm).
  • Yếu tố bất thường (Irregular remainder): hay còn gọi là nhiễu trắng (white noise) thành phần nhiễu còn lại sau khi trích xuất hết các thành phần ở trên, nó chỉ ra sự bất thường của các điểm dữ liệu. image.png

Thay vì đưa ra dự báo trên dữ liệu gốc, là một đường nhìn rất gập ghềnh và khó dự đoán, ta thực hiện trên các thành phần con nhìn có tính quy luật với xu hướng vận động rõ ràng hơn rồi kết hợp các thành phần này lại với nhau. Cycle chỉ ra xu hướng vận động trong một khoảng thời gian dài (thông thường chu kỳ rơi vào 7 năm hoặc hơn), do dữ liệu của chúng ta không trải đủ rộng nên chúng ta sẽ chỉ còn quan tâm đến 3 thành phần còn lại là Trend, Seasonality và Irregular remainder.

Ví dụ về dữ liệu chuỗi thời gian

Quan sát biểu đồ sự thay đổi giá cổ phiếu dưới đây: image.png Trong biểu đồ trên, thời gian là trục đo lường sự thay đổi giá cổ phiếu. Trong đầu tư, một chuỗi thời gian theo dõi chuyển động của các điểm dữ liệu, chẳng hạn như giá của chứng khoán trong một khoảng thời gian xác định với các điểm dữ liệu được ghi lại theo các khoảng thời gian đều đặn. Điều này có thể được theo dõi trong thời gian ngắn (chẳng hạn như giá chứng khoán vào giờ trong suốt một ngày làm việc) hoặc dài hạn (chẳng hạn như giá chứng khoán vào lúc kết thúc ngày cuối cùng của mỗi tháng trong suốt 5 năm).

Một ví dụ quen thuộc khác về dữ liệu chuỗi thời gian là theo dõi sức khỏe của bệnh nhân, chẳng hạn như trong điện tâm đồ (ECG), theo dõi hoạt động của tim để cho biết liệu nó có hoạt động bình thường hay không. image.png

Ngoài việc được ghi lại theo các khoảng thời gian thông thường, dữ liệu chuỗi thời gian có thể được ghi lại bất cứ khi nào một sự kiện nào đó xảy ra, chẳng hạn như việc ghi logs trong lập trình. Logs sẽ lưu lại các sự kiện, quy trình, thông báo và giao tiếp giữa các ứng dụng phần mềm và hệ điều hành. image.png

Dữ liệu chuỗi thời gian được sử dụng như thế nào?

Dữ liệu chuỗi thời gian được thu thập, lưu trữ, trực quan hóa và phân tích cho các mục đích khác nhau trên các lĩnh vực khác nhau:

  • Trong khai phá dữ liệu, nhận dạng mẫu và học máy, phân tích chuỗi thời gian được sử dụng để phân cụm, phân loại, truy vấn theo nội dung, phát hiện bất thường và các hoạt động dự báo.
  • Trong xử lý tín hiệu, kỹ thuật điều khiển và kỹ thuật truyền thông, dữ liệu chuỗi thời gian được sử dụng để phát hiện và ước tính tín hiệu.
  • Trong thống kê, kinh tế lượng, tài chính định lượng, địa chấn học, khí tượng học và địa vật lý, phân tích chuỗi thời gian được sử dụng để dự báo.

Dữ liệu chuỗi thời gian có thể được hiển thị trực quan trong các loại biểu đồ khác nhau để tạo điều kiện khai thác thông tin chuyên sâu, phân tích xu hướng và phát hiện bất thường.
Dữ liệu chuỗi thời gian được sử dụng trong phân tích chuỗi thời gian (theo lịch sử hoặc thời gian thực) và dự báo chuỗi thời gian để phát hiện và dự đoán các mẫu. Sau đây là tổng quan ngắn gọn về từng loại.

Phân tích chuỗi thời gian

Phân tích chuỗi thời gian (time series analysis) là một phương pháp phân tích một loạt các điểm dữ liệu được thu thập trong một khoảng thời gian. Trong phân tích chuỗi thời gian, các điểm dữ liệu được ghi lại theo các khoảng thời gian đều đặn trong một giai đoạn nhất định, thay vì ngắt quãng hoặc ngẫu nhiên.
Phân tích chuỗi thời gian là việc sử dụng các phương pháp thống kê để phân tích dữ liệu; trích xuất các thống kê và đặc điểm có ý nghĩa về dữ liệu. Điều này giúp xác định các xu hướng, chu kỳ và sự khác biệt theo mùa để hỗ trợ dự đoán một sự kiện trong tương lai.

Để tìm hiểu thêm về việc phân tích chuỗi thời gian, các bạn có thể tham khảo thêm ở đây: https://machinelearningcoban.com/tabml_book/ch_data_processing/timeseries_data.html

Dự báo chuỗi thời gian

Dự báo chuỗi thời gian sử dụng thông tin liên quan đến các giá trị lịch sử và các mẫu liên quan để dự đoán hoạt động trong tương lai.
Để dự báo được, mô hình chuỗi thời gian (time series modeling) liên quan đến việc làm việc trên dữ liệu thời gian để rút ra những tri thức giúp đưa ra quyết định. Các mô hình chuỗi thời gian là các mô hình rất hữu ích khi chúng ta có dữ liệu thời gian tương quan.
Dự báo chuỗi thời gian sẽ được đề cập cụ thể trong bài viết tiếp theo.

Tại sao cần cơ sở dữ liệu chuỗi thời gian?

Những lý do sau đây làm cho cơ sở dữ liệu chuỗi thời gian (Time Series Database - TSDB) trở thành danh mục cơ sở dữ liệu nhanh nhấtvà mạnh mẽ nhất:

  1. Quy mô: Cơ sở dữ liệu chuỗi thời gian (cả NoSQL và SQL) có thể hiệu quả nếu thời gian được coi là first-class citizen. Điều này sẽ cho phép chúng ta cung cấp được dữ liệu quy mô lớn từ việc cải thiện hiệu suất chẳng hạn như truy vấn nhanh hơn và tỷ lệ nhập cao hơn để tăng cường nén dữ liệu.
  2. Khả năng sử dụng: Cơ sở dữ liệu chuỗi thời gian thường có các hàm được tích hợp sẵn như phân tích dữ liệu bao gồm truy vấn tổng hợp liên tục, chính sách lưu trữ dữ liệu và nhóm thời gian linh hoạt. Các tính năng này có thể cải thiện trải nghiệm người dùng và giúp các tác vụ phân tích dữ liệu mượt mà hơn trước.

Do đó, các nhà phát triển thích áp dụng TSDB hơn và sử dụng chúng cho các trường hợp sử dụng khác nhau:

  • Theo dõi dữ liệu hành vi khách hàng.
  • Giám sát máy móc, thiết bị được kết nối và thiết bị.

Tham khảo

  1. Investopedia. What Is a Time Series and How Is It Used to Analyze Data?
  2. influxdata. What is time series data?
  3. Nathan. Cơ Bản Về Lớp Giải Thuật Time Series Forecasting.
  4. Phạm Đình Khánh. Khoa học dữ liệu.

Series này mình dịch và viết với mục đích học tập của bản thân nên sẽ không tránh khỏi sai sót. Mình sẽ rất vui nếu nó có ích, còn nếu có chỗ nào chưa chính xác thì các bạn góp ý giúp mình với nhé. Cảm ơn mọi người 😄


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí