Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
880,28 KB
Nội dung
Luận văn tốt nghiệp Phương pháp lọc thư rác dựa CBR Tóm tắt nội dung khóa luận Khóa luận trình bày số nội dung thư rác (khái niệm, tác hại, hình thức phát tán thư rác ), tập trung định hướng tới phương pháp lọc thư rác, đặc biệt phương pháp lọc dựa nội dung Trong phương pháp lọc theo nội dung, khóa luận quan tâm mô tả, phân tích hệ thống hệ thống Email Classification Using Examples (ECUE), phương pháp lọc spam dựa nội dung Delany Cunningham đề xuất năm 2004 [4] Khóa luận mô tả kiến trúc CBR kiến trúc hệ thống ECUE Hệ thống ECUE có khả giải vấn đề concept drift, hệ thống xây dựng dựa phương pháp Case-Based Reasoning (CBR) [1] với việc coi email case, tập case phân lớp spam, non-spam sử dụng làm tập liệu huấn luyện gọi case-base Để giải vấn đề concept drift ECUE có hai thành phần là: Case-base Editing case-base update policy [5] Phần cuối khóa luận trình bày kết thực nghiệm tiến hành hệ thống lọc thư rác sử dụng thuật toán Bayes theo chương trình Spambayes Mở đầu Một dịch vụ mà Internet mang lại dịch vụ thư điện tử, phương tiện giao tiếp đơn giản, tiện lợi, rẻ hiệu người cộng đồng sử dụng dịch vụ Internet Tuy nhiên lợi ích dịch vụ thư điện tử mang lại mà số lượng thư trao đổi Internet ngày tăng, số không nhỏ số thư rác (spam) Thư rác thường gửi với số lượng lớn, không người dùng mong đợi, thường với mục đích quảng cáo, đính kèm virus, gây phiền toái khó chịu cho người dùng, làm giảm tốc độ truyền internet tốc độ xử lý email server, gây thiệt hại lớn kinh tế Đã có nhều phương pháp đưa để giảm số lượng thư rác Như việc đưa luật lệ để hạn chế việc gửi thư rác, đưa phương pháp kĩ thuật lọc thư rác như: lọc dựa địa IP (whitelist, balacklist), lọc dựa danh tính người gửi, lọc dựa chuỗi hỏi đáp, phương pháp lọc dựa mạng xã hội, phương pháp lọc nội dung…Mỗi phương pháp có ưu nhược điểm riêng, phương pháp hoàn hảo để có lọc thư rác tốt cần phải kết hợp phương pháp với Trong phương pháp lọc thư rác phương pháp lọc dựa nội dung quan tâm nhiều, đánh giá có triển vọng đưa kết cao Phương pháp lọc nội dung dựa việc phân tích nội dung email để phân biệt spam email nonspam email Tuy có nhiều biện pháp ngăn chặn thư rác số lượng thư rác ngày nhiều, tác hại gây lớn, cấu trúc nội dung thư ngày thay đổi tinh vi để vượt qua lọc cần có hệ thống lọc có khả giải vấn đề thư rác ngày tăng, nội dung, cấu trúc thư ngày phức tạp tinh vi (concept drift) Đã có nhiều hệ thống học máy lọc thư rác sử dụng thuật toán Naïve bayes, phân lớp dựa thống kê (Lewis and Ringuette 1994, Lewis 1998), Support Vector Machines (Joachims 1998, Dumais et al 1998) phương pháp cho kết lọc tốt[17] Tuy nhiên mô hình chưa giải vấn đề concept drift Một mô hình Delany(2006) đề xuất, dựa hệ thống học máy sử dụng phương pháp Case-Based Reasoning (CBR)(Riesbeck and Shank 1989)[17] có khả giải concept drift Phương pháp CBR, sử dụng vấn đề trước giải để đưa giải pháp cho vấn đề Các vấn đề giải lưu vào tập liệu dùng để huấn luyện gọi case-base Các case biểu diễn dạng véc tơ n chiều, thành phần token trích chọn từ việc phân tích cú pháp, phân tích từ tố tài liệu (email) Các vector chứa thêm thành phần lớp mà tài liệu phân (nonspam, spam) Trong việc ứng dụng CBR để lọc thư rác có hai vấn đề là: làm để quản lý tập liệu huấn luyện(case-base), chứa số lượng lớn email người dùng Thứ hai làm để điều khiển vấn đề concept drift Để quản lý liệu huấn luyện CBR áp dụng luật để điều chỉnh case-base(case-base Editing), nhằm đưa tập case-base chứa case có khả dự đoán cao cho việc phân lớp case Để giải concept drift CBR thực việc lựa chọn lại đặc trưng case tốt cho việc xác định lớp cho case Trong khóa luận xin trình bày hướng tiệp cận Email Classification Using Example (ECUE)(Delany, Cunningham, 2004), phương pháp học máy lọc thư rác dựa CBR Trong ECUE có hai phần cần quan tâm là: Công nghệ sử dụng cho Case-base Editing Competence Based Editing(CBE)(Smyth McKenna 1998); Case-base update policity CBE có hai chức loại bỏ case nhiễu case dư thừa, việc loại bỏ case nhiễu áp dụng thuật toán Blame Based Noise Reduction (BBNR), việc loại bỏ case dư thừa áp dụng thuật toán Conservative Redundancy Reduction (CRR)(Riesbeck and Shank 1989) [17] Case-base update policy thực việc đưa case phân lớp spam, nonspam vào case-base để đưa dự đoán lớp cho case tiếp theo, trường hợp cho case học lại, case-base update policy thực lựa chọn lại đặc trưng để tìm đặc trưng có ích việc dự đoán lớp cho case Chương THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC Một dịch vụ mà Internet mang lại dịch vụ thư điện tử, phương tiện giao tiếp đơn giản, tiện lợi, rẻ hiệu người cộng đồng sử dụng dịch vụ Internet Tuy nhiên lợi ích dịch vụ thư điện tử mang lại mà số lượng thư trao đổi Internet ngày tăng, đa số số thư thư rác (spam) Thư rác thường gửi với số lượng lớn, không người dùng mong đợi, thường với mục đích quảng cáo, đính kèm virus, gây phiền toái khó chịu cho người dùng, làm giảm tốc độ truyền internet tốc độ xử lý email server, gây thiệt hại lớn kinh tế Chương khái quát vấn đề khái niệm thư rác, ảnh hưởng thư rác sống phương pháp ngăn chặn thư rác 1.1 Một số khái niệm 1.1.1 Định nghĩa thư rác Hiện chưa có định nghĩa hoàn chỉnh, chặt chẽ thư rác Có quan điểm coi thư rác thư quảng cáo không yêu cầu (Unsolicited Commercial Email-UCE), có quan điểm rộng cho thư rác bao gồm thư quảng cáo, thư quấy rối, thư có nội dung không lành mạnh (Unsolicited Bulk Emai -UBE) 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 [18,19]: 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 yêu cầu, gửi hàng loạt Tuy nhiên yếu tố quan trọng để phân biệt thư rác với thư thông thường nội dung thư Khi người nhận thư rác, người xác định thư gửi hàng loạt hay không xác định thư rác sau đọc nội dung thư Đặc điểm sở cho giải pháp phân loại thư rác cách phân tích nội dung thư 1.1.2 Phân loại thư rác Có nhiều cách phân loại thư rác[18] - 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 Ngoà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.1.3 Tác hại thư rác Theo thống kê thư rác chiếm nửa số e-mail truyền Internet thư rác nguồn lây lan virus nhanh Thiệt hại chúng gây lớn phát triển internet nói chung người sử dụng thư điện tử nói riêng Theo thống kê toàn cầu hãng nghiên cứu Ferris Research San Francisco [18], thư rác gây thiệt hại 50 tỷ USD năm 2005 Chỉ tính riêng Mỹ, thiệt hại thư rác gây doanh nghiệp ước tính khoảng 17 tỷ USD/năm Thư rác chiếm khoảng 80% lưu lượng thư điện tử giới quý 1/2006, kết luận nhóm hợp tác chống thư rác gồm công ty AOL, Bell Canada, Cigular Wireless, EarthLink, France Telecom, Microsoft, Verizon, Yahoo Microsoft AOL cho biết hai hãng trung bình ngày chặn gần tỷ thư rác Ước tính, 10 email sử dụng dịch vụ MSN Hotmail Microsoft thư rác[18] Tại Việt Nam, tình hình thư rác phức tạp Công ty Điện toán Truyền số liệu (VDC) - ISP lớn Việt Nam - cho biết, thư rác chiếm phần lớn lưu lượng email qua hệ thống máy chủ thư ISP Các thư phàn nàn gửi đến ISP không giải quyết, khách hàng ISP bị liệt vào danh sách đen, không gửi email địa nước Một số ISP cho biết, cuối năm ngoái, khách hàng nhiều ISP Việt Nam thường xuyên bị tê liệt bị liệt vào danh sách đen Mỗi lần thoát khỏi danh sách ISP phải khoảng 40 USD Tại trang web Spamhaus.org (tổ chức theo dõi nguồn gửi thư rác), có lần vnn.vn có danh sách top 10 ISP cung cấp nhiều rác Không gây thiệt hại tiền bạc, thư rác làm giảm hiệu làm việc, gây stress, tiêu tốn thời gian nhân viên Những điều đồng nghĩa với việc, suất lao động giảm, ảnh hưởng tới tình hình kinh doanh doanh thu công ty Một số lời khuyên cho người dùng thư điện tử: Yêu cầu đòi hỏi nhà chức trách phải đưa luật lệ nghiêm cấm thư rác có hình phạt đích đáng cho kẻ cố tình gửi thư rác Mỗi người dùng nên tạo nhiều địa email, với mục đích khác nên dùng địa email khác Hạn chế việc đăng kí dịch vụ vô ích: nên tìm hiểu kĩ thông tin dịch vụ trước cung cấp địa email Kích hoạt dịch vụ chống thư rác ISP Cài đặt số chương trình xử lý thư máy tính cá nhân để xóa thư rác chuyển máy Bảo vệ mật mình: chọn mật lạ, khó đoán chứa chữ cái, xen lẫn chữ số chữ hoa xen lẫn chữ thường Thường xuyên ghi dự phòng liệu quan trọng Đồng thời cảnh giác với thư từ người quen biết không báo trước, chúng gửi mà người gửi Số lượng Spam luôn tăng ngày tinh vi hơn, người ta nhận định việc chống Spam luôn phải thực hiện, tùy vào ý thức cư dân Internet sức mạnh công nghệ mà việc Spam hạn chế phần 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 đị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 Việt Nam 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 quản lý ba hình thức quảng cáo xúc: thư điện tử, tin nhắn điện thoại di động quảng cáo trang thông tin điện tử 1.2.2 Lọc thư rác dựa địa IP Phương pháp lọc thư rác thông qua địa IP phương pháp đơn giản sử dụng sớm công chống thư rác Dựa vào địa IP người gửi để xác định thư bị ngăn chặn cho qua Có hai cách để thực việc lọc thư: trì danh sách địa IP bị chặn (còn gọi danh sách đen blacklist); thứ hai sử dụng danh sách địa IP cho phép qua (danh sách trắng whitelist) Danh sách đen (Blacklist) Người ta lập danh sách địa gửi thư rác Các nhà cung cấp dịch vụ thư điện tử (ISP) dựa danh sách để loại bỏ thư nằm danh sách Danh sách thường xuyên cập nhật chia sẻ nhà cung cấp dịch vụ Một số danh sách đen điển hình lập như: SpamCop Blocking List Composite Block List Ưu điểm phương pháp ISP ngăn chặn nhiều địa gửi thư rác Mặc dù danh sách đen cập nhật với thay đổi liên tục địa chỉ, giả mạo địa lợi dụng mail server hợp pháp để gửi thư rác làm số lượng thư rác gửi ngày tăng cao Do phương pháp ngăn chặn nửa số thư rác gửi nhiều thư hợp pháp ngăn chặn nhầm Danh sách trắng (Whitelist) Danh sách địa tin cậy (Safe Sender List), danh sách nhà cung cấp dịch vụ cung cấp Những địa thuộc danh sách cho qua lọc Người dùng phải đăng ký với nhà cung cấp danh sách để nằm danh sách Ưu điểm: số lượng địa danh sách trắng danh sách đen dễ cập nhật danh sách đen giải tình trạng chặn nhầm thư Tuy nhiên hai phương pháp có nhược điểm khó cập nhật, thay đổi địa IP Ngoài người gửi lợi dụng server mail có danh sách trắng để gửi thư rác, khó kiểm soát 1.2.3 Lọc dựa chuỗi hỏi/đáp (Challenge/Response filters) Đặc trưng phương pháp khả tự động gửi thư hồi đáp cho người gửi để yêu cầu số hành động chắn việc gửi thư họ Chương trình kiểm tra đặt tên “Turing Test” sau vài kiểm tra nghĩ nhà toán học người anh tên Alan Turing Trong vài năm gần xuất vài dịch vụ Internet tự động xử lý hàm Challenge/Response cho người dùng, chương trình yêu cầu người gửi thư phải vào website họ trả lời số câu hỏi để chắn e-mail mà người gửi.Việc yêu cầu lần gửi thư Đối với số người dùng có lượng thư trao đổi thấp, hệ thống đơn lẻ chấp nhận phương pháp hoàn hảo để loại trừ hoàn toàn thư rác từ hòm thư họ 1.2.4 Phương pháp lọc dựa mạng xã hội Các nghiên cứu gần bắt đầu khai thác thông tin từ mạng xã hội cho việc xác định thư rác cách xây dựng đồ thị (các đỉnh địa email, cung thêm vào node A B A B có trao đổi thư qua lại) Người ta sử dụng số tính chất đặc trưng mạng xã hội để xây dựng công cụ lọc thư rác [18] Đầu tiên, người ta phân đồ thị thành thành phần tính độ phân cụm cho thành phần Mỗi thành phần đồ thị mạng xã hội node, bao gồm tất node xung quanh “node hàng xóm” (các node có cung liên kết với node này) cung liên kết node hàng xóm với Nếu thành phần có độ phân cụm thấp node tương ứng với thành phần địa gửi thư rác Trong thành phần mạng xã hội node gửi thư rác, node hàng xóm thường node ngẫu nhiên, mối quan hệ (không có trao đổi email qua lại với nhau) nên độ phân cụm mạng xã hội node thấp Ngược lại, mạng xã hội ứng với người dùng bình thường có độ phân cụm cao Dựa vào độ phân cụm, người ta tạo danh sách đen (Blacklist) gồm địa email tương ứng với node có độ phân cụm thấp, danh sách trắng (Whitelist) ứng với node có độ phân cụm cao, số node lại đưa vào danh sách cần xem xét (Greylist) Phương pháp phân loại 53% tổng số email cách xác ham hay spam Nhược điểm phương pháp spammer xây dựng mạng xã hội họ nên khó phát Hình 3.8: Sơ đồ lớp ECUE[17] Lớp MailStore cung cấp phương thức để kết nối với mailbox truy cập vào thư mục mailbox Lớp Settings thiết lập cấu hình cần thiết cho hệ thống gồm chi tiết cần thiết để người dùng truy cập vào mailbox, như: host, username password tên folder người dùng tạo lập Những tham số cấu hình thiết lập file cấu hình, truy cập tải ứng dụng hoạt động Lớp Controller lớp điều khiển ứng dụng Nó thực chức điều khiển khởi động ngừng Filter kiểm soát Daemon Nó thực thread riêng biệt độc lập với Filter Daemon Giao diện lớp Learner Reporter định việc học báo cáo hệ thống lọc yêu cầu 3.5.2 Mô hình thiết kế tần Application Architecture Tầng ứng dụng (Application) cung cấp chức lọc case-base reasoning Tầng ứng dụng liên quan đến phần sau: thiết lập lưu giữ case-base, email mẫu huấn luyện tiến trình phân lớp sử dụng để xác định lớp cho email tiến trình cập nhật để hệ thống học mẫu email Hình 3.8 mô tả cấu trúc chức tầng ứng dụng Nó gồm hai tiến trình chính: 39 Tiến trình SetUp làm nhiệm vụ tạo case-base từ email người dùng(gồm spam nonspam) Tiến trình Filter thực lọc email cập nhật lại case-base có email bị phân lớp nỗi Hình 3.9 : Cấu trúc tầng Application[17] Setting up a Case-base Hệ thống sử dụng mẫu email trước, gồm spam nonspam làm tập liệu huấn luyện Đầu tiên email qua bước Feature Extraction (trích chọn thuộc tính), thực phân tích cú pháp, phân tích từ tố email huấn luyện thu đặc trưng Có ba loại đặc trưng trích chọn là: đặc trưng từ (word features), đặc trưng chữ cái( letter features), đặc trưng statistical(statistical features) Output tiến trình trích chọn thuộc tính case-base khởi tạo với cặp giá trị feature-value cho email mẫu huấn luyện Tiến trình trích chọn đặc trưng đưa số lượng lớn đặc trưng cho email huấn luyện Thêm vào đó, biểu diễn email bị thưa thớt, số lượng nhỏ số feature thiết lập với giá trị lớn công việc Feature Selection xác định đặc trưng(được trích nhờ Feature Extraction) có khả dự báo tốt email spam hay nonspam Phương pháp sử dụng để lựa chọn đặc trưng Information Gain Output tiến trình Feature Selection giảm bớt số đặc 40 trưng email huấn luyện, giảm tập tập chứa cặp giá trị feature-value để tập chứa đặc trưng có khả dự báo cao Trong hệ thống ECUE ta cấu hình để xác định số lượng đặc trưng cần thiết Ở đặc trưng thể dạng nhị phân Nhiệm vụ Case Selection áp dụng phương pháp Competence-Base Editting, sử dụng thuộc tính competence mẫu case-base để loại bỏ case nhiễu case thừa case-base Output tiến trình làm nhỏ case-base Hệ thống sử dụng nhiều tập liệu huấn luyện khác phụ thuộc vào case-base cần phải xây dựng Nếu hệ thống thực thi lần đầu tiên, tiến trình SetUp sử dụng tập liệu huấn luyện được người dùng đưa vào thư mục huấn luyện mailbox Tổng số email sử dụng để huấn luyện cấu hình Filtering and Learning Bộ phân lớp email thực dựa thuật toán k-Nearest Neighbour trình bày phần 4.1.4 Giá trị k thiết lập file cấu hình Tiến trình phân lớp sử dụng bỏ phiếu đồng để giúp phân lớp gặp lỗi phân lớp FP, tức đòi hỏi tất k hàng xóm xác định thuật toán k-NN phân vào lớp spam trước case bị phân lớp spam Khi người dùng xác nhận email bị hệ thống phân lớp sai, tiến trình học thực Có hai cấp học thiết lập hệ thống: (i) Đưa case sau phân lớp vào case-base (ii) Thực học lại, trích chọn lại đặc trưng để phân lớp cho case Hệ thống cung cấp feedback (hồi âm) đến người đọc qua lớp ECUE Reporter để cung cấp thống kê cho người đọc thực lọc hệ thống thống kê sử dụng vào mục đích định giá Whitelisting Để giảm loại trừ lỗi false positive, hệ thống lưu ý đến danh dách trắng, thảo luận chương 2, phần 2.3.2, hoạt động hai mức sau: Người dùng định nghĩa miền phép file cấu hình Bất kì email đến từ vùng coi hợp lệ Người gửi email hợp lệ lưu lại danh sách, email có thêm đặc trưng để xác định người gửi nằm danh sách trắng hay không Đặc trưng sử dụng tiến trình thu thu thập case-base (case-base retrieval process), xác định case hàng xóm case Database 41 Hệ thống sử dụng sở liệu MySql để lưu trữ case-base email người dùng định dạng form chứa cặp giá trị feature-value Cấu trúc liệu mô tả hình 4.9 CBFeature lưu chi tiết đặc trưng lựa chọn cho case-base CBCase lưu chi tiết case case-base, CBCaseFeature lưu chi tiết đặc trưng case Email EmailFeature lưu chi tiết email (dưới định dạng chứa cặp giá trị feature-value, để thuận tiện việc xây dựng lại case-base) để lọc thực phân lớp FolderInfo FoldersToFilter giữ thông tin trạng thái mailbox người dùng lần lọc thực thi, hai thực thể có tác dụng làm cho việc thực thi thuận lợi hơn, cho phép ứng dụng xác định thư mục cần phải lọc hệ thống khởi động lại Thực thể WhiteLisst giữ thông tin danh sách trắng Hình 3.10: sở liệu ECUE[17] 3.6 Đánh giá kết lọc hệ thống ECUE Phần đưa đánh giá Delany mức độ lọc xác hệ thống ECUE, đồng thời đánh giá hiệu thuật toán BBRN sử dụng để edit Case-base Sự đánh giá dựa so sánh tham số tỉ lệ Error, FP FN 3.6.1 Kết so sánh mức độ lọc xác hệ thống ECUE sử dụng thuật toán BBRN thuật toán RENN(Delany, 2006)[17] tập liệu(500 spam, 500 nonspam), email biểu diễn dạng nhị phân: 42 - Tập liệu 1.1, 1.2: email nhận người dùng tháng 2/2003 - Tập liệu 2.1, 2.2: email nhận từ tháng 2-12/2003 Sử dụng thuật toán IG để trích chọn feature (k=3): 700 feature trích chọn Mỗi tập liệu chia thành 20 mục mục làm liệu test, 19 mục làm liệu huấn luyện Thực đánh giá dựa tham số: - Error rate: phần trăm email bị ECUE phân lớp sai - FN: số email thực spam bị ECUE phân loại sai thành non-spam - FP: số email thực non-spam bị ECUE phân loại sai thành spam 43 Hình 3.x: Kết so sánh sử dụng thuật toán BBNR RENN để loại bỏ case nhiễu case-base, thực tập liệu huấn luyện (case-base), kết trung bình cho tập liệu.[17] Dựa vào đồ thị ta thấy rõ: - Khi sử dụng thuật toán BBNR để loại bỏ case nhiễu case-base kết thu tốt, tỉ lệ error thấp so với sử dụng thuật toán RENN - Và sử dụng thuật toán BBNR rõ ràng cho kết tốt nhiều, có tỉ lệ lỗi thấp ta không thực điều chỉnh case-base (unedited), loại bỏ case nhiễu 3.6.2 Kết đánh giá hoạt động hệ thống ECUE online Tiến hành cài ECUE máy PCs[17] - Có gate way spam filter (SpamAssasin) - Một số người dùng tắt chức SpamAssasin Thực đánh giá người dùng, dựa vào tham số ER, FN, FP Bảng 4.1 chứa thông số sau: (i) số ngày hệ thống ECUE thực lọc thư máy PC người dùng (ii) số lượng thư spam nonspam lọc qua thời gian (iii) Thông tin tập liệu huấn luyện sử dụng: gồm số lượng email dùng huấn luyện tỉ lệ phần trăm số thư gán nhãn spam (có nhãn %spam) (iv) số lần trung bình update case-base ngày (có nhãn (#days)) 44 (v) thông tin số email mới(spam nonspam) thêm vào case-base: gồm tổng số email thêm, kích thước case-base (có nhãn Final size) (vi) tỉ lệ FN: số thư spam mail mà ECUE phân lớp sai, thư spam bị phân lớp sai thành thư hợp lệ (có nhãn %FNs) (vii) tỉ lệ FP: số thư hợp lệ bị hệ thống ECUE lọc thành thư spam (có nhãn FPs%) (viii) tỉ lệ error: tổng số thư mà hệ thống ECUE phân lớp sai (có nhãn Error%) Bảng 4.1: kết đánh giá ECUE cho user[17] Từ bảng 3.x ta thấy: ECUE thực tốt việc nhận mẫu spam mới, giảm đáng kể độ FN user trừ user 4, user độ FN ko giảm nhiều user khác vì: - Thư user user lọc qua gate way spam filter trước qua lọc ECUE - Nhưng kết ECUE xác định 66% thư spam user - User user nhận số thư spam nhiều so với nonspam nên độ FP giảm nhẹ - Trung bình 90% số lượng thư người dùng phân lớp - User user email phân lớp tới 93.9% 95,3% - Average error: 6.8% 45 Chương THỰC NGHIỆM Trong phần thực nghiệm tiến hành thực nghiệm sử dụng chương trình phần mềm nguồn mở SpamBayes anti-spam, dự án tiến hành http://sourceforge.net/project/ Chương trình SpamBayes anti-spam thực lọc thư rác dựa nội dung áp dụng thuật toán Bayes Chương trình xây dựng ngôn ngữ Perl, có khả tích hợp với hệ thống Mail reader Trong phần thực nghiệm tiến hành biên dịch, cài đặt chương trình Bayes tích hợp với hệ thống Microsoft Office Outlook 2003 để lọc thư Thực cài đặt: Download: - Phython installer: http://www.python.org/download/ - Pywin32 extensions: https://sourceforge.net/projects/pywin32/ - SpamBayes source: spambayes-1.1a3 : http://sourceforge.net/project/showfiles.php?group_id=61702 Chạy Phython installer, pywin32 installer Click vào addin.py thư mục outlook2000 thư mục spambayes-1.1a3 Dữ liệu: Tập liệu huấn luyện gồm 27 ham email 27 spam email trích từ Dữ liệu corpus: 20030228_hard_ham.tar (gồm 500 ham email ) 20021010_spam.tar(gồm 250 spam email) ( http://spamassassin.apache.org/publiccorpus/ ) Tập liệu kiểm tra gồm: 16 thư ham 16 thư spam trích từ 20030228_hard_ham.tar + 1518 thư (từ hòm thư: hienhst@yahoo.com anhtuan_it@yahoo.com – chứa 953 spam 565 ham ), tổng cộng liệu lọc 46 gồm 1540 thư, có 1021 thư spam (66,3%) 519 thư ham (33,7%) Thư spam chủ yếu có nội dung quảng cáo, chứa nhiều link liên kết Thực nghiệm Lần 1: Khi chưa huấn luyện: Kết quả: 10 thư (trong thư spam) xác định ham Lần 2: Khi tập huấn luyện chứa thư spam: Kết quả: 10 thư (trong thư spam) xác định spam Lần 3: Khi tập huấn luyện chứa thư ham: Kết quả: 10 thư (trong thư spam) xác định ham Lần 4: Khi thực huấn luyện với tập liệu huấn luyện nêu trên, số thư lọc: 1540 thư Kết quả: Thư ham: 1239 (80%) Thư spam: 28 (1,8%) Thư unsure: 273 (17,7%) Lần 5: cho hệ thống huấn luyện 16 thư thực chất spam hệ thống coi thư ham Kết quả: Thư ham: 1445 (52,4%) Thư Spam: 1005 (36,5%) Thư unsure: 306 (11,1%) Lần 6: Tiến hành huấn luyện 11 thư hợp lệ bị hệ thống lọc spam: Kết quả: Thư ham: 2043 (44,6%) Thư spam: 2063 (45,0%) Thư unsure: 476 (10,4%) Lần 7: Thực huấn luyện 19 thư spam bị lọc phân vào lớp unsure Kết quả: Thư ham: 2652 (34,1%) Thư spam: 4504 (57,9%) Thư unsure: 618 (7,9%) Lần 8: Thực huấn luyện 20 thư ham bị lọc phân vào lớp unsure 47 Kết quả: Thư ham: 2996 (32,1%) Thư spam: 5693 (61,0%) Thư unsure: 642 (6,9%) Kết sau lần 8: Số lượng thư unsure: 17 thư Thư spam: 1028 thư, 940 thư lọc thư spam Thư ham: 495 thư, 421 thư lọc ham Đánh giá: Từ kết thu lần thực nghiệm ta nhận thấy rõ ràng hệ thống Spambayes có khả học tốt, sau học thư spam thư ham hệ thống lọc xác Từ kết cuối lần ta có: Số thư ham bị hệ thống lọc thành thư spam là: 1028 – 940 = 88 thư => FP = 100*88/1028 = 8.56% Số thư spam hệ thống lọc thành thư ham là: 495 – 421 = 74 thư => FN = 100* 74/495 = 14,9% Chúng ta tiến hành tính toán độ hồi tưởng, độ xác độ đo F1 kết 48 Kết luận Hiện thư rác ngày phát triển gây thiệt hại lớn kinh tế gây nhiều phiền toái cho người dùng Số lượng thư rác ngày tăng, nội dung cấu trúc chúng thay đổi cần có hệ thống học máy lọc thư để cập nhật, loại bỏ mẫu thư Hệ thống học máy lọc thư rác dựa nội dung sử dụng phương pháp CBR – hệ thống ECUE xây dựng đáp ứng điều Khóa luận đạt số kết sau: - Khái quát số nội dung thư rác, phương pháp lọc thư rác - Trình bày chi tiết hai phương pháp lọc thư rác theo nội dung theo thuật toán Bayes, tập trung tới giải pháp Delany Đã trình bày cấu trúc CBR hệ thống lọc thư rác ECUE - Đã tiến hành khai thác chương trình nguồn mở SpamBayes anti-spam, cho chạy thực nghiệm phân tích sơ kết Để xây dựng hệ thống ECUE hoàn chỉnh cần nhiều người tham gia Bước đầu em tìm hiểu cấu trúc phương pháp để xây dựng hệ thống ECUE, tương lai, em hy vọng với giúp đỡ thày cô bạn xây dựng hệ thống học máy lọc thư rác dựa nội dung sở nội dung tương tự hệ thống ECUE 49 Tài liệu tham khảo [1] Aha, D W.: 1997, Editorial, Artificial Intelligence Review, Special Issue on Lazy Learning [2] Aha, D W., Kibler, D and Albert, M K.: 1991, Instance-based learning algorithms, Machine Learning [3] Deborah Fallows (2003) Spam: How it is hurting email and degrading life on the internet Technical report, Pew Internet and American Life Project, Oct 2003 [4] Ion Androutsopoulos, John Koutsias V.Chandrinos and Contstantine D.Spyropoulos “An Experimental Comparision of Naïve Bayes and keyword-based anti-spam Filtering with persional email message” [5] Ion Androutsopoulos, John Koutsias, Konstantinos V Chandrinos and Constantine D Spyropoulos () Learning to filter spam email: a comparison of a naïve bayes and a memory-based approach [6] J.W.L.Boelen, S.P.Ekkebus (2005) Dealing with spam in the near future Overview of sender authentication techniques University of Twente, Nertherland [7] Joachims T (1998) Text Categorization with Support Vetor Machines: Learning with Many Relevant Feature, Proceeding of ECML-98, 10th European Conference on Machine Learning, 1998 [8] Johan Hovold () Naïve Bayes Spam filtering using Word-Position-Based attributes Department of Computer Science Lund University [9] Kasun De Zoysa, Lakmal Warusawithana () An innovative Method to Prevent Spam Department of Communication and Media Technologies, University of Colombo School of Computing, 35, Reid Avenue, Colombo 7, Sri Lanka [10] M Perone (2004) An overview of spam blocking techniques Technical report, Barracuda Networks, 2004 [11] Mehran Sahami, Susan Dumais, David Heckerman and Eric Horvitz (1998) A Bayesian Approach to Filtering Junk E-Mail Proceedings of AAAI-98 Workshop on Learning for Text Categorization [12] Mehran Sahami, Susan Dumais, David Heckerman, Eric Horvitz () “A bayesian approach to filtering junk email (mehran sahami, susan dumais, david heckerman, eric horvitz)” [13] Newman, M E J and Watts, D J (1999) Renormalization group analysis of the small-world network model Physics Letters A 263, 341–346 [14] S J Delany and P Cunningham, ‘An analysis of case-based editing in a spam filtering system’, in 7th European Conference on Case-Based Reasoning (ECCBR 50 2004), eds., P Funk and P Gonz´alez-Calero, volume 3155 of LNAI, pp 128–141 Springer, (2004) [15] OReilly.SpamAssassin.Jul.2004.eBook-DDU Published by O'Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472 [16] Delany SJ, P Cunningham & B Smyth (2006) ECUE: A Spam Filter that Uses Machine Learning to track Concept Drift, In: Proc of the 17th Eur Conf on Artificial Intelligence (PAIS stream), p627-631 [17] Delany SJ (2006) Using Case-Based Reasoning for Spam Filtering, PhD Thesis, March 2006] [18] Bùi Ngọc Lan (2006) Lọc thư rác dựa tính chất mạng xã hội Khóa luận tốt nghiệp đại học Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội [19] 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 51 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.1.3 Tác hạ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 (Challenge/Response filters) 1.2.4 Phương pháp lọc dựa mạng xã hội 1.2.5 Phương pháp định danh người gửi 10 1.2.6 Phương pháp lọc nội dung 12 Chương CASE-BASE REASONING 17 2.1 Case-based Reasoning 17 2.1.1 Biểu diễn Case 19 2.1.2 Case Retrieval 20 2.1.3 Reuse 22 2.1.4 Revision Retension 23 2.1.5 Những ưu điểm CBR 23 2.1.6 Ứng dụng phương pháp CBR vào việc phân lớp văn (Textual CBR) .23 2.2 Case-base Editing .24 Chương EMAIL CLASSIFICATION USING EXAMPLE 27 3.1 Mô hình thiết kế Case-base áp dụng hệ thống ECUE 27 3.1.1 Trích chọn đặc trưng 27 3.1.2 Biểu diễn đặc trưng 28 3.1.3 Lựa chọn đặc trưng 29 3.1.4 Phân lớp dựa thuật toán k-Nearest Neighbour(k-NN) 31 3.1.5 Case Retrieval: 31 3.2 Case-Base Maintenance 31 3.3 Competence Based Editing 32 3.3.1 Thuật toán Blame Based Noise Reduction 32 3.3.2 Conservative Redundancy Reduction 34 3.4 Mô hình thiết kế ECUE online 34 3.4.1 Cấu trúc hệ thống .34 3.4.2 Tương tác với người dùng 36 52 3.4.3 Theo dõi Emails 37 3.5 Mô hình thiết kế mức cao .38 3.5.1 Mô hình thiết kế tầng Technical Architecture 38 3.5.2 Mô hình thiết kế tần Application Architecture 39 3.6 Đánh giá kết lọc hệ thống ECUE 42 3.6.1 Kết so sánh mức độ lọc xác hệ thống ECUE sử dụng thuật toán BBRN thuật toán RENN(Delany, 2006)[17] 42 3.6.2 Kết đánh giá hoạt động hệ thống ECUE online 44 Chương THỰC NGHIỆM 46 53