Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 56 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
56
Dung lượng
767,96 KB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC SƯ PHẠM LƯƠNG VĂN LÂM ỨNG DỤNG HỆ MIỄN DỊCH NHÂN TẠO CHO LỌC THƯ RÁC KHOÁ LUẬN TỐT NGHIỆP NGÀNH: TIN HỌC Người hướng dẫn khoa học: Ths Nguyễn Văn Trường Thái Nguyên, năm 2015 LỜI CẢM ƠN Để hoàn thành luận văn tốt nghiệp này, em xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo Ths Nguyễn Văn Trường – Giảng viên Tin học, khoa Toán, Trường Đại học Sư Phạm – Đại học Thái Nguyên, định hướng ý tưởng, tận tình giúp đỡ, bảo em suốt trình thực luận văn Em xin chân thành cảm ơn Ban giám hiệu nhà trường, Ban chủ nhiệm khoa Toán toàn thể thầy, cô giáo khoa tận tình hướng dẫn, giúp đỡ em thực luận văn Bên cạnh đó, em xin gửi lời cảm ơn đến gia đình, bạn bè người thân động viên giúp đỡ em suốt trình làm luận văn Trong trình tiến hành làm luận văn chưa có nhiều kinh nghiệm nên không tránh khỏi thiếu sót hạn chế Vì em mong nhận góp ý thầy cô bạn sinh viên để luận văn hoàn thiện Em xin chân thành cảm ơn! Thái Nguyên, tháng 04 năm 2015 Sinh viên Lương Văn Lâm DANH MỤC TỪ VIẾT TẮT, KÝ HIỆU Viết tắt, ký hiệu HMD NSA Viết đầy đủ, ý nghĩa Hệ miễn dịch Negative Selection Algorithm - Thuật toán chọn lọc tiêu cực SMTP WEKA HTML IBM TP (âm tính) Simple Mail Transfer Protocol Waikato Environment for Knowledge Analysis HyperText Markup Language International Business Machines Số lượng email spam kết luận TN Số lượng email thường kết luận FP FN Acc DR FPR Số lượng email thường kết luận sai thành spam Số lượng email spam kết luận sai thành thường Độ xác tổng thể Tỉ lệ phát Tỉ lệ dương tính giả DANH MỤC HÌNH VẼ DANH MỤC CÁC BẢNG MỤC LỤC Trang bìa phụ……………………………………………………………………………… Lời cảm ơn……………………………………………………………………… MỞ ĐẦU Thư điện tử (email) phương tiện, công cụ gửi nhận thông tin sử dụng rộng rãi giới Sự phát triển thư điện tử gắn liền với phát triển ngành khoa học công nghệ thông tin Thư rác (spam) thư điện tử gửi cách tự động tới tài khoản (hộp thư) người dùng với nội dung không mong đợi, không muốn nhận, không phù hợp nội dung thư không liên quan tới người nhận Sự xuất thư rác gây phiền phức, thời gian cho người sử dụng bên cạnh làm cho đường truyền Internet trở nên chậm số lượng thư rác gửi thời điểm nhiều, thư rác công cụ phát tán virus máy tính gây nhiều hậu khó lường nhiều mặt Để phòng ngừa ngăn chặn thư rác, nhiều phương pháp sử dụng tạo nhiều phần mềm lọc thư rác, phương pháp nghiên cứu phát triển ứng dụng HMD nhân tạo (Artificial immune system - AIS) – phương pháp dựa nguyên lý, chức năng, mô hình hoạt động HMD sinh học người, với kĩ thuật “học máy” mang lại hiệu tương đối cao Với kĩ thuật thư điện tử thông thường thư rác “học” hay “huấn luyện” tạo thành sở liệu để phát thư rác Vấn đề đặt cần cải thiện hiệu trình học máy, trình nhận dạng loại bỏ thư rác Vì vậy, định lựa chọn nội dung nghiên cứu khóa luận là: “Ứng dụng hệ miễn dịch nhân tạo cho lọc thư rác” I Mục tiêu nghiên cứu Bước đầu tìm hiểu hệ miễn dịch nhân tạo áp dụng cho toán lọc thư rác II Nhiệm vụ nghiên cứu - Nghiên cứu lịch sử phát triển thư điện tử, lợi ích mặt hạn chế mà thư điện tử mang lại - Nghiên cứu thư rác: trình phát triển, cấu trúc, tác hại chúng… Tìm hiểu nội dung phương pháp ngăn chặn thư rác, ưu – nhược điểm phương pháp - Tìm hiểu nội dung hệ miễn dịch nhân tạo, số thuật toán hệ miễn dịch nhân tạo - Xây dựng chương trình áp dụng thuật toán hệ miễn dịch nhân tạo cho lọc thư rác III Phương pháp nghiên cứu - Nghiên cứu tài liệu: sách, luận văn, số đề tài nghiên cứu lĩnh vực, báo, diễn đàn chuyên thư điện tử hệ miễn dịch nhân tạo - Tham khảo ý kiến thầy giáo hướng dẫn, bạn sinh viên chuyên ngành - Thử nghiệm cài đặt chương trình so sánh hiệu chương trình với số phương pháp khác (trên WEKA) khả phát tỉ lệ lỗi IV Cấu trúc đề tài Ngoài phần mở đầu kết luận, đề tài có 03 chương: - Chương Tìm hiểu tổng quan thư điện tử thư rác - Chương Tìm hiểu tổng quan nội dung hệ miễn dịch sinh học hệ miễn dịch nhân tạo - Chương Xây dựng chương trình lọc thư rác áp dụng hệ miễn dịch nhân tạo CHƯƠNG TỔNG QUAN VỀ THƯ ĐIỆN TỬ VÀ THƯ RÁC Chương trình bày tổng quan lịch sử phát triển, khái niệm, lợi ích thư điện tử, cấu trúc chung giao thức gửi – nhận thư điện tử 1.1 Tổng quan thư điện tử 1.1.1 Lịch sử phát triển Ngày thư điện tử (email) khái niệm quen thuộc gần thiếu hầu hết người sử dụng Internet, hàng tỉ tài khoản thư điện tử sử dụng cho thấy thư điện tử công cụ gửi, nhận trao đổi thông tin hàng đầu giới Lịch sử phát triển thư điện tử gắn với cột mốc sau: Thời tiền thư điện tử - Năm 1961: Tom Van Vleck (kĩ sư phần mềm máy tính Mĩ) phát triển hệ thống giao dịch tin nhắn nhiều người dùng máy tính - Năm 1965: Lần thư điện tử mắt viện Công nghệ Massachusetts - Hoa Kì - Năm 1971: Ray Tomlinson (lập trình viên người Mĩ) phát triển hệ thống giao dịch tin nhắn nhiều người nhiều máy tính gửi thư điện tử mạng ARPANET (Advanced Research Projects Agency Network), thư điện tử kiểm tra e-mail - Năm 1977: Định dạng chuẩn (RFC 733) Dave Crocker đề xuất để phổ biến phương thức giao tiếp thư điện tử qua mạng Internet Thư điện tử đời - Năm 1978: VA Shiva Ayyadurai tạo hệ thống điện tử để gửi thư phòng nội trường Đại học Y Nha khoa New Jersey - Năm 1979: Các thành phần: To, From, Cc, Bcc, Subject, Inbox, Outbox, chuyển thành hệ thống thư điện tử - Năm 1980: Hệ thống thư điện tử ứng dụng thực tế trường Đại học Y Nha khoa New Jersey - Ngày 30/08/1982: Thuật ngữ “email” hệ thống thư điện tử trao quyền thức - Năm 1982: Giao thức truyền tải thư điện tử SMTP đời SMTP giao thức truyền tải thư điện tử qua mạng, SMTP cho phép chuyển thông điệp thư điện tử từ máy chủ thư điện tử (mail server) người gửi đến máy chủ thư điện tử người nhận - Năm 1985: Hệ thống phát triển hình thức email offline cho phép người nhận lưu trữ thư máy tính - Năm 1988: Microsoft Mail hòm thư điện tử thương mại phát triển dùng cho giao thức mạng MAC (Media Access Control) - Năm 1989: IBM mắt Lotus 1.0 – mô hình email server Những năm 1990 - Những năm đầu 1990 vấn nạn thư rác bắt đầu hoành hành - Năm 1992: Microsoft Outlook phiên dành cho hệ điều hành MS-DOS đời - Năm 1993: America Online Delphi kết nối hệ thống email độc quyền họ vào Internet Cùng lúc hãng IBM liên doanh với BellSouth sản xuất dòng điện thoại thông minh Simon Personal Communicator có tính sử dụng email - Năm 1996: Sabeer Bhatia Jack Smith khởi động “HotMail” - website cung cấp dịch vụ thư điện tử miễn phí giới HotMail nhanh chóng trở thành dịch vụ thư điện tử sử dụng nhiều giới - Năm 1997: Yahoo! cho đời Yahoo Mail tạo cạnh tranh với Hotmail - Năm 1999: Blackberry cho phép truy cập dịch vụ thư điện tử qua điện thoại di động Khả gửi thư qua điện thoại làm cho việc sử dụng thư điện tử trở nên tiện lợi nhanh chóng hết - Cuối năm 1990, thư điện tử sử dụng ngôn ngữ HTML đời cho phép định dạng văn phong phú so với văn túy Những năm đầu kỉ 21 - Năm 2000: Microsoft phát hành ứng dụng email client Microsoft Entourage dành cho hệ điều hành Mac OS - Năm 2003: Microsoft Outlook 2003 phát triển lọc thư rác thư lừa đảo - Năm 2004: Ủy ban Thương mại Liên bang Mĩ ban hành đạo luật chống thư rác - Năm 2006: Microsoft Outlook 2007 đời hỗ trợ việc duyệt tin qua RSS nhận tin nhắn Cùng thời gian mạng xã hội Facebook bắt đầu vào hoạt động quy mô toàn cầu, tạo liên kết tài khoản Facebook với tài khoản thư điện tử - Tháng 4/2007: Gmail vào hoạt động sau năm chạy thử nghiệm - Năm 2010: + Microsoft Outlook 2010 đời tích hợp Outlook Social Connector (hỗ trợ + nhận gửi thư với mạng xã hội) bỏ qua hội thoại dọn dẹp hội thoại Outlook Mobile dành cho Windows Phone Outlook dành cho Mac + 2011 đời Mạng xã hội Facebook công khai kế hoạch kết hợp ứng dụng Microsoft web vào hệ thống tin nhắn - Năm 2011: Hệ thống quy ước AP Stylebook Hoa kì thức sử dụng chữ “email” phương tiện truyền thông thay cho “e-mail” Trải qua giai đoạn phát triển, thư điện tử cải tiến theo hướng thuận tiện, thân thiện với người dùng thể qua việc cải tiến giao diện người dùng với chức bảo vệ thư điện tử ngày hiệu 1.1.2 Thư điện tử Thư điện tử (email hay electronic mail) hệ thống chuyển nhận thư qua mạng máy tính Thư điện tử phương tiện thông tin nhanh Một mẫu thông tin gửi dạng mã hóa hay dạng thông thường chuyển qua mạng máy tính đặc biệt mạng Internet Nó chuyển thông tin từ máy nguồn tới hay nhiều máy nhận thời điểm Ngày nay, thư điện tử không gửi thông tin dạng chữ mà truyền dạng thông tin khác như: hình ảnh, âm thanh, phim,… đặc biệt phần mềm thư điện tử kiểu hiển thị thư điện tử dạng sống động tương thích với kiểu tệp HTML Phần mềm thư điện tử (email software) loại phần mềm nhằm hỗ trợ cho người dùng việc chuyển nhận mẫu thông tin Thông tin đưa vào phần mềm thư điện tử cách thông dụng gõ chữ từ bàn phím, dùng máy quét hình ảnh scanner, máy ghi hình, webcam,… Phần mềm thư điện tử giúp việc soạn thảo, gửi, nhận, đọc, in, xóa hay lưu trữ thư điện tử Có hai loại phần mềm thư điện tử: Các phần mềm thư điện tử cài đặt máy tính (email client), hay phần mềm thư điện tử cho máy khách Ví dụ: Microsoft Outlook, Microsoft Outlook Express, Netscape Communicator,… Các phần mềm thư điện tử không cần cài đặt máy tính: Phần mềm loại cung cấp máy chủ (web server) mạng Internet Để sử dụng phần mềm loại thường máy tính nối vào phải có máy truy cập tương thích với cung ứng Webmail Ví dụ: Mail.Yahoo.com hay Hotmail.com,… Các dịch vụ thư điện tử cung ứng miễn phí có phí tùy theo nhu cầu mục đích người dùng Ngày nay, thư điện tử thường cung cấp kèm với phương tiện Internet người tiêu dùng ký hợp đồng với dịch vụ Internet cách miễn phí 1.1.3 Lợi ích thư điện tử Tốc độ gửi/nhận nhanh: Thư điện tử chuyển qua đường Internet dạng tín hiệu điện nên tốc độ di chuyển gần tức thời Với thư tín bình thường vài ngày để thư tới địa cần thiết với thư điện tử người nhận dường không cần chờ đợi Chi phí không đáng kể: Với thư tín bình thường, ta phải tốn khoản chi phí lớn gửi thư Còn với thư điện tử, ta tốn khoản phí nhỏ để kết nối Internet với chi phí cho dịch vụ thư điện tử Hiện nay, dịch vụ thư điện tử hầu hết cung cấp miễn phí 10 *) Kiểm tra khả phát thư rác - Đọ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 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 toàn A[k, j]= tăng giá trị FN thêm (kết luận email kiểm tra thư thường) *) Sau trình kiểm tra trên, tính toán thông số: DR = TP/(TP + FN) FPR = FP/(TN + FP) Acc = (TP + TN) /(TP + TN + FP + FN) Kết luận Thực trình kiểm tra 10 lần (tương ứng lần sử dụng file thư thường HSub i.txt làm file test, i=1,…,10) Kết thúc trình, đưa kết lấy giá trị trung bình 10 lần thông số: DR, FPR, Acc Đoạn mã lệnh thực { ………………………… // Kiểm tra file ham thứ ii; StreamReader ham = new StreamReader("HSub " + ii.ToString() + ".txt"); string chuoikt, np; string[] lam = new string[60]; while ((chuoikt = ham.ReadLine()) != null) { lam = chuoikt.Split(','); int i5 = 0, i6 = 1, d = 0; 42 np = ""; bool ok; while (i5 < lam.Length - 1) { ok = true; while (i6