slike thuyết trinh báo cáo đề tài phân loại thư rác dùng thuật toán nave bayes cải

17 778 0
slike thuyết trinh báo cáo đề tài phân loại thư rác dùng thuật toán nave bayes cải

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Các thành viên: Nguyễn Đình Dũng 20086079 Nguyễn Thành Lâm 20081487 Vũ Đông Lâm 20081496 Đoàn Ngọc Sơn 20082211 Trần Huy Hưng 20081307 “Đề tài: PHÂN LOẠI THƯ RÁC DÙNG THUẬT TOÁN NAÏVE BAYES CẢI TIẾN của PAUL GRAHAM”  Thư rác: - Chứa các quảng cáo sản phẩm, dịch vụ, đăng kí website trả phí,… được gửi với số lượng lớn và có giá trị thấp - Gây phiền toái, mất thời gian cho việc sắp xếp, tìm kiếm thư cá nhân - Mất thông tin cá nhân, thông tin tài khoản, thông tin thẻ tín dụng,… và các hình thức lừa đảo qua mạng Thư rác – Tác hại thư rác  Tốc độ tăng trưởng của thư rác: chiếm tỉ lệ lớn trong tổng số thư được gửi đi trên phạm vi toàn cầu  … Thư rác – tác hại thư rác  Đối với các email cá nhân thì phương pháp lọc thư rác phổ biến hiện nay là “phân loại qua nội dung của các email” bằng việc ứng dụng các phương pháp phân loại văn bản.  Phân loại email thực chất là phương pháp “phân loại văn bản hai lớp” dựa vào nội dung của các email được gửi đến.  Trong đề tài này nhóm em xin trình bày một phương pháp phân loại văn bản khá phổ biến “Naive Bayes” Bài toán Phân loại thư rác  Cơ sở của phương pháp phân loại văn bản Naive Bayes là chủ yếu dựa trên các giả định của Bayes.  Với mỗi văn bản D (document), người ta sẽ tính cho mỗi loại một xác suất mà tài liệu D có thể thuộc vào lớp tài liệu đó bằng việc sử dụng luật Bayes:  Tài liệu D sẽ được gán cho lớp tài liệu nào có xác suất hậu nghiệm cao nhất tức là lớp Ci nào có giá trị  P(C i | D) cao nhất trong tất cả các lớp Ci Bài toán Phân loại văn bản  Do bài toán PLTR chính là bài toán PLVB với 2 lớp là SPAM và NON-SPAM (HAM) nên có thể áp dụng thuật toán NB của PLVB sang PLTR.  Nguyên tắc tính các xác suất bằng thuật toán Bayes:  - Giả sử nội dung của mỗi thư điện tử là: content  - Lớp thư rác kí hiệu là: spam  - Lớp thư hợp lệ kí hiệu là: ham  - Word1, word2, word3…wordm là các từ đặc trưng xuất hiện trong content   cần tính: Xác suất để một thư điện tử là thư rác: P(spam|content) Thuật toán Naïve Bayes trong PLTR  Trong đó total được xác định như sau:  Total = P(content | spam)*P(spam) + P(content | ham)*P(ham)  P(spam) = total spam / total messages  P(ham) = total ham / total messages   ĐẾM TẦN SỐ XUẤT  XUẤT HIỆN CỦA TỪ,  ĐẾM SỐ THƯ mỗi loại. Thuật toán Naïve Bayes trong PLTR  Theo tác giả của bài viết Paul Graham, để giải quyết bài toán thư rác, ta vẫn có thể sử dụng thuật toán Naïve Bayes với một vài thay đổi so với thuật toán ban đầu.  Ý tưởng cơ bản của thuật toán cải tiến này là sử dụng xác suất kết hợp của các từ xuất hiện trong mail. Thuật toán Naïve Bayes của Paul Graham  Một người có chiều cao trên 1m9 thì xác suất anh ta có chơi bóng rổ là 60%. Một người đang cầm 1 quả bóng rổ thì xác suất anh ta chơi bóng rổ lên đến 80%. Hỏi một người vừa cao trên 1m9, vừa cầm bóng rổ trên tay thì xác suất anh ta chơi bóng rổ là bao nhiêu?  Bài toán trên cho ta một cách hiểu dễ dàng nhất về khái niệm xác suất kết hợp. Nếu gọi a, b là hai xác suất đơn. Thì xác suất kết hợp của chúng sẽ được tính bằng:  ab / (ab + (1-a)*(1-b))   Xác suất kết hợp = 0.6*0.8/(0.6*0.8 + 0.4*0.2) = 0.857 Xác suất kết hợp  Tổng quát hóa công thức xác suất kết hợp của các xác suất đơn p1, p2, …, pn:  p1*p2*…*pn / (p1*p2*…*pn +(1-p1)*(1-p2)*…*(1-pn))  Từ đó, có thể suy ra cách áp dụng xác suất kết hợp vào việc tính xác suất là thư rác của một email sẽ bằng xác suất kết hợp của các từ trong email đó với giả thiết các từ độc lập xác suất với nhau. Dễ thấy một mail các có nhiều từ có xác suất là thư rác cao thì giá trị của xác suất kết hợp cũng sẽ cao Xác suất kết hợp và thuật toán của PG [...]... email được lưu trong file index để đưa ra đánh giá hiệu quả thuật toán phân loại bằng cách thống kê và viết báo cáo Demo bộ lọc thư rác SpamFilterSample   -Áp dụng thuật toán NB cải tiến -Công việc của nhóm: tìm tập mẫu khác, phân chia tập mẫu thành các tập Training Set và Test Set có kích thư c khác nhau để đánh giá và so sánh hiệu quả của thuật toán, thiết kế thêm tính năng kiểm tra hàng loạt Test Batch... ưu)  bỏ qua Lấy giá trị ngưỡng được chọn = 0.9, nghĩa là xác suất một email là SPAM: P(SPAM|Mail) > 0.9 thì thư đó sẽ được phân loại là thư rác, trái lại nó sẽ là thư thường Thuật toán NB cải tiến – Test Phrase  Công việc: nạp tất cả các email trong tập Test vào bộ lọc thư rác, để bộ lọc phân loại và trả về nhãn của mỗi email dựa trên kinh nghiệm của nó - những gì mà bộ lọc đã được “học” từ các ví.. .Thuật toán NB cải tiến – Training Phrase  Từ tập dữ liệu mẫu là các file text (mỗi file chứa nội dung của một email) và một file index lưu giữ thông tin về nhãn đúng của từng email (dùng cho việc tối ưu tham số và tạo báo cáo) , ta chia các file text (email) ra làm 2 tập: tập huấn luyện (Training Set) và tập kiểm... thể thay đổi để đánh giá hiệu quả theo tham số này Thuật toán NB cải tiến – Training Phrase   Sau khi xong xác suất là thư rác của toàn bộ email,cần một giá trị ngưỡng để thực hiện điều này Lẽ ra việc chọn ngưỡng sẽ thuộc về pha tối ưu (Cross Validation) dựa vào việc đánh giá hiệu quả của pha huấn luyện với các giá trị ngưỡng khác nhau (trong bài toán Học máy thì ngưỡng là một tham số học – learning... trong SPAM Sau đó lưu các giá trị xác suất này vào một danh sách được sắp xếp theo giá trị xác suất (kiểu SortedList) và gọi danh sách này là Bảng xác suất Thuật toán NB cải tiến – Training Phrase      Xác suất một từ xuất hiện trong thư rác được tính bởi công thức: P (SPAM|w) = P(w|SPAM) / ((P(w|SPAM) + P(w|HAM) Trong đó: - P(w|SPAM) = số lần xuất hiện của w trong SPAM / số từ trong tập SPAM... “đáng quan tâm” nhất trong thư đó (15 most interesting words) chứ không phải của tất cả các từ trong thư Trong đó, mức độ đáng quan tâm của mỗi từ được tính dựa vào độ chênh lệch về xác suất P(SPAM|w) với giá trị trung lập 0.5, tức là đây là 15 từ đặc trưng cho email này, các giá trị xác suất này rất gần giá trị xác suất tuyệt đối 0 hoặc 1 và có ảnh hưởng lớn đến việc phân loại email đó Con số 15 cũng... thể chạy thì cần có thư mục \Test Data chứa:    Tập dữ liệu mẫu: 6000 file, mỗi file lưu nội dung một email   File ProbList.txt lưu trữ Bảng xác suất, sinh ra khi thực hiện nạp dữ liệu huấn luyện File index.txt: lưu nhãn đúng của mỗi email trong tập mẫu, Các file SPAM.txt, HAM.txt, SPAM2000.txt, HAM2000.txt: lưu các tập huấn luyện với kích thư c tương ứng 4000 thư và 2000 thư đầu tiên trong tập... file index để tìm nhãn đúng của mỗi email Nếu một email là SPAM thì ghi thêm nội dung của mail này (không bao gồm tiêu đề và các thông tin khác) vào file SPAM.txt, ngược lại nội dung của mail sẽ được ghi thêm vào file HAM.txt  Sau khi tiến hành đọc này, ta thu được 2 file có kích thư c tương đối lớn Mục đích của bước lưu tất cả nội dung mail của mỗi nhóm (SPAM vs HAM) vào 1 file lớn là để tiện cho . Ngọc Sơn 20082211 Trần Huy Hưng 20081307 Đề tài: PHÂN LOẠI THƯ RÁC DÙNG THUẬT TOÁN NAÏVE BAYES CẢI TIẾN của PAUL GRAHAM”  Thư rác: - Chứa các quảng cáo sản phẩm, dịch vụ, đăng kí website trả. thì thư đó sẽ được phân loại là thư rác, trái lại nó sẽ là thư thường. Thuật toán NB cải tiến – Training Phrase  Công việc: nạp tất cả các email trong tập Test vào bộ lọc thư rác, để bộ lọc phân. giá hiệu quả thuật toán phân loại bằng cách thống kê và viết báo cáo Thuật toán NB cải tiến – Test Phrase  -Áp dụng thuật toán NB cải tiến  -Công việc của nhóm: tìm tập mẫu khác, phân chia tập

Ngày đăng: 23/10/2014, 23:24

Từ khóa liên quan

Mục lục

  • Slide 1

  • Thư rác – Tác hại thư rác

  • Thư rác – tác hại thư rác

  • Bài toán Phân loại thư rác

  • Bài toán Phân loại văn bản

  • Thuật toán Naïve Bayes trong PLTR

  • Thuật toán Naïve Bayes trong PLTR

  • Thuật toán Naïve Bayes của Paul Graham

  • Xác suất kết hợp

  • Xác suất kết hợp và thuật toán của PG

  • Thuật toán NB cải tiến – Training Phrase

  • Thuật toán NB cải tiến – Training Phrase

  • Thuật toán NB cải tiến – Training Phrase

  • Thuật toán NB cải tiến – Test Phrase

  • Demo bộ lọc thư rác SpamFilterSample

  • Hướng dẫn sử dụng chương trình:

  • Slide 17

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan