Nghiên cứu áp dụng thuật toán multinomial bayes vào phân loại văn bản tt

25 98 0
Nghiên cứu áp dụng thuật toán multinomial bayes vào phân loại văn bản tt

Đ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

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - NGUYỄN MỸ HẢO NGHIÊN CỨU ÁP DỤNG THUẬT TOÁN MULTINOMIAL BAYES VÀO PHÂN LOẠI VĂN BẢN Chuyên ngành: Hệ thống thông tin Mã số: 8.48.01.04 TÓM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI – 2018 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: TS Nguyễn Mạnh Hù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 Trong năm gần đây, với phát triển siêu phương tiện World Wide Web (WWW)…Với số lượng lớn người dùng thông tin liên tục cập nhật từ đến vấn đề đời sống, xã hội, kinh tế, giải trí… Điều tạo thách thức lớn cho việc truy vấn có hiệu hệ thống truy vấn thơng tin Một khó khăn mà hệ thống thơng tin thường phải gặp tần suất cập nhật thông tin lớn Phương thức sử dụng giấy giao dịch dần số hóa, nhiều tính vượt trội mà phương thức mang lại, lưu trữ lâu dài, cập nhật, sửa đổi, tìm kiếm cách nhanh chóng Do số lượng văn số hóa ngày tăng dần theo cấp số nhân, với gia tăng số lượng văn bản, nhu cầu tìm kiếm văn tăng theo, phân loại văn tự động yêu cầu cấp thiết đặt Phân loại văn giúp giúp tìm kiếm thơng tin cách nhanh chóng thay phải tìm văn bản, mà số lượng văn gia tăng cách nhanh chóng thao tác tìm văn nhiều thời gian, công sức công việc nhàm chán khơng khả thi Chính nhu cầu phân loại văn tự động thực cần thiết Xuất phát từ thực trạng xảy ra, luận văn trình bày phương pháp phân loại văn áp dụng thuật toán Multinomial bayes giúp người dùng dễ dàng việc tìm kiếm thơng tin cần thiết, đồng thời lưu trữ thơng tin theo chủ đề mong muốn Luận văn cấu trúc với chương sau: Chương : Giới thiệu toán phân loại văn Chương : Phương pháp Multinomial bayes toán phân loại văn Chương 3: Thực nghiệm đánh giá Chương 4: Kết luận: Kết đạt được, hạn chế hướng phát triển 2 Chương – GIỚI THIỆU BÀI TOÁN PHÂN LOẠI VĂN BẢN 1.1 Giới thiệu toán phân loại văn Nhiệm vụ toán gán tài liệu văn vào nhóm chủ đề cho trước Mỗi toán phân loại có đối tượng thao tác mục tiêu phân loại khác Trong toán phân loại văn bản, văn ( Document hay text) đối tượng nội dung cần thao tác 1.1.1 Mở đầu Phân lớp văn công việc sử dụng để hỗ trợ q trình tìm kiếm thơng tin, chiết lọc thông tin, lọc văn tự động dẫn đường cho văn tới chủ đề xác định trước Phân lớp văn thực thủ công tự động sử dụng kỹ thuật học máy có giám sát Từ thực tế nhu cầu tìm kiếm kho văn điện tử khổng lồ việc tìm kiếm thủ cơng khơng khả thi, đó, tốn phân loại văn đã, nghiên cứu, cải tiến áp dụng vào thực tế ngày nhiều 1.1.2 Bài toán phân loại văn Để tiến hành phân loại văn nói chung, thực theo phần là: huấn luyện phân loại - Huấn luyện: Các văn đầu vào với nhãn trích chọn đặc trưng đưa vào thuật toán học để huấn luyện mơ hình dự đốn phù hợp - Phân loại: Văn trích chọn đặc trưng đưa vào mơ hình huấn luyện bước để dự đoán nhãn phù hợp 1.1.3 Ứng dụng toán phân loại văn Bài toán phân loại sử dụng phổ biến nay, ta bắt gặp ứng dụng tốn số ví dụ như: - Cơng cụ phân loại mail rác (spam email) Google – Gmail Theo cơng bố đạt độ xác 99.9% năm 2017 Theo đó, google áp dụng kỹ thuật phân loại văn để kiểm tra nội dung thư đến tự động phát email có phải spam email hay khơng vào mục “Spam” riêng - Báo vnexpress.net phục vụ 37,5 triệu người đọc thường xuyên đạt 1,2 tỷ lượt xem tháng, đăng gần 500 tin ngày (số liệu 2016 http://chungta.vn/tin-tuc/kinhdoanh/vnexpress-dat-12-ty-luot-xem-mot-thang-48730.html) VnExpress, áp dụng phương pháp phân loại văn phân loại tin (gợi ý viết liên quan, khuyến nghị báo phù hợp với người dùng từ báo trước đọc, marketing sản phẩm phù hợp từ báo người dùng quan tâm,…) 1.2 Các phương pháp phân loại văn 1.2.1 Phương pháp Navie Bayes Ý tưởng việc sử dụng xác suất có điều kiện từ chủ đề để dự đoán xác suất chủ đề văn phân loại Điểm quan trọng phương pháp chỗ giả định xuất tất từ văn độc lập với Như Navie Bayes không tận dụng phụ thuộc nhiều từ vào chủ đề Giả định làm cho việc tính tốn Navie Bayes hiệu nhanh chóng phương pháp khác với độ phức tạp theo số mũ khơng sử dụng việc kết hợp từ để đưa phán đoán chủ để 1.2.2 Phương pháp K – Nearest Neighbor Khi cần phân loại văn mới, thuật tốn tính khoảng cách (có thể áp dụng cơng thức khoảng cách Euclide, Cosine, Manhattan, …) tất văn tập huấn luyện đến văn để tìm k văn gần nhất, gọi k nearest neighbor – k láng giềng gần nhất, sau dùng khoảng cách đánh trọng số cho tất chủ đề Khi đó, trọng số chủ đề tổng tất khoảng cách văn k láng giềng có chủ đề, chủ đề khơng xuất k láng giềng có trọng số Sau chủ đề xếp theo giá trị trọng số giảm dần chủ đề có trọng số cao chọn làm chủ đề văn cần phân loại 1.2.3 Phương pháp K – Nearest Neighbor Phương pháp Logistic regression cho phân loại nhị phân Sử dụng phương pháp thống kê ta coi khả đầu vào x nằm vào nhóm y0 xác suất nhóm y0 khi biết x: p(y0∣x) Phương pháp Logistic regression cho phân loại nhiều nhóm Tương tự phân loại nhóm, ta mở rộng thành nhiều nhóm với phương pháp sử dụng công thức xác suất hậu nghiệm để hàm softmax 1.3 Kết luận Chương giới thiệu toán phân loại văn ứng dụng thực tế toán môi trường công nghiệp Tiếp theo, nội dung trình bày là: lịch sử, ý tưởng cách thuật toán thực phương pháp sử dụng rộng rãi toán phân loại văn giới thiệu bao gồm: Naive Bayes, k – Nearest Neighbor Multinomial Logistic Regression Chương 2, luận văn tập trung vào trình bày thuật tốn Multinomial Bayes sở lý thuyết áp dụng toán phân loại văn 5 Chương 2- PHƯƠNG PHÁP MULTINOMIAL BAYES TRONG BÀI TOÁN PHÂN LOẠI VĂN BẢN 2.1 Biểu diễn văn Là bước cần thiết xử lý văn Mục đích biểu diễn văn gắn kết từ, chủ đề liên quan để phân biệt từ lĩnh vực khác Ngoài ra, dự đoán độ liên quan từ với yêu cầu người dùng, với lĩnh vực chuyên ngành cụ thể 2.1.1 Tiền xử lý văn Trước bắt đầu biểu diễn văn bản, cần tiến hành bước tiền xử lý văn Tiền xử lý văn giúp làm giảm số từ có biểu diễn văn Tiền xử lý văn bao gồm bước: Phân tích từ vựng Mục đích bước cho tập từ riêng biệt Đối với ký tự đặc biệt như: số - thường bị loại phân tích khơng mang lại ý nghĩa tài liệu văn ; dấu chấm câu – thường loại khơng ảnh hưởng đến nội dung tài liệu Loại bỏ từ dừng (stop – worlds) Đối với từ xuất nhiều văn tập kết quả, thường khơng giúp ích việc phân biệt nội dung tài liệu ví dụ như: “web”, “site”, “a”, “the”, “in”, “but”, số trạng từ, tính từ Đối với từ loại này, việc loại bỏ không làm ảnh hưởng đến công việc biểu diễn văn Loại bỏ từ có tần số thấp Trong văn bản, có nhiều từ xuất có ảnh hưởng nội dung văn Do đó, vấn đề đặt cần loại bỏ từ có tần xuất nhỏ Áp dụng phương pháp quan sát tần xuất xuất từ văn Zipf (1949) Loại bỏ tiền tố hậu tố Loại bỏ tiền tố hậu tố (Stemming) loại bỏ tiền tố hậu tố từ để biến đổi từ gốc thực tế, từ gốc có nhiều hình thái biến đổi ví dụ từ “clusters”, “clustering”, “clustered” có quan hệ với từ “cluster” Do cần loại bỏ tiền tố hậu tố làm giảm số lượng từ mà không ảnh hưởng đến nội dung văn 6 2.1.2 Kỹ thuật Bag of word Một văn biểu diễn dạng vector (có n thành phần từ tương ứng) mà giá trị thành phần thứ j tần số xuất từ thứ j văn Nếu xét tập D gồm m văn tự điển có n từ vựng, D biểu diễn thành bảng D kích thước m x n, dòng thứ i bảng vector biểu diễn văn thứ i tương ứng Có vài điều cần lưu ý Bag of Word: - Với ứng dụng thực tế, từ điển có nhiều 10 từ nhiều, đến trăm nghìn triệu, vector đặc trưng thu dài Một văn có câu, tiểu thuyết nghìn trang biểu diễn vector có số chiều 100 nghìn triệu - Có nhiều từ từ điển không xuất văn Như vector đặc trưng thu thường có nhiều phần tử Các vector có nhiều phần tử gọi sparse vector (sparse hiểu theo nghĩa thưa thớt, rải rác, xin phép sử dụng khái niệm tiếng Anh) Để việc lưu trữ hiệu hơn, ta không lưu vector mà lưu vị trí phần tử khác giá trị tương ứng Lưu ý: có 50% số phần tử khác 0, việc làm lại phản tác dụng! - Đối từ gặp không nằm từ điển, ta làm gì? Một cách thường dùng mở rộng vector đặc trưng thêm phần tử, gọi phẩn tử Mọi từ khơng có từ điền coi - Trong thực tế, từ lại mang thông tin qua trọng mà loại văn có Đây nhược điểm Bag of World Có phương pháp cải tiến khác giúp khắc phục nhược điểm có tên Term Frequency-Inverse Document Frequency (TF-IDF) dùng để xác định tầm quan trọng từ văn dựa toàn văn sở liệu (corpus) - Nhược điểm lớn Bag of World khơng mang thông tin thứ tự từ Cũng liên kết câu, đoạn văn văn Ví dụ, ba câu sau đây: “Em yêu anh không?”, “Em không yêu anh”, “Không, (nhưng) anh yêu em” trích chọn đặc trưng Bag of World cho ba vector giống hệt nhau, ý nghĩa khác hẳn 7 2.1.2 Trọng số TF-IDF Tần suất từ (term frequency - TF): Trọng số từ tần suất xuất từ tài liệu Cách định trọng số nói từ quan trọng cho tài liệu xuất nhiều lần tài liệu TF-IDF viết tắt Term Frequency – Inverse Document Frequency, trọng số từ thu qua thống kê thể mức độ quan trọng từ văn bản, mà thân văn xét nằm tập hợp văn wij = TF − IDF(𝑡𝑖 , 𝑑𝑗 , D) Trọng số TF-IDF tính sau: TF-IDF(𝑡𝑖 , 𝑑𝑗 , D) = TF(𝑡𝑖 , 𝑑𝑗 ) x IDF(𝑡𝑖 , D) (1.1) Trong đó: TF(𝑡𝑖 , 𝑑𝑗 ) = số lần từ 𝑡𝑖 xuất văn 𝑑𝑗 𝑡ổ𝑛𝑔 𝑠ố 𝑡ừ 𝑡𝑟𝑜𝑛𝑔 𝑣ă𝑛 𝑏ả𝑛 𝑑𝑗 IDF(𝑡𝑖 , D) = log( Tổng số văn D Số văn có chứa từ 𝑡𝑖 , ) Trong đó: - N kích thước tập tài liệu huấn luyện; - DF tần suất tài liệu: số tài liệu mà từ xuất - Trọng số TFIDF kết hợp thêm giá trị tần suất tài liệu DF vào trọng số TF Khi từ xuất tài liệu (tương ứng với giá trị DF nhỏ) khả phân biệt tài liệu dựa từ cao 2.2 Thuật tốn Multinomial Bayes 2.2.1 Ý tưởng Cho trước tập huấn luyện, biểu diễn khơng gian vector, tài liệu điểm, phương pháp tìm siêu phẳng định tốt chia điểm không gian thành hai lớp riêng biệt tương ứng lớp + lớp - Chất lượng siêu phẳng định khoảng cách (gọi biên) điểm liệu gần lớp đến mặt phẳng Khi đó, khoảng cách biên lớn mặt phẳng định tốt, đồng thời việc phân loại xác 8 2.2.2 Nội dung thuật tốn Mơ hình chủ yếu sử dụng phân loại văn mà feature vectors tính Bags of Words Lúc này, văn biểu diễn vector có độ dài d số từ từ điển Giá trị thành phần thứ i vector số lần từ thứ i xuất văn Khi đó, p(xi|c) tỉ lệ với tần suất từ thứ i (hay feature thứ i cho trường hợp tổng quát) xuất văn class c Giá trị tính cách: (2.1) 𝑁𝑐𝑖 𝜆𝑐𝑖 = 𝑝(𝑥𝑖 |𝑐 ) = 𝑁𝑐 Trong đó: - - 𝑁𝑐𝑖 tổng số lần từ thứ 𝑖 xuất văn class 𝑐, tính tổng tất thành phần thứ 𝑖 feature vectors ứng với class 𝑐 𝑁𝑐 tổng số từ (kể lặp) xuất class 𝑐 Nói cách khác, tổng độ dài tồn văn thuộc vào class 𝑐 Có thể suy rằng: 𝑑 𝑁𝑐 = ∑ 𝑑 𝑁𝑐𝑖 𝑡ừ ∑ 𝜆𝑐𝑖 = 𝑖=1 𝑖=1 Cách tính có hạn chế có từ chưa xuất class c biểu thức Để giải việc này, kỹ thuật gọi Laplace smoothing áp dụng: 𝜆̂ = - 𝑁𝑐𝑖 + 𝛼 𝑁𝑐 + 𝑑𝛼 (2.2) Với 𝛼 số dương, thường có giá trị để tránh trường hợp tử số Mẫu số cộng với 𝑑𝛼 để đảm bảo tổng xác suất ∑𝑑𝑖=1 𝜆̂ 𝑐𝑖 = Như vậy, class 𝑐 mô tả số dương có tổng 1: ̂ 𝜆̂𝑐 = { 𝜆̂ 𝑐1 , … , 𝜆𝑐𝑑 } 2.2.3 Ví dụ bước phương pháp Multinomial Bayes Bước 1: Tính tốn xác suất trước Đây xác suất tài liệu nằm danh mục cụ thể từ tập hợp tài liệu cho Bước 2: Tính tốn khả Khả khả có điều kiện từ xảy tài liệu cho tài liệu thuộc loại cụ thể Bước 3: Tính P (Phân loại/Tài liệu) = P(Phân loại)*P( 𝑇ừ 𝑃ℎâ𝑛 𝑙𝑜ạ𝑖 )*P( 𝑇ừ 𝑃ℎâ𝑛 𝑙𝑜ạ𝑖 )*P( 𝑇ừ 𝑃ℎâ𝑛 𝑙𝑜ạ𝑖 ) Ví dụ minh họa Có tài liệu gồm (D1-D5) phân loại thành: Auto, Sports Computer Bảng Bảng liệu tài liệu gồm D1 – D5 Document Content Category D1 Saturn Dealer’s Car Auto D2 Toyota Car Tercel Auto D3 Baseball Game Play Sports D4 Pulled Muscle Game Sports D5 Colored GIFs Root Computer Nhiệm vụ phân loại D6 D7 vào loại: Auto, Sports Computer Bảng Bảng liệu để phân loại gồm D6 – D7 Document Content Category D6 Home Runs Game ? D7 Car Engine Noises ? Bước 1: Tính tốn xác suất trước Đây xác suất tài liệu nằm danh mục cụ thể từ tập hợp tài liệu cho 10 P(Phân loại) = (Số lượng tài liệu phân loại)/(Tổng số tài liệu) P(Auto) = (Số tài liệu phân loại Auto)/(Tổng số tài liệu) = 2/5 = 0.4 P(Sport) = (Số tài liệu phân loại Sport)/(Tổng số tài liệu) = 2/5 = 0.4 P(Computer) = (Số tài liệu phân loại Computer)/(Tổng số tài liệu) = 1/5 = 0.2 Bước 2: Tính tốn khả Khả khả có điều kiện từ xảy tài liệu cho tài liệu thuộc loại cụ thể P(Từ/Phân loại) = (Số lần xuất từ tất văn từ loại + 1)/(Tất từ tài liệu từ loại +Tổng số từ tất tài liệu) P(Saturn/Auto) = (Số lần xuất từ ‘SATURN’ tất tài liệu thuộc loại ‘Auto’ +1)/(Tất từ tài liệu thuộc loại ‘Auto’ +Tổng số từ tất tài liệu) = (1+1)/(6+13) = 2/19 = 0.105263158 Sau tính tốn, ta có kết sau: Bước 3: Tính P (Phân loại/Tài liệu) = P(Phân loại)*P(Từ 1/Phân loại)*P(Từ 2/Phân loại)*P(Từ 3/Phân loại) P(Auto/D6) = P(Auto) * P(Engine/Auto) * P(Noises/Auto) * P(Car/Auto) = (0.4) * (0.052631579) * (0.157894737) = (0.00005831754) P(Sports/D6) = 0.000174953 P(Computers/D6) = 0.00004882813 Phân loại xảy cho D6 rơi vào Sports, có xác suất cao so với nhóm khác P (Auto / D7) = 0,00017495262 11 P (Sports / D7) = 0.0000583175 P (Computers / D7) = 0.00004882813 Loại xảy cho D7 rơi vào Auto, có xác suất cao số nhóm khác 2.3.4 Ưu điểm phương pháp Multinomial Bayes phân loại văn Multinomial Bayes mô hình đơn giản hoạt động tốt việc phân loại văn Ngồi ra, Multinomial Bayes có tốc độ xử lý nhanh tốn tài nguyên tính tốn 2.5 Kết luận Chương luận văn tập trung vào trình bày thuật tốn Multinomial Bayes sở lý thuyết áp dụng toán phân loại văn tiền đề để đánh giá với liệu thực nghiệm Chương luận văn giới thiệu liệu sử dụng luận văn để thực nghiệm thuật toán phân loại văn tập liệu có tên “20 Newsgroups”, chạy thực nghiệm phương pháp Multinomial Bayes so sánh với phương pháp học máy phổ biến khác Multinomial Logistic Regression với 5-fold Cross-Validation dựa tiêu chuẩn đánh giá cho phân loại đa cấp 12 Chương - THỰC NGHIỆM VÀ ĐÁNH GIÁ 3.1 Giới thiệu liệu sử dụng Bộ liệu sử dụng luận văn để thực nghiệm thuật toán phân loại văn tập liệu có tên “20 Newsgroups”( http://qwone.com/~jason/20Newsgroups/) Đây tập liệu gồm 20 nhóm tin tức tập hợp từ 18758 văn Số tài liệu phân loại gần đồng cho 20 nhóm Bộ liệu sử dụng phổ biến nghiên cứu, thí nghiệm ứng dụng xử lý văn Học máy xử lý ngôn ngữ tự nhiên Định dạng liệu: Dữ liệu cho chia thành tập 20 thư mục con, mục chủ đề Mỗi chủ đề gồm 628 đến 997 văn chung chủ đề Nội dung email gồm có trường thơng tin: From (người gửi thư), Subject (tiêu đề thư), Organization (tên tổ chức), Lines (số dòng nội dung thư) Ví dụ minh họa văn thư mục “rec.autos” Hình Minh họa văn thư mục “rec.autos” Phân bố liệu 20 nhóm Bảng Danh sách phân bố liệu 20 nhóm STT Tên nhóm Số lượng văn talk.politics.mideast 933 rec.autos 986 13 comp.sys.mac.hardware 953 alt.atheism 798 rec.sport.baseball 987 comp.os.ms-windows.misc 979 rec.sport.hockey 992 sci.crypt 989 sci.med 977 10 talk.politics.misc 775 11 rec.motorcycles 993 12 comp.windows.x 985 13 comp.graphics 971 14 comp.sys.ibm.pc.hardware 975 15 sci.electronics 983 16 talk.politics.guns 908 17 sci.space 984 18 soc.religion.christian 997 19 misc.forsale 965 20 talk.religion.misc 628 3.2 Sơ đồ chương trình phân loại văn Dưới sơ đồ xây dựng thuật toán phân loại văn áp dụng thuật tốn Multinomial Bayes 14 Hình Mơ hình phân loại văn áp dụng thuật tốn Multinomial Bayes Đối với mơ hình trên, việc đánh giá mơ hình huấn luyện quan trọng, dùng làm để hiệu chỉnh lại tham số huấn luyện nhằm tăng độ xác, cải thiện tốc độ tính tốn 3.3 Tiền xử lý liệu Bước tiền xử lý liệu gồm bước sau: Chuyển phần nội dung văn thành 01 dòng tập liệu huấn luyện Loại bỏ email số câu Loại bỏ dấu câu kí tự đặc biệt (!"#$%&'()*+,-./:;?@[\]^_`{|}~) Loại bỏ kí tự trống kí tự tab Tách từ chuyển dạng chữ thường (lowercase) Sau thực bước tiền xử lý, ta thu tập tin “data.txt” có dạng sau: 15 Hình 3 Tập tin “Data” sau thực xử lý 3.4 Biểu diễn văn thành vector Bước này, tác giả sử dụng phương pháp biểu diễn Bag of word để biểu diễn văn thành vector với kích thước 100.000 Trong tập liệu có số từ thường được sử dụng nhiều không quan trọng để thể ý nghĩa văn bản, ví dụ tập liệu “20 Newsgroups” có từ xuất nhiều lần số lần xuất sau: from(18162); can(18392); they(21566); was(21678); but(21868); if(22526); or(23943); as(25911); with(28147); are(29629); have(29873); not(29984); be(30539); on(32203); this(32437); for(43923); you(44191); it(54552); ax(62542); that(64759); is(69081); in(79922); and(93570); of(106407); to(120138); the(236995); Vì ta cần giảm mức độ quan trọng từ cách sử dụng kỹ thuật TF-IDF 3.5 Các tiêu chuẩn đánh giá 16 Việc đánh giá giải thuật học máy cho liệu quan trọng, cho phép đánh giá độ xác kết phân lớp so sánh giải thuật học máy khác Các tiêu chuẩn đánh giá thường phụ thuộc vào yếu tố sau:  Tập liệu lớn độ xác tốt  Tập kiểm thử cần lớn việc đánh giá xác  Vấn đề khó (ít khi) có tập liệu (rất) lớn Phân loại đa cấp (Multiclass classification) Phân loại đa cấp mô tả vấn đề phân loại nhãn M > ( Trường hợp M = phân loại nhị phân) Các công thức tiêu chuẩn đánh giá [19]: - Định nghĩa cho lớp nhãn là: L = {ℓ0 , ℓ1 , … , ℓ𝑀−1 } - Kết đầu với vecto y bao gồm N thành phần: 𝑦0 , 𝑦1 , … , 𝑦𝑁−1 ∈ L - Vector dự đoán 𝑦̂ gồm N thành phần: 𝑦 ̂, 𝑦1 … 𝑦̂ ̂, 𝑁−1 𝜖 𝐿 - Khi đó, hàm 𝛿̂ (𝑥) xác định: 𝑛ế𝑢 𝑥 = 𝛿̂ (𝑥) = { 𝑣ớ𝑖 𝑥 𝑐ò𝑛 𝑙ạ𝑖 - (3.1) Ma trận: (3.2) - Độ xác (Accuracy) N−1 𝑇𝑃 ACC = = ∑ 𝛿̂ (𝑦̂𝑖 − 𝑦𝑖 ) 𝑇𝑃 + 𝐹𝑃 N i=0 - Precision by label (3.3) 17 (3.4) - Recall by labe (3.5) - F-measure by label (3.6) - Weighted precision (3.7) - Weighted recall (3.8) - Weighted F-measure (3.9) 3.6 Phương pháp thực nghiệm 3.6.1 Công cụ dùng để phân lớp Để phân loại văn mơ hình họ máy Multimomial Bayes, tác giả sử dụng công cụ Apache Spark MLLib (Apache Spark's scalable machine learning library) ngôn ngữ lập trình Java Apache Spark MLLib thư viện hỗ trợ xây dựng mơ hình học máy, hỗ trợ ngơn ngữ lập trình: Java, Scala, Python R Thư viện MLLib hỗ trợ nhiều thuật toán Học máy bao gồm: - Phân loại(Logistic, Bayes, SVM, Random forest, Multilayer perceptron, ), hồi quy(Linear, Decision tree, ) 18 - Phân nhóm(K-mean, LDA, GMM, ) - Khuyến nghị(ALS, ) 3.6.2 Xây dựng liệu huấn luyện kiểm tra Từ tập liệu “data.txt” gồm 18758 dòng tương ứng với 18758 văn Ta chia tập thành phần Cross-Validation Một tập giữ lại để làm tập liệu kiểm tra, tập lại sử dụng để huấn luyện Multinomial Bayes, sau dùng model huấn luyện để dự đoán tập liệu kiểm tra Quá trình lặp lặp lại lần cho tất tập chọn làm tập liệu kiểm tra 3.7 Kết thực nghiệm Thực nghiệm phần Cross-Validation ta chạy thuật toán sau: - Lần (Fold #1): Giữ lại phần thứ để làm liệu đánh giá (test), phần 2, 3, ,5 đưa vào mơ hình huấn luyện Multinomial Bayes (train) - Lần (Fold #2): Giữ lại phần thứ để làm liệu đánh giá (test), phần 1, ,4 ,5 đưa vào mơ hình huấn luyện Multinomial Bayes (train) - Lần (Fold #3): Giữ lại phần thứ để làm liệu đánh giá (test), phần 1, ,4 ,5 đưa vào mơ hình huấn luyện Multinomial Bayes (train) - Lần 4(Fold #4): Giữ lại phần thứ để làm liệu đánh giá (test), phần 1, 2, 3, đưa vào mơ hình huấn luyện Multinomial Bayes (train) - Lần 5(Fold #5): Giữ lại phần thứ để làm liệu đánh giá (test), phần 1, 2, 3, đưa vào mơ hình huấn luyện Multinomial Bayes (train) Tổng kết lần kiểm tra 19 Bảng Kết thực nghiệm thuật toán Multinomial Bayes với phần cross-validation K-Fold Weighted Precision Weighted Recall F-Score Accuracy Fold #1 0.8803 0.8710 0.8661 0.8710 Fold #2 0.8622 0.8547 0.8466 0.8547 Fold #3 0.8677 0.8592 0.8537 0.8592 Fold #4 0.8450 0.8389 0.8244 0.8389 Fold #5 0.8522 0.8375 0.8243 0.8375 0.8615 0.8523 0.8430 0.8523 Trung bình Trung bình sau 5-fold Cross-Validation thuật toán Multinomial Bayes tập 18758 văn với kích thước vector 100.000 thu kết độ xác (accuracy) xấp xỉ 85.23% 3.8 So sánh với số phương pháp khác Để đánh giá thêm hiệu suất mơ hình dự đốn, luận văn tiến hành huấn luyện tập liệu mô hình học máy phổ biến khác Multinomial Logistic Regression với 5-fold Cross-Validation tương tự với bước thực nghiệm thuật toán Multinomial Bayes Kết thực nghiệm sau bảng sau: Bảng 3 Kết thực nghiệm thuật toán Multinomial Logistic Regression với phần crossvalidation K-Fold Precision Recall F-Score Accuracy Fold #1 0.8555 0.8437 0.8462 0.8437 Fold #2 0.8542 0.8373 0.8413 0.8373 Fold #3 0.8625 0.8507 0.8535 0.8507 Fold #4 0.8443 0.8229 0.828 0.8229 Fold #5 0.8411 0.8245 0.8286 0.8245 Trung bình 0.8515 0.8358 0.8395 0.8358 20 Nhận xét: Từ 02 lần thực nghiệm trên, thuật toán Multinomial Bayes đạt độ xác 85.22% tốt thuật tốn Multinomial Logistic Regression với độ xác xấp xỉ 83.58% So sánh với mơ hình tốt với liệu “20 Newsgroups” nhóm nghiên cứu Đại học Stanford có tên “Stanford Classifier” đạt độ xác xấp xỉ 88.7% (https://nlp.stanford.edu/wiki/Software/Classifier/20_Newsgroups) 3.9 Kết luận Trong chương này, tác giả nêu cách thức mô tả liệu chuẩn hóa liệu 20 Newsgroups sử dụng luận văn Các bước tiền xử lý liệu, chạy thuật toán phân loại Multinomial Bayes với tập liệu 18758 văn với công cụ Apache Spark MLLib Kết với độ xác 85.23% tốt so với thuật toán Multinomial Logistic Regression với độ xác 83.58% gần với thuật tốn tốt liệu 20 Newsgroups – Stanford Classifier với độ xác 88.7% 21 KẾT LUẬN Kết đạt Luận văn tiến hành nghiên cứu giải toán phân loại văn áp dụng thuật toán Multinomial Bayes Từ việc giải toán giúp cho tiến gần đến thông minh giới ảo, giúp quản lý tốt hệ thống thông tin ngập tràn nội dung Bài toán tảng cho nhiều ứng dụng quan trọng thực tế quảng cáo nhắm mục tiêu, hệ thống cung cấp tiếp thị dịch vụ thương mại tới người dùng… Những kết mà luận văn đạt được:  Nghiên cứu tìm hiểu thuật toán Multinomial Bayes tập nhiều nhãn, đưa ưu điểm thuật toán Multinomial Bayes so với thuật toán phân loại văn khác  Nghiên cứu làm thực nghiệm áp dụng Multinomial Bayes để đánh giá tập liệu 20 Newsgroups – Stanford Classifier với 18758 văn công cụ Apache Spark MLLib có độ xác tốt  So sánh phân tích kết thực nghiệm với mơ hình thuật tốn khác đưa trường hợp cho kết tốt Hạn chế:  Nghiên cứu dựa liệu có sẵn  Kết thực nghiệm đạt chưa thực tốt so với kỳ vọng  Tốc độ xử lý liệu chậm tập liệu lớn Hướng phát triển  Thu thập liệu lớn hoàn chỉnh, phong phú lịch sử truy cập người dùng Internet  Dựa nhiều đặc trưng để góp phần cải thiện khả phân loại áp dụng cho toán thực tiễn  Cải thiện hiệu xuất, tăng tốc độ xử lý liệu  Ngoài nghiên cứu thử nghiệm với số mơ hình thuật tốn khác để tìm thuật tốn phù hợp với toán phân loại người dùng 22 DANH MỤC TÀI LIỆU THAM KHẢO [1] Nguyễn Minh Thành (2011) – Xử lý ngôn ngữ tự nhiên – Đồ án môn học, Đại học Quốc gia Thành phố Hồ Chí Minh (2-6) 2011 [2] Đỗ Thanh Nghị, Phạm Nguyên Khang – Phân loại văn bản: Mơ hình túi từ tập hợp mơ hình máy học tự động - Tạp chí Khoa học trường Đại học Cần Thơ số 28 - (10-11) 2013 [3] Trần, C.Đ Phạm N.K.: Phân loại văn với máy học véc tơ hỗ trợ định Tạp chí Khoa học Trường Đại học Cần Thơ số (21a): 52-63 (2012) [4] Xiaojin Zhu (2008) Semi-Supervised Learning Literature Survey Computer Sciences TR 1530, University of Wisconsin – Madison, February 22, (9) 2008 [5] Xiaojin Zhu (2005) Semi-Supervised Learning with Graphs PhD thesis, Carnegie Mellon University, CMU-LTI-05-192, May 2005 [6] Dunja Mladenic' Machine Learning on Non-homogeneous, Distributed Text Data PhD Thesis, University of Ljubljana, Slovenia (1988) [7] Xiangrui Meng, Ameet Talwalkar, Evan Sparks, Virginia Smith, Xinghao Pan, Shivaram Venkataraman, Matei Zaharia, Rean Griffith, John Duchi, Joseph Gonzalez, Michael Franklin, Michael I Jordan, Tim Kraska – Mlib: Scalable Machine Learnig on Spark (4-6) https://stanford.edu/~rezab/sparkworkshop/slides/xiangrui.pdf [8] Multiclass classification - https://spark.apache.org/docs/2.2.0/mllib-evaluation- metrics.html#multiclass-classification [9] Mendenhall's studies of word-length distribution in the works of Shakespeare and Bacon Available from: https://academic.oup.com/biomet/article-abstract/62/1/207/220350/Mendenhall-s-studies-ofword-length-distribution [10] Argamon, S., Koppel, M., Fine, J and Shimoni, A (2003) Gender, Genre, and Writing Style in Formal Written Texts, Text 23(3), August [11] Argamon, S., Koppel, M., Pennebaker, J and Schler, J (2008) Automatically Profiling the Author of an Anonymous Text, Communications of the ACM [12] Sebastiani, F.: Machine learning in automated text categorization ACM Computing Surveys 34(1), 1–47 (1999) [13] Breiman, L.: Random forests Machine Learning 45(1), 5–32 (2001) 23 [14] Lewis, D and Gale, W (1994), “A sequential algorithm for training test classifiers” In proc, of SIGIR-94 [15] McCallum, A., Nigam, K,: A comparion of event models for naïve Bayes text classification Technical report, American Association for Artificial Intelligence Workshop on Learning for Text Categorization, (1998) http://www.cs.cmu.edu/~knigam/papers/multinomial-aaaiws98.pdf [16] Ashraf M.Kibriya, Eibe Frank, Bernhard Pfahringer, and Geoffrey, and Geoffrey Holmes “ Multinomial Naïve Bayes for Text Categorization Revisited”, Department of Computer Science University of Waikato – Hamilton, New Zealand (chap 2.3) [17] Naive Bayes Classifier, Feature Engineering – Machine learning https://machinelearningcoban.com/2017/08/08/nbc/ https://machinelearningcoban.com/general/2017/02/06/featureengineering/ [18] Dominhhai - Hồi quy logistic (Logistic Regression) https://dominhhai.github.io/vi/404.html?fbclid=IwAR2SD5krRlkrV3QtRXfahQtULZe4mz1vPjfzwHbJbUo0a6zR2YjxXe3ABA [19] Multiclass classification - Evaluation Metrics - RDD-based API https://spark.apache.org/docs/2.2.0/mllib-evaluation-metrics.html#multiclass-classification [20] Bài giảng khai phá liệu web – Đại học công nghệ - Đại học Quốc Gia Hà Nội uet.vnu.edu.vn/~thuyhq/Courses /KPW_C5_Bieu_dien_K54 ... Sơ đồ chương trình phân loại văn Dưới sơ đồ xây dựng thuật toán phân loại văn áp dụng thuật tốn Multinomial Bayes 14 Hình Mơ hình phân loại văn áp dụng thuật toán Multinomial Bayes Đối với mơ hình... bày thuật tốn Multinomial Bayes sở lý thuyết áp dụng toán phân loại văn 5 Chương 2- PHƯƠNG PHÁP MULTINOMIAL BAYES TRONG BÀI TOÁN PHÂN LOẠI VĂN BẢN 2.1 Biểu diễn văn Là bước cần thiết xử lý văn. .. văn đạt được:  Nghiên cứu tìm hiểu thuật tốn Multinomial Bayes tập nhiều nhãn, đưa ưu điểm thuật toán Multinomial Bayes so với thuật toán phân loại văn khác  Nghiên cứu làm thực nghiệm áp dụng

Ngày đăng: 05/02/2020, 11:28

Từ khóa liên quan

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

Tài liệu liên quan