PHÁT HIỆN DỮLIỆU BẤT THƯỜNG VỚI RỪNG CÔ LẬP
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CẦN THƠ CHÂU XUÂN PHƯƠNG PHÁT HIỆN DỮ LIỆU BẤT THƯỜNG VỚI RỪNG CÔ LẬP LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Cần Thơ - 2009 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CẦN THƠ CHÂU XUÂN PHƯƠNG PHÁT HIỆN DỮ LIỆU BẤT THƯỜNG VỚI RỪNG CÔ LẬP Chuyên ngành: HỆ THỐNG THÔNG TIN Mã số: 60 44 31 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Người hướng dẫn: TS. HUỲNH XUÂN HIỆP Cần Thơ - 2009 LỜI CẢM ƠN Sau hai năm theo học tại lớp Cao Học Hệ Thống Thông Tin khoá 14, và gần sáu tháng thực hiện luận văn, ngoài sự nổ lực của bản thân, tôi đã nhận được rất nhiều sự động viên, chia sẻ, giúp đỡ của quý Thầy Cô, gia đình, bạn bè. Nay luận văn đã hoàn tất, tôi xin chân thành gởi lời tri ân đến: Thầy hướng dẫn, TS. Huỳnh Xuân Hiệp, đã nhiệt tình hướng dẫn và đóng góp nhiều ý kiến quý báu cho tôi trong suốt quá trình thực hiện luận văn. Tất cả các Thầy Cô bộ môn ở Khoa Công Nghệ Thông Tin và Truyền Thông, các Thầy ở học viện IFI-Hà Nội, đã nhiệt tình truyền thụ kiến thức, kinh nghiệm cho chúng em trong suốt thời gian gần hai năm học qua. Tất cả các Thầy Cô, các anh chị em đồng nghiệp bộ môn Toán - khoa Sư Phạm đã phối hợp, tạo điều kiện thuận lợi trong công tác để tôi yên tâm vừa hoàn thành tốt công tác chuyên môn và hoàn thành tốt việc học. Bên cạnh đó, tôi không quên gởi lời cảm ơn đến các bạn cùng lớp Cao học Hệ Thống Thông Tin đã chia sẻ động viên tôi rất nhiều trong quá trình học tập cũng như trong quá trình thực hiện luận văn. Con xin gởi lời tri ân chân thành đến cha mẹ kính yêu, kính chúc cha mẹ luôn khoẻ mạnh để dõi theo sự thành đạt của con cái. Cám ơn chồng con thân yêu của tôi, luôn là chổ dựa tinh thần vững chắc cho tôi có được thành công như ngày hôm nay. Lời cuối, kính chúc tất cả mọi người lời chúc sức khỏe, thành đạt. Châu Xuân Phương. LỜI CAM ĐOAN Tôi xin cam đoan rằng toàn bộ nội dung đề tài “Phát hiện dữ liệu bất thường với Rừng cô lập” là kết quả nghiên cứu của tôi, ngoại trừ các phần được trích dẫn. Người cam đoan Châu Xuân Phương MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN TÓM TẮT ABSTRACT KÍ HIỆU, THUẬT NGỮ VÀ VIẾT TẮT DANH MỤC BẢNG DANH MỤC BIỂU ĐỒ DANH MỤC HÌNH CHƯƠNG 1: MỞ ĐẦU .1 1.1. Đặt vấn đề .1 1.2. Lịch sử giải quyết vấn đề 2 1.3. Phạm vi của đề tài .2 1.4. Phương pháp nghiên cứu .2 1.5. Nội dung nghiên cứu .3 CHƯƠNG 2: TỔNG QUAN VỀ PHÁT HIỆN DỮ LIỆU BẤT THƯỜNG 4 2.1. Tồn tại dữ liệu bất thường trong tập dữ liệu .4 2.2. Một số thử thách trong vấn đề phát hiện bất thường 5 2.3. Những khía cạnh liên quan vấn đề phát hiện bất thường 6 2.3.1. Bản chất của dữ liệu .6 2.3.2. Các loại bất thường .6 2.3.3. Nhãn dữ liệu .9 2.3.4. Đầu ra của phát hiện bất thường .11 2.4. Những ứng dụng cho phát hiện bất thường 11 2.4.1. Phát hiện tấn công 11 2.4.2. Phát hiện gian lận .12 2.4.3. Phát hiện bất thường về sức khỏe y tế và sức khỏe cộng đồng 12 2.4.4. Phát hiện sự hư hại của thiết bị công nghệ 12 2.4.5. Phát hiện bất thường trong quá trình xử lý ảnh .12 2.4.6. Phát hiện bất thường trên dữ liệu văn bản .13 2.5. Những kỹ thuật phát hiện bất thường đang được sử dụng 13 2.5.1. Các kỹ thuật phát hiện bất thường dựa trên phân lớp (Classification) 13 2.5.2. Phát hiện bất thường dựa trên lân cận gần nhất (Nearest Neighbor) 14 2.5.3. Các kỹ thuật phát hiện bất thường dựa trên gom cụm (Clustering) 15 2.5.4. Các kỹ thuật phát hiện bất thường theo thống kê (Statistical) 16 2.5.5. Các kỹ thuật phát hiện bất thường dựa vào lý thuyết thông tin (Information Theoretic) 16 2.5.6. Các kỹ thuật phát hiện bất thường theo phổ (Spectral) 17 2.6. Đánh giá hiệu quả của giải thuật học 17 2.6.1. Nghi thức kiểm tra .17 2.6.1.1. Phương pháp huấn luyện và kiểm tra (Training and Test sets): .18 2.6.1.2. k-fold cross-validation 18 2.6.1.3. N-fold cross-validation (leave-one-out) .19 2.6.2. Các độ đo cổ điển .19 2.6.3. Đường cong ROC (Receiver Operating Characteristic) [10] .20 2.6.4. Diện tích dưới đường ROC [10]- Area Under Curve (AUC) .22 CHƯƠNG 3: 24 KỸ THUẬT RỪNG CÔ LẬP CHO PHÁT HIỆN BẤT THƯỜNG .24 3.1. Cây cô lập (iTree) và rừng cô lập (iForest) 24 3.1.1. Định nghĩa cây cô lập .24 3.1.2. Định nghĩa rừng cô lập .24 3.1.3. Độ dài đường dẫn h(x) .25 3.1.4. Điểm số bất thường s(x,n) .25 3.2. Các đặc điểm của cây cô lập 26 3.2.1. Sự xuất hiện ‘ít và khác biệt’ trong tập dữ liệu 26 3.2.2. Loại bỏ ảnh hưởng của swamping và masking nhờ mẫu kích thước nhỏ27 3.3. Chọn mẫu (sub-sample) 29 3.4. Ưu điểm của rừng cô lập .29 3.5. Phát hiện dữ liệu bất thường sử dụng rừng cô lập (iForest) 29 3.5.1. Giai đoạn huấn luyện (Training) .29 3.5.1.1. Giải thuật xây dựng rừng cô lập .30 3.5.1.2. Giải thuật xây dựng cây cô lập (iTree) 31 3.5.2. Giai đoạn đánh giá (Evaluating) 32 3.5.2.1. Hàm tính điểm số bất thường (AnomalyScore) cho thể hiện x: .32 3.5.2.2. Hàm tính độ dài đường dẫn của mỗi thể hiện trên tập .33 3.6. Ví dụ minh họa cho việc xây dựng rừng cô lập 34 3.6.1. Giai đoạn huấn luyện (xây dựng rừng cô lập) .35 3.6.2. Giai đoạn đánh giá: tính điểm số bất thường (AnomalyScore) cho các thể hiện x trên tập kiểm tra .40 3.7. Mối tương quan về cấu trúc và hoạt động giữa cây cô lập (iTree) và cây nhị phân tìm kiếm (Binary Search Tree -BST). 41 CHƯƠNG 4 .43 CÀI ĐẶT MÔ HÌNH RỪNG CÔ LẬP 43 4.1. Xây dựng rừng cô lập 43 4.1.1. Cấu trúc cây cô lập .43 4.1.1.1. Nút tổng quát .43 4.1.1.2. Nút trong 43 4.1.1.3. Nút ngoài .43 4.1.2. Cấu trúc rừng cô lập .43 4.2. Triển khai một số giải thuật trên rừng cô lập .44 4.2.1. Lấy mẫu ngẫu nhiên .44 4.2.2. Chọn giá trị cắt ngẫu nhiên .45 4.2.3. Xây dựng cây cô lập 45 4.2.4. Xác định độ dài đường dẫn của một thể hiện 46 4.2.5. Tính điểm số bất thường .47 4.2.6. Sử dụng mô hình rừng cô lập để kiểm tra dữ liệu 47 4.2.6.1. Dữ liệu đầu vào 47 4.2.6.2. Xây dựng rừng cô lập từ dữ liệu đầu vào 48 4.2.6.3. Kiểm thử dữ liệu 49 4.3. Giới thiệu giao diện của mô hình rừng cô lập: .49 CHƯƠNG 5: NỘI DUNG VÀ KẾT QUẢ THỰC NGHIỆM .51 5.1. Chọn các tập dữ liệu thực nghiệm .51 5.2. Thực nghiệm mô hình rừng cô lập trên các tập dữ liệu 58 5.2.1. Thực nghiệm 1: sử dụng nghi thức k fold cross-validation 58 5.2.2. Thực nghiệm 2: tập Training và tập Test là một 78 5.2.3. Thực nghiệm 3: Loại bỏ các thể hiện bất thường ra khỏi tập Training .80 5.3. Đánh giá kết quả thực nghiệm .80 5.3.1. Khẳng định lại một số tính chất của mô hình dựa vào thực nghiệm: 80 5.3.2. Đánh giá hiệu quả phát hiện của mô hình 81 5.3.3. Nhận xét về thời gian chạy của chương trình 82 CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 84 6.1. Kết luận 84 6.2. Hướng phát triển .86 TÀI LIỆU THAM KHẢO PL-TLTK 1 PHỤ LỤC PL-TLTK 4 TÓM TẮT Hầu hết các tiếp cận dựa trên những mô hình đang tồn tại về phát hiện bất thường đi xây dựng các tiểu sử của các thể hiện bình thường, kế đến là nhận dạng ra những thể hiện nào không phù hợp với những tiểu sử bình thường thì cho là bất thường. Đề tài "Phát hiện dữ liệu bất thường với Rừng cô lập" đề cập đến một phương pháp tiếp cận khác biệt về cơ bản đó là cô lập trực tiếp các bất thường thay vì dựa trên mô tả của các thể hiện bình thường. Cách tiếp cận này được đề cập trong một bài báo của các tác giả Fei Tony Liu, Kai Ming Ting and Zhi-Hua Zhou được đăng vào cuối năm 2008 [27]. Đề tài đã nghiên cứu tổng quan về dữ liệu bất thường và các kỹ thuật phát hiện bất thường hiện tại, triển khai thành công kỹ thuật rừng cô lập theo ý tưởng giải thuật được các tác giả đề xuất [27], lựa chọn những tập dữ liệu có những tính chất đặc trưng để tiến hành thực nghiệm trên mô hình và đánh giá hiệu quả phát hiện của mô hình. Các thực nghiệm đã chứng tỏ được việc sử dụng ít bộ nhớ là ưu điểm nổi bật của mô hình bởi vì bộ nhớ đòi hỏi cho mô hình chỉ tăng tuyến tính theo số lượng cây và kích thước mẫu (không bị ảnh hưởng bởi kích thước toàn tập dữ liệu). Ngoài ra, từ thực nghiệm đã khẳng định rằng mô hình sẽ đáp ứng tốt về hiệu quả phát hiện bất thường cho các tập dữ liệu thoả mãn được hai tính chất “ít và khác” ngay cả khi không có thể hiện bất thường nào trong tập kiểm tra. Bên cạnh đó, mô hình đã bộc lộ một số điểm yếu đó là: đối với những tập dữ liệu không thoả mãn tốt hai giả định “ít và khác” thì mô hình cho kết quả không tốt, thậm chí là rất tệ, điều này hạn chế khả năng ứng dụng của mô hình trên các tập dữ liệu được thu thập tự nhiên. ABSTRACT To detect anomaly, most existing approaches construct profiles of normal instances and then classify an instance that does not belong the normal profiles as anomaly. However, this project presents the different approach in which an abnormal object is isolated explicitly. This approach, named as IForest, was proposed by Fei Tony Liu, Kai Ming Ting and Zhi-Hua Zhou iForest [27]. The project has implemented the proposed iForest successfully based on the concept which was presented on [27]. Some experiences have been carried out on some different characteristic datasets in order to evaluate it. The outcome results show that the proposed iForest performs quite well in general. Using less memory is its first advantage because memory requirement is bounded and only grows linearly with the number of trees and sample size. Especially, it shows excellent performances when it is used in the dataset, satisfied ‘minority and difference’ requirement even though there is no anomaly in training set. However, the proposed iForest has weaknesses itself. Its performance is very poor if the dataset does not satisfy the ‘minority and difference’ requirement. This limitation prevents iForest from being applied on real-life domain. KÍ HIỆU, THUẬT NGỮ VÀ VIẾT TẮT Số thứ tự Ký hiệu và viết tắt Diễn giải 1. iTree Isolation tree – cây cô lập 2. iForest Isolation Forest – rừng cô lập 3. BST Binary Search Tree – cây nhị phân tìm kiếm 4. Test Tập kiểm tra 5. Instance Thể hiện 6. Attribute Thuộc tính 7. Anomaly instance Thể hiện bất thường 8. Normal instance Thể hiện bình thường 9. Training Tập huấn luyện 10. sub-sample Mẫu con TỪ KHOÁ Dữ liệu bất thường, phát hiện bất thường, kỹ thuật phát hiện bất thường, cây cô lập, rừng cô lập, anomaly data, anomaly detection, anomaly detection techniques, iForest, iTree, sub-sampling. [...]... ng cho phát hi n b t thư ng 2.4.1 Phát hi n t n công Phát hi n t n công ám ch n s phát hi n ho t ng có d ng ý x u (ví d như t n công vào h th ng ngân hàng) b ng m t h th ng có liên quan n máy tính [29] Nh ng ho t ng này ang là m i quan tâm n vi n c nh tương lai cho an ninh máy tính M t s xâm nh p thì t h n s khác hơn so v i các hành vi bình thư ng trong h th ng, và chính vì l ó các k thu t phát hi... có, trong khi nh ng nhãn cho t n công thì không có Vì v y, các k 11 thu t phát hi n b t thư ng semisupervised và unsupervised thì thích h p hơn trong lĩnh v c này 2.4.2 Phát hi n gian l n Phát hi n gian l n liên quan n phát hi n nh ng ho t ng c a t i ph m x y ra trong nh ng t ch c thương m i như là trong các ngân hàng, các công ty th tín d ng, các công ty b o hi m, các công ty i n tho i di ng, th trư... c t p và nghiên c u v phát hi n b t thư ng v n là m t lĩnh v c r t h p d n nhưng cũng khá ph c t p 1.3 Ph m vi c a tài tài trình bày khá chi ti t v các v n liên quan n phát hi n b t thư ng trong d li u, s t n t i c a d li u cô l p trong t p d li u, khái ni m và các tính ch t c a cây cô l p, các gi i thu t có liên quan d ng cây cô l p và r ng cô l p tài th c hi n xây d ng r ng cô l p v i kích thư c... nh ng n i dung sau: - Lý thuy t t ng quan v phát hi n b t thư ng - S t n t i d li u cô l p trong t p d li u - Lý thuy t v r ng cô l p - Gi i thu t d ng r ng cô l p - D ng r ng cô l p t t p d li u rèn luy n - Tính i m s b t thư ng cho các th hi n trong t p Test - Th c nghi m mô hình r ng cô l p trên m t s t p d li u - ánh giá mô hình 3 CHƯƠNG 2: T NG QUAN V PHÁT HI N D LI U B T THƯ NG 2.1 T n t i d li... k thu t r ng cô l p trong phát b t thư ng 1.4 Phương pháp nghiên c u th c hi n tài, tôi ã nghiên c u các lý thuy t có liên quan v v n phát hi n b t thư ng trong d li u, các gi i thu t có liên quan v d ng cây như cây quy t 2 nh, cây tìm ki m nh phân, … V nghiên c u tài li u: Tìm hi u các khái ni m và ki n th c có liên quan n phát hi n b t thư ng, nghiên c u gi i thu t d ng cây cô l p ư c công b trên... u h t các k thu t phát hi n b t thư ng trong lĩnh v c này t m c tiêu phát hi n ra nh ng h sơ b t thư ng (b t thư ng d ng i m) i n hình, d li u ư c gán nhãn theo các b nh nhân m nh kh e, vì l ó h u h t các k thu t ch n cách ti p c n semisupervised 2.4.4 Phát hi n s hư h i c a thi t b công ngh Các thi t b công ngh ch u s hư h i do quá trình s d ng và hao mòn Nh ng hư h i trên c n ư c phát hi n s m ngăn... Các k thu t phát hi n b t thư ng ư c áp d ng m t cách r ng rãi trong lĩnh v c này phát hi n nh ng hư h i như ã c p [24] Phát hi n hư h i công ngh có th ư c phân thành hai lo i, m t lo i là x lý nh ng khuy t i m trong các b ph n máy móc như nh ng ng cơ môtô, và lo i khác là x lý nh ng khi m khuy t trong nh ng c u trúc v t lý 2.4.5 Phát hi n b t thư ng trong quá trình x lý nh Các k thu t phát hi n b... c th , ngư ng phát hi n b t thư ng s ư c ch n và d a vào ó có th ánh giá ư c hi u qu phát hi n b t thư ng c a gi i thu t iForest Ngoài ra, tài ã o hi u qu phát hi n b t ti n hành th c nghi m trên m t s t p d li u c th thư ng trên các t p này, t ó ưa ra m t s nh n xét trên lo i thu c tính, lo i ng d ng (t p d li u) nào nên và không nên ư c dùng trong mô hình r ng cô l p t ư c hi u qu phát hi n b t thư... i n ng Ch khác liên quan t i phát hi n b t thư ng ó là phát hi n s m i l (novelty detection) [11], mà m c ích là phát hi n ra nh ng m u không ư c quan sát trư c ó (m i n i lên ho c rõ nét hơn) trong t p d li u Phân bi t gi a nh ng m u m i l và b t thư ng là nh ng m u m i l ư c sáp nh p vào trong mô hình bình thư ng sau khi nó ư c phát hi n 2.2 M t s th thách trong v n phát hi n b t thư ng V m t lý... khi thay th nhau Phát hi n b t thư ng ư c s d ng và th hi n s h u ích trong m t ph m vi r ng c a nhi u ng d ng khác nhau như: phát hi n s gian l n trong th tín d ng, b o hi m, chăm sóc y t , phát hi n t n công trên an ninh m ng, phát hi n l i trong nh ng h th ng quy t nh an toàn Phát hi n b t thư ng th hi n vai trò quan tr ng là do trên th c t nh ng b t thư ng trong d li u thư ng chuy n thành nh ng thông