Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 105 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
105
Dung lượng
13,06 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SĨ BÙI THỊ MỘNG TIỀN PHÁT HIỆN CHUỖI CON BẤT THƯỜNG VỚI CHIỀU DÀI KHÁC NHAU TRÊN CHUỖI THỜI GIAN SỬ DỤNG THUẬT TOÁN MERLIN NGÀNH: KHOA HỌC MÁY TÍNH SKC007967 Tp Hồ Chí Minh, tháng 04/2023 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SĨ BÙI THỊ MỘNG TIỀN TÊN ĐỀ TÀI LUẬN VĂN THẠC SĨ PHÁT HIỆN CHUỖI CON BẤT THƯỜNG VỚI CHIỀU DÀI KHÁC NHAU TRÊN CHUỖI THỜI GIAN SỬ DỤNG THUẬT TOÁN MERLIN NGÀNH: KHOA HỌC MÁY TÍNH - 2081309 Hướng dẫn khoa học: TS NGUYỄN THÀNH SƠN Tp Hồ Chí Minh, tháng 04/2023 ii i ii iii iv v vi vii TÀI LIỆU THAM KHẢO [1] Takaaki Nakamura, Makoto Imamura, Ryan Mercer, Keogh: MERLIN: [1], Published in: 2020 IEEE International Conference on Data Mining (ICDM); [2] Mueen, Abdullah; Keogh, Eamonn; Zhu, Qiang; Cash, Sydney; Westover, Brandon:Exact Discovery of Time Series Motifs; [3] Chiu, B., E Keogh, and S Lonardi, Probabilistic discovery of time series motifs, in Proceedings of the ninth ACM SIGKDD international conference on Knowledge discovery and data mining 2003, Association for Computing Machinery: Washington, D.C p 493–498; [4] D Yankov, E Keogh, and U Rebbapragada, “Disk Aware Discord Discovery: Finding Unusual Time Series in Terabyte Sized Datasets,” ICDM, 2007, pp 381-390; [5] Posts by Yue Lu, in https://matrixprofile.org/posts/what-are-time-series-discords/, What are Time Series Discords? Learn how to use Matrix Profile Discords for anomaly detection; [6] Keogh, E., Lin, J., Fu, A., HOT SAX: Efficiently Finding the Most Unusual Time Series Subsequence, In Proc ICDM’05 (2005); [7] Elena Deza, M.M.D.a., Encyclopedia of Distances 2009, Springer Berlin Heidelberg p 94; [8] Mishra, A.K., Choudhary, A., & Choundhary, S (2016) Normalization and Transformation Technique Based Efficient Privacy Preservation In Data Mining International Journal of Modern Engineering and Research Technology, 3(2): 5- 10; 68 [9] N Beckmann, H Kriegel, R.Schneider and B.Seeger, "The R*-tree": An efficient and robust access method for point and rectangles"" in Proc.of 1990 ACM SIGMOD Còn., Atlantic City; [10] K Eamonn, A W Fu, H Lau and C.A Ratanamahatana, "Scaling and Time Warping in Time Series Querying" The VLDB Journal, p.899-921, 2008; [11] E Keogh, Jessica Lin, Ada Fu: HOT SAX: Finding the Most Unusual Time SeriesSubsequence: Algorithms and Applications, Conference: Proceedings of the Sixth International Conference on Data Mining (ICDM); [12] Xing Wang, Jessica Lin, Nital Patel, Martin Braun: A Self-Learning and Online Algorithm for Time Series Anomaly Detection, with Application in CPU Manufacturing,Conference: the 25th ACM International; [13] Guiling Li, Olli Bräysy, Liangxiao Jiang, Zongda Wu, Yuanzhen Wang: Finding time series discord based on bit representation clustering, Knowledge-Based SystemsVolume 54Issue CDecember 2013 pp 243–254; [14] Tian Huang, Yongxin Zhu, Yafei Wu, Weiwei Shi: J-distance Discord: An Improved Time Series Discord Definition and Discovery Method, 2015 IEEE 15th International Conference on Data Mining Workshops Link source tập liệu test: TẠI ĐÂY 69 PHỤ LỤC Hướng dẫn cài đặt sử dụng thuật toán Hướng dẫn cài đặt Matlab: Sử dụng Matlab 2021a để kiểm thử, yêu cầu hệ thống tối thiếu: - Hệ điều hành: + Windows 10 (version 1803 or higher) + Windows Service Pack + Windows Server 2019 + Windows Server 2016 - CPU: Intel or AMD x86-64 processor - Đĩa trống: 29 GB - RAM: 4GB Download cài đặt matlab (https://www.mathworks.com/products/new_products/release2021a.html) Hướng dẫn cài đặt thực nghiệm thuật toán: - Bước 1: Mở matlab mở tập tin thực nghiệm - Bước 2: Chạy hình thực nghiệm với lệnh: merlin_program - Bước 3: Chọn tập liệu test nút “Browse” - Bước 4: Nhập thông số cần thiết mục “Parameters” - Bước 5: Chọn tùy chọn thực nghiệm với thuật toán khác mục Options Đợi thuật toán thực thi xong lấy kết thực nghiệm 70 PHÁT HIỆN CHUỖI CON BẤT THƯỜNG VỚI CHIỀU DÀI KHÁC NHAU TRÊN CHUỖI THỜI GIAN SỬ DỤNG THUẬT TOÁN MERLIN DISCOVERY OF ARBITRARY LENGTH ANOMALIES IN TIME SERIES USING MERLIN ALGORITHM Nguyen Thanh Son1, Bui Thi Mong Tien2 1,2 Trường Đại học Sư phạm Kỹ thuật TP.HCM TÓM TẮT Phát chuỗi bất thường liêụ chuỗi thời gian ngày nhận nhiều quan tâm cộng đồng nghiên cứu thời gian gần Nó sử dụng để giải nhiều vấn đề lĩnh vực ứng dụng khác chuẩn đoán lỗi, kịp thời xử lý giao dịch bất thường mang tính chất lừa đảo, cảnh báo xâm nhập hệ thống hạ tầng mạng, theo dõi biến động nhằm phục vụ hài lòng khách hàng, cung cấp tài liệu chuẩn đoán theo dõi bệnh án bệnh nhân, v.v… Mặc dù, có nhiều phương pháp phát chuỗi bất thường công bố nhiên hầu hết phương thức yêu cầu cung cấp độ dài chuỗi con, chí nhiều tham số khác Vì vậy, vấn đề nghiên cứu để tìm giải thuật cải tiến thuật tốn có cho hiệu ln quan tâm Từ khố: time series, discord, MERLIN ABSTRACT Detecting anomalous subsequences on time series data has received increasing attention in the research community recently It has been used to solve many problems in various fields and applications such as diagnosing errors, promptly handling unusual transactions of fraudulent nature, warning of intrusions and network infrastructure, monitoring fluctuations to serve customer satisfaction, provide diagnostic documentation and monitor the patient's medical records, etc Although, there have been many methods for detecting anomalous substrings that have been published, most of them require providing a substring length, even many other parameters Therefore, the problem of researching to find new algorithms or improve existing algorithms to be more efficient is always of interest Keywords: time series, discord, MERLIN GIỚI THIỆU tương tự (Similarity search), gom cụm (Clustering), Một chuỗi thời gian (time series) tập hợp phân lớp (Classification), phát motif (Motif điểm liệu đo theo khoảng thời gian discovery), khai phá luật (Rule discovery), phát liền kề theo tần suất thời gian định bất thường (Anomaly detection), trực quan hóa Các tốn thường nghiên cứu (Visualization), dự báo (Forecast) khám phá liệu chuỗi thời gian gồm tìm kiếm Vấn đề tìm kiếm tất điểm bất thường hay 71 chuỗi bất thường t liệu chuỗi thời gian đề tài hấp dẫn cần thiết để thực nghiên cứu Từ thập niên 80 kỷ XX, có nhiều cơng trình nghiên cứu tìm hiểu đề xuất nhiều cách thức khác cho việc phát chuỗi Hình 2.1: Hình ảnh minh họa chuỗi thời gian biểu bất thường liệu chuỗi thời gian Bài toán phát bất thường liệu chuỗi thời gian nhiều vấn đề gây khó khăn đối lớn với nhà nghiên cứu Có nhiều trường hợp bất thường xảy liệu chuỗi thời gian: bất thường đoạn chuỗi thời gian diễn biến động thị trường chứng khốn bất thường tồn chuỗi thời gian Italy tác động đại dịch Covid-19 Ở nghiên cứu đầu tiên, việc xác định Nguồn: BigData Uni bất thường chuỗi thời gian, toán thường buộc người dùng phải nhập đầu vào độ 2.2 Bất thường chuỗi thời gian dài của con, gây nhiều khó khăn Với chuỗi thời gian T bất kỳ, chuỗi việc xác định độ dài chuỗi khó D có chiều dài m bắt đầu vị trí l gọi chuỗi Trong thực tế chuỗi thời gian cần bất thường T D có khoảng cách lớn xử lý lĩnh vực lớn độ dài chuỗi so với lân cận không tầm thường gần thời gian to độ phức tạp thời gian [3] thực phần tính tốn tăng lên nhiều Nghĩa là, với chuỗi C T, lân cận Mục đích nghiên cứu tìm hiểu cài đặt thuật không tầm thường gần MD D lân cận tốn tìm kiếm tất chuỗi bất thường tất không tầm thường gần MC C, ta có độ dài chuỗi chuỗi thời gian Đồng thời, (DISTANCE (D, MD)) > (DISTANCE (C, nghiên cứu tìm giải pháp cải tiến thuật tốn nhằm MC)) [3] mục đích tốc độ xử lý để giảm lượng thời gian thực 2.3 So trùng mẫu thi mà đảm bảo độ xác Cho số thực dương R (gọi phạm vi KIẾN THỨC CƠ BẢN người dùng định nghĩa) chuỗi thời gian T chứa 2.1 Chuỗi thời gian chuỗi C bắt đầu vị trí i chuỗi M Một chuỗi thời gian (time series) chuỗi bắt đầu j, hàm tính khoảng cách từ C đến M điểm liệu đo theo khoảng thời gian ký hiệu D (C, M) ≤ R, ta gọi chuỗi M khớp liền theo tần suất thời gian thống với chuỗi C [2] Nếu T chuỗi thời gian T = (t1, t2…, tn) So trùng tầm thường: gồm n giá trị thực theo thời gian [1] Cho số thực dương t (tức ngưỡng) dãy C M, Dist (C, M) ≤ t chuỗi M so 72 trùng tầm thường với C Khi tìm kiếm điểm (false positive) bất thường khoảng cách, điều quan trọng Bảng 3.1 Giải thuật phát ứng viên bất thường DRAG – Giai đoạn phải loại trừ so trùng tầm thường, dãy Table 1: Giai đoạn 1, Sàn lọc ứng viên bất thường Input: T: Chuỗi thời gian L: Độ dài chuỗi r: Phạm vi ngưỡng bất thường Output: C: Tập ứng viên nghi ngờ bất thường C = {} // Khởi đầu với tập rỗng chồng lên dãy xem xét Việc không loại bỏ so trùng tầm thường làm cho giải pháp suy biến không trực quan [6] Hình 2.2 Hai chuỗi chuỗi thời gian For I = 1 to |T| - L + // Lần lượt quét qua chuỗi T so trùng tầm thường ([5]) So trùng không tầm thường: Chuỗi thời gian T có chiều dài n, chuỗi C M iscandidate = true For j in C If I and j are NOT trivial matches có chiều dài m chuỗi chuỗi thời gian T Chuỗi C bắt đầu vị trí p, chuỗi M bắt đầu If dist(Ti,L, Tj,L) < r vị trí q Ta nói chuỗi M chuỗi C so trùng không tầm thường |p-q| ≥ m [2] C=C\j iscandidate = false If iscandidate 10 THUẬT TOÁN MERLIN C=C∪ // Thêm chuỗi vào tập ứng viên Đầu vào thuật tốn bao gồm chuỗi thời gian 11 ngưỡng tính toán: giới hạn dưới, giới hạn 12 bước nhảy Giới hạn phù hợp 13 If NOT isemptyset() return C Else 14 khoản 30 – 150 theo nghiên cứu thử nghiệm return failure + Giai đoạn – Sàn lọc bất thường: nhiều tập liệu tác giả cộng sự, bước Một lần kiểm tra chuỗi tính nhảy lựa chọn Đầu thuật toán tập tất khoảng cách chuỗi tới ứng viên cả điểm liệu bất thường vị trí tập ứng viên để loại bỏ dương tính 3.1 Phát bất thường DRAG sai Sau sàn lọc kết thúc, thuật toán trả Mục tiêu thuật toán: Giải toán phát tập bất thường xếp theo khoảng cách (ít bất thường tập liệu nhiều terabyte sử bất thường) dụng nhớ cứng thay sử dụng nhớ Bảng 3.2 Giải thuật phát ứng viên bất thường DRAG – Giai đoạn Thuật toán gồm giao đoạn: + Giai đoạn – Lựa chọn ứng viên discord: Table 2: Giai đoạn II, Tinh chỉnh tập ứng viên bất thường Input: C: Tập ứng viên bất thường lọc từ Giai đoạn T: Chuỗi thời gian L: Độ dài chuỗi r: Phạm vi ngưỡng bất thường Output: D: Tập kết giá trị bất thường (vị trí, khoảng cách) Khởi tạo tập C (ban đầu rỗng) chứa ứng viên discord Sau kiểm tra subsequences time series, distance đến lân cận gần lớn r (r nhập vào), thêm đoạn subsequence vào tập C, tập C chắn chắn có chứa discord chứa thêm mơt số dương tính sai 73 D = {} // Khởi đầu với tập liệu rỗng For i = to |T| - L + Output: D: Tập liệu bất thường (vị trí, chiều dài, khoảng cách) r = sqrt(MinL) // Đặt r với giá trị lớn distanceminL = -inf // Cho phép phép tính vào vịng lập While distanceminL < // Tìm kiếm bất thường [indexminL , distanceminL]= DRAG(T, MinL,r) r = r ½ // Nếu vòng lặp bị lặp lại, làm cho r nhỏ End // Lần lượt quét qua chuỗi isdiscord = true For j in C // Quét chuỗi bất thường tập C If i and j are NOT trivial matches d = dist(Ti,L, Tj,L) If d < r C=C\j isdiscord = false 10 else 11 dj = min(dj, d) 12 If isdiscord 13 10 D = D ∪ {(j, L, dj)} 14 For i = MinL + to MinL + // Tìm kiếm giá trị distancei = -inf // Cho phép phép tính vào vịng lập While distancei < // Giảm giá trị r thành công r = 0.99 distancei-1 11 return D [indexi, distancei]= DRAG(T,i,r) 13 r = r 0.99 // Nếu vòng lặp bị lặp lại, làm cho r nhỏ End 14 End 15 khoảng cách bất thường (r) dựa giá trị 16 For i = MinL + to MaxL // Tìm kiếm tất chuỗi lại M = mean(distancei-1 to i-5) khoảng cách cho bất thường trước 17 S = STD(distancei-1 to i-5) 18 r = M – (2S) 19 [indexi, distancei]= DRAG(T,i,r) 20 While distancei < 12 3.2 Thuật toán MERLIN Mục tiêu thuật tốn: Tối ưu hóa thuật tốn DRAG thuật toán dự đoán giá trị Thuật toán gồm bước sau: + Bước 1: Với bất thường đầu tiên, cho r 21 = * sqrt (L) kiểm tra r với thuật toán [indexi, distancei]= DRAG(T,i,r) 22 DRAG thất bại lập lại với r = r /2 23 24 + Bước 2: Với bất thường từ vị trí - r=r–S End End 3.3 THUẬT TOÁN MERLIN 3.0 4, cho r = 0.99 * r(i-1) kiểm tra giá trị với Cuối năm 2021, tác giả cơng thuật tốn DRAG, thất bại lập lại cho đưa giải phảp cải tiến Merlin trước đến thành cơng nhằm cải tiến tốc độ xử lý thuật toán + Bước 3: Với bất thường cịn lại (từ Kết đạt q trình cải tiến vị trí thứ trở sau), tính giá trị r dựa vào tín hiệu khả quan Thơng qua việc thực nghiệm khoảng cách bất thường trước kiểm tra tập liệu, phiên Merlin 3.0 ln giá trị với thuật tốn DRAG, thất bại cho hiệu suất vượt trội thấy rõ so với tiền nhiệm lập lại với r = r – S (độ lệch chuẩn) Tuy nhiên, lý gì, đến thời điểm thành công phiên Merlin 3.0 chưa công bố Bảng 3.3 Giải thuật phát bất thường Merlin rộng rãi Có thể, cần tiến hành thực nghiệm, Input: T: Chuỗi thời gian MinL: Giới hạn độ dài chuỗi MaxL: Giới hạn độ dài chuỗi nghiên cứu nhiều để thuật toán cải tiến đạt hiệu suất với thời gian độ xác 74 cách tốt nhất dựa ứng viên tìm Để loại bỏ điểm so trùng tầm thường tìm tập ứng viên bất thường cuối Tác giả tiếp tục sử dụng bước để sàng lọc Việc sử dụng đồng thời hai loại ma trận giai đoạn nhằm loại bỏ so trùng tầm thường q trình tìm kiếm Thuật tốn đầu (sử dụng matrix correlation) tìm kiếm với điểm bên trái Hình 3.1 Thuật tốn MERLIN 3.0 nhất, cịn thuật tốn matrix vector products tìm Về bản, thay sử dụng vòng lặp để khoảng first last tìm kiếm hết tất điểm bất thường dùng 3.4 SONG SONG MERLIN VÀ MERLIN Merlin dùng thông số định để làm 3.0 BẰNG MATLAB ngưỡng so sánh Đối với phiên cải tiến giả Về ý tưởng song song hóa, nghiên cứu tơi sử dụng phương pháp phân cụm, tìm kiếm cụm sử dụng giải pháp parallel computing – sử dụng nhỏ, so sánh giá trị bất thường với vòng lặp parfor thay cho vòng lặp for để xử xử lý cụm, kết đạt tiếp tục so chạy song song Từ đoạn minL-maxL đầu sánh với cụm khác để đưa kết cuối vào nguyên bản, ta chia nhỏ thành nhiều đoạn Để thực thuật toán, tác giả tiến hành qua cho chạy lúc CPU khác giai đoạn Cụ thể sau: - Giai đoạn 1: so sánh trình tự ứng viên khối (phân khối dựa vào input người dùng, tác giả sử dụng subseqcount, khối tối đa 256 length), tìm danh sách ứng viên Chuỗi hợp lệ mà nhân với ma trận nghịch đảo cho giá trị Đó bước so sánh khối, sau lặp lại cho khối Các khối Hình 3.2 Mơ hình Parallel Computing dùng cho làm thêm bước so sánh với Merlin chuỗi bị loại Quá trình song song tiến hành theo bước: - Giai đoạn 2: so sánh chéo ứng viên để giảm - Bước 1: Nhập liệu đầu vào thuật dư thừa liệu, sàng lọc ứng viên Giai đoạn toán Merlin tác giả đưa ra, đồng thời tạo mảng lưu thực tương tự giai đoạn 1, sau có tất trữ liệu trả ứng viên khối, thực so sánh - Bước 2: Phân tách đoạn minL-maxL thành lại để sàng lọc liệu dư thừa áp dụng phương đoạn nhỏ tiến hành chạy song song pháp giai đoạn CPU (số đoạn tách phụ thuộc vào số lượng CPU - Giai đoạn 3: tính tốn vị trí lân cận gần 75 máy thực nghiệm) 3.5626s Merlin giới thiệu lần - Bước 3: Tổng hợp liệu trả sau trình đầu cần đến 145.3141s đề thực điều Với xử lý song song mảng khởi tạo trước kết này, Merlin 3.0 xử lý tốt sấp xỉ 40 lần - Bước 4: Tiến hành lọc trùng – Từ vị trí so với thuật tốn trước bất thường trả về, tiến hành loại bỏ điểm - Mặt khác với chuỗi minL-maxL từ 40-150, có vị trí gần (so trùng tầm thường) thuật toán Merlin 3.0 cho thời gian thực thi - Bước 5: Trả kết cuối mơ tả hình 7.2582s Merlin giới thiệu lần dạng chuỗi điểm bất thường tìm đầu cần đến 2.5595e+03s đề thực điều Với THỰC NGHIỆM kết này, Merlin 3.0 xử lý tốt sấp xỉ 960 lần Tiến hành thực nghiệm tập liệu Seismology-Data có độ dài 10.000 so với thuật tốn trước đó, số ấn tượng cho việc cải tiến tốc độ thuật toán 247_UCR_Anomaly_tilt12755mtable có độ dài - Về phần can thiệp song song hóa tài 200.001 ngun q trình thực thi, nhìn vào bảng kết 4.1 Tập liệu Seismology-Data ta thấy việc dùng parallel giúp cải tiến tốc độ Thời gian thực thi: thêm sấp xỉ lần so với Merlin tác giả đề xuất, cụ thể: Bảng 4.1: Kết thời gian thực nghiệm + Ở lần thực nghiệm với đoạn minL-maxL 40- mẫu Seismology-Data có độ dài 10.000 60, Merlin Par cho kết 78.4543s với minL = 40, bước nhảy = maxL từ Merlin 145.3141s nhanh 1.85 lần; 60 đến 150 Merlin 3.0 Par cho kết 3.8727s, Merlin 3.0 TIME EXECUTE (SECOND) STT minL STEP maxL 3.5626s chậm 0.9 lần MERLIN MERLIN MERLIN MERLIN_Par 3.0 3.0_Par + Ở lần thực nghiệm với đoạn minL-maxL 40- 40 60 145.3141 78.4583 3.5626 3.8727 40 80 419.3501 207.7603 5.2743 3.6433 40 100 750.6437 346.992 7.2921 4.2836 với Merlin 2.5595e+03s nhanh 2.5 lần; đối 40 120 1.3379e+03 9.8092 5.7053 với Merlin 3.0 Par cho kết 7.2582s, Merlin 40 150 2.5595e+03 1.0317e+03 13.5444 7.2582 3.0 13.5444s nhanh gần 1.9 lần 410.3413 150, Merlin Par cho kết 1.0317e+03s đối Nhận xét: Độ xác - Thời gian thực thi thuật toán Merlin 3.0 Bảng 4.2: Kết tất điểm thực Par cho kết tốt ổn định nhiều so với nghiệm mẫu Seismology-Data có độ thuật tốn Merlin Merlin 3.0 Par Bảng dài 10.000 4.1 với tất độ dài chuỗi với minL = 40, bước nhảy = maxL từ - Trong đó, hai thuật toán Merlin 3.0 Merlin tác giả đưa lại có thay đổi thời gian thực thi 60 đến 150 đột biến, ví dụ đoạn chuỗi minL-maxL từ 40STT 60, thuật toán Merlin 3.0 cho thời gian thực thi 76 DISCORD (index) MERLIN MERLIN_Par MERLIN MERLIN 3.0 3.0_Par 995 995 995 995 1.018 1.018 1.018 1.018 5.599 5.599 5.599 5.599 5.639 5.639 5.639 5.639 Nhận xét: - Nhìn vào bảng số liệu ta thấy tốc độ xử lý giải pháp Merlin 3.0 tập liệu 247_UCR_Anomaly_tilt12755mtable vượt trội hòa tòa so với Merlin Merlin Par Khi áp dụng Nhận xét: thêm thủ thuật parallel computing cho Merlin 3.0 - Kết sau chạy thực nghiệm cho thấy độ tập liệu cải thiện rõ cho việc lệch vị trí bất thường tất thuật tốn Merlin, xử lý tốc độ thuật toán sử dụng tập Merlin Par, Merlin 3.0 Merlin 3.0 Par Seimolygy-Data xác, kết tổng hợp Hình 4.1 Với tập - Thời gian thực thi thuật toán Merlin 3.0 liệu này, bốn thuật toán cho kết Par cho kết tốt ổn định nhiều so với thuật toán Merlin Merlin 3.0 Par Bảng - Như vậy, với tập liệu Seismolygy-Data, độ 4.2 với tất độ dài chuỗi dài chuỗi thời gian: 10.000 điểm, tất thuật - Trong đó, hai thuật tốn Merlin 3.0 Merlin tốn cho kết nhau, hiệu suất cải tiến tác giả đưa lại có thay đổi thời gian thực thi Merlin Merlin 3.0 đáng xem xét đột biến, ví dụ đoạn chuỗi minL-maxL từ 4060, thuật toán Merlin 3.0 cho thời gian thực thi 33.8378s Merlin giới thiệu lần đầu cần đến 1.7562e+03s đề thực điều Với kết này, Merlin 3.0 xử lý tốt sấp xỉ 141 Hình 4.1 Hình ảnh chuỗi bất thường tìm lần so với thuật tốn trước vị trí 1018 5599 - Mặt khác với chuỗi minL-maxL từ 40- 4.2 Tập liệu 247_UCR_Anomaly_tilt12755mtable 150, thuật toán Merlin 3.0 cho thời gian thực thi Thời gian thực thi: 221.5715s Merlin giới thiệu Bảng 4.3: Kết thời thực nghiệm lần đầu cần đến 1.8756e+05s đề thực điều mẫu 247_UCR_Anomaly_tilt12755mtable Với kết này, Merlin 3.0 xử lý tốt sấp xỉ có độ dài 200.001 với minL = 40, bước 2300 lần so với thuật tốn trước đó, cho thấy nhảy = maxL từ 60 đến 150 Merlin 3.0 xử lý vượt trội tốc độ so với phiên STT minL STEP maxL trước TIME EXECUTE (SECOND) MERLIN MERLIN_Par MERLIN MERLIN 3.0 3.0_Par - Về phần can thiệp song song hóa tài 40 60 1.7562e+03 3.6181e+03 33.8378 42.4958 nguyên trình thực thi, nhìn vào bảng kết 40 80 6.9834e+04 1.5022e+04 86.7696 54.8407 ta thấy việc dùng parallel giúp cải tiến tốc độ có 40 100 9.2419e+04 2.4922e+04 120.2035 64.3306 40 120 1.0787e+05 3.4927e+04 156.0806 73.1759 40 150 1.8756e+05 5.0021e+04 221.5715 106.3580 biến động tùy vào độ dài minL-maxL so với Merlin tác giả đề xuất, cụ thể: + Ở lần thực nghiệm với đoạn minL-maxL 4077 60, Merlin Par cho kết 3.6181e+03s Merlin 1.7562e+03s chậm lần; Merlin 3.0 Par cho kết 42.4958s, Merlin 3.0 33.8378s chậm gần 1.3 lần + Ở lần thực nghiệm với đoạn minL-maxL 40- Hình 4.2 Hình ảnh chuỗi bất thường tìm 150, Merlin Par cho kết 5.0021e+04s đối vị trí 38193 55455 với Merlin 1.8756e+05s nhanh 3.8 lần; đối KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN với Merlin 3.0 Par cho kết 106.3580s, Merlin 5.1 Kết đạt 3.0 221.5715s nhanh gần 2.1 lần Các kết đạt sau: - Nắm sở lý thuyết chuỗi thời gian, Độ xác tốn phát chuỗi bất thường Bảng 4.4 Kết điểm thực nghiệm mẫu chuỗi thời gian 247_UCR_Anomaly_tilt12755mtable có độ dài 200.001 - Hiểu mô tả thuật toán MERLIN với minL = 40, bước nhảy = maxL từ 60 đến 150 - Tìm hiểu xử lý thuật toán MERLIN 3.0 DISCORD (index) STT MERLIN MERLIN_Par MERLIN 3.0 MERLIN 3.0_Par - Cài đặt thực nghiệm tập liệu khác nhau, đặc biệt tập liệu lớn 21.291 21.291 21.291 21.291 21.346 21.346 21.346 21.346 - Cơ cải tiến tốc độ xử lý thuật 38.193 38.193 38.193 38.193 toán MERLIN thuật toán MERLIN 3.0 55.437 55.437 55.437 55.437 55.455 55.455 55.455 55.455 phương pháp song song hóa dùng Parallel Computing Nhận xét: 5.2 Hạn chế Kết sau chạy thực nghiệm cho thấy độ Bên cạnh kết đóng góp đạt lệch vị trí bất thường tất thuật tốn Merlin, được, đề tài cịn tồn đọng vấn đề sau cần Merlin Par, Merlin 3.0 Merlin 3.0 Par cân nhắc giải quyết: xác Với tập liệu này, bốn thuật toán - Kết thời gian xử lý thuật tốn có kết Như vậy, với tập có cải thiện dùng Parallel computing có hiệu liệu chưa cao, muốn đạt kết cải 247_UCR_Anomaly_tilt12755mtable, độ dài chuỗi thiện tốt cần sử dụng thêm nhiều tài nguyên hỗ trợ thời gian: 200.001 điểm, tất thuật toán - Thuật tốn chưa thể hỗ trợ việc tìm kiếm cho kết nhau, hiệu suất cải tiến Merlin chuỗi bất thường cho nhiều tập liệu, cần Merlin 3.0 dùng parallel để song song cần nghiên cứu phát triển để thuật tốn áp dụng lưu ý độ lớn chuỗi để mang lại hiệu cho nhiều kiểu liệu tối ưu - Phần cải thiện thuật toán dùng Parallel computing hiệu tập liệu 78 lớn, khoảng giới hạn minL-maxL chuỗi sánh “r”, muốn cải tiến thuật tốn cần tìm phải lớn Đối với tập liệu khoảng hiểu xây dựng tìm kiếm ngưỡng so sánh “r” giới hạn minL-maxL nhỏ hiệu cải tiến nhanh xác khơng đáng kể, chí có trường hợp thực - Nghiên cứu áp dụng GPU để xử lý thuật toán nghiệm cho hiệu suất so với phiên tác - Tiến hành xử lý thực thi nhiều tập liệu giả giới thiệu để đánh giá độ xác với loại 5.3 Hướng phát triển liệu dựng phương án khắc phục hạn Đề tài tiếp tục phát triển hoàn thiện chế tập liệu đầu không nội dung sau: mong muốn - Mấu chốt tốn nằm thơng số ngưỡng so 79 TÀI LIỆU THAM KHẢO [1] Mueen, Abdullah; Keogh, Eamonn; Zhu, Qiang; Cash, Sydney; Westover, Brandon: Exact Discovery of Time Series Motifs; [2] Chiu, B., E Keogh, and S Lonardi, Probabilistic discovery of time series motifs, in Proceedings of the ninth ACM SIGKDD international conference on Knowledge discovery and data mining 2003, Association for Computing Machinery: Washington, D.C p 493–498; [3] D Yankov, E Keogh, and U Rebbapragada, “Disk Aware Discord Discovery: Finding Unusual Time Series in Terabyte Sized Datasets,” ICDM, 2007, pp 381-390; [5] Posts by Yue Lu, in https://matrixprofile.org/posts/what-are-time-series-discords/, What are Time Series Discords? Learn how to use Matrix Profile Discords for anomaly detection; [4] Keogh, E., Lin, J., Fu, A., HOT SAX: Efficiently Finding the Most Unusual Time Series Subsequence, In Proc ICDM’05 (2005); [5] Elena Deza, M.M.D.a., Encyclopedia of Distances 2009, Springer Berlin Heidelberg p 94; [6] Mishra, A.K., Choudhary, A., & Choundhary, S (2016) Normalization and Transformation Technique Based Efficient Privacy Preservation In Data Mining International Journal of Modern Engineering and Research Technology, 3(2): 5- 10 Tác giả chịu trách nhiệm viết: Họ tên: Bùi Thị Mộng Tiền Đơn vị: Trường ĐH Sư phạm Kỹ thuật TP.HCM Điện thoại: 0988478183 Email: mongtiengn@gmail.com 80 81