Chatbot NTTU

Dữ liệu thời gian trong Khoa học dữ liệu

Dữ liệu thời gian (time series / time-stamped data) trong khoa học dữ liệu -bao gồm khái niệm, đặc điểm, xử lý, mô hình, thách thức và ứng dụng – với tham chiếu từ các nghiên cứu và tài liệu uy tín.

  • Khái niệm và vị trí của dữ liệu thời gian trong khoa học dữ liệu

1.1 Định nghĩa

Dữ liệu thời gian (time series data) là tập các quan sát được ghi lại theo thứ tự thời gian, tức là mỗi quan sát gắn với một dấu thời gian (timestamp). InfluxData+3Wikipedia+3ScienceDirect+3

  • Thông thường, các điểm dữ liệu được thu thập tại các khoảng thời gian đều đặn (ví dụ: mỗi giờ, mỗi ngày, mỗi tháng). GeeksforGeeks+2InfluxData+2
  • Nhưng cũng có trường hợp dữ liệu được thu ở khoảng cách thời gian không đều (irregular time series), ví dụ như các sự kiện xảy ra bất thường.

Trong ngữ cảnh khoa học dữ liệu, dữ liệu thời gian là một dạng đặc biệt vì nó có chiều thời gian (temporal dimension) — tức là thứ tự của các quan sát và mối liên hệ giữa các quan sát theo thời gian là rất quan trọng.

1.2 So sánh với các dạng dữ liệu khác

  • Dữ liệu điểm cắt ngang (cross-sectional data): quan sát nhiều đối tượng (ví dụ: nhiều người, nhiều công ty) tại cùng một thời điểm.
  • Dữ liệu panel / longitudinal: kết hợp giữa yếu tố thời gian và nhiều đối tượng (ví dụ: theo dõi các cá nhân qua nhiều thời điểm).
  • Dữ liệu thời gian là trường hợp đặc biệt khi chỉ xét một biến hoặc tập biến theo thời gian. ScienceDirect+2Datamation+2

Vì có thứ tự thời gian, dữ liệu thời gian khác với dữ liệu độc lập-thống nhất (i.i.d.) mà nhiều mô hình thống kê và machine learning truyền thống giả định.

  • Đặc điểm đặc trưng của dữ liệu thời gian

Dữ liệu thời gian mang những đặc trưng mà nếu không hiểu và xử lý đúng, mô hình sẽ không hiệu quả. Dưới đây là các đặc điểm chính:

2.1 Tự tương quan (autocorrelation / serial correlation)

Một đặc trưng quan trọng là các quan sát gần nhau về thời gian có thể liên quan với nhau — giá trị tại thời điểm ttt có thể phụ thuộc vào giá trị tại thời điểm t−1,t−2,…t-1, t-2, \dotst−1,t−2,…. Điều này dẫn đến tự tương quan. ScienceDirect+3PMC+3Datamation+3

Điều này khác với giả định i.i.d. trong nhiều kỹ thuật — ta không thể coi các quan sát độc lập.

2.2 Tính dừng (stationarity) và phi dừng (non-stationarity)

  • Stationarity: phân phối thống kê (mean, variance, autocorrelation) không đổi theo thời gian.
  • Non-stationary: khi xu hướng (trend) hoặc mùa vụ (seasonality) làm cho các đặc tính biến đổi theo thời gian.

Nhiều mô hình dự báo truyền thống yêu cầu dữ liệu phải là dừng hoặc được biến đổi cho dừng (như bằng cách lấy sai phân) để áp dụng được. Weights & Biases+5Analytics Vidhya+5InfluxData+5

2.3 Thành phần cấu thành: xu hướng, mùa vụ, chu kỳ, nhiễu (trend, seasonality, cycles, residual)

Một dữ liệu thời gian thường được xem là tổ hợp của:

  • Xu hướng (trend): sự biến đổi tăng/giảm dài hạn
  • Mùa vụ (seasonality): biến động định kỳ (hằng năm, hàng ngày, hàng tuần)
  • Chu kỳ (cycles): dao động không cố định theo chu kỳ dài hơn (không cố định về thời gian)
  • Nhiễu / phần dư (residual / irregular): biến động ngẫu nhiên, không giải thích được bởi các thành phần trên
    Weights & Biases+4ResearchGate+4Tableau+4

