Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
281,25 KB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - LÊ THANH TRÀ ĐỀ TÀI: NGHIÊN CỨU CÁC PHƯƠNG PHÁP PHÂN LOẠI VĂN BẢN VÀ ỨNG DỤNG VÀO PHÂN LOẠI THƯ ĐIỆN TỬ Chuyên ngành: Khoa học máy tính Mã số: 60.48.01 TĨM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI - 2013 Luận văn hoàn thành tại: HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG Người hướng dẫn khoa học: PGS.TS NGUYỄN BÁ TƯỜNG Phản biện 1: …………………………………… Phản biện 2: …………………………………… Luận văn bảo vệ trước Hội đồng chấm luận văn thạc sĩ Học viện Cơng nghệ Bưu Viễn thơng Vào lúc: ngày tháng năm… Có thể tìm hiểu luận văn tại: - Thư viện Học viện Cơng nghệ Bưu Viễn thơng MỞ ĐẦU Phân loại văn vấn đề quan trọng lĩnh vực xử lý ngôn ngữ Nhiệm vụ toán gán tài liệu văn vào nhóm chủ đề cho trước Đây toán thường gặp thực tế Ngày nay, Internet mở nhiều kênh liên lạc, nhiều dịch vụ cho người sử dụng, dịch vụ mà Internet mang lại dịch vụ thư điện tử(email), phương tiện giao tiếp đơn giản, tiện lợi, rẻ hiệu Phương tiện gửi email lúc đến hàng trăm ngàn người vài giây Tuy nhiên, thoải mái giao tiếp mạng bị lạm dụng Trong năm gần đây, spam hay email không mong muốn trở thành vấn nạn đe dọa khả giao tiếp người kênh liên lạc này, thách thức lớn mà khách hàng nhà cung cấp dịch vụ phải đối phó Spam trở thành hình thức quảng cáo chuyên nghiệp, phát tán virus, ăn cắp thông tin với nhiều thủ đoạn mánh khóe tinh vi Người dùng phải nhiều thời gian để xóa email “khơng mời mà đến”, vơ ý cịn bị nhiễm virus nặng nề thông tin thẻ tín dụng, tài khoản ngân hàng qua email dạng phishing Vì vậy, cần có hệ thống phân loại đâu spam mail đâu mail tốt Qua trình học tập nghiên cứu, tiếp cận phương pháp phân loại văn nói chung phương pháp lọc thư điện tử nói riêng, tơi chọn đề tài: “Nghiên cứu phương pháp phân loại văn ứng dụng vào phân loại thư điện tử” Qua đề tài tơi có hội để tìm hiểu sâu thêm phương pháp phân loại văn bản, phương pháp phân loại, lọc thư spam đặc biệt phương pháp phân loại thư điện tử thuật tốn Naive Bayes Luận văn trình bày vấn đề liên quan đến phân loại văn ứng dụng việc lọc thư điện tử Một giải thuật áp dụng cho phân lớp spam, giải thuật Naive Bayes, giải thuật cho kết khả quan việc tách spam khỏi thư thư hợp lệ Việc token hoá, ước lượng xác suất chọn đặc trưng tiến trình thực trước phân lớp tất tiến trình có ảnh hưởng quan trọng đến hiệu suất lọc spam, giới thiệu triển khai lọc thư điện tử spam dựa kỹ thuật Naive Bayes Chương – MỘT SỐ PHƯƠNG PHÁP PHÂN LOẠI VĂN BẢN Phân loại văn vấn đề quan trọng lĩnh vực xử lý ngơn ngữ Để giải tốn có nhiều phương pháp đưa như: thuật toán Naive Bayes, KNN (K-Nearest-Neighbor), định (Decision Tree), mạng Neuron nhân tạo (Artificial Neural Network) SVM (Support Vector Machine) Mỗi phương pháp cho kết khác cho toán này, chương nghiên cứu số phương pháp nói 1.1 Bài toán phân loại văn 1.1.1 Giới thiệu 1.1.2 Phát biểu toán Bài toán phân loại văn phát biểu sau : Cho trước tập văn D={d1,d2,…,dn} tập chủ đề định nghĩa C={c1,c2,…,cn} Nhiệm vụ toán gán lớp di thuộc cj định nghĩa 1.2 Mơ hình tổng qt Có nhiều hướng tiếp cận toán phân loại văn nghiên cứu như: tiếp cận toán phân loại dựa lý thuyết đồ thị, cách tiếp cận sử dụng lý thuyết tập thô, cách tiếp cận thống kê…Tuy nhiên, tất phương pháp dựa vào phương pháp chung máy học là: học có giám sát, học không giám sát học tăng cường Vấn đề phân loại văn theo phương pháp thống kê dựa kiểu học có giám sát đặc tả bao gồm giai đoạn: giai đoạn huấn luyện giai đoạn phân lớp 1.2.1 Giai đoạn huấn luyện Hình 1.1: Mơ hình giai đoạn huấn luyện 1.2.2 Giai đoạn phân lớp Hình 1.4: Mơ hình giai đoạn phân lớp 1.3 Tiền xử lý văn 1.4 Một số phương pháp phân loại văn 1.4.1 Thuật toán Naive Bayes 1.4.2 Cây định (Decision Tree) 1.4.3 Phương pháp phân loại văn K-NN (K – Nearest Neighbor) 1.4.4 Phương pháp SVM (Support Vector Machine) 1.5 Bài toán phân loại thư điện tử Phân loại thư điện tử thực chất tốn phân loại hai lớp, tập liệu mẫu đưa vào thư điện tử gồm thư rác(spam) thư hợp lệ(Legitimate), văn cần phân lớp Email gửi đến client Kết đầu trình hai lớp văn bản: Spam(thư rác) Legitimate (thư hợp lệ) 1.6 Kết luận chương Chương – NHỮNG VẤN ĐỀ VỀ THƯ ĐIỆN TỬ SPAM 2.1 Định nghĩa spam Hầu hết spam xem email không mong muốn, tất thư không mong muốn spam Một thuật ngữ khác để spam, email thương mại khơng u cầu Spam định nghĩa thư tạp nham (junk mail) 2.2 Các kiểu thư spam 2.2.1 Các đặc điểm thư spam Spam có đặc điểm ngơn ngữ, thời gian 2.2.2 Một số loại thư spam 2.3 Các phương thức đơn giản để loại bỏ thư spam 2.3.1 Sử dụng từ khóa 2.3.2 So sánh mẫu, danh sách whitelist danh sách blacklist 2.3.3 Kỹ thuật lọc cộng tác (Collaborative filtering) 2.3.4 Đo giao thoa email (E-mail interferometry) 2.3.5 Lọc mức mạng 2.3.6 Kỹ thuật nhân viên giả mạo (Fake worker) 2.3.7 Các lọc sở luật 2.3.8 Sử dụng chung danh sách blacklist dấu hiệu spam 2.3.9 Đánh giá mức độ pháp lý 2.4 Lọc spam phương pháp thống kê Năm 1998, số nghiên cứu thu kết tốt từ việc sử dụng phân lớp spam phương pháp thống kê Các lọc thống kê yêu cầu huấn luyện thư spam thư hợp lệ lọc dần trở nên hiệu sau huấn luyện Các lọc huấn luyện thư spam thư hợp lệ người sử dụng, spammer khó đánh lừa lọc Bộ phân lớp sử dụng đặc điểm mẫu để phân lớp thành lớp định nghĩa từ trước Bất đặc điểm mẫu xem xét dạng đặc trưng 2.4.1 Đặc trưng lớp Một đặc trưng đặc điểm, diện mạo, thuộc tính đối tượng Ví dụ, mầu mắt người đặc trưng, từ tài liệu văn đặc trưng Một đặc trưng tốt đặc trưng đặc biệt cho lớp đối tượng 2.5 Kết luận chương Chương – BỘ LỌC SPAM TRÊN CƠ SỞ KỸ THUẬT NAIVE BAYES Chương giới thiệu phân lớp sở kỹ thuật Bayes để xây dựng lọc học có độ tin cậy cao Phương pháp cho phép máy tính có khả tự tạo định thay phải hỏi người sử dụng cách định (các giải pháp sở luật) Sự xuất kỹ thuật máy học lọc spam bước cải tiến quan trọng cho hiệu suất lọc Các spammer kiểm tra lọc trước gửi thư đi, lọc người sử dụng có sở tri thức riêng Mặc dù spammer ln nghĩ ý tưởng để vượt qua lọc, với lọc Bayes huấn luyện tốt, xác lọc đạt tới 99% 3.1 Mạng Bayes 3.1.1 Tổng quát mạng Bayes 3.1.2 Mơ hình Naive Bayes Naive Bayes mạng Bayes đơn giản nút cha chứa mạng tất biến khác nút cha Nếu biến cha ‘Xp’, cơng thức phân bố kết nối trường hợp sau: P(Xp,X1, ,Xn)=P(Xp) P( Xi | Xp) fori= to n (3.1) 3.2 Bộ lọc spam sở mạng Bayes Bộ lọc spam sở mạng Bayes dựa vào nội dung email để phân lớp Các giai đoạn giải pháp sở mạng Bayes sau: - Đầu tiên cần token hoá nội dung email, nghĩa tách thành phần nhỏ để sử dụng xử lý - Bước tiếp theo, giá trị token xác định cách tìm kiếm bảng cập nhật (từ điểm token) Các giá trị token có liên quan có khoảng cách lớn từ giá trị trung tính (neutral) chúng gần với mặt nạ thư spam thư hợp lệ - Bước cuối sửa đổi giá trị token từ điển, điều đưa khả học liên tục với thông tin phản hồi (feedback) kết nhị phân cuối tạo 3.3 Giải thuật lọc sở mạng Bayes 3.3.1 Nạp email (Loading) 3.3.2 Tiền lọc (Pre-filtering) 3.3.3 Token hố (tokenization) 3.3.4 Tính tốn 3.3.5 Cập nhật tri thức cho lọc (Feedback) 3.3.6 Huấn luyện kiểu huấn luyện khác 3.3.7 Kiểm tra (Testing) 3.4 Giải pháp cụ thể cho giải thuật Bayes 3.4.1 Tổng quan Phần giới thiệu giải thuật cung cấp điều phân lớp Bayes lĩnh vực lọc spam Phần không giải vấn đề tiền xử lý, giải thuật làm việc với so trùng chuỗi xác Giải pháp sử dụng tất giá trị từ điển token, ngày sử dụng nhờ nguồn tài ngun tính tốn ràng buộc nên lọc làm việc với số giá trị giới hạn 3.4.2 Từ điển token Khi nhận thư mới, từ điển token tìm kiếm cho tất từ bao hàm thư (chú ý giải thuật cho phép token hoá từ thành từ) Hai tập từ xử lý: tập từ so trùng với từ điển (việc cập nhật cần thiết giá trị N1 N2), tập tập từ khơng có thư (không cần thiết cập nhật) Hai tập xây dựng lên email xử lý 3.4.3 Kết lọc 3.4.4 Huấn luyện (Training) 3.4.5 Kiểm tra sử dụng lọc 3.4.6 Tính tốn 3.4.7 Sơ đồ lọc Bayes Hình 3.1: Biểu đồ lọc spam sở Bayes 3.5 Các phương thức huấn luyện cho lọc dựa kỹ thuật Bayes 3.5.1 Tổng quan 3.5.2 Các phương thức huấn luyện khác 3.6 Bộ lọc spam dựa vào kỹ thuật Bayes Paul Graham 3.6.1 Giải thuật 3.6.2 Phân lớp văn Bayes Phân lớp thống kê dựa luật đơn giản sau: Nếu có nhiều token tồi thư spam thư tốt tìm thấy thêm token spam số thư, xem thư spam 3.7 Một số cải tiến cho lọc spam sở giải thuật Bayes 3.7.1 Cải tiến lọc spam Bayes PaulGraham Có hai cải tiến thêm vào: - Để loại bỏ việc phân lớp nhầm thư tốt, tần số thư tốt nhân ta tính xác suất thư spam - Khi token nằm tập sở liệu spam có sẵn, thiết lập xác suất tăng lên có nhiều token ví dụ: 0.9 cho tần số nhỏ, 0.99 cho tần số lớn 10 3.7.2 Cải tiến lọc spam Bayes sử dụng khoảng cách khác biệt hai chuỗi (Giải thuật SEDA) Giải thuật khoảng cách khác biệt chuỗi StringEdit Distance (SEDA) Giải thuật cung cấp tiêu chuẩn khoảng cách chuỗi Khoảng cách định nghĩa số thao tác nhỏ yêu cầu để đổi chuỗi nguồn thành chuỗi mục tiêu việc sử dụng ba thao tác : insert, delete replace (hoặc edit) Email có dạng tập dịng token (các từ) phân tách khoảng trống Khi token trích từ thân thư tất ký tự đầu cuối (các dấu chấm câu số) gỡ bỏ để lấy từ thực Một bảng sử dụng để lưu token tần số tương ứng Nó chứa tất token, tổng số lần xuất token thư spam thư hợp lệ tổng số thư spam thư hợp lệ xử lý giai đoạn huấn luyện Trong giai đoạn huấn luyện, phân lớp học cách xử lý thư từ lớp biết Ban đầu sở tri thức (dạng bảng băm) tìm kiếm token tìm thấy, đếm token tương ứng tăng lên Nếu khơng tìm thấy thực thể thêm vào với đến bắt đầu đếm thư spam thư hợp lệ tăng lên Các thư chưa biết phân lớp cách sử dụng kiến thức có sẵn sở tri thức Tiến trình phân lớp chứa hai tiến trình sau: - Cho trước thư chưa biết, xác suất thư spam hay thư hợp lệ tính tốn Nếu token tồn sở tri thức thư được nhận dạng spam tiến trình kết thúc - Nếu thư phân lớp hợp lệ, xác nhận độ xác việc phân tích thêm Xác suất việc phân lớp nhầm kết việc không thực trình khám phá từ bị sửa đổi 3.8 Kết luận chương Trong chương tìm hiểu mạng Bayes, bước xây dựng lọc sở mạng Bayes Đồng thời tìm hiểu cải tiến PaulGraham, giải thuật SEDA Cả hai phương pháp giúp nâng cao chất lượng lọc mạng Bayes, nhiên hai giải pháp có hạn chế định Chương – XÂY DỰNG BỘ LỌC CẢI TIẾN VÀ THỬ NGHIỆM 4.1 Xây dựng lọc cải tiến - Xây dựng danh sách xác suất spam tất token trình huấn luyện theo kỹ thuật PaulGraham - Trong phần phân lớp thư mới, với tất token, token thư có sở tri thức, ta đưa token xác suất spam vào danh sách T - Nếu token t khơng có sở tri thức, ta tính khoảng cách khác biệt chuỗi với tất token sở tri thức Chọn token sở tri thức có khoảng cách khác biệt chuỗi (so với chuỗi t) nhỏ nhỏ ngưỡng α Nếu tìm thấy token thêm xác suất spam vào danh sách T, khơng từ thực từ - Ta xây dựng từ điển từ chuẩn hoá bắt nguồn từ từ sở tri thức bổ sung thêm trình từ điển q trình phân lớp Như việc tính tốn khoảng cách khác biệt chuỗi duyệt tòan sở tri thức - Chọn danh sách 15 token điển hình danh sách T (có khoảng cách tính từ giá trị 0,5) Tính xác suất spam thư từ 15 giá trị token điển hình - Quyết định phân lớp dựa xác suất tổng hợp 4.2 Hiện thực phân lớp spam Bayes cải tiến ngôn ngữ Java 4.2.1 Các bước thực cấu trúc hệ thống 4.2.2 Xây dựng tập thư spam tập thư hợp lệ 4.2.3 Token hoá thư spam thư hợp lệ 4.2.4 Xây dựng danh sách tần số token 4.2.5 Xây dựng danh sách xác suất có khả spam token 4.2.6 Tính tốn 15 giá trị tốt 4.2.7 Kiểm tra email 4.2.8 Cập nhật sở tri thức cho lọc 4.2.9 Hiện thực giải thuật 4.3 Giới thiệu, thử nghiệm đánh giá hệ thống lọc spam cải tiến 4.3.1 Giới thiệu tính hệ thống lọc spam cải tiến: Hệ thống vừa thiết kế gồm có bốn cửa sổ chính: cửa sổ huấn luyện, sổ phân lớp, cửa sổ phân tích thư cửa sổ dành cho việc điều chỉnh tham số phục vụ mục đích thử nghiệm Giữa cửa sổ có ràng buộc mặt hệ thống trình huấn luyện phải hoàn thành trước phân lớp phân tích thư, tham số mặc định huấn luyện phân lớp 4.3.2 Thử nghiệm hệ thống lọc spam Bảng 4.1 Kết thử nghiệm phân lớp 3000 thư Giải thuật Bayes Thư spam Thư tốt 1478 1522 Giải thuật Bayes – 1517 1483 Paulgraham SEDA KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Các phân loại thư điện tử ngày áp dụng giải thuật máy học cho ta hiệu lọc cao, đặc biệt lọc thư spam áp dụng giải thuật Naive Bayes cho ta hiệu suất lọc đến 99% áp dụng cho nhà cung cấp dịch vụ thư điện tử lớn Yahoo, Hotmail…Các lọc thư spam desktop thương mại ngày áp dụng kỹ thuật với số cải tiến kết hợp nhỏ Việc áp dụng giải thuật máy học vào nhiệm vụ lọc spam làm cho phân lớp có khả thích nghi với spam hệ việc cập nhật tri thức cho sở tri thức lọc Trong khuôn khổ luận văn thạc sỹ CNTT, luận văn nêu bật phương pháp phân loại văn bản, vấn đề liên quan đến thư spam, giải pháp lọc thư spam dựa giải thuật máy học kỹ thuật Supported Vector Machines (SVM), k-Nearest-Neighbor (kNN), Neural Networks (NNet) Naive Bayesian (NB), vấn đề liên quan đến hiệu lọc việc kết hợp lọc nhằm nâng cao hiệu suất lọc Các bước triển khai lọc spam sở kỹ thuật Bayes thực bao gồm tiền xử lý liệu, huấn luyện phương thức huấn luyện, tính tốn cho phân lớp Một số cải tiến áp dụng cho lọc spam kỹ thuật Bayes nhân đơi tần số thư tốt ta tính xác suất thư spam, thiết lập ngưỡng xác suất, chọn số giá trị tốt để tính xác suất thư Một cải tiến khác thực áp dụng giá trị khoảng cách chuỗi theo giải thuật SEDA để phát token có tần số xuất cao spammer thay đổi thư spam, hiệu lọc tăng lên rõ rệt Tính nghiên cứu kết hợp lọc Bayes Paulgraham giải thuật SEDA Một lọc spam sở giải thuật Bayes cải tiến thực ngôn ngữ Java, hai chức dùng để thử nghiệm cho giải thuật lọc spam theo kỹ thuật Bayes Paulgraham giải thuật kết hợp NB-SEDA tích hợp hệ thống Dữ liệu chuẩn bị bao gồm liệu huấn luyện liệu kiểm tra xử lý trước tải từ Internet, công đồng mạng xử lý chọn liệu Thử nghiệm thực 1500 thư spam cho thấy với kỹ thuật NBSEDA số thư bị phân lớp nhầm thư tốt giảm đáng kể so với kỹ thuật Bayes Paulgraham Hướng phát triển: - Tích hợp hệ thống phân loại thư điện tử trực tuyến - Xây dựng công cụ phân tích chọn đặc trưng cho phân lớp Bayes để làm giảm kích thước, nâng cao chất lượng sở tri thức cải tiến hiệu suất lọc sử dụng tất đặc trưng - Kỹ thuật phân loại mô tả nâng cấp cách sử dụng tập danh sách đen (blacklist) địa IP tên miền, tập danh sách trắng (whilelist) người gửi tương ứng với liên lạc mà người sử dụng có Bất lúc nhận thư từ miền địa danh sách đen địa danh sách trắng, biết thư spam thư tốt theo độ ưu tiên định sẵn Do trích thơng tin tốt để tăng cường cho sở tri thức lọc - Tổ chức thư đến theo ba thể loại khác Spam, Personal, Business, thay hai Như mục đích lọc thư trở nên phổ biến - Xây dựng tập sở liệu thư spam tiếng Việt, nghiên cứu từ, cụm từ spam thư tiếng Việt - Nghiên cứu lọc spam diện rộng sử dụng cho tổ chức xã hội ... phương pháp lọc thư điện tử nói riêng, tơi chọn đề tài: ? ?Nghiên cứu phương pháp phân loại văn ứng dụng vào phân loại thư điện tử? ?? Qua đề tài tơi có hội để tìm hiểu sâu thêm phương pháp phân loại văn. .. văn bản, phương pháp phân loại, lọc thư spam đặc biệt phương pháp phân loại thư điện tử thuật toán Naive Bayes Luận văn trình bày vấn đề liên quan đến phân loại văn ứng dụng việc lọc thư điện tử. .. 1.4.4 Phương pháp SVM (Support Vector Machine) 1.5 Bài toán phân loại thư điện tử Phân loại thư điện tử thực chất toán phân loại hai lớp, tập liệu mẫu đưa vào thư điện tử gồm thư rác(spam) thư