SSA - Singular spectrum analysis

Phân Tích Phổ Kỳ Dị (SSA) & Điền Dữ Liệu Thiếu
Xử Lý Chuỗi Thời Gian

Phân Tích Phổ Kỳ Dị (SSA)& Thuật Toán Điền Dữ Liệu Thiếu

Thuật toán lặp SSA (Iterative SSA) để khôi phục dữ liệu thời tiết, khí hậu và thủy văn.

01 Bản Chất và Lý Thuyết Cốt Lõi của SSA

Phân tích phổ kỳ dị (Singular Spectrum Analysis - SSA) là một phương pháp xử lý tín hiệu phi tham số (non-parametric) không đòi hỏi giả định trước về mô hình toán học của dữ liệu (như tính dừng hay phân phối chuẩn). SSA kết hợp các khái niệm từ Đại số tuyến tính (Phân tách giá trị kỳ dị - SVD) và Hệ thống động lực (Không gian trạng thái).

🎵 Hình ảnh ẩn dụ sinh động: Bộ lọc bản nhạc đa âm

Hãy tưởng tượng bạn nghe một âm thanh hỗn hợp gồm tiếng hát chính (xu hướng dài hạn), tiếng đàn violin lặp lại theo nhịp (chu kỳ mùa), và tiếng xì xào rè của loa (nhiễu ngẫu nhiên). SSA giống như một "bộ lọc âm thông minh" tự động tách từng bè âm ra riêng biệt mà không cần biết trước nhạc phổ gốc.

💡 So sánh SSA với Biến đổi Fourier (FFT) và Wavelet

Phương pháp Hàm cơ sở (Base functions) Ưu điểm Nhược điểm
Fourier (FFT) Sóng Sin/Cos cố định Cực nhanh, thích hợp tín hiệu chu kỳ cố định Thất bại khi dữ liệu biến đổi phi tuyến, không dừng
Wavelet Hàm sóng nhỏ (Mother wavelets) Phân tích đồng thời thời gian - tần số Phụ thuộc lớn vào việc chọn hàm sóng mẹ phù hợp
SSA Tự học trực tiếp từ chính dữ liệu (EOF) Thích ứng với mọi dạng chu kỳ, phi tuyến, xử lý tốt dữ liệu thiếu Tốn tài nguyên tính toán hơn FFT khi chuỗi rất dài

Mô phỏng Trực quan: Tách Chuỗi Dữ Liệu bằng SSA

SSA phân tách chuỗi thời gian gốc thành các thành phần tín hiệu độc lập:

Bạn có thể nhấp vào các hộp chú thích (Legend) phía trên để bật/tắt từng thành phần chuỗi.

🧠 Kiểm Tra Nhanh Mức Độ Hiểu Bài

Câu 1: Điều gì xảy ra nếu ta chọn kích thước cửa sổ $M$ quá nhỏ (ví dụ $M=3$) trong bài toán dữ liệu khí hậu theo tháng?

Xem giải thích

Nếu $M$ quá nhỏ, SSA sẽ không thể bao quát được chu kỳ năm (12 tháng). Thuật toán sẽ không trích xuất được tín hiệu chu kỳ mùa hay các biến động dài hạn, dẫn đến việc khôi phục dữ liệu bị lệch và sai số cao.

Câu 2: Tại sao SSA lặp lại cần tăng dần số lượng thành phần $K$ từ 1 đến 8 thay vì chọn ngay $K=8$ từ đầu?

Xem giải thích

Việc tăng dần $K$ giúp thuật toán ổn định cấu trúc xu hướng chung (Trend) trước khi thêm các chi tiết tần số cao. Nếu chọn ngay $K=8$ khi các vị trí thiếu đang bằng 0, nhiễu khởi tạo sẽ làm sai lệch các vectơ riêng (EOF), làm thuật toán hội tụ sai.