1. 2 Dữ liệu chuỗi thời gian:
3.7. Giải thuật tìm kiếm:
Thuật toán này sẽ ước tính sự tương tự giữa các hình dạng và thứ tự tối ưu để phục vụ cho việc từ bỏ sớm. Đây là thuật toán được nhóm Keogh đề nghị năm 2006 (nguồn [1]).
Giả sử chúng ta có một bộ dữ liệu S của m hình, mỗi hình dạng đã được chuyển đổi thành một chuỗi thời gian có chiều dài là n, từ SAX có kích thước là w, và bảng chữ cái của SAX là Σ . Chúng ta sẽ chuyển đổi tất cả các chuỗi thời gian thành từ SAX và đặt chúng trong một mảng.
Một khi mảng đã được xây dựng, chúng ta ngẫu nhiên chọn một hàm băm vị trí bất biến sự xoay để băm các từ SAX thành nhóm. Ví dụ phía dưới, chúng ta chọn chỉ số {1, 3}. Do đó những từ SAX trong mảng được băm thành nhóm dựa trên các cột thứ nhất và thứ ba của việc dời: đầu tiên từ SAX daca được băm thành nhóm aa, dc, và cd, từ SAX thứ tư được băm thành nhóm aa và dd, .... Nếu hai hình dạng tương ứng với từ SAX thứ i và thứ j được băm vào cùng một nhóm, chúng ta sẽ tăng số lượng của ô (i, j) trong ma trận va chạm (collision matrix). Ma trận này được khởi tạo các ô đều mang giá trị 0. Trong ví dụ này, chúng ta tăng số lượng của ô (1, 4) và ô (4, 1).
Hình 3.4: Mô tả quá trình ước tính độ tương tự (nguồn [1])
Bảng 3.1: Giải thuật ước tính thứ tự tối ưu
Sau khi lặp lại quá trình trên với một số lần qui ước, ma trận đụng độ sẽ đầy. Tại thời điểm này, chúng ta kiểm tra va chạm ma trận với những thông tin heuristic rất hữu ích về sự giống nhau giữa hình dạng. Nếu hai hình dạng tương tự, ô tương ứng trong ma trận va chạm sẽ có một giá trị lớn. Nếu hai hình dạng khác nhau, ô tương ứng trong ma trận va chạm không nói lên điều gì cả. Tuy nhiên, chúng ta có thể suy ra từ việc thiếu một giá trị trong ma trận va chạm, hai hình dạng có thể là khác nhau. Vì vậy, chúng ta có thể sử dụng ma trận va chạm làm kim chỉ nam cho việc quyết định thứ tự lặp bên ngoài và bên trong (dòng 16 trong bảng 3.1).
Heuristic ngoài: Đối với mỗi hình dạng, chúng ta quét các vụ va chạm ma trận để tìm số lớn nhất của nó đã va chạm với hình dạng khác. Sau đó, chúng ta sắp xếp các hình dạng thứ tự tăng dần bằng cách sử dụng giá trị này. Các kết quả đạt được sẽ áp dụng cho vòng ngoài. Như chúng ta có thể thấy, sự phức tạp thời gian của bước này là tuyến tính trong m.
Heuristic ngoài: Trong khi đang xem xét hình thứ i hình ở vòng lặp ngoài, vòng lặp bên trong xem xét các hình dạng theo thứ tự giảm dần về số lượng va chạm của nó với hình dạng thứ i.
Ngoài ra có một số tối ưu hóa nhỏ mà chúng ta có thể áp dụng cho các thuật toán tìm kiếm heuristic. Ví dụ, khi chúng ta đang xem xét chuỗi dữ liệu thời gianCi ở vòng ngoài, và khi chúng ta đi ngang qua các vòng trong, chúng tôi thấy rằng chuỗi thời gian Cj có khoảng cách đủ gần để để có thể cho phép việc từ bỏ sớm. Ngoài ra để tiết kiệm thời gian với việc từ bỏ sớm, chúng tôi cũng có thể xóa Cj từ danh sách các ứng cử viên trong vòng ngoài (nếu nó không đã được viếng thăm).
Ngoài ra, có một số tối ưu hóa nổi tiếng với khoảng cách Euclide (Keogh và Kasetty, 2002) và một số tối ưu hóa đặc biệt để khoảng cách Euclide bất biến với xoay (nhóm Keogh, 2006) mà chúng ta cũng có thể sử dụng.
CHƯƠNG 4: NỘI DUNG NGHIÊN CỨU
Nội dung chương 4 trình bày tóm tắt lại các vấn đề mà chúng ta cần phải quan tâm sau khi đã nghiên cứu tổng quan các công trình liên quan và có được một số hình dung cơ bản về hệ thống. Sau đó chúng tôi đề xuất phương pháp đánh giá thực nghiệm sau khi hiện thực hệ thống vào thực tế. Tiếp theo là đề ra các danh sách công việc cần phải tiến hành trong giai đoạn thực hiện luận văn. Cuối cùng là từ những vấn đề đã nêu ra ở trên, chúng tôi hoạch định các mục tiêu kết quả cần đạt được sau khi hiện thực hệ thống.