Ví dụ: doanh số bán hàng có thể có xu hướng tăng theo thời gian, nhưng cũng có mùa vụ theo tháng hoặc theo mùa (mùa lễ, cuối năm), và có dao động bất thường do khuyến mãi hoặc sự kiện ngoại sinh.

2.4 Phụ thuộc thời gian, hiệu ứng trễ (lag effects)

Giá trị tại thời điểm ttt có thể chịu ảnh hưởng từ các giá trị trước đó. Vì thế ta dùng các biến trễ (lag variables) trong mô hình. Hiệu ứng này là đặc điểm cơ bản của mô hình AR, MA, ARIMA, v.v.

2.5 Bất ổn, đột biến và chuyển đoạn (non-linearity, structural breaks)

Trong thực tế, dữ liệu thời gian thường có:

  • Đột biến (outliers): các điểm dữ liệu bất thường, có thể do lỗi đo lường hoặc sự kiện đặc biệt
  • Chuyển đoạn cấu trúc (structural breaks): tại một thời điểm nào đó, đặc điểm dữ liệu (moyenne, variance, mối tương quan) đột ngột thay đổi do chính sách, khủng hoảng, hay sự kiện bất thường

Việc xác định và xử lý các đột biến và chuyển đoạn là rất quan trọng trong phân tích thời gian.

2.6 Tần suất & khoảng cách thời gian (frequency / temporal granularity)

Dữ liệu thời gian thường có tần suất cố định (ví dụ: hàng giờ, hàng ngày, hàng tháng) để dễ phân tích. InfluxData+2Tableau+2

Tuy nhiên, trong nhiều trường hợp — như sự kiện bất thường, giao dịch tài chính với thời gian không đồng đều — dữ liệu có thể không đều.

2.7 Đa chiều – chuỗi thời gian nhiều biến (multivariate time series)

Không phải lúc nào ta chỉ quan tâm một biến theo thời gian; thường có nhiều biến tương tác cùng biến đổi theo thời gian (ví dụ: nhiệt độ, độ ẩm, áp suất). Việc phân tích chuỗi đa biến (multivariate) phức tạp hơn vì phải xét tương tác giữa các biến theo thời gian.

2.8 Dữ liệu bị thiếu (missing timestamps / missing values)

Trong thực tế, có thể xảy ra việc không có dữ liệu tại một số thời điểm (ví dụ: cảm biến ngừng ghi), dẫn đến khoảng thời gian bị bỏ trống hoặc giá trị bị mất. Việc xử lý missing là cần thiết.

  • Các bước xử lý và phân tích dữ liệu thời gian trong khoa học dữ liệu

Dưới đây là quy trình phổ biến khi làm việc với dữ liệu thời gian:

3.1 Thu thập & Làm sạch dữ liệu

  • Thu thập dữ liệu với mốc thời gian (timestamp) chính xác
  • Chuẩn hóa định dạng thời gian (ví dụ: ISO 8601)
  • Xử lý thiếu dữ liệu (imputation, nội suy, loại bỏ)
  • Xử lý đột biến (outliers)
  • Kiểm tra và điều chỉnh đồng nhất tần suất (resample, upsample, downsample)

3.2 Khám phá dữ liệu & trực quan hóa thời gian

  • Vẽ biểu đồ thời gian (time plot) để quan sát xu hướng tổng thể
  • Plot seasonal subseries (chia theo mùa) để nhìn mùa vụ rõ hơn Wikipedia
  • Vẽ biểu đồ ACF (autocorrelation function) / PACF để xem tự tương quan
  • Kiểm định tính dừng (ADF test, KPSS test)
  • Phân rã (decomposition) thành các thành phần xu hướng, mùa vụ, dư

3.3 Biến đổi dữ liệu để đạt tính dừng

  • Lấy sai phân (differencing) — ví dụ Yt−Yt−1Y_t – Y_{t-1}Yt​−Yt−1​
  • Biến đổi log, square root hoặc Box–Cox
  • Loại bỏ xu hướng hoặc mùa vụ trước khi mô hình hóa

