Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 50 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
50
Dung lượng
1,77 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - Nguyễn Văn Huy THUẬT TOÁN BAYES VÀ ỨNG DỤNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành : Công Nghệ Thông Tin HÀ NỘI – 2009 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - Nguyễn Văn Huy THUẬT TOÁN BAYES VÀ ỨNG DỤNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành : Cơng Nghệ Thơng Tin Cán hướng dẫn: ThS Nguyễn Nam Hải Cán đồng hướng dẫn: ThS Đỗ Hoàng Kiên HÀ NỘI – 2009 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật tốn Bayes ứng dụng Lời cảm ơn Viết khóa luận khoa học việc khó khăn mà em phải hoàn thành từ trước đến Trong trình thực đề tài em gặp nhiều khó khăn bỡ ngỡ Nếu khơng có giúp đỡ lời động viên chân thành nhiều thầy bạn bè gia gia đình có lẽ em khó hồn thành luận văn Đầu tiên em xin gửi lời cảm ơn chân thành đến thày Nguyễn Nam Hải thày Đỗ Hoàng Kiên trực tiếp hướng dẫn em hoàn thành luận văn Nhờ có thày mà em tiếp cận với nguồn tài liệu giá trị góp ý quý giá sau Bên cạnh giúp đỡ đó, em cịn thày bên Trung tâm máy tính tạo điều kiện tốt sở vật chất hướng dẫn bảo ân cần để em tiếp cận với hệ thống Em biết ơn ngày tháng làm việc bên thày, em quên ngày tháng tuyệt vời Trong q trình góp nhặt kiến thức q báu, thày, cô, bạn bè người em sát cánh suốt thời gian em học tập nghiên cứu mái trường Đại học Công nghệ Trong nỗ lực đó, khơng thể khơng kể đến cơng lao to lớn khơng đền đáp cha mẹ người sinh thành, dưỡng dục nên người, nhắc nhở, động viên hoàn thành tốt nhiệm vụ Hà Nội Tháng 5, 2009 Nguyễn Văn Huy ii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật tốn Bayes ứng dụng Tóm tắt nội dung Thống kê (tốn học) mơn tốn học quan trọng có nhiều ứng dụng to lớn thực tế, giúp người rút thông tin từ liệu quan sát, nhằm giải tốn thực tế sống Trong khóa luận trình bày tiếp cận thống kê việc dự đoán kiện dựa vào lý thuyết Bayes Lý thuyết nói việc tính xác suất kiện dựa vào kết thống kê kiện q khứ Sau việc tính tốn kiện gán xác xuất hay điểm (tùy vào phương pháp đánh giá) ứng với khả xảy với kiện Và cuối dựa vào ngưỡng để phân loại cho kiện Sau phần lý thuyết tìm hiểu tốn thực tế ngành cơng nghệ thơng tin Bài toán việc lọc thư rác tự động Giải kết hợp từ nhiều phương án DNS Blacklist, kiểm tra người nhận, người gửi, dùng lọc Bayes, chặn địa IP, Blacklist/Whitelist, Dùng lọc Bayes phương án thơng minh gần gũi với người dùng người dùng huấn luyện nhận biết thư rác Khóa luận tập chung vào việc tìm hiểu lọc thư rác Bayesspam – mã nguồn mở, cài đặt cho hệ thống email có tên SquirrelMail – mã nguồn mở dùng cho hệ thống email trường đại học Công nghệ - Coltech Mail Kết cho thấy lọc có mức độ hoạt động hiệu khác tùy thuộc việc người dùng huấn luyện cho lọc thông qua thư điện tử mà họ cho thư rác nói chung lọc đem lại hiệu tốt iii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Mục lục Chương Giới thiệu 1.1 Tổng quan .1 1.2 Cấu trúc Chương Cơ sở lý thuyết 2.1 Phát biểu định lý Bayes 2.2 Cực tiểu hóa rủi ro toán phân lớp Bayes 2.3 Phân lớp Bayes chuẩn tắc .13 2.4 Miền định 20 Chương Phân lớp Naive Bayes 22 3.1 Định nghĩa 22 3.2 Các mơ hình xác suất Naive Bayes .23 3.3 Ước lượng tham số .24 3.4 Xây dựng classifier từ mơ hình xác suất .25 3.5 Thuật toán phân loại văn Naive Bayes 25 Ví dụ: Phân loại thư điện tử Naive Bayes classifier 27 Chương Giải toán lọc thư rác 30 4.1 Đặt vấn đề 30 4.2 Bài toán 31 4.3 Tiền xử lý thư điện tử .31 4.4 Dùng luật Bayes tính xác suất .32 4.5 Huấn luyện cho lọc Bayes 33 4.6 Lọc thư đến, có thư rác không? 34 4.7 Bộ lọc BayesSpam 35 4.8 Một số cải tiến cho lọc BayesSpam 38 Chương Kết luận 40 iv LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Phụ lục A Cơ sở liệu lọc 43 Tài liệu tham khảo 44 v LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Chương 1.1 Giới thiệu Tổng quan Khoa học thống kê đóng vai trị quan trọng, vai trị khơng thể thiếu cơng trình nghiên cứu khoa học, khoa học thực nghiệm y khoa, sinh học, nông nghiệp, hóa học, xã hội học Thí nghiệm dựa vào phương pháp thống kê học cung cấp cho khoa học câu trả lời khách quan cho vấn đề khó khăn Khoa học thống kê khoa học thu thập, phân tích, diễn giải trình bày liệu để từ tìm chất tính quy luật tượng kinh tế, xã hội - tự nhiên Khoa học thống kê dựa vào lý thuyết thống kê, loại toán học ứng dụng Trong lý thuyết thống kê, tính chất ngẫu nhiên khơng chắn làm mơ hình dựa vào lý thuyết xác suất Vì mục đích khoa học thống kê để tạo thông tin "đúng nhất" theo liệu có sẵn, có nhiều học giả nhìn khoa thống kê loại lý thuyết định Thống kê công cụ quản lý vĩ mô quan trọng, cung cấp thông tin thống kê trung thực, khách quan, xác, đầy đủ, kịp thời việc đánh giá, dự báo tình hình, hoạch định chiến lược, sách, xây dựng kế hoạch phát triển kinh tế - xã hội đáp ứng nhu cầu thông tin thống kê tổ chức, cá nhân Trong số vai trị quan trọng dự báo tình hình vai trị mang nhiều ý nghĩa, có q trình huấn luyện bên có tính xử lý tự động huấn luyện Hay nói khác có tri thức lấy từ liệu thống kê hay kinh nghiệm người dùng kết hợp với phương pháp học (huấn luyện) dựa lý thuyết thống kê ta có cỗ máy có tri thức để tự đưa định với độ xác cao Phân tích thống kê khâu quan trọng thiếu cơng trình nghiên cứu khoa học, khoa học thực nghiệm Một cơng trình nghiên cứu khoa học, cho dù có tốn quan trọng cỡ nào, khơng phân tích phương pháp khơng có hội xuất tập san khoa học Ngày nay, cần nhìn qua tất tập san nghiên cứu khoa học giới, báo y học có phần “Statistical Analysis” (Phân tích thống kê), nơi mà tác giả phải mô tả cẩn thận phương pháp phân tích, tính tốn nào, giải thích ngắn gọn sử dụng phương pháp để hàm ý “bảo kê” hay LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng tăng trọng lượng khoa học cho phát biểu báo Các tập san y học có uy tín cao u cầu phân tích thống kê nặng Khơng có phần phân tích thống kê, báo xem “bài báo khoa học” Khơng có phân tích thống kê, cơng trình nghiên cứu chưa xem hồn tất Trong khoa học thống kê, có hai trường phái “cạnh tranh” song song với nhau, trường phái tần số (frequentist school) trường phái Bayes (Bayesian school) Phần lớn phương pháp thống kê sử dụng ngày phát triển từ trường phái tần số, nay, trường phái Bayes đà “chinh phục” khoa học suy nghĩ “mới” khoa học suy luận khoa học Phương pháp thống kê thuộc trường phái tần số thường đơn giản phương pháp thuộc trường phái Bayes Có người ví von làm thống kê theo trường phái Bayes thiên tài! Để hiểu khác biệt hai trường phái này, có lẽ cần phải nói đơi qua vài dịng triết lý khoa học thống kê ví dụ nghiên cứu y khoa Để biết hai thuật điều trị có hiệu giống hay không, nhà nghiên cứu phải thu thập liệu hai nhóm bệnh nhân (một nhóm điều trị phương pháp A, nhóm điều trị phương pháp B) Trường phái tần số đặt câu hỏi “nếu hai thuật điều trị có hiệu nhau, xác suất mà liệu quan sát bao nhiêu”, trường phái Bayes hỏi khác: “Với liệu quan sát được, xác suất mà thuật điều trị A có hiệu cao thuật điều trị B bao nhiêu” Tuy hai cách hỏi đầu đọc qua chẳng có khác nhau, suy nghĩ kỹ thấy khác biệt mang tính triết lý khoa học ý nghĩa quan trọng Đối với người bác sĩ (hay nhà khoa học nói chung), suy luận theo trường phái Bayes tự nhiên, hợp với thực tế Trong y khoa lâm sàng, người bác sĩ phải sử dụng kết xét nghiệm để phán đoán bệnh nhân mắc hay không mắc ung thư (cũng giống nghiên cứu khoa học, phải sử dụng số liệu để suy luận khả giả thiết) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng 1.2 Cấu trúc Các phần cịn lại khóa luận có cấu trúc sau: Chương trình bày sở lý thuyết Bayes khái niệm, phương pháp sử dụng khố luận Chương trình bày lý thuyết Bayes nâng cao - Naive Bayes Chương đề cập đến khái niệm, ưu điểm ứng dụng phân loại từ nghiên cứu xây dựng hệ thống phân loại văn Chương trình bày chi tiết lọc bao gồm vấn đề sở tri thức, việc huấn luyện cho lọc, cách thức làm việc hướng cải tiến việc lọc thư rác Chương trình bày kết luận chương trình ứng dụng lọc BayesSpam cài đặt hệ thống thư điện tử Squirrelmail LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Chương 2.1 Cơ sở lý thuyết Phát biểu định lý Bayes Định lý Bayes cho phép tính xác suất xảy kiện ngẫu nhiên A biết kiện liên quan B xảy Xác suất ký hiệu P(A|B), đọc "xác suất A có B" Đại lượng gọi xác suất có điều kiện hay xác suất hậu nghiệm rút từ giá trị cho B phụ thuộc vào giá trị Theo định lí Bayes, xác suất xảy A biết B phụ thuộc vào yếu tố: Xác suất xảy A riêng nó, khơng quan tâm đến B Kí hiệu P(A) đọc xác suất A Đây gọi xác suất biên duyên hay xác suất tiên nghiệm, "tiên nghiệm" theo nghĩa khơng quan tâm đến thông tin B Xác suất xảy B riêng nó, khơng quan tâm đến A Kí hiệu P(B) đọc "xác suất B" Đại lượng gọi số chuẩn hóa (normalising constant), ln giống nhau, không phụ thuộc vào kiện A muốn biết Xác suất xảy B biết A xảy Kí hiệu P(B|A) đọc "xác suất B có A" Đại lượng gọi khả (likelihood) xảy B biết A xảy Chú ý không nhầm lẫn khả xảy A biết B xác suất xảy A biết B Khi biết ba đại lượng này, xác suất A biết B cho công thức: LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Chương Giải toán lọc thư rác 4.1 Đặt vấn đề Thư rác bắt đầu gọi "spam" sau chương trình truyền hình có tên "Monty Python’s Flying Circus" Trong show truyền hình này, nhóm cướp biển Vikings vào ăn nhà hàng chuyên phục vụ đồ hộp (spam), hát toáng lên ca khúc lặp lặp lại chữ "quảng cáo" Ý nghĩa ban đầu thư rác rõ ràng: Một thứ lặp lặp lại gây bực tức, khó chịu cho người xung quanh Đó phạm vi hẹp cịn mơi trường internet khơng cịn khoảng cách địa lý có nhiều người phải chịu bực tức, cảnh nhàm chán gây ức chế tâm lý thời gian vào Phần lớn thư không mời mà đến, thư chào hàng quảng cáo bị cho thư rác theo nhận xét số đông người dùng thư điện tử Đây vấn đề nan giải mà hệ thống, hòm mail, nhà quản trị mạng phải đối mặt thời điểm mà xã hội thông tin ngày phát triển với tốc độ chóng mặt Để lọc phát thư rác, cần có giải pháp lâu dài biện pháp kĩ thuật, quy ước xã hội dùng đến pháp luật Nhưng giải pháp thi hành khoảng thời gian ngắn chúng bị phá vỡ spammer, ngun nhân họ ln nghĩ bẫy đánh lừa người dùng hay lách luật mà tổ chức chống thư rác quy ước Như giải pháp ngăn chặn thư rác hiệu dùng lâu dài? Một phương pháp tốt để người dùng thư điện tử ngăn chặn thư rác, họ hiểu vấn đề cách tường minh Chúng ta dùng cảm nhận thư rác người để huấn luyện cho lọc thư rác họ Mỗi lọc xử lý thư rác tùy theo phong cách người dùng thư điện tử Và mơ hình thống kê Bayes áp dụng để thực thi ý tưởng Từ đặc điểm trên, ta thấy việc xây dựng lọc thư rác thông minh loại bỏ cách xác nhiệm vụ nhiều thách thức 30 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng 4.2 Bài toán Thư điện tử phương tiện để giao tiếp đáng tin cậy khơng tốn chi phí sử dụng Phạm vi sử dụng rộng khắp tồn giới dễ dàng truy cập hầu hết phương tiện truyền thông biến thành nạn nhân kẻ spam Hậu đơn giản làm tốn băng thông mạng nghiêm trọng làm thời gian người dùng thư điện tử, làm lan truyền vi rút máy tính Có thời điểm người ta thống kê có đến 60% thư điện tử thư rác ngày người dung thư điện tử phải nhận cú spam Chúng ta đổi địa hòm thư lần bị spam điều không hạn chế thư rác mà có cịn làm cho gia tăng Vậy cần phải tìm giải pháp chống thư rác sử dụng lọc gắn thuật toán phân loại với tính hiệu kĩ thuật đơn giản dễ cài đặt Và yêu cầu thiếu có với thuật tốn kẻ spam hiểu việc chúng cố tình spam vơ dụng 4.3 Tiền xử lý thư điện tử Bộ lọc cá nhân tích hợp vào địa hịm thư người dùng Nó ln ln trạng thái chờ thư đến để xử lý Một thư gửi đến địa người dùng thư phải phân loại có thư rác hay khơng Nếu thư rác bị ném vào thư mục ‘sọt rác’ ngược lại cho vào thư mục ‘thư đến’ chờ người dùng duyệt Để có kết quả q trình kiểm duyệt nghiêm ngặt kết hợp nhiều công đoạn đánh giá địa người gửi, thư gửi đến từ IP, DNS có nằm blacklist tổ chức chống thư rác quốc tế hay không, hay đơn giản xem thư có sai với định dạng thư thơng thường hay khơng (ví dụ tiêu đề thư nhiều dấu than, dấu hỏi, hay viết hoa tồn bộ, màu sắc nhịe nhoẹt,… Qua bước sàng lọc bắt đầu tiền xử lý cho lọc Bayes Với thư quét toàn văn bao gồm header mã nhúng HTML kể javascript thông điệp Hiện đánh giá kí tự gồm chữ số, nét gạch, dấu than dấu $ vào thẻ, lại cho vào thẻ riêng biệt Bỏ qua thẻ mà chứa chữ số bỏ qua đoạn comment HTML, tách thẻ khơng cần đánh giá Như sau bước thư ứng với tập hợp chứa thẻ riêng biệt 31 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng 4.4 Dùng luật Bayes tính xác suất Tính xác suất cho thẻ ta dùng luật Bayes để tính Giả sử ta cần tính xác suất cho thẻ chứa từ ‘promotion’ Từ thường xuyên gặp thư điện tử mời chào dịch vụ maketing Cơng thức tính theo luật Bayes: Trong đó: Pr(S|W) xác suất mà thư mà chứa từ ‘promotion’ thư rác Pr(S) xác suất mà thư thư rác P(W|S) xác suất mà từ "promotion" xuất thư rác Pr(H) xác suất mà tin khơng thư rác P(W|H) xác suất mà từ "promotion" xuất thư rác Như nói trên, thống kê gần cho thấy 80% thư điện tử thư rác nên ta có: Tuy nhiên đơn giản qua thực tế nên người ta chọn xác suất trước giống có giá trị 0.5 Tức là: Bộ lọc mà dùng giả thiết gọi "khơng đối xứng", có nghĩa chúng khơng có đối xử phân biệt thư đến Giả thiết cho phép rút gọn công thức thành: Bộ lọc thư rác Bayesspam vận dụng xác cơng thức để tính xác suất cho từ đơn Sau tính xác suất thư chứa từ đơn thư rác ta cần kết hợp xác suất đơn lại thành xác suất cuối Xác suất dùng để đánh giá thư mà 32 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng chứa tất từ đơn có xác suất thư rác Cơng thức tính xác suất kết hợp là: f Trong đó: p xác suất thư xét thư rác p1là xác suất p(S|W1), ứng với từ (ví dụ từ "promotion") p2 xác suất p(S|W2) , ứng với từ thứ hai (ví dụ từ "offer") pN xác suất p(S|WN) , ứng với từ thứ N (ví dụ từ "home") Kết p thường dùng so sánh với ngưỡng để định thư xét có xác suất p có thư rác hay khơng Nếu p lớn giá trị ngưỡng, thư bị đánh dấu thư rác, ngược lại không bị đánh dấu thư rác 4.5 Huấn luyện cho lọc Bayes Sử dụng hai tập thư điện tử huấn luyện, tập thư rác tập cịn lại khơng phải thư rác Mỗi tập chứa khoảng 4000 thư Đếm số lần xuất thẻ tập thư điện tử Mỗi lần đếm kết thúc với hai bảng băm Mỗi bảng băm tương ứng với tập thư điện tử, bảng ánh xạ thẻ đến số lần xuất thẻ Tiếp theo tạo bảng băm thứ 3, bảng băm ánh xạ thẻ tới xác suất mà email chứa email spam Ta tính theo cơng thức sau đây: 33 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Trong đó: Ngood ứng với số thư thư rác Nbad ứng với số thư thư rác Công thức diễn tả theo biểu thức ngôn ngữ Arc Mỗi biểu thức cặp dấu ngoặc đơn Trong ngoặc danh sách với biểu thức đứng vị trí theo sau tham số Thực biểu thức từ trái qua phải Ví dụ: (< (+ g b) 5) tương đương với (g + b) < Cơng thức tính xác suất cho từ hay thẻ (word) sau: Thẻ lấy từ bảng good, bảng băm thẻ tập thư thư rác nhân đôi lên Nhân đôi lên để giảm độ chênh lệch xác suất thư rác thư rác, tăng độ xác việc phân loại Tiếp theo thẻ ta lấy từ bảng bad, bảng băm thẻ tập thư rác Như ta có số g ứng với lần suất thẻ tập thư thư rác b ứng với số lần xuất thẻ trong tập thư rác Nếu tổng g b nhỏ thẻ bị loại bỏ Xác suất tính nằm khoảng giá trị từ 01 đến 99 Xét cho việc tính tốn tương ứng với cơng thức tính xác suất dạng luật Bayes đơn giản sau: Như kết q trình huấn luyện bảng băm hay nói khác sở liệu rút từ tập thư huấn luyện Bảng băm ánh xạ thẻ đến giá trị xác xuất chúng Bảng băm sở định cho việc tính tốn xác suất thư điện tử thư rác 4.6 Lọc thư đến, có thư rác khơng? Khi thư đến, phải trải qua vài công đoạn xử lý phân loại trước vào hộp thư người dùng Tại lại thế? Nó cần phải đánh giá có thư rác hay không Lọt qua bước tiền xử lý lọc thô, người ta lọc đến nội dung có phải thư rác khơng cách nội dung text quét vào thẻ, thường mười lăm thẻ quan tâm nhất, thẻ quan tâm thẻ mà xác suất chúng đạt mức trung bình 0.5, dùng để tính tốn xác suất mà thư có spam hay không Cách vài năm phần cứng máy tính cịn nhiều hạn chế, để tiết 34 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng kiệm tài nguyên tốc độ xử lý thông tin người ta đặt số thẻ tối đa mười lăm để tính xác suất thư thư rác Ngày vấn đề phần cứng dư sức đáp ứng cho ứng dụng lọc thư nên số thẻ khơng cịn bị giới hạn Khi mà số thẻ khơng cịn bị hạn chế tức ta phải tính xác suất kết hợp tất chúng Sẽ có trường hợp thẻ chưa xuất bảng băm xác suất Như phải gán giá trị xác suất cho thẻ đó? Kinh nghiệm cho thấy gán giá trị 0.4 hợp lý Nói khác xác suất ngây thơ Ta tính xác suất kết hợp giá trị xác suất đơn theo công thức sau đây: Đoạn mã vận dụng xác theo cơng thức tính xác suất kết hợp xác suất trình bày mục trên: Kết p sau so sánh với ngưỡng để phân loại xác thư rác nói Như lần có thư đến ta xác định thêm thư thuộc loại để bổ xung vào tập huấn luyện lọc Người ta xếp time để chạy lại trình huấn luyện để cập nhật lại hay nói khác nâng cao tri thức, khả phân loại cho lọc Vì mà lọc qua thời gian sử dụng phân loại xác khiến người dùng phải bất ngờ khả phân loại gần giống với việc người dùng tự phân loại 4.7 Bộ lọc BayesSpam Bộ lọc BayesSpam thực việc lọc thư điện tử theo quy trình cách thức trình bày Ngơn ngữ lập trình dùng để xây dựng lọc viết ngôn ngữ lập trình Web PHP dạng plugin tiện cho việc tích hợp vào hệ thống thư điện tử Bộ lọc chạy độc lập với người dùng Tức người dùng có lọc cho riêng họ Bộ lọc BayesSpam cho phép người dùng thư điện tử tự cấu hình lọc từ chối dùng lọc Người dùng gần làm chủ lọc việc điều chỉnh thông tin cấu hình Có thể tham khảo tính cung cấp cho người dùng bảng điều khiển hình 35 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật tốn Bayes ứng dụng Hình 16: Bảng điều khiển lọc dành cho người dùng thư điện tử Một thư bị đánh dấu thư rác bị di chuyển vào sọt rác Và tiêu đề thư bị đánh dấu thành thư rác [**SPAM/Thư rác**] Ở hình thư rác cấu hình cho riêng vào thư mục ‘test’ Sau khoảng thời gian ngắn lọc tự động xây dựng lại sở liệu dùng thư mà phân loại để cập nhật lại bảng xác suất nói Bộ lọc làm việc ổn định, tốc độ xử lý thơng tin nhanh thuật tốn ngắn gọn Mỗi có kiện lọc tự cập nhật lại sở liệu nhằm gia tăng khả lọc thư Việc huấn luyện cho lọc song song với trình sử dụng phụ thuộc vào cách nhìn nhận thư rác người Nói khác theo thời gian sử dụng lọc mang tính cách duyệt thư điện tử người dùng, người mà cấu hình huấn luyện Sau bước cấu hình dùng lọc cần thao tác dạng report cho lọc thư rác đánh giá lại thành khơng phải thư rác Thông thường người ta hay dùng nút đánh dấu thư rác, phải dùng đến nút khơng phải thư rác Lúc ban đầu sở liệu lọc nhỏ bé khả phân loại chưa tốt Người dùng phải tự nhận dạng thư đến có thư rác khơng 36 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Nhưng thư sau có nội dung tương tự thư rác mà đánh dấu người dùng lọc bắt xác Như rõ ràng thời gian sử dụng cách nhìn nhận thư rác người dùng có yếu tố định khả phân loại lọc Dưới hình ảnh thư rác thử nghiệm để chạy lọc lấy từ thư mục chứa thư rác: Hình 17: Thư rác bị lọc đưa vào thư mục Test, 943 thư rác Làm để Spammer tránh khỏi lọc thư rác? Câu trả lời cho câu hỏi minh chứng cho thấy việc cố gắng ‘spam’ vô ích dùng lọc Để không bị phát thư rác spammer phải cố gắng soạn thư điện tử có nội dung khác với thư mà người bình thường nghĩ thư rác đến 80% mặt nội dung thư hay nói xác khác từ ngữ dùng để viết lên nội dung thư Sẽ có hai trường hợp xảy cố gắng né tránh nội dung, từ ngữ thư khơng thể truyền đạt nội dung spam Tức thư quảng cáo khơng thể thiếu từ ngữ ‘mua sắm’, ‘trực tuyến’, ‘miễn phí’, ‘nhân dịp’, ‘mua hàng’, ‘khuyến mại’,… Khơng dùng từ ngữ spammer khơng thể soạn thư rác quảng cáo Như dùng cách né tránh lọc Còn cách thứ hai giữ nguyên nội dung quảng cáo không soạn thư tiếng việt chuẩn mà viết theo ngơn ngữ teen Ví dụ thay dấu ngã thành ‘~’, dấu chấm thành ‘.’, dấu hỏi thành ‘?’… “Khuye^’n mai mua hang gia’ re? nha^’t …” Cách hay mặt kĩ thuật (làm rối loạn thẻ từ sở liệu khơng phải khơng khắc phục được) có lại phản tác dụng có nhiều người ghét thấy ngứa mắt với kiểu viết chữ nên nhiều spammer phải từ bỏ phương án 37 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Như spammer xả thư rác bình thường người dùng thư khơng bị quấy rối nhiều lần họ báo cho lọc biết thư rác vài lần Các lần sau huấn luyện lọc thơng minh lọc hết thư rác cách xác đến khơng ngờ Hầu hết người dùng trung thành với lọc đánh giá cao khả lọc thư BayesSpam hiệu khơng có sai sót Và thực tế hoạt động tốt hệ thống thư điện tử trường Công nghệ (http://mail.coltech.vnu.vn) 4.8 Một số cải tiến cho lọc BayesSpam Trước đề cập đến vấn đề cải tiến ta cần quan tâm đến hạn chế lọc khoảng thời gian dài người dùng thư điện tử không đăng nhập giả sử lúc người dùng nhận số lượng lớn thư dẫn đến tình trạng đăng nhập bị chậm ì ạch chờ lọc thư đến Để khắc phục tình trạng việc lọc thư cần hoạt động theo định kì mà không chờ người dùng đăng nhập Mỗi thư file đặt thư mục (INBOX, SENT, TRASH,…), lọc âm thầm lọc thư người dùng không trực tuyến Do lọc chung cho người nên phải xây dựng dựa phong cách chung, nhìn chung thư rác tất người dùng Để làm điều lọc phải huấn luyện kĩ lưỡng dựa liệu thư người dùng Trong khóa luận trình bày ứng dụng chọn lọc thư huấn luyện trích chọn từ thư tất người dùng hệ thống thư điện tử Squirrelmail dùng lọc BayesSpam Ứng dụng web viết ngôn ngữ PHP, có giao diện đơn giản đây: 38 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Hoạt động ứng dụng: Tạo thư mục tập huấn luyện Corpus chứa thư mục thư mục thư rác (SPAM) thư rác (HAM) Dựa CSDL lọc (spamCorpus) lấy tên người dùng lọc Với người dùng, copy tất file thư thư mục sọt rác (TRASH) vào thư mục SPAM Tương tự copy tất file thư mục hộp thư (INBOX) vào thư mục (HAM) Xử lý thư mục SPAM Chọn lọc thư có số Bayes cao (lớn ngưỡng đưa ra) ứng với thư có xác suất thư rác cao thư loại thư mục Dựa vào thuộc tính messageID bảng ScoreCache CSDL Xử lý thư mục HAM Chọn lọc thư có số Bayes thấp (nhỏ ngưỡng đưa ra) ứng với thư có xác suất không thư rác cao thư loại thư mục Dựa vào messageID bảng ScoreCache Sau q trình ta có tập huấn luyện chọn lọc từ người dùng lọc Tập huấn luyện nhìn chung thư rác tất người dùng lọc Có thể dùng tập huấn luyện để huấn luyện cho lọc đề cập 39 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Chương Kết luận Như nói từ đầu tốn học thống kê đóng vai trị quan trọng trọng lĩnh vực Thống kê giúp cho việc nắm bắt đánh giá tình hình trở lên trực quan dễ hiểu Xử lý ứng dụng liệu thống kê đem lại hiệu lớn lao việc tiên đốn từ xây dựng lên hệ tự động hóa hoạt động xác Hướng tiếp cận thống kê theo lý thuyết Bayes đơn giản đem lại hiệu cao mà ứng dụng phổ biến hầu hết lĩnh vực So với phương pháp khác, phương pháp thống kê Bayes lập luận theo kinh nghiệm tích lũy áp dụng vào mơ hình phân loại đối tượng linh hoạt hơn, phù hợp với đặc trưng toán Các chế ước lượng gần gũi với cách suy luận thơng thường mà kết phân loại tương đối giống với cách phân loại thông thường Các kết đạt là: Khoá luận tập trung nghiên cứu lý thuyết Bayes, từ bước sở tìm hiểu tiếp ứng dụng liên quan trực tiếp đến ngành cơng nghệ thơng tin ứng dụng lọc thư rác Q trình tìm hiểu nguyên lý cách thức hoạt động lọc rút kết luận ưu nhược điểm tiếp cận thống kê Bayes việc phân loại thư rác Đối với vấn đề ứng dụng thực tế, khoá luận sử dụng plugin BayesSpam đối tượng để tìm hiểu nghiên cứu Đối với vấn đề áp dụng lý thuyết Bayes, khố luận nghiên cứu xây dựng cơng thức tính xác suất cho việc xử lý thơng tin trở lên nhanh gọn có độ xác cao Từ việc tìm hiểu ứng dụng BayesSpam, khố luận rút số nhận định ưu điểm nhược điểm lọc trình hoạt động Kết phân loại thư rác nhìn chung gần giống với kết đánh giá thư người dùng Tuy nhiên, thời gian có hạn kiến thức chuyên môn hệ thống thư điện tử nên kết luận rút q trình nghiên cứu cịn nhiều hạn chế Dưới ưu nhược điểm lọc thư rác Bayes Những ưu điểm chính: Ưu điểm lọc thư rác Bayes huấn luyện người dùng sở Đây thể nói ưu điểm lớn nhất, tạo nét đặc trưng cách nhìn nhận thư rác người dùng 40 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Các thư rác mà người dùng nhận thường liên quan tới hoạt động trực tuyến người dùng Ví dụ, người sử dụng đăng ký vào tin trực tuyến mà người sử dụng xem xét thư rác Đang xem thơng tin chứa từ ngữ phổ biến cho tất tin, chẳng hạn tên tin nguồn gốc địa email Bộ lọc thư rác Bayesian định xác suất cao dựa cách nhìn nhận người sử dụng Thư điện thử hợp pháp nhận nhìn nhận theo xu hướng khác người Ví dụ, môi trường công ty, tên công ty bạn tên khách hàng đề cập thường xuyên Các lọc định thư rác xác suất thấp cho email có chứa tên Xác suất từ người dùng lớn dần theo thời gian huấn luyện, với hiệu chỉnh việc huấn luyện có thư lọc sai Kết là, lọc thư rác Bayesian tăng độ xác đào tạo thường xuyên theo quy tắc xác định trước Những nhược điểm chính: Một kỹ thuật sử dụng Spammer nhằm cố gắng để giảm tính hiệu lọc thư rác dựa vào nguyên tắc hoạt động Kĩ thuật chèn từ mà khơng phải bình thường liên kết với nội dung spam với số lượng lớn văn hợp pháp (thu thập từ nguồn tin tức hợp pháp hay văn chương) Do giảm giá trị xác suất kết hợp thư điện tử thư rác, làm cho có nhiều khả vượt qua lọc thư rác Bayes Một kỹ thuật khác sử dụng để che mắt lọc thư rác Bayes thay văn hình ảnh, trực tiếp đặt liên kết chứa nội dung spam đến hình ảnh Tồn nội dung tin nhắn, số phần nó, thay hình ảnh có nội dung trình bày lôi người xem Bộ lọc thư rác thường phân tích hình ảnh này, mà chứa từ nhạy cảm "khiêu dâm" Tuy nhiên, nhiều hệ thống thư điên tử vơ hiệu hố hình hiển thị liên kết hình ảnh lý bảo mật, spammer lại gửi liên kết đến hình ảnh xa tiếp cận với mục tiêu spam Ngồi ra, hình ảnh có kích thước lớn kích thước tương đương văn Do đó, spammer cần nhiều nhu cầu băng thông để gửi tin nhắn trực tiếp bao gồm hình ảnh 41 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Do vậy, sau bước tìm hiểu lý thuyết ứng dụng hướng nghiên cứu tiếp đề tài nhằm tăng hiệu lọc là: Tìm nhìn chung thư rác người dùng thư hệ thống thư điện tử Bằng cách rút email có xác suất thư rác cao để bổ xung vào tập huấn luyện chung cho tất người nhằm gia tăng kinh nghiệm cho lọc Ngăn chặn việc Spam hình ảnh việc đưa thơng báo thư rác có nội dung chủ yếu đồ họa Đơn giản khơng cho hiển thị hình ảnh người dùng duyệt thư trừ họ có nhu cầu xem hình ảnh tự họ bật hiển thị Tích hợp phân tích hình ảnh để lấy văn hình nhằm giảm việc lọc sai loại bỏ tất thư có nội dung chủ yếu đồ họa Việc đòi hỏi hệ thống phải mạnh thuật tốn phân tích hình ảnh thơng minh Bổ xung thêm vào tập từ trung tính tiếng Việt cho lọc nhằm tăng tốc tiết kiệm tài nguyên cho sở liệu Ví dụ từ trung tính tiếng việt ứng với từ trung tính tiếng Anh như: thì, là, ở, cái, con, và, hoặc, … 42 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Phụ lục A Cơ sở liệu lọc 43 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Tài liệu tham khảo [1] Nguyễn Quốc Đại, Lý Thuyết Bayes, mạng Bayes (2009) [2] Nguyễn Thanh Sơn, Lê Khánh Luận; Lý thuyết xác suất thống kê toán; Nxb Thống kê (2008) [3] Nguyễn Duy Tiến, Trần Minh Ngọc Đại học Khoa Học Tự Nhiên, ĐHQGHN, Bài giảng Viện Thống Kê Thế Giới IMS Malaysia [4] Azam N, Dar H A, Marwat S; Comparative study on Feature Space Reduction for Spam Detection [5] Paul Graham; A plan for spam http://paulgraham.com/spam.html – 2002 [6] Wikipedia ; Bayesian Spam Filtering http://en.wikipedia.org/wiki/Bayesian_spam_filtering [7] Wikipedia ; Sequential Bayesian Filtering http://en.wikipedia.org/wiki/Sequential_bayesian_filtering Xem địa Xem Xem tại địa địa 44 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... luanvanchat@agmail.com Thuật toán Bayes ứng dụng Chương 3.1 Phân lớp Naive Bayes Định nghĩa Naive Bayes classifier thuật ngữ xử lý số liệu thống kê Bayesian với phân lớp xác suất dựa ứng dụng định lý Bayes với... luanvanchat@agmail.com Thuật toán Bayes ứng dụng Phụ lục A Cơ sở liệu lọc 43 Tài liệu tham khảo 44 v LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thuật toán Bayes ứng dụng Chương 1.1... luanvanchat@agmail.com Thuật toán Bayes ứng dụng kiệm tài nguyên tốc độ xử lý thông tin người ta đặt số thẻ tối đa mười lăm để tính xác suất thư thư rác Ngày vấn đề phần cứng dư sức đáp ứng cho ứng dụng lọc