Chương I: Tổng quan Chương II: Cơ sở lý thuyết Chương III: Đề xuất phương pháp dự báo trên chuỗi thời gian dựa trên so trùng mẫu sử dụng nhiều độ đo Chương IV: Thực nghiệm Chương V: Kết luận và hướng phát triển Trang 4 Luan van CHƯƠNG II: CƠ SỞ LÝ THUYẾT 2. Khái niệm “Một chuỗi thời gian (Time series) là một chuỗi giá trị số thực, mỗi trị biễu diễn một giá trị đo tại một thời điểm cách đều nhau” [4] hay “Một chuỗi thời gian là một chuỗi các điểm dữ liệu được đo theo từng khoảng thời gian liền nhau theo một tần suất thời gian thống nhất”.1: Hình ảnh một chuỗi thời gian Dữ liệu của chuỗi thời gian thường bao gồm 4 thành phần: - Thành phần xu hướng dài hạn (long – term trend component): để đại diện cho yếu tố xu hướng, nó thể hiện trong thời gian dài thì đại lượng X có thể có sự giảm hoặc tăng. Có thể biểu diễn trên đồ thị thành phần này như là một đường cong trơn hoặc một đường thẳng. Đây thường là kết quả của các yếu tố dài hạn, ví dụ như yếu tố thay đổi về nhân khẩu, công nghệ, du lịch hay sở thích giải trí và tiêu dùng.2 là một ví dụ biểu diễn về một chuỗi thời gian với xu hướng có tính tiến lên.2: Mô tả thành phần xu hướng tiến lên Trang 5 Luan van - Thành phần mùa (seasonal component): luôn xảy ra trong khoảng thời gian cố định và mang tính chất tuần hoàn, đặc trưng cho xu hướng giảm hoặc tăng đối với đại lượng X vào một giai đoạn thời gian cụ thể, như một tháng, một quí hay một năm.
- Ví dụ: Lượng điện tiêu thụ thường tăng trong mùa hè và thường giảm ở mùa xuân hoặc lượng nước tiêu dùng thường giảm ở mùa đông và tăng ở mùa hè. Lượng vật liệu xây dựng tiêu thụ thường tăng trong đầu mùa khô. Một ví dụ về thành phần mùa (theo các mùa trong năm) có thể được biểu diễn ở hình 2. Tính biến động có thể theo ngày, theo tuần hay theo giờ mà không phải chỉ với các mùa trong năm.3: Mô tả thành phần mùa - Thành phần chu kỳ (cyclical component): mô tả đại lượng X thay đổi theo chu kỳ nào đó, những giá trị quan sát trong chuỗi thời gian thường được tính theo chu kì hàng năm.
Nghĩa là, đại lượng X có chu kỳ nhiều hơn một năm.4 [25] mô tả một ví dụ về thành phần chu kỳ trong chuỗi thời gian cụ thể.4: Mô tả thành phần chu kỳ - Thành phần bất thường (irregular component): Trong chuỗi thời gian có những giá trị biến đổi bất thường, đây là thành phần đại diện cho sự biến đổi của những giá trị Trang 6 Luan van đó. Tính chu kỳ trong thành phần này không có. Các số liệu ở quá khứ không có khả năng dự đoán sự biến đổi của những giá trị bất thường này. Qua tính chất của các thành phần nêu trên, chúng tôi tin rằng: việc sử dụng nhiều độ đo khác nhau trong trong quá trình so trùng mẫu sẽ thực hiện hiệu quả hơn bởi mỗi độ đo đều có những ưu nhược điểm khác nhau và khi được sử dụng trong dự báo thì chỉ phù hợp với một số loại dữ liệu nhất định, nên khi sử dụng nhiều độ đo chúng có thể hỗ trợ khắc phục những nhược điểm của nhau.
Chuỗi thời gian là dừng khi giá trị trung bình, phương sai, hiệp phương sai (tại các độ trễ khác nhau) giữ nguyên không đổi cho dù chuỗi được xác định vào thời điểm nào đi nữa. Chuỗi dừng có xu hướng trở về giá trị trung bình và những dao động quanh giá trị trung bình sẽ là như nhau. Nói cách khác, một chuỗi thời gian không dừng sẽ có giá trị trung bình thay đổi theo thời gian, hoặc giá trị phương sai thay đổi theo thời gian hoặc cả hai. Trong nghiên cứu về chuỗi thời gian để ta giả định chuỗi là chuỗi dừng.
Các độ đo tương tự Trong các bài toán về chuỗi thời gian, để so sánh hai chuỗi người ta sử dụng các độ đo tương tự. Hai đối tượng được xem là giống nhau khi độ đo tương tự giữa chúng bằng 0, được xem là tương tự nếu độ đo tương tự giữa chúng nhỏ hơn một giá trị được qui ước trước đó. Để có thể tính toán và so sánh, độ đo này được biểu diễn thành các số thực và phải thỏa các tính chất sau: - D(x,y) = 0 nếu và chỉ nếu x = y - D(x, y) = D(y, x) - D(x, y) 0 với mọi x, y - D(x, y) < D(x, z) + D(y, z) Đã có nhiều độ đo tương tự đã được sử dụng trong các thuật toán tìm kiếm tương tự so trùng mẫu của chuỗi thời gian, việc áp dụng một độ đo nhất định trong một số trường hợp cụ thể có thể cho kết quả tương đối cao ví dụ như độ đo Euclid, tuy nhiên trong một số trường hợp độ đo Euclid không thích nghi được với những dữ liệu cần biến đổi tịnh tiến, co giản biên độ, xoắn trục về thời gian. Sau đây, xin được phép trình bày một số độ đo phổ biến được sử trong việc tính toán khoảng cách và so trùng mẫu của luận văn.
Trang 7 Luan van 2. Độ đo Minkowski Ký hiệu là Sim(X,Y) - độ tương tự giữa hai chuỗi X và Y có chiều dài n và được định nghĩa như sau: n Sim( X , Y ) P xi yi , với xi X, yi Y, i = 1, …, n P (0.1) Trong đó, p = 2 (Euclid) là độ đo thường được sử dụng.1) Độ đo này có ưu điểm tính toán dễ dàng. Tuy nhiên, nhược điểm là nhạy cảm với dữ liệu nhiễu và thiếu sự mềm dẻo khi so trùng. Việc ánh xạ 1-1 giữa hai chuỗi trong quá trình tính toán sẽ không hiệu quả trong một số trường hợp hai chuỗi thời gian rất giống nhau về hình dạng nhưng lệch nhau về thời gian hay có biên độ dao động khác nhau, giá trị khoảng cách hai chuỗi sẽ rất khác nhau.5: Minh họa hai chuỗi thời gian giống nhau nhưng (a) đường cơ bản khác nhau và (b) biên độ giao động khác nhau 2.
Độ đo xoắn thời gian động (DTW) Năm 1994, Bernt và Clifford đã đề xuất Phương pháp xoắn thời gian động (DTW), độ cho phép ánh xạ một điểm với nhiều điểm và ánh xạ này không thẳng hàng (có độ lệch trên trục thời gian). Nếu tính khoảng cách bằng cách ánh xạ 1-1 giữa hai đường thì kết quả rất khác nhau và có thể dẫn đến kết quả cuối cùng không giống như mong muốn. Vì vậy để khắc phục nhược điểm này, một điểm có thể ánh xạ với nhiều điểm và ánh xạ này không thẳng hàng.6 Minh họa hai đường biểu diễn rất giống nhau về hình dạng nhưng lệch nhau về thời gian. Trang 8 Luan van Hình 2.6: Khoảng cách giữa hai đường biểu diễn rất giống nhau về hình dạng nhưng lệch nhau về thời gian (a) tính theo độ đo Euclid và (b) tính theo độ đo DTW ( [5]).
Cách tính khoảng cách DTW Cho hai chuỗi thời gian Q và C,Q có độ dài n, Q = {q1, ., qn} và C có chiều dài m, C = {c1, ., cm}; Độ đo DTW giữa Q và C được tính như sau: 1. Xây dựng một ma trận n x m. Trong đó giá trị của phần tử (i , j ) của ma trận th th là khoảng cách của d(qi,cj) = (qi – cj)2. Tìm một đường xuyên qua ma trận có tổng khoảng cách tích lũy là nhỏ nhất, đi từ ô (0,0) đến ô (m,n) thỏa mãn những ràng buộc sau: - Không được đi qua trái hay đi xuống - Đường đi phải liên tục - Ô (i,j) thuộc đường đi phải thỏa |i - j| <= w Đường xoắn W là một tập hợp các phần tử ma trận liền kề xác định ánh xạ giữa Q và C Với W = w1, w2, ., wL, trong đó max (m, n) < L < m + n - 1.
Đường xoắn tối ưu là đường xoắn có tổng khoảng cách tích lũy là nhỏ nhất và được định nghĩa như sau: 𝐿 𝐷𝑇𝑊 (𝑄, 𝐶 ) = min {∑ 𝑑𝑘 , 𝑊 = 〈𝑤1 , 𝑤2 , … , 𝑤𝐿 〉} 𝑤 𝑘=1 Khi dk= d(qi, cj) biểu thị cho wk =(i, j)k của đường W Để tìm đường xoắn W, chúng ta thực hiện công thức tính toán như sau: v(i, j) = d(i, j) + min {(v(i – 1, j – 1), v(i – 1, j), v(i, j – 1)} Trong đó: d(i, j) là khoảng cách tìm thấy trong ô hiện tại v(i, j) là khoảng cách tích lũy của ô hiện tại và tối thiểu khoảng cách tích lũy từ ba ô liền kề. Độ đo DTW có ưu điểm là cho kết quả chính xác hơn so với độ đo Euclid và cho phép nhận dạng mẫu có hình dạng giống nhau nhưng chiều dài hình dạng về thời gian có thể khác nhau. Độ đo tương tự này có nhược điểm là thời gian chạy lâu, tuy nhiên gần đây đã có những công trình tăng tốc độ tìm kiếm tương tự dùng độ đo DTW, tiêu biểu nhất là công trình của Keogh và các cộng sự, năm 2002. Trang 9 Luan van Hình 2.7 minh họa cách tính khoảng cách theo DTW.7: Minh họa cách tính khoảng cách theo DTW [6] Gần đây đã có cải tiến về cách tính DTW nhằm giảm thiểu thời gian tính toán khoảng cách.
Phương pháp này sử dụng kỹ thuật chặn dưới dựa vào của sổ xoắn.8 minh họa hai kỹ thuật chặn dưới thông dụng là kỹ thuật Sakoe-Chiba Band [7] và kỹ thuật Itakura Parallelogram [8].8: Minh họa (A) Sakoe-Chiba Band [7]và (B) Itakura Parallelogram [8] Để sử dụng kỹ thuật này, các chuỗi phải có cùng chiều dài. Nếu hai chuỗi có chiều dài khác nhau, một trong hai chuỗi phải được tiền xử lý để chúng có chiều dài bằng nhau. Để nâng cao hiệu quả của quá trình tìm kiếm trong cơ sở dữ liệu lớn, đầu tiên một của sổ xoắn được dùng để tạo một đường chặn trên và một đường chặn dưới (được gọi là vùng bao – bounding envelope) của chuỗi truy vấn. Vùng bao của chuỗi thời gian Q được hình thành bởi chuỗi chặn trên (U) và chuỗi chặn dưới (L).
Hai chuỗi này được định nghĩa như sau: Ui = max(qi-r : qi+r) Li = min(qi-r : qi+r) Trang 10 Luan van Trong đó r là vùng được phép tính toán của một điểm cho trước trong một chuỗi. Trong trường hợp sử dụng Sakoe-Chiba band, r độc lập với i. Với kỹ thuật Itakura parallelogram, r là một hàm của i.