3.4 Chia tập huấn luyện / kiểm tra theo thời gian

Không nên dùng cross-validation ngẫu nhiên như dữ liệu độc lập — phải giữ tính thứ tự thời gian. Ví dụ: dùng phương pháp time series cross validation hoặc chia theo “cửa sổ thời gian” (rolling window, expanding window).

3.5 Lựa chọn mô hình & huấn luyện

Một số mô hình phổ biến:

  • Mô hình thống kê truyền thống:
    • AR (autoregressive), MA (moving average), ARMA, ARIMA (Autoregressive Integrated Moving Average) Simplilearn.com+6Analytics Vidhya+6preset.io+6
    • SARIMA (với thành phần mùa vụ)
    • Holt–Winters (exponential smoothing)
    • Mô hình đa biến (VAR, VECM)
  • Mô hình học máy & deep learning:
    • Mạng neural hồi tiếp (RNN), LSTM, GRU
    • Mô hình dị thường như Transformer cho chuỗi thời gian
    • Các mô hình hỗn hợp kết hợp phần truyền thống và mạng nơ-ron
  • Các mô hình đặc thù khác:
    • Prophet (Facebook)
    • Các mô hình hồi quy với biến trễ và biến ngoại sinh (exogenous variables)
    • Các phương pháp ensembles, boosting cho dự báo thời gian

Gần đây, các phương pháp deep learning và hybrid đã được khảo sát rộng rãi trong nghiên cứu về mô hình dữ liệu thời gian. arXiv+2arXiv+2

3.6 Đánh giá mô hình & chọn mô hình tốt nhất

  • Các chỉ số đánh giá thường dùng: MAE (Mean Absolute Error), RMSE, MAPE, RMSLE
  • So sánh dự báo với dữ liệu thực
  • Kiểm tra phần dư (residual diagnostics): xem phần dư có mang tính ngẫu nhiên, không tự tương quan, phân phối chuẩn?
  • Kiểm tra overfitting, khả năng tổng quát hóa theo thời gian

3.7 Sử dụng mô hình để dự báo & giám sát

  • Dự báo giá trị tương lai
  • Cập nhật mô hình theo thời gian khi có dữ liệu mới
  • Giám sát mô hình (model monitoring) – nếu đặc tính dữ liệu thay đổi (drift), cần tái huấn luyện
  • Các vấn đề đặc biệt, thách thức & giải pháp

Dữ liệu thời gian mang nhiều thách thức so với dữ liệu “phẳng”. Dưới đây là một số:

4.1 Non-stationarity & drift

Dữ liệu thường không dừng và có thể thay đổi theo thời gian (drift). Mô hình huấn luyện trên dữ liệu “cũ” có thể không còn phù hợp với dữ liệu mới. Cần theo dõi và cập nhật mô hình định kỳ.

4.2 Heteroscedasticity (phương sai không đồng nhất)

Phương sai của phần dư có thể thay đổi theo thời gian (ví dụ trong tài chính: ngày biến động cao, ngày biến động thấp). Các mô hình như GARCH được dùng để mô hình hóa phương sai thay đổi theo thời gian.

4.3 Tương quan giữa các chuỗi (multivariate)

Khi có nhiều chuỗi biến theo thời gian, phải xét mối tương quan giữa chúng — việc này làm tăng độ phức tạp mô hình.

4.4 Dữ liệu bị thiếu & không đồng đều

Khoảng thời gian trống, dữ liệu bị thiếu hoặc không đồng đều tần suất yêu cầu xử lý đặc biệt như nội suy, tái điều chỉnh tần suất.

4.5 Overfitting & tính khả chuyển (generalization)

Do mưu cầu bắt được mẫu quá “khớp” với lịch sử, mô hình có thể overfit. Phải đánh giá khả năng dự báo cho giai đoạn mới.

4.6 Tính giải thích & diễn giải

Các mô hình phức tạp (deep learning) khó giải thích hơn mô hình thống kê truyền thống. Trong nhiều ứng dụng thực tế (tài chính, y tế), giải thích mô hình rất quan trọng.

4.7 Tính thời gian thực (real-time) & dữ liệu streaming

Trong các hệ thống cần xử lý dữ liệu liên tục, phải thiết kế pipeline xử lý thời gian thực (stream processing). Các bài báo gần đây nghiên cứu việc phân tích dữ liệu thời gian “big data streaming” như monitoring, phát hiện dị thường (anomaly detection), dự báo trực tiếp. SpringerOpen

4.8 Sự thay đổi cấu trúc & can thiệp (intervention / causal change)

Khi có sự kiện can thiệp (ví dụ: chính sách mới, khủng hoảng), dữ liệu có thể thay đổi đột ngột. Phân tích causal inference cho dữ liệu thời gian là một hướng nghiên cứu quan trọng. arXiv+1

  • Một số nghiên cứu & xu hướng hiện nay
  • Nghiên cứu deep time series models cung cấp cái nhìn tổng quan về mô hình deep learning cho chuỗi thời gian, đánh giá các kiến trúc, benchmark, và ứng dụng. arXiv
  • Nghiên cứu “Towards understanding the importance of time-series features” đề xuất sử dụng các meta-feature từ chuỗi thời gian (ví dụ: độ tự tương quan, xu hướng, độ lệch, entropy) để chọn mô hình dự báo phù hợp. ScienceDirect
  • Causal inference trên chuỗi thời gian: để xác định ảnh hưởng của sự kiện can thiệp theo thời gian và khám phá quan hệ nhân quả giữa các chuỗi. arXiv
  • Dữ liệu thời gian trong môi trường “big data streaming” — xử lý dữ liệu liên tục, phát hiện dị thường trong thời gian thực. SpringerOpen
  • Ứng dụng công nghệ mạng phức hợp (complex networks) để khai thác cấu trúc đặc biệt của chuỗi thời gian. SpringerLink
  • Ứng dụng thực tế của dữ liệu thời gian trong khoa học dữ liệu

Dữ liệu thời gian xuất hiện trong hầu hết các lĩnh vực:

  • Tài chính / kinh tế: giá cổ phiếu, lãi suất, tỷ giá, GDP theo quý
  • Kinh doanh / bán lẻ: doanh số theo ngày, lượt truy cập website theo giờ
  • Khoa học môi trường / khí hậu: nhiệt độ, mưa, áp suất theo năm, tháng
  • Công nghiệp / IoT / sensor: dữ liệu từ cảm biến theo thời gian thực
  • Y tế / sinh học: điện tim ECG, huyết áp đo theo thời gian
  • Vận tải / giao thông: lưu lượng giao thông theo giờ
  • Phát hiện bất thường (anomaly detection): phát hiện giao dịch gian lận, lỗi máy móc, đột biến
  • Cải thiện hệ thống & giám sát: giám sát máy chủ, hệ thống mạng
  • Dự báo & lập kế hoạch: dự báo nhu cầu, sản xuất, nhu cầu năng lượng

Một bài báo cụ thể “Application of Time Series Models in Business Research” cũng trình bày cách sử dụng mô hình chuỗi thời gian để phát hiện mẫu, xác định mối quan hệ và bất thường trong dữ liệu kinh doanh. MDPI

  • Ví dụ minh họa (giản lược)

Giả sử bạn có dữ liệu doanh số bán hàng của cửa hàng A theo ngày trong 5 năm. Bạn có thể làm:

  1. Vẽ biểu đồ thời gian để nhìn xu hướng chung
  2. Kiểm định dừng — nếu không dừng, lấy sai phân hoặc loại bỏ xu hướng
  3. Phân rã thành xu hướng + mùa vụ + dư
  4. Xây mô hình ARIMA hoặc LSTM để dự báo doanh số tương lai
  5. Kiểm tra phần dư để đảm bảo không tự tương quan
  6. Sử dụng mô hình cho giai đoạn mới và cập nhật theo thời gian

Nếu trong giai đoạn giữa có một sự kiện đặc biệt (ví dụ: đại dịch, thay đổi chính sách), bạn có thể dùng mô hình intervention hoặc causal để ước lượng ảnh hưởng.

Vxchi. KCNTT