Chương 1 GIỚI THIỆU 1. Giới thiệu bài toán 1. Bài toán tìm kiếm bất thường tổng quát Tìm kiếm bất thường, một cách tổng quát, là bài toán tìm ra các đối tượng dữ liệu có hành vi khác với hành vi chung của các đối tượng trong một tập dữ liệu. Bài toán này có ý nghĩa quan trọng vì các đối tượng dữ liệu bất thường được quan tâm phân tích nhiều hơn các đối tượng tuân theo các hành vi chung [31].
Trong công nghiệp, chuỗi các tín hiệu bất thường được gởi đi từ một thiết bị cảm ứng theo dõi hoạt động của dây chuyền sản xuất có thể là dấu hiệu cho thấy có một hay một số bộ phận của dây chuyền đang bị hỏng. Trong y tế, một đoạn dữ liệu điện tâm đồ khác biệt của một bệnh nhân là dấu chỉ cho các vấn đề về sức khỏe của người này. Để tìm kiếm bất thường trong một tập dữ liệu cách đơn giản là định nghĩa một vùng (region) biểu diễn hành vi bình thường của tập dữ liệu và các đối tượng không thuộc vùng này sẽ là các bất thường. Tuy nhiên theo V.
Chandola và các cộng sự trong [31], cách làm này gặp phải các khó khăn sau: - Rất khó xác định các hành vi bình thường của tập dữ liệu. Hơn nữa sự khác biệt giữa các hành vi bình thường so với hành vi bất thường có thể không rõ ràng. - Trong nhiều lĩnh vực, các hành vi bình thường của tập dữ liệu có thể thay đổi theo thời gian - Trong các lĩnh vực khác nhau, tiêu chí để đánh giá một đối tượng dữ liệu là bất thường rất khác nhau. Ví dụ trong y học, một độ lệch nhỏ so với 1 Tìm chuỗi con bất thường trong dữ liệu chuỗi thời gian các hành vi bình thường cũng có thể xem là bất thường trong khi trong lĩnh vực chứng khoán độ lệch như vậy vẫn được xem là bình thường.
Với các khó khăn trên, bài toán tìm kiếm bất thường là một bài toán không dễ giải quyết một cách tổng quát và thực tế hầu hết mỗi kỹ thuật đã được xây dựng chỉ giải quyết được một số trường hợp đặc biệt của bài toán. Bài toán tìm chuỗi con bất thường trong dữ liệu chuỗi thời gian Bài toán tìm kiếm chuỗi con bất thường trong dữ liệu chuỗi thời gian là một trường hợp riêng của bài toán tìm kiếm bất thường. Nhiệm vụ của bài toán là phát hiện được các đoạn con có hình dạng khác biệt so với các đoạn khác trong một chuỗi thời gian lớn. Việc xây dựng được một kỹ thuật hiệu quả để giải quyết bài toán này ngày càng được quan tâm do sự xuất hiện ngày càng nhiều của dữ liệu chuỗi thời gian trong nhiều lĩnh vực khác nhau như kinh tế, y khoa, thiên văn… Một chuỗi thời gian (time series) là một dãy các số thực, mỗi số biểu diễn giá trị của một đại lượng được xác định tại các điểm thời gian cách đều nhau.
Chuỗi thời gian thường được biểu diễn thành các điểm trên một mặt phẳng hai chiều với hoành độ là thời gian và tung độ là giá trị của đại lượng quan tâm tại thời điểm đang xét.1 bên dưới là chuỗi thời gian mô tả số lượng hành khách của hãng hàng không Pan Am từ năm 1949 đến năm 1960 biểu diễn trong mặt phẳng. Thông thường khi nghiên cứu dữ liệu chuỗi thời gian người ta không quan tâm đến giá trị tại từng thời điểm mà quan tâm đến một đoạn gồm nhiều giá trị liên tục, vì vậy có thể xem mỗi đoạn của một chuỗi thời gian là một đối tượng dữ liệu đa chiều. Số chiều của đối tượng dữ liệu có thể thay đổi từ vài chục như doanh số bán hàng theo ngày của một cửa hàng trong một quí đến vài trăm triệu như giá trị điện tim của một bệnh nhân. Hiện nay một máy cảm ứng có thể thu thập được hơn một triệu điểm dữ liệu chỉ trong vòng 3 phút [5].
2 Tìm chuỗi con bất thường trong dữ liệu chuỗi thời gian Hình 1.1: Chuỗi thời gian biểu diễn trên mặt phẳng Trong những năm gần đây, có rất nhiều công trình nghiên cứu về việc phát hiện ra các chuỗi con bất thường. Việc phát hiện ra các chuỗi con bất thường trong dữ liệu chuỗi thời gian có nhiều ứng dụng trong thực tiễn. Chẳng hạn các thiết bị theo dõi sức khỏe tự động có thể phát hiện ra các đoạn bất thường trong dữ liệu điện tim của bệnh nhân và gởi đi các cảnh báo. Trong bài toán gom cụm trong dữ liệu chuỗi thời gian, giải thuật phát hiện các đoạn bất thường có thể dùng để loại bỏ các các phần tử nhiễu, hay phần tử ngoại biên.
Tuy nhiên việc phát hiện các chuỗi con bất thường trong dữ liệu chuỗi thời gian không đơn giản. Bản thân bài toán này ngoài những khó khăn vốn có của bài toán tìm kiếm bất thường còn chứa đựng những khó khăn của chính nó. Khó khăn thứ nhất là ta không biết trước được chiều dài của các chuỗi con bất thường do đó rất khó để tách chuỗi thời gian thành các đoạn con để so sánh. Thứ hai các chuỗi thời gian khác thuộc các lĩnh vực (domain) khác nhau thường có hành vi khác nhau, điều này gây khó cho việc tìm ra một kỹ thuật tổng quát có thể áp dụng cho nhiều lĩnh vực.
Thứ ba hiện vẫn chưa có một tiêu chuẩn để đánh giá tính chính xác của một kỹ thuật, thông thường việc đánh giá phải dựa vào sự kiểm tra bằng mắt và hiểu biết của người quan sát về tập dữ liệu. Nhiều tác giả đã quan tâm nghiên cứu bài toán này và đưa ra nhiều giải thuật. Một số giải thuật dựa trên tính chu kỳ của chuỗi dữ liệu [28], một số khác dựa trên 3 Tìm chuỗi con bất thường trong dữ liệu chuỗi thời gian sự hiểu biết về bản chất dữ liệu để đoán biết trước chiều dài của chuỗi con bất thường như giải thuật HOT SAX [6] hay WAT [30][2]. Leng và các cộng sự trong bài báo năm 2008 [22] đề xuất một phương pháp dựa trên việc phân đoạn chuỗi thời gian bằng cách dùng các đa thức bậc 2 để xấp xỉ chuỗi thời gian và so sánh các đoạn bằng phương pháp chiều dài biến đổi (variable length method) để tìm các chuỗi con bất thường có chiều dài khác nhau.
Mục tiêu của đề tài Mục tiêu của đề tài là xây dựng một kỹ thuật tìm kiếm các chuỗi con bất thường có chiều dài khác nhau trong dữ liệu chuỗi thời gian mà không cần biết trước chiều dài của chuỗi con bất thường. Chúng tôi tiếp cận theo mô hình M. Leng và các cộng sự bởi vì mô hình này đáp ứng được yêu cầu trên và có thể áp dụng được cho các chuỗi thời gian dạng luồng nên có khả năng áp dụng cao trong thực tế.Leng và các cộng sự chọn sử dụng độ đo xoắn thời gian động (Dynamid time warping) để đánh giá khoảng cách của các đoạn dữ liệu có độ dài khác nhau. Điều này làm cho giải thuật phải tốn nhiều thời gian thực thi và không hiệu quả đối với các chuỗi dữ liệu lớn.
Để làm giảm thời gian tính toán cho giải thuật, chúng tôi đề xuất một cách tính khoảng cách mới dựa trên phép biến hình vị tự và độ đo Euclid. Cách tính mới này có độ phức tạp tính toán tuyến tính do đó giảm được thời gian tìm kiếm mà vẫn giữ được các ưu điểm của mô hình. Chúng tôi cũng đưa thêm tham số r để giảm số lần phải thực hiện tính khoảng cách trong phương pháp chiều dài biến đổi. Bên cạnh đó, chúng tôi cũng đề xuất một giải thuật phân đoạn mới dựa trên các điểm cực trị quan trọng (Significant extreme points).
Phương pháp phân đoạn mới này theo đánh giá của chúng tôi dễ ước lượng các tham số hơn phương pháp phân đoạn do M.Leng và các cộng sự đề xuất. Độ chính xác của các giải thuật mới sẽ được so sánh bằng thực nghiệm với giải thuật HOT SAX. 4 Tìm chuỗi con bất thường trong dữ liệu chuỗi thời gian 1. Những kết quả đạt được của luận văn Luận văn đã cải tiến giải thuật tìm các chuỗi con bất thường có độ dài khác nhau mà không cần biết trước chiều dài của các chuỗi con bất thường được M.
Leng và các cộng sự đưa ra trong [22] bằng ba đóng góp sau: - Thứ nhất đề ra phương pháp tính khoảng cách bằng độ đo Euclid và phép biến hình vị tự thay cho phương pháp tính khoảng cách xoắn thời gian động. Điều này giúp tăng tốc độ thực thi cho giải thuật. - Thứ hai đưa thêm tham số r vào công thức tính khoảng cách bằng phương pháo chiều dài biến đổi giúp làm giảm số lần tính khoảng cách khi xây dựng ma trận khoảng cách cho các chuỗi con. - Thứ ba đề xuất thêm phương pháp phân đoạn bằng các điểm cực trị quan trọng.
Việc ước lượng các tham số cho phương pháp phân đoạn này đơn giản hơn việc ước lượng các tham số cho phương pháp phân đoạn bằng cách dùng đa thức bậc hai để xấp xỉ của giải thuật gốc. Cấu trúc luận văn Cấu trúc phần còn lại của luận văn sẽ gồm những chương sau Chương 2: Các cơ sở lý thuyết. Trong chương này chúng tôi sẽ phân loại các bất thường, các tiêu chí đánh giá bất thường, trình bày các định nghĩa, các phương pháp thu giảm số chiều và rời rạc hóa dữ liệu được sử dụng trong bài toán tìm chuỗi con bất thường trong dữ liệu chuỗi thời gian. Chương 3: Giới thiệu các công trình liên quan.
Chương này chúng tôi sẽ trình bày các công trình liên quan đến phân đoạn chuỗi thời gian và các công trình về tìm kiếm chuỗi con bất thường. Sở dĩ chúng tôi đề cập đến các công trình liên quan đến phân đoạn là vì giải thuật phân đoạn có ảnh hưởng rất lớn đến tính hiệu quả của mô hình tìm kiếm chuỗi con bất thường trên dữ liệu chuỗi thời gian mà chúng tôi sử dụng. 5 Tìm chuỗi con bất thường trong dữ liệu chuỗi thời gian Chương 4: Phương pháp giải quyết vấn đề. Phần này trình bày chi tiết cách giải quyết vần đề của chúng tôi.
Chương 5: Thực nghiệm. Phần này chúng tôi trình bày kết quả thực nghiệm trên các bộ dữ liệu khác nhau mà chúng tôi đã thực hiện. Chương 6: Kết luận.