Cải tiến Thuật toán phát hiện bất thường trên dữ liệu chuỗi thời gian của Yanko

Một phần của tài liệu Phát hiện bất thường trên dữ liệu chuỗi thời gian bằng giải thuật disk aware (Trang 50 - 53)

5. Ý nghĩa thực tiễn của đề tài

3.6 Cải tiến Thuật toán phát hiện bất thường trên dữ liệu chuỗi thời gian của Yanko

Yankov và các cộng sự đề xuất.

Qua tìm hiểu thuật toán phát hiện bất thường trên dữ liệu chuỗi thời gian của Yankov và cộng sự thì ở cả hai giai đoạn của thuật toán đều dựa vào ngưỡng r và cách tính khoảng cách Euclid để tìm những ứng viên bất thường. Việc xác định ngưỡng r tốt là rất khó, và khi dữ liệu lớn cùng chiều dài chuỗi con lớn thì việc tính khoản cách Euclid để tìm ứng viên trở nên chậm chạp và không thật sự hiệu quả. Vì vậy việc tìm ra một phương pháp cải tiến nào đó để giúp cải thiện tốc độ của thuật toán là thật sự cần thiết. Ở đây em đề ra phương pháp thu giảm số chiều (PAA) và rời rạc hóa dữ liệu nhằm biến chuỗi số thành chuỗi kí tự (SAX), sau đó thực hiện việc tìm ứng viên dựa trên việc so sánh các chuỗi kí tự. Thuật toán cũng thực hiện qua hai giai đoạn như thuật toán của Yankov và các cộng sự đề xuất nhưng ở giai đoạn 1 thuật toán cải tiến không phụ thuộc vào ngưỡng r và không dùng khoảng cách Euclid để tìm ra các ứng viên, mà chỉ thực hiện việc so sánh các chuỗi kí tự để tìm ra tập ứng viên có khả năng là bất thường nhất. Việc so sánh chuỗi được đánh giá là nhanh hơn tính khoảng cách Euclid đặc biệt là khi chuỗi con có độ dài

lớn. Vì vậy giảm được thời gian tìm tập ứng viên, do đó cải thiện được độ hiệu quả của thuật toán. Bằng thực nghiệm trên các tập dữ liệu kháo sát thì thuật toán cải tiến hiệu quả hơn thuật toán Disk Aware Discord Discovery của tác giả Yankov và cộng sự.

Các bước cải tiến của giải thuật phát hiện bất thường trên dữ liệu chuỗi thời trải qua một số bước xử lý như sau:

Hình 3.12 Quy trình thực hiện phát hiện bất thường trên dữ liệu chuỗi thời gian cải tiến từ thuật toán của Yankov và cộng sự.

Bước 1: Với tập dữ liệu Time Series đầu, ta xác định độ dài chuỗi con để thực hiện việc

cắt chuỗi Time Series lớn thành các chuỗi con với độ dài bằng nhau.

Bước 2: Sau khi đã thực hiện xong bước đầu tiên, chuỗi Time Series ban đầu của chúng

ta lúc này đã được cắt thành các chuỗi con có độ dài bằng nhau, sau đó ta sẽ thực hiện chuẩn hóa dữ liệu nhằm mục đích chuyển (ánh xạ) toàn bộ tập giá trị của một thuộc tính

2. Chuẩn hóa dữ liệu (Nomolization) (Tùy chọn) 1. Trích chuỗi con (Sliding Window)

3. Thu giảm số chiều (Dimension Reduction) (Tùy chọn)

PAA

4. Rời rạc hóa dữ liệu

SAX

5. Tìm kiếm các ứng viên (giai đoạn 1) Chuỗi dữ liệu thời gian T (Timeseries Data)

sang một tập mới các giá trị thay thế, sao cho mỗi giá trị cũ tương ứng với một trong các giá trị mới để dễ dàng so sánh khoảng cách giữa các chuỗi con với nhau. Hai phương pháp chuẩn hóa thường được sử dụng hiện nay là chuẩn hóa Zero - Mean hay chuẩn hóa Min - Max. Với giải thuật phát hiện bất thường trên dữ liệu chuỗi thời gian có áp dụng phương pháp rời rạc hóa nên bắt buộc cần phải thực hiện bước chuẩn hóa này. Sau khi thực hiện bước này ta được một định dạng dữ liệu phù hợp và sẵn sàng để tiến hành xử lý phát hiện bất thường trên dữ liệu chuỗi thời gian.

Bước 3 (Tùy chọn): Tập các chuỗi con sau khi đã được chuẩn hóa sẽ tiếp tục được tiến

hành thu giảm số chiều vì dữ liệu chuỗi thời gian thường rất lớn, quá trình khai phá dữ liệu có thể rất mất thời gian trên tập dữ liệu gốc. Để khắc phục vấn đề này ta nên áp dụng một số phương pháp biến đổi để thu giảm độ lớn của dữ liệu (Data reduction) nhằm giảm thiểu số lượng dữ liệu cần tính toán mà không làm mất các đặc trưng của dữ liệu gốc. Điều này sẽ giúp cho quá trình tính toán được nhanh chóng và thuận lợi hơn. Các phương pháp thu giảm số chiều thường được áp dụng hiện nay, đó là PAA, APCA, hoặc PLA. Tùy vào bài toán phát hiện dữ liệu chuỗi thời gian bất thường chính xác hay gần đúng mà chúng ta lựa chọn tỷ lệ thu giảm số chiều.

Bước 4: Tập các chuỗi con sau khi được chuẩn hóa và thu giảm số chiều sẽ được rời rạc

hóa để chuyển đổi các giá trị dữ liệu số thành các chuỗi kí tự đại diện. Đây là một bước quan trọng cần phải có dành riêng cho các giải thuật phát hiện bất thường trên dữ liệu chuỗi thời gian có áp dụng phương pháp rời rạc hóa. Phương pháp rời rạc hóa phổ biến hiện nay là: SAX, iSAX [21].

Bước 5: Tập hợp các chuỗi con sau khi đã được trích xuất ra từ chuỗi Time Series lớn ở

bước thứ 4 lúc này sẽ trở thành nguồn dữ liệu đầu vào. Dựa trên đó, ta tiến hành thực hiện giải thuật tìm các ứng viên bất thường trên tập dữ tương ứng để tìm ra những chuỗi con nào có khả năng là ứng viên bất thường (giai đoạn 1).

Bước 6: Sau khi thực hiện giải thuật tìm các ứng viên bất thường trên dữ liệu chuỗi thời

viên bất thường tìm được. Ở bước cuối cùng, chúng ta tiến hành làm tinh các ứng viên bất thường để có được kết quả là các bất thường thật sự (giai đoạn 2).

Một phần của tài liệu Phát hiện bất thường trên dữ liệu chuỗi thời gian bằng giải thuật disk aware (Trang 50 - 53)

Tải bản đầy đủ (PDF)

(57 trang)