Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ (Luận văn thạc sĩ)
i ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG Khamchan PHOMTHAVONG NGHIÊN CỨU MỘT SỐ THUẬT TOÁN LỌC THƯ RÁC VÀ ỨNG DỤNG TRONG LỌC EMAIL NỘI BỘ Chuyên ngành: Khoa học máy tính Mã số: 48 0101 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: TS NGUYỄN HẢI MINH THÁI NGUYÊN – 2019 Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn ii LỜI CẢM ƠN Để hồn thành chương trình cao học viết luận văn, nhận hướng dẫn, giúp đỡ góp ý nhiệt tình quý thầy cô trường Đại học Công nghệ Thông tin Truyền thông - Đại học Thái Nguyên Trong trình học tập rèn luyện trường Đại học Công nghệ Thông tin Truyền thông – Đai học Thái Nguyên, đến em kết thúc khóa học năm hoàn thành luận văn tốt nghiệp Để có kết em xin chân thành cảm ơn: Ban Giám hiệu trường Đại học Công nghệ Thông tin Truyền thông thầy, cô giáo trường giảng dạy, quan tâm điều kiện thuận lợi để chúng em học tập rèn luyện suốt thời gian theo học trường TS Nguyễn Hải Minh người tận tình hướng dẫn, bảo, giúp đỡ em suốt trình làm luận văn Và cuối xin gửi lời cảm ơn tới đồng nghiệp, gia đình bạn bè người ủng hộ, động viên tạo điều kiện giúp đỡ để tơi có kết ngày hơm Thái Nguyên, tháng … năm 2019 Học viên Khamchan PHOMTHAVONG Số hóa Trung tâm Học liệu Cơng nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn iii MỤC LỤC LỜI CẢM ƠN i MỤC LỤC iii DANH MỤC HÌNH ẢNH v DANH MỤC BẢNG vi MỞ ĐẦU Chương THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC 1.1 Một số khái niệm 1.1.1 Định nghĩa thư rác 1.1.2 Phân loại thư rác 1.2 Các phương pháp lọc thư rác 1.2.1 Lọc thư rác thông qua việc đưa luật lệ nhằm hạn chế, ngăn chặn việc gửi thư rác 1.2.2 Lọc thư rác dựa địa IP 1.2.3 Lọc dựa chuỗi hỏi/ đáp 1.2.4 Phương pháp lọc dựa mạng xã hội 1.2.5 Phương pháp lọc nội dung Chương TỔNG QUAN CÁC THUẬT TOÁN NSA, PSA, PNSA TRONG LỌC THƯ RÁC 11 2.1 Cơ sở lý thuyết hệ miễn dịch nhân tạo 11 2.1.1 Khái niệm hệ miễn dịch nhân tạo 11 2.1.2 Phạm vi ứng dụng hệ miễn dịch nhân tạo 11 2.1.3 Cấu trúc hệ miễn dịch nhân tạo 11 2.2 Cơ sở lý thuyết thuật toán chọn lọc tiêu cực (Negative Selection Algorithms - NSA) 16 2.3 Cơ sở lý thuyết thuật tốn chọn lọc tích cực (Positive Selection Algorithms – PSA) 17 2.4 Cơ sở lý thuyết thuật toán cải tiến chọn lọc thư rác (Positive and Negative Selection Algorithms – PNSA) 18 2.4.1 Một số định nghĩa 18 Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn iv 2.4.2 Thuật tốn sinh tập dò r-chunk 21 2.4.3 Thuật toán sinh tập dò dạng r – contiguous 24 2.5 Các nghiên cứu gần 27 Chương CÀI ĐẶT CÁC THUẬT TOÁN 29 3.1 Tổng quan ứng dụng CNTT Bộ Tổng tham mưu Lào 29 3.2 Mơ hình tổng qt cung cấp dịch vụ email nội đơn vị 30 3.3 Mơ hình thực tế ứng dụng lọc email Spam hệ thống email nội Tổng tham mưu Lào 30 3.4 Ứng dụng hệ miễn dịch nhân tạo lọc thư rác 31 3.4.1 Phát biểu toán 31 3.4.2 Cơ sở liệu TREC'07 32 3.4.3 Phương pháp 32 3.4.4 Phân tích thuật tốn 33 3.4.5 Đánh giá 34 3.5 So sánh với thuật toán WEKA 36 3.5.1 Phát biểu toán 36 3.5.2 Cơ sở liệu SpamBase 36 3.5.3 Phần mềm WEKA 39 3.2.4 Thiết kế phần mềm 42 3.2.5 Phân tích thuật tốn kết hợp chọn lọc tích cực chọn lọc tiêu cực PNSA 42 3.2.6 Giao diện chương trình kết 44 3.2.7 Đánh giá 47 KẾT LUẬN 50 TÀI LIỆU THAM KHẢO 51 Số hóa Trung tâm Học liệu Cơng nghệ thơng tin – ĐHTN http://lrc.tnu.edu.vn v DANH MỤC HÌNH ẢNH Hinh 1.1: Tất thư điện tử Hinh 1.2 : Mơ tả tổng quan q trình hoạt động honeyd Hình 2.1: Cấu trúc phân tầng Hệ miễn dịch nhân tạo 12 Hình 2.2: Kháng thể nhận diện kháng nguyên dựa vào phần bù 13 Hình 2.3 Sơ đồ khối thuật tốn chọn lọc tiêu cực 17 Hình 2.4 Sơ đồ khối thuật tốn chọn lọc tích cực 18 Hình 3.1 Mơ hình tổng qt q trình gửi nhận thư điện tử 30 Hinh 3.2 : Mơ hình mạng nội Tổng tham mưu Lào 30 Hinh 3.3.Giao diện phần mềm Weka 40 Hình 3.4 Giao diện Weka Explorer 40 Hình 3.5 Giao diện Weka Explorer sau chọn CSDL Spambase 41 Hình 3.6 Phân loại liệu 41 Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn vi DANH MỤC BẢNG Bảng 3.1 Kết chạy chương trình với test 34 Bảng 3.2 So sánh kết 36 Bảng 3.3 Kết thử nghiệm WEKA PNSA 45 Bảng 3.4 So sánh PNSA với số phương pháp cho kết tốt 46 Bảng 3.5 So sánh PNSA với số phương pháp cho kết thấp 47 Bảng 3.6 Kết so khớp với giá trị tham số r thay đổi 47 Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn MỞ ĐẦU Mạng Internet đời mang lại cho người tiên ích to lớn quan trọng, tiện ích dịch vụ thư điện tử Vì, phương tiện giao tiếp đơn giản, tiện lợi, rẻ hiệu giúp người gắn kết liên lạc với thường xuyên Tuy nhiên, lợi dụng tính mở cơng nghệ chế trao đổi thư mà hàng ngày người dùng nhận số thư ngồi mong đợi thư rác (Spam) Thư rác thường gửi với số lượng lớn thường mục đích quảng cáo, trí đính kèm mã độc dạng Virus gây phiền toài cho người dùng, làm giảm tốc độ xử lý máy chủ mail server Thư rác (spam) thư điện tử gửi hàng loạt với nội dung mà người nhận không mong đợi, không muốn xem, hay chứa nội dung không liên quan đến người nhận thường sử dụng để gửi thông tin quảng cáo Do có giá thành tương đối thấp so với phương pháp quảng cáo khác, thư rác chiếm tỷ lệ lớn ngày tăng tổng số thư điện tử gửi qua Internet Sự xuất gia tăng thư rác gây khó chịu làm thời gian người nhận mà ảnh hưởng tới đường truyền Internet làm chậm tốc độ xử lý máy chủ thư điện tử, gây thiệt hại lớn kinh tế Xuất phát từ lý đó, đề tài đặt vấn đề nghiên cứu số thuật toán LỌC THƯ RÁC, thuật tốn cơng bố gần để đề xuất mơ hình thực nghiệm dịch vụ email thực tế Qua hướng tới xây dựng ứng dụng cách tích hợp thêm số Module hỗ trợ sử dụng dịch vụ sử dụng email Nội dung luận văn gồm có chương: Dự kiến nội dung báo cáo luận văn gồm: Phần mở đầu, chương chính, phần kết luận, tài liệu tham khảo, phụ lục Bố cục trình bày sau: Phần mở đầu: Nêu lý chọn đề tài hướng nghiên cứu Chương 1: THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC Chương 2: TỔNG QUAN CÁC THUẬT TOÁN NSA, PSA, PNSA TRONG LỌC THƯ RÁC Chương 3: CÀI ĐẶT CÁC THUẬT TỐN Phần kết luận: Tóm tắt kết đạt hướng phát triển đề tài Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn Chương THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC 1.1 Một số khái niệm 1.1.1 Định nghĩa thư rác Có nhiều tranh cãi việc đâu định nghĩa xác thư rác (spam email), thư rác mang tính cá nhân hóa nên khó mà nói lên nghĩa thư rác Nhiều ý kiến cho thư rác “thư điện tử (email) không mong muốn” Định nghĩa khơng thực xác, nhân viên nhận thư điện tử công việc từ sếp họ, thư điện tử người nhân viên không mong muốn chúng thư rác Lại có ý kiến khác cho thư rác “thư điện tử thương mại không yêu cầu từ phía người nhận” thư bao gồm thư điện tử quảng cáo sản phẩm thư điện tử lừa gạt Nhưng định nghĩa khơng thực xác, làm người nghĩ thư rác giống thư đáng bỏ (junk mail) Sau đưa định nghĩa thông dụng thư rác giải thích đặc điểm để phân biệt thư rác với thư thông thường [1,2]: Thư rác (spam mail) thư điện tử không yêu cầu, không mong muốn gửi hàng loạt tới người nhận Một thư gửi không theo yêu cầu thư làm quen thư gửi lần đầu tiên, thư gửi hàng loạt thư gửi cho khách hàng công ty, nhà cung cấp dịch vụ Vì thư bị coi rác khơng u cầu, gửi hàng loạt Hình vẽ sau thể rõ định nghĩa thư rác: Hinh 1.1: Tất thư điện tử Số hóa Trung tâm Học liệu Cơng nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 1.1.2 Phân loại thư rác Có nhiều cách phân loại thư rác[1] - Dựa kiểu phát tán thư rác: Tính tới thời điểm tại, thư rác bị gửi thơng qua thư điện tử, nhóm thảo luận (newsgroups), điện thoại di động (Short Message Service - SMS) dịch vụ gửi tin nhắn mạng (như Yahoo Messenger, Windows Messenger ) - Dựa vào quan hệ với người gửi thư rác: bao gồm người lạ mặt, bạn bè, người quen dịch vụ quyên góp giúp đỡ… - Dựa vào nội dung thư rác: kiểu nội dung phổ biến thư thương mại, thư trị, thư cơng nghệ, chuỗi thư (chain e-mail) loại khác (như thư phát tán virus ) - Dựa động lực người gửi: Thông thường, thư rác gửi cho mục đích quảng bá thơng tin Ngồi ra, có số loại thư rác gửi tới người nhận xác định nhằm mục đích phá vỡ gây cản trở công việc người nhận hay mạng nhà cung cấp dịch vụ thư điện tử (ESP) gọi “bom thư” Thư rác cố ý gửi nhằm thông báo tin sai lệch, làm xáo trộn công việc sống người nhận Sự phân loại thư rác quan trọng không lĩnh vực tạo lọc thư rác có hiệu cao mà giúp cho việc ban hành luật chống thư rác phù hợp 1.2 Các phương pháp lọc thư rác 1.2.1 Lọc thư rác thông qua việc đưa luật lệ nhằm hạn chế, ngăn chặn việc gửi thư rác Khi tình trạng thư rác ngày tăng đường truyền internet gây nhiều phiền toái thiệt hại lớn giới nhiều quốc gia đưa luật để ngăn chặn thư rác Dưới số nội dung liên quan tới giải pháp ngăn chặn thông qua luật lệ pháp lý đưa báo điện tử viễn thông Mỹ nước giới cố gắng ban hành văn pháp luật để giải vấn đề thư điện tử rác tràn ngập Từ tháng năm 1997, bang Nevada dẫn đầu việc ban hành quy phạm pháp luật quy Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn định hành vi phục vụ sử dụng thư tín điện tử Tính đến tháng năm 2003, có 26 bang ban hành quy phạm pháp luật quy định dịch vụ hành vi sử dụng thư tín điện tử Đến tháng 11 năm 2003, số lên đến 36 Về phía quyền liên bang, từ năm 1990, Thượng nghị viện Hạ nghị viện quan tâm đến lan rộng thư tín điện tử quấy rối thư rác, đưa nhiều dự án luật “Luật bảo vệ hộp thư không bị quấy rối” (1999), “Luật Bảo vệ người sử dụng thư điện tử”, “Luật Khống chế thư điện tử không phép” (2000), “Luật Khống chế thư rác truyền qua đường điện thoại vô tuyến” (2000) , “Luật Chống thư rác” (2001) Mười năm gần đây, Liên minh Châu Âu ban hành số lệnh, đưa quy phạm dẫn vấn đề thương mại điện tử, thông tin điện tử, bảo hộ liệu Trong lệnh nói trên, có khơng qui định có liên quan mật thiết, chí trực tiếp với phục vụ sử dụng thư điện tử “Chỉ lệnh Bảo vệ liệu cá nhân Châu Âu”, “Chỉ lệnh thông tin điện tử bảo mật liệu” Ngày 12 tháng năm 2002, Nghị Viện Liên minh Châu Âu thông qua “Chỉ lệnh Bảo mật riêng tư Thông tin điện tử Liên minh Châu Âu” Chỉ lệnh quy định: Từ 31 tháng 10 năm 2003, phạm vi Liên minh Châu Âu, chưa người nhận đồng ý trước, không gửi thư điện tử thương mại hay nhằm mục đích tuyên truyền cho cá nhân Tiếp theo sau Liên minh Châu Âu đưa qui định phục vụ sử dụng thư điện tử, nước thành viên Liên minh Châu Âu, Italia, Anh, Đan Mạch, Tây Ban Nha ban hành quy phạm pháp luật nước quy định hành vi cung cấp sử dụng thư điện tử, ngăn chặn tràn ngập thư rác Tại Lào vấn đề thư rác bắt đầu nhận quan tâm từ phía quan có trách nhiệm Bộ Thương mại soạn thảo Thông tư quản lý hoạt động quảng cáo thương mại phương tiện điện tử Trên trang báo điện tử viễn thơng, Bà Lại Việt Anh, Trưởng Phòng sách, Vụ Thương mại điện tử, Bộ Thương mại, nhận xét: mục tiêu Thông tư trước mắt tập trung Số hóa Trung tâm Học liệu Cơng nghệ thơng tin – ĐHTN http://lrc.tnu.edu.vn 38 16 word_freq_free 17 word_freq_business 18 word_freq_email 19 word_freq_you 20 word_freq_credit 21 word_freq_your 22 word_freq_font 23 word_freq_000 24 word_freq_money 25 word_freq_hp 26 word_freq_hpl 27 word_freq_george 28 word_freq_650 29 word_freq_lab 30 word_freq_labs 31 word_freq_telnet 32 word_freq_857 33 word_freq_data 34 word_freq_415 35 word_freq_85 36 word_freq_technology 37 word_freq_1999 38 word_freq_parts 39 word_freq_pm 40 word_freq_direct 41 word_freq_cs 42 word_freq_meeting 43 word_freq_original 44 word_freq_project 45 word_freq_re 46 word_freq_edu Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 39 47 word_freq_table 48 word_freq_conference 49 char_freq_semicolon 50 char_freq_left_paren 51 char_freq_left_bracket 52 char_freq_exclamation (!) 53 char_freq_dollar 54 char_freq_pound 55 capital_run_length_average 56 capital_run_length_longest 57 capital_run_length_total 58 class_(is SPAM or no SPAM) Để đánh giá kết chương trình, tác giả sử dụng phần mềm WEKA, đối chiếu kết thuật toán so với số thuật toán có WEKA 3.5.3 Phần mềm WEKA WEKA (Waikato Environment for Knowledge Analysis) phần mềm khai thác liệu thuộc dự án trường đại học Waikato, New Zealand lần năm 1993 Mục tiêu để xây dựng công cụ đại nhằm phát triển kĩ thuật máy học áp dụng chúng vào toán khai thác liệu thực tế, sử dụng giảng thuật giải Machine Learning nhiều trường đại học lớn giới WEKA viết ngôn ngữ Java JDK, cấu trúc gồm 600 lớp tổ chức thành 10 packages Với chức chính: - Khảo sát liệu: Tiền xử lí liệu, phân lớp, gom nhóm liệu, khai thác luật kết hợp - Thực nghiệm mơ hình: cung cấp phương tiện để kiểm chứng đánh giá mơ hình học - Biểu diễn trực quan liệu nhiều dạng đồ thị… Trong luận văn, chủ yếu sử dụng phần mềm để khảo sát liệu nhằm so sánh với chương trình xây dựng Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 40 Giao diện phần mềm WEKA: Hinh 3.3.Giao diện phần mềm Weka Từ giao diện WEKA thực bước: - Bước Chọn nút tác vụ Explorer, giao diện Weka Explorer xuất Hình 3.4 Giao diện Weka Explorer - Bước Tại thẻ Preprocess chọn nút Open file… để nạp tệp sở liệu Thông thường sở liệu lưu dạng *.arff *.csv Số hóa Trung tâm Học liệu Cơng nghệ thơng tin – ĐHTN http://lrc.tnu.edu.vn 41 Hình 3.5 Giao diện Weka Explorer sau chọn CSDL Spambase WEKA thống kê đưa thuộc tính có sở liệu hiển thị giao diện, hộp Attributes nhấn nút All để chọn tất thuộc tính Hình 3.6 Phân loại liệu - Bước Chọn hàm, luật,… phân loại mục Classify nhấn nút Choose Thiết lập số tùy chọn mục Test options, ta chọn sử dụng phương pháp Cross-validation Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 42 - Bước Nhấn nút Start để thực hiện, theo dõi kết vùng Classifier output 3.2.4 Thiết kế phần mềm Việc thử nghiệm chương trình thực theo quy tắc: Tenfold cross validation, thực sau: - Bước 1: Chia email thường file nguồn (HAM.txt) ngẫu nhiên thành 10 phần email SPAM file nguồn (SPAM.txt) thành 10 phần tương ứng 10 file email HAM 10 file email SPAM - Bước 2: Đọc số liệu file email thường để huấn luyện - Bước 3: Tiến hành kiểm tra (testing), thực với file email thường lại tất email SPAM Số lượng email HAM email SPAM mà chương trình phát tính tốn quy đổi số liệu: DR = TP/(TP + FN) FPR = FP/(TN + FP) Acc = (TP + TN) /(TP + TN + FP + FN) Chương trình thực lặp bước hai ba mười lần, lần tính tốn cho số liệu Sau lấy giá trị trung bình mười lần tính tốn 3.2.5 Phân tích thuật tốn kết hợp chọn lọc tích cực chọn lọc tiêu cực PNSA 3.2.5.1 Quá trình chia file nguồn (Split file) Input: file chứa số liệu thống kê 58 thuộc tính email HAM - HAM.txt Output: 10 file email HAM: HSub 1.txt, HSub 2.txt, …, HSub 10.txt Thuật toán Trong sở liệu Spambase Data Set sử dụng có số liệu thống kê thuộc tính 4601 email ghi dòng Trong đó, có 1813 email SPAM 2788 email HAM, ta tạo file HAM.txt chứa 2788 email HAM SPAM.txt chứa 1813 email SPAM Sử dụng nút Open File HAM giao diện để tìm đường dẫn tới file HAM.txt Quá trình chia sau: - Kiểm tra thư mục bin\Debug có file HSub i.txt SSub i.txt (i=1,…,10) chưa, chưa có tạo file Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 43 - Lần lượt đọc dòng file HAM.txt, sinh ngẫu nhiên số nn[1,10] ghi dòng liệu vào file: HSub nn.txt - Đóng file vừa tạo 3.2.5.2 Quá trình huấn luyện – Tạo tập dò (Training) Input: Chọn 10 file: HSub i.txt (i=1,…,10) Output: Tập dò lưu bảng băm kích thước: 2r.(ℓ-r+1) Thuật tốn Q trình huấn luyện sau: - Đọc dòng file đầu vào, từ tạo mảng chuỗi lưu trữ giá trị 57 thuộc tính (trừ thuộc tính cuối) - Thống kê lại chuỗi thuộc tính cho khơng giá trị trùng - Chuyển đổi theo quy tắc dãy thuộc tính sang dạng dãy nhị - Mỗi thuộc tính email ứng với dãy nhị phân, kết hợp dãy nhị phân 57 thuộc tính lại ta dãy nhị phân email giá trị dòng liệu file chuyển sang dạng nhị phân có độ dài - Duyệt ℓ - r + dãy độ dài r dãy nhị phân, áp dụng cách tính tốn phương pháp tạo tập dò bảng băm để xây dựng bảng A 3.2.5.3 Quá trình kiểm tra – phân biệt HAM/SPAM (testing) Input: Bảng băm tạo; File email HAM lại file emailSPAM.txt Output: Các số liệu: Acc, DR, FPR Thuật toán Thiết lập thơng số sau có giá trị 0: TN, FP, TP, FN, Acc, DR, FPR *) Kiểm tra khả phát email HAM - Đọc dòng liệu file email HAM lại, ta dựng dãy nhị phân dựa vào mảng chứa dãy nhị phân tạo trình huấn luyện cho dòng liệu Từ ta có dãy nhị phân email - Chuyển ℓ - r + dãy nhị phân độ dài r email từ hệ nhị phân sang hệ số 10 lưu số nguyên k Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 44 + Nếu xuất trường hợp A[k, j]= (các đoạn bit từ j đến bit thứ j + r - với j=1,…, ℓ - r + 1) tăng giá trị FP thêm (kết luận email kiểm tra SPAM) + Nếu tồn A[k, j]= tăng giá trị TN thêm (kết luận email kiểm tra HAM) *) Kiểm tra khả phát email SPAM - Đọc dòng liệu file thư SPAM: SPAM.txt, ta dựng dãy nhị phân dựa vào mảng chứa dãy nhị phân tạo q trình huấn luyện cho dòng liệu Từ ta có dãy nhị phân email - Chuyển ℓ - r + dãy nhị phân độ dài r email từ hệ nhị phân sang hệ số 10 lưu số nguyên k + Nếu xuất trường hợp A[k, j]= (các đoạn bit từ j đến bit thứ j + r - với j=1,…, ℓ - r + 1) tăng giá trị TP thêm (kết luận email kiểm tra SPAM) + Nếu tồn A[k, j]= tăng giá trị FN thêm (kết luận email kiểm tra HAM) *) Sau q trình kiểm tra trên, tính tốn thông số: DR, FPR, Acc 3.2.6 Giao diện chương trình kết Hình 3.7 Giao diện chương trình Chức đối tượng giao diện: Số hóa Trung tâm Học liệu Cơng nghệ thơng tin – ĐHTN http://lrc.tnu.edu.vn 45 - Hộp Select a value r: Đặt giá trị cho r - Nút Test: + Tạo tập dò từ file email HAM + Cho file email HAM lại (khơng sử dụng để tạo dò) file email SPAM qua tập dò thực so khớp + Tính tốn kết luận khả phát tập dò, hiển thị kết vùng Results - Nút Exit: Thốt khỏi chương trình Sau kết thử nghiệm hàm, luật,… WEKA chương trình sử dụng PNSA sở liệu Spambase Với 100% email HAM email SPAM đưa vào trình phân loại Với giá trị r = 8, chương trình sử dụng PNSA cho kết sau: Trong 2788 email HAM, chương trình sử dụng NSA cho kết quả: - Số lượng email HAM phân loại TN = 2668 - Số lượng email phân loại sai thành email SPAM FP = 120 Trong 1813 email SPAM, chương trình sử dụng PNSA cho kết quả: - Số lượng email SPAM phân loại TP = 1499 - Số lượng email phân loại sai thành email HAM FN = 314 Và kết quả: - DR: 82.67% - FPR: 4.31% - Acc: 90.56% Các phương pháp phân loại WEKA sử dụng toàn 2788 email HAM 1813 email SPAM vào trình kiểm tra (phát hiện, phân loại) nên chương trình PNSA sử dụng toàn email HAM email SPAM thay sử dụng file email HAM chưa dùng vào trình huấn luyện + email SPAM (Đơn vị tính thơng số DR, FPR, Acc: %) Bảng 3.3 Kết thử nghiệm WEKA PNSA Số hóa Trung tâm Học liệu Cơng nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 46 Phương pháp TP TN FN FP DR FPR Acc BayessianLogisticRegression 1758 1986 55 802 96.97 28.77 81.37 NaiveBayesUpdateable 1725 1923 88 865 95.15 31.03 79.29 bayes.DMNBtext 1617 2662 196 126 89.19 4.52 93.00 functions.logistic 1607 2645 206 143 88.64 5.13 92.41 functions.RBFNetwork 1568 2143 245 645 86.49 23.13 80.66 funtions.Spegasos 1544 2661 269 127 85.16 4.56 91.39 lazy.TB1 1592 2585 221 203 87.81 7.28 90.78 11 0.39 63.90 misc.HyperPipes 163 2777 1650 8.99 rules.ComnunctiveRule 1276 2437 537 351 70.38 12.59 80.70 trees.RandomTree 1621 2563 192 225 89.41 8.07 90.94 PNSA 1499 2668 314 120 82.67 4.31 90.56 Dựa vào bảng ta thấy: - Phương pháp PNSA cho kết xác 90% nằm phương pháp cho kết xác Bảng 3.4 So sánh PNSA với số phương pháp cho kết tốt Phương pháp TP TN FN FP DR FPR Acc bayes.DMNBtext 1617 2662 196 126 89.19 4.52 93.00 functions.logistic 1607 2645 206 143 88.64 5.13 92.41 functions.Spegasos 1544 2661 269 127 85.16 4.56 91.39 lazy.TB1 1592 2585 221 203 87.81 7.28 90.78 trees.RandomTree 1621 2563 192 225 89.41 8.07 90.94 PNSA 1499 2668 314 120 82.67 4.31 90.56 Ta nhận thấy rằng, phương pháp PNSA cho kết xấp xỉ với phương pháp WEKA độ xác tổng thể PNSA có khả phát email SPAM thể thông số TP FN.Tuy nhiên, PNSA phân loại email HAM tốt hơn, thể thông số TN, FP - PNSA cho kết cao độ xác tổng thể so với phương pháp bảng dưới: Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 47 Bảng 3.5 So sánh PNSA với số phương pháp cho kết thấp Phương pháp TP TN FN FP DR FPR Acc BayessianLogisticRegression 1758 1986 55 802 96.97 28.77 81.37 NaiveBayesUpdateable 1725 1923 88 865 95.15 31.03 79.29 functions.RBFNetwork 1568 2143 245 645 86.49 23.13 80.66 misc.HyperPipes 163 2777 1650 11 8.99 0.39 63.90 rules.ComnunctiveRule 1276 2437 537 351 70.38 12.59 80.70 PNSA Các 1499 phương 2668 pháp 314 120 82.67 4.31 90.56 BayessianLogisticRegression, NaiveBayesUpdateable cho khả phát email SPAM tốt, kéo theo nhiều email HAM bị phân loại thành email SPAM thể hiện: 2788 email HAM BayessianLogisticRegression có 802 email bị coi email SPAM, NaiveBayesUpdateable có 865 email bị coi email SPAM Thơng thường, email HAM có chứa thông tin quan trọng hơn, việc email HAM phân loại thành email SPAM gây lo ngại so với việc email SPAM bị phân loại nhầm thành email HAM Xét mặt này, Pb NSA cho khả phân loại tốt phương pháp 3.2.7 Đánh giá Khả phát chương trình phụ thuộc vào độ chặt chẽ bảng băm A, bảng A có mức độ chặt chẽ cao hay thấp tùy thuộc vào việc ta đặt giá trị r Giá trị r cao mức độ kiểm tra (so khớp) chặt chẽ ngược lại Trong chương trình, thử nghiệm giá trị r đoạn [7,10], đoạn giá trị dò cho kết tốt Bảng 3.6 Kết so khớp với giá trị tham số r thay đổi r DR (%) FPR (%) Acc (%) 75.50 29.62 74.82 82.34 42.52 79.15 Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN Thời gian (s) 24.7 25.59 http://lrc.tnu.edu.vn 48 10 87.77 54.41 91.81 60.51 82.15 24.95 84.84 26.57 Việc lựa chọn 9/10 file email HAM để huấn luyện file email HAM lại đưa vào q trình test với file email SPAM lựa chọn ngẫu nhiên, nên kết lần chạy có khác nhau, nhiên số liệu DR, FPR, Acc thời gian chạy không chênh lệch lớn Test áp dụng thuật toán để lọc nội dung cụ thể Với kết ta có nhận xét: - Về khả phát hiện: Với r lớn kích thước dò (bảng A) lớn, đồng nghĩa với việc mức độ kiểm tra, so khớp chặt chẽ Do vậy, r lớn xác suất email HAM bị phân loại thành email SPAM lớn Và ngược lại, r nhỏ mức độ kiểm tra chặt chẽ hơn, dẫn đến nhiều email SPAM phân loại email HAM Những email HAM mang tính quan trọng nhiều, phân loại email HAM email SPAM, cần lựa chọn giá trị r hợp lí để email HAM bị phân loại thành email SPAM Làm để tìm giá trị r hợp lý hướng phát triển tốt Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 49 - Về thời gian chạy chương trình: Thời gian chạy chương trình tùy thuộc vào kích thước bảng băm chủ yếu, với giá trị r lớn bảng băm có kích thước lớn nên việc tạo bảng lâu Số hóa Trung tâm Học liệu Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn 50 KẾT LUẬN Đề tài đạt kết sau đây: - Tìm hiểu tổng quan thư rác, phương pháp phân loại thư rác sử dụng như: lọc thư giác thông quan việc đưa luật lệ nhằm hạn chế, ngăn chặn việc gửi thư giác, lọc dựa địa IP, lọc dựa chuỗi hỏi/đáp, lọc dựa mạng xã hội, lọc dựa lọc nội dung Đồng thời đánh giá ưu nhược điểm phương pháp - Tìm hiểu thuật toán chọn lọc tiêu cực, thuật toán chọn lọc tích cực, khái niệm như: Self, Nonself, dò…một số thuật tốn hệ miễn dịch nhân tạo - Nghiên cứu thuật toán chọn lọc tiêu cực dạng r-chunk r-contiguous đưa phương pháp ứng dụng thuật tốn cho q trình phân loại thư rác - Xây dựng chương trình mơ sử dụng thuật toán kết hợp chọn lọc tiêu cực chọn lọc tích cực PNSA hệ miễn dịch nhân tạo áp dụng vào trình huấn luyện phân loại thư rác, đồng thời đánh giá chương trình thơng số như: TP, TN, FP, FN độ đo như: DR, FPR Acc liệu mẫu sưu tầm đơn vị Thử nghiệm phương pháp sinh tập dò dạng rchunk với liệu chuẩn TREC'07, SpamBase so sánh kết Hướng phát triển - Cần nghiên cứu khâu tiền xử lý văn bản, xây dựng mẫu huấn luyện tiêu chuẩn lựa chọn tham số hợp lý cho ℓ r để nâng cao độ xác phân loại giải thuật - Nâng khả lọc thư rác với loại email chứa nội dung hình ảnh, ký tự lạ,…và có đính kèm tệp tin - Kết hợp với thuật tốn học máy khác để cải thiện hiệu suất độ xác - Xây dựng hệ thống Webmail cho quan tổ chức tích hợp lọc vào hệ thống - Xây dựng lọc theo mức độ phù hợp cho số nhóm đối tượng cụ thể như: chung sở thích, nơi làm việc, lĩnh vực nghiên cứu… Số hóa Trung tâm Học liệu Cơng nghệ thơng tin – ĐHTN http://lrc.tnu.edu.vn 51 TÀI LIỆU THAM KHẢO Tài liệu tiếng Việt [1] Từ Minh Phương, Phạm Văn Cường, Nguyễn Duy Phương, Hoàng Trọng Huy (2006) Báo cáo đề tài “Nghiên cứu xây dựng hệ thống lọc thư rác có khả lọc thư rác tiếng Anh tiếng Việt” Học viện Bưu Viễn thơng, 2006 [2] Nghị định phủ số 90/2008/NĐ-CP ngày 13 tháng 08 năm 2008 chống thư rác, Việt nam, 2018 [3] http://tuyengiao.vn/print/91935/lao-de-nghi-viet-nam-tang- cuong-hop-tac-ve-an-ninh-mang, truy cập 05 tháng 05 năm 2019 Tài liệu tiếng Anh [4] Dipak R Kawade, and Kavita S Oza, SMS Spam Classification using WEKA, International journal of Electronics Communication and Computer Technology, (2015), 43-47 [5] Fernando Esponda, Stephanie Forrest, and Paul Helman, A Formal Framework for Positive and Negative Detection Schemes, IEEE transactions on systems, man, and cybernetics, 34 (2004), 357 - 372 [6] Forrest, S., Hofmeyr, S and Somayaji, A., Computer Immunology, Communications of the ACM, 40 (1997), 88 - 96 [7] Fuyong Zhang, Deyu Qi, A Positive Selection Algorithm for classification, Journal of Computational Information Systems, (2012), 207 - 215 [8] Sin-Eon Kim, Jung-Tae Jo, and Sang-Hyun Choi, 2015, SMS Spam Filterinig Using Keyword Frequency Ratio, International Journal of Security and Its Applications, 9(1), 329-336 [9] Van Truong Nguyen, Xuan Hoai Nguyen and Chi Mai Luong, A Novel Combination of Negative and Positive Selection in Artificial Immune Systems, Vietnam National University, Hanoi Journal of Science: Comp Science & Com Eng 31(1), 22-31, 2015 Số hóa Trung tâm Học liệu Cơng nghệ thơng tin – ĐHTN http://lrc.tnu.edu.vn 52 [10] Cornelis.Robat.Spam,URL:http://www.thocp.net/reference/internet/spam.ht m, 28/12/2006 Số hóa Trung tâm Học liệu Cơng nghệ thơng tin – ĐHTN http://lrc.tnu.edu.vn ... thư ng áp dụng cho lọc thư server Lọc thư rác dựa xác suất thống kê học máy Đầu tiên phân loại thư thành thư rác thư hợp lệ Một thuật toán áp dụng để trích chọn đánh trọng số cho đặc trưng thư rác. .. THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC 1.1 Một số khái niệm 1.1.1 Định nghĩa thư rác 1.1.2 Phân loại thư rác 1.2 Các phương pháp lọc thư rác 1.2.1 Lọc. .. luận thư thư rác hay thư hợp lệ Người ta đánh trọng số cho đặc trưng tay thuật toán lập ngưỡng để phân loại thư Nếu thư có trọng số lớn ngưỡng quy định bị coi thư rác Các chương trình lọc thư rác