Xác định ý định người dùng trên mạng xã hội Twitter (tt)

25 244 0
Xác định ý định người dùng trên mạng xã hội Twitter (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

Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)Xác định ý định người dùng trên mạng xã hội Twitter (tt)

HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG - NGÔ BẢO TUẤN XÁC ĐỊNH Ý ĐỊNH NGƢỜI DÙNG TRÊN MẠNG HỘI TWITTER Chuyên ngành: Hệ thống thông tin Mã số: 60.48.01.04 LUẬN VĂN THẠC SĨ KỸ THUẬT (Theo định hướng ứng dụng) NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGÔ XUÂN BÁCH HÀ NỘI – 2017 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 NGÔ XUÂN BÁCH 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 LỜI NÓI ĐẦU Trong năm gần đây, nhu cầu sử dụng mạng hội người dùng không ngừng tăng lên, mạng hội phổ biến Facebook, Twitter, Instagram ngày phát triển Con người sử dụng mạng hội không để giải trí như: cập nhật trạng thái, kết bạn, tán gẫu, nói chuyện mà họ dùng mạng hội nơi để chia sẻ thông tin, trao đổi nhu cầu, mong muốn, ý định hay dự định họ Xuất phát từ thực tế việc phân loại mong muốn, ý định người dùng mang lại giá trị thương mại, dịch vụ lớn Trong luận văn này, tập trung vào toán phân loại ý định người dùng mạng hội Twitter Đây toán có đầu vào dòng trạng thái người dùng đăng lên mạng hội Twitter, chia sẻ họ thứ xung quanh cần phải xác định xem chia sẻ, dòng trạng thái có chứa ý định hay không? Nếu dòng trạng thái có ý định người dùng nhu cầu, mong muốn, ý định gì: du lịch, đồ ăn & thức uống, nghề nghiệp & giáo dục, hàng hóa & dịch vụ, kiện & hoạt động, ý định cụ thể Bên cạnh đó, tất chia sẻ người dùng thể ý định rõ ràng nguồn liệu, tài nguyên có ích Vì vậy, luận văn tập trung chủ yếu vào xác định phân loại dòng “tweets” có chứa ý định người dùng mạng hội Twitter Việc xác định, phân loại ý định người dùng đề tài nghiên cứu thời sự, mang tính cấp thiết Với doanh nghiệp hay nhà cung cấp dịch vụ việc biết ý định, mong muốn người dùng giúp họ cải tiến tốt sản phẩm, hệ thống để đảm bảo cung cấp nội dung khách hàng cần, mở rộng số lượng người dùng quan tâm, quảng bá thương hiệu, hình ảnh Hơn nữa, kết toán phân loại ý định người dùng ứng dụng làm đầu vào cho nhiều nghiên cứu khác xây dựng hệ tư vấn hội dựa ý định người dùng, dự đoán sở thích người dùng, dự đoán xu hướng tương lai Luận văn “Xác định ý định người dùng mạng hội Twitter” thực khảo sát, nghiên cứu phương pháp xây dựng hệ thống phân loại ý định quan tâm Từ đưa phương pháp phân loại ý định phù hợp cho hệ thống phân loại ý định tiếng Anh Dựa hướng tiếp cận đề cập trên, luận văn này, tiến hành áp dụng làm thực nghiệm dựa kết hợp số đặc trưng ngôn ngữ tiếng Anh Các đặc trưng biểu diễn dạng vector làm đầu vào cho thuật toán Sau thu kết ba mô hình phân lớp Support Vector Machine[8], Maximum Entropy Model [6] Naive Bayes [7], luận văn sử dụng phương pháp lập sơ đồ để kiểm tra lựa chọn kết tốt Kết thực nghiệm tốt đạt sử dụng thuật toán Support Vector Machine (SVM) Cụ thể kết thực nghiệm cho kết tốt với toán “ Dòng trạng thái có ý định người dùng hay không ?” với độ xác 84.16%, với toán “ Dòng trạng thái có ý định cụ thể gì?” với độ xác 63.78% phần chứng minh độ hiệu phương pháp áp dụng Nội dung luận văn gồm 03 chương: Chƣơng 1: Giới thiệu toán phân loại ý định ngƣời dùng Nội dung chương, tổng quan ý định người dùng mạng hội, toán phân loại ý định người dùng với liệu mạng hội Twitter cuối hướng tiếp cận nhằm giải toán đề Chƣơng 2: Phƣơng pháp học máy cho toán phân loại ý định ngƣời dùng mạng hội Twitter Nội dung chương trình bày số phương pháp trích chọn lấy đặc trưng để giải toán, phương pháp học máy thống kê sử dụng để tiến hành thực nghiệm cho toán phân loại ý định người dùng dựa liệu mạng hội Twitter Chƣơng 3: Thực nghiệm đánh giá Nội dung chương nhằm nêu rõ chi tiết bước trình giải toán Trong chương trình bày trình thực thực nghiệm, đưa số đánh giá, nhận xét kết thu Phần kết luận: Tóm lược kết đạt luận văn Đồng thời đưa hạn chế, điểm cần khắc phục đưa định hướng nghiên cứu thời gian tới 3 CHƢƠNG GIỚI THIỆU BÀI TOÁN PHÂN LOẠI Ý ĐỊNH NGƢỜI DÙNG 1.1 Bài toán phân loại ý định ngƣời dùng mạng hội Twitter Với Twitter, người dùng có xu hướng thể thân sẵn sàng chia sẻ hoạt động, cảm xúc, suy nghĩ, mong muốn việc chia sẻ viết, hay cập nhật trạng thái thông qua Twitter trở thành phần tất yếu sống hàng ngày nhiều người Kết quả, đăng, trạng thái người dùng chia sẻ Twitter phản ánh quan điểm, ý kiến cá nhân ý định họ Chính từ cấp thiết đó, toán xác định phân loại ý định người sử dụng mạng hội Twitter đời có tác động lớn đến nhà cung cấp sản phẩm/dịch vụ, chẳng hạn người dùng chia sẻ trạng thái “Tôi muốn biển Nha Trang du lịch, Nha Trang thắng cảnh đẹp” ý định người dùng muốn du lịch dựa vào tour du lịch, hay công ty lữ hành đưa quảng cáo, chiến lược marketing, giới thiệu địa điểm du lịch, bãi biển, khu nghỉ dưỡng, khách sạn hay đơn giản đồ ăn thức uống địa điểm du lịch để khách hàng lựa chọn Những quảng cáo hướng trực tiếp tới khách hàng có nhu cầu, giúp tìm kiếm khách hàng nhanh hơn, hiệu cao đặc biệt giảm tối thiểu chi phí quảng cáo mang lại lợi nhuận tối đa Mục đích toán: Xác định phân loại ý định từ chia sẻ mạng hội Twitter Đầu vào: Các đăng hay gọi dòng “tweets” người dùng chia sẻ mạng hội Twitter Đầu ra: Phân loại ý định có dòng tweets thu thập Phân loại ý định hay chất phân loại văn thực cấp câu cấp đoạn văn bản, câu xác địnhý định hay ý định, có ý định chia làm 07 loại ý định cho trước, cụ thể: Thực phẩm & Đồ uống: Người dùng nói đến hay đề cập đến thực phẩm đồ uống Có thể sở thích ăn uống họ quan điểm ăn, đồ uống Du lịch: Người dùng hứng thú/quan tâm với chuyến đi, địa điểm đặc biệt quan tâm đến thăm số địa điểm, địa danh cụ thể Ví dụ: Nghề nghiệp & Giáo dục: Người dùng muốn có công việc, chứng chỉ/bằng cấp công việc phù hợp với trình độ học vấn Ví dụ: Hàng hóa & Dịch vụ : Người dùng quan tâm muốn có số sản phẩm (không phải đồ ăn thức uống) dịch vụ đáp ứng nhu cầu thân Ví dụ: Sự kiện & Hoạt động: Người dùng muốn tham gia kiện hay hoạt động Ý định khác: Là dòng “tweet” ý định cụ thể, nói chuyện phiếm thói quen hàng ngày, hay số chuyện lặt vặt, ý định rõ ràng Không có ý định cụ thể: Đây coi dòng “tweets” không cho ta thông tin ý định người dùng Ví dụ toán phân loại ý định: Đầu vào : I wanna go to the beach , but Where is the people ? They never take the phone (Tôi muốn đến bãi biển, người đâu hết ? Họ không mang theo điện thoại) Đầu : Có ý định : (Travel- Du lịch) 1.2 Các nghiên cứu cho toán phân loại ý định ngƣời dùng 1.2.1 Các kỹ thuật liên quan đến toán phân loại ý định người dùng Bài toán phân loại ý định người dùng sử dụng phương pháp phân lớp, tiến trình xử lý nhằm xếp mẫu liệu hay đối tượng vào lớp định nghĩa trước Trong luận văn mình, tiến hành thực nghiệm với ba thuật toán tương đương ba mô hình phân lớp tiêu biểu là: Support Vector Machine[8], Maximum Entropy Model [6] Naive Bayes [7] 1.2.2 Các nghiên cứu liên quan đến toán phân loại ý định người dùng “Nghiên cứu Jinpeng Wang cộng phương pháp học máy bán giám sát, phân loại ý định cho liệu Twitter Công trình nghiên cứu dựa phương pháp học máy bán giám sát, sử dụng tập đặc trưng để phân loại ý định với kết cao 58.64% „‟Phân tích ý định người dùng văn ngôn ngữ tự nhiên” tác giả Kröll, M., & Strohmaier, M (2009, September) đăng hội nghị kỷ yếu lần thứ mười lăm vấn đề thu thập tri thức (pp 197-198) tập chung vào việc thực việc phân tích, phân loại ý định cụ thể người dùng 5 1.3 Kết đạt đƣợc Luận văn tập trung vào việc dự đoán dòng “tweets” trạng thái mà người dùng chia sẻ có chứa ý định hay không, có chứa ý định phân loại vào nhãn cho trước [1] Bằng việc nghiên cứu phương pháp học máy : máy vector hỗ trợ Support Vector Machine (SVM) [8], Maximum Entropy Model [6] Naive Bayes [7] phương trích chọn đặc trưng : N-gram [17], Word vector (Glove vector) [10], TF -IDF (term frequency – inverse document frequency) [13][14] áp dụng cho toán phân loại để đưa giải pháp nhằm giải toán phân loại ý định người dùng mạng hội Twitter tiếng Anh Từ đó, kiểm tra, đánh giá kết thực nghiệm tập liệu cho trước Đây tiền đề để giải toán phân loại ý định người dùng mạng hội khác không riêng mạng hội Twitter 1.4 Tổng kết chƣơng Trong chương giới thiệu khái quát toán xác định ý định, cách phân loại ý định người dùng vấn đề liên quan đến học máy Ở chương tiếp theo, làm rõ vấn đề toán phân loại ý định người dùng, kỹ thuật học máy liên quan, phương pháp trích chọn đặc trưng để phân loại ý định giải toán 6 CHƢƠNG PHƢƠNG PHÁP HỌC MÁY CHO BÀI TOÁN PHÂN LOẠI Ý ĐỊNH NGƢỜI DÙNG TRÊN MẠNG HỘI TWITTER 2.1 Giải pháp phân loại ý định ngƣời dùng mạng hội Twitter Qua trình nghiên cứu, tập hợp dòng trạng thái mạng hội Twitter, thu thập tập nội dung chia sẻ vấn đề xung quanh người dùng gồm 2130 dòng “tweets” trạng thái [1], mục đích xác định nội dung có chứa ý định hay không, có ý định ý định gì: du lịch, thực phẩm & đồ uống, nghề nghiệp & giáo dục, kiện & hoạt động, hàng hóa & dịch vụ, ý định khác [1] Đầu vào: Các đăng hay gọi dòng “tweets” người dùng chia sẻ mạng hội Twitter Đầu ra: Phân loại ý định có dòng “tweets” thu thập Ví dụ: Người dùng cập nhật trạng thái Twitter: “I will go and dance in room” (Tôi nhảy phòng đó) Nhãn ý định “Event” (sự kiện & hoạt động) Để giải toán trên, trình phân loại ý định người dùng gồm giai đoạn:  Giai đoạn huấn luyện  Giai đoạn phân lớp a) Giai đoạn huấn luyện Giai đoạn nhận đầu vào tập liệu huấn luyện gồm nội dung dạng văn gán nhãn, sau xử lý tập liệu áp dụng thuật toán huấn luyện cho đầu mô hình phân loại, cụ thể: DỮ LIỆU HUẤN LUYỆN MÔ HÌNH PHÂN LỚP TIỀN XỬ LÝ THUẬT TOÁN HUẤN LUYỆN DỮ LIỆU SAU KHI XỬ LÝ BIỂU DIỄN VECTOR DỮ LIỆU TRÍCH CHỌN ĐẶC TRƢNG Sơ đồ 2.1: Mô hình giai đoạn huấn luyện [9] Trong bước cụ thể : - Tiền xử lý: Chuyển đổi dòng trạng thái tập liệu thành hình thức phù hợp để phân loại - Dữ liệu sau xử lý : Tập liệu xử lý bước tiền xử lý : lọc nhiễu, loại bỏ thông tin dư thừa… - Trích chọn đặc trưng: Trích xuất đặc trưng từ nội dung trạng thái người dùng đặc trưng từ vựng N-grams, đặc trưng Word vector, TF-IDF nhằm loại bỏ từ (đặc trưng) không mang thông tin khỏi liệu, nâng cao hiệu suất phân loại giảm độ phức tạp thuật toán huấn luyện - Biểu diễn vector liệu : Mã hoá văn mô hình trọng số - Thuật toán huấn luyện: Thủ tục huấn luyện để tìm tham số tối ưu, sử dụng thuật toán khác nhau, phạm vi luận văn sử dụng thuật toán học máy gồm: Máy véc tơ hỗ trợ (SVM), Naïve Bayes (NB) Maximum Entropy Model (MEM) b) Giai đoạn phân lớp Nhận đầu vào nội dung trạng thái người dùng dạng ngôn ngữ tự nhiên (tiếng Anh), sau trình xử lý áp dụng mô hình phân loại cho nhãn phân loại văn đầu vào, cụ thể biểu diễn sơ đồ sau: TIỀN XỬ LÝ TẬP DỮ LIỆU TIẾNG ANH NHÃN Ý ĐỊNH TRÍCH CHỌN ĐẶC TRƢNG MÔ HÌNH PHÂN LỚP Sơ đồ 2.2 : Mô hình giai đoạn phân lớp [9] Tương tự bước giai đoạn huấn luyện, giai đoạn phân lớp có nhiệm vụ cụ thể : - Tiền xử lý: Chuyển đổi dòng trạng thái tập liệu thành hình thức phù hợp để phân loại lọc nhiễu, loại bỏ từ không mang ý định - Trích chọn đặc trưng: Trích xuất đặc trưng từ nội dung trạng thái người dùng đặc trưng từ vựng N-grams, đặc trưng Word vector, TF-IDF - Mô hình phân lớp: Sử dụng thuật toán khác máy véc tơ hỗ trợ (SVM), Naïve Bayes (NB) Maximum Entropy Model (MEM) để tiến hành phân loại gán nhãn ý định 2.2 Tiền xử lý liệu 2.2.1 Khái niệm Qúa trình thu thập liệu thường chứa giá trị vô nghĩa, dư thừa khả kết nối liệu, ví dụ liệu số, ký tự đặc biệt, #hastag Chúng tiến hành xử lý thông tin dư thừa, giá trị 2.2.2 Lọc nhiễu (loại bỏ từ không mang nghĩa) Các từ nghĩa số, ký tự đặc biệt không mang nghĩa Ví dụ: “@@”, “!! “EU !!!!!!!!!!!!!!!!!!!!!!!!!!!!!, #2@”, 2.2.3 Loại bỏ từ phổ biến (stop word) Để tiết kiệm không gian lưu trữ gia tăng tốc độ xử lý, không ghi nhận lại từ phổ biến, chung chung từ gọi stop word 2.3 Trích chọn đặc trƣng Trong phương pháp học máy, số lượng đặc trưng (features) nhiều độ xác cao ngược lại Các loại đặc trưng thường sử dụng tập từ N-grams [17], Word vector (Glove vector) [10], TF -IDF (term frequency – inverse document frequency) [13][14] 2.3.1 Đặc trưng N-Grams N-gram : Là tần suất xuất n kí tự ( từ ) liên tiếp có liệu Với n = 2, ta gọi bigram Với n = 3, ta gọi trigram Gram đơn vị nhỏ – hay nói cách khác câu bao gồm từ Một cụm n-grams dãy gồm n- yếu tố liên tiếp dãy từ cho trước N-grams dùng để ước lượng xác suất xuất yếu tố dựa vào yếu tố xung quanh câu Ví dụ biểu diễn N-grams: Câu : “I love to bake cookies” (Tôi thích bánh quy nướng) - UniGram: I, love, to, bake cookies - BiGram: I_love, love_to, to_bake, bake_cookies - TriGram: I_love_to, love_to_bake, to_bake_cookies Ví dụ sử dụng N-grams để lấy đặc trƣng Câu 1: “I love to bake cookies” (Tôi thích bánh quy nướng) Câu 2: “I want pancakes, should I make some ?” “ Tôi muốn ăn bánh kếp, có nên làm vài không ? ” a) Xây dựng từ điển biểu diễn đặc trưng với loại UniGram Xây dựng từ điển: { 1: I, 2: love, 3: to, 4: bake, 5: cookies, 6: want, 7: pancakes, 8: should, 9: make, 10:some } Biểu diễn câu dạng vector đặc trưng, phần tử vector có dạng : : , dựa vào số từ điển ta có vector: Câu 1: [1:1, 2:1, 3:1, 4:1, 5:1, 6:0, 7:0, 8:1, 9:0, 10:0] 10 Câu 2: [1:2, 2:0, 3:0, 4:0, 5:0, 6:1, 7:1, 8:1, 9:1, 10:1] Khi liệu thực sự, số lượng từ từ điển vô lớn, độ dài vector (tương ứng với độ lớn từ điển) lớn, việc xử lý vô khó khăn Mà đây, để ý, từ từ điển không xuất câu ( 0) hầu ý nghĩa việc xử lý thuật toán, loại bỏ chúng vector, giữ lại từ xuất câu Cụ thể, câu sau rút gọn lại: Câu 1: [1:1, 2:1, 3:1, 4:1, 5:1] Câu 2: [1:2, 6:1, 7:1, 8:1, 9:1, 10:1] b) Xây dựng từ điển biểu diễn đặc trưng với loại BiGram Xây dựng từ điển: Ở đây, việc xây dựng từ điển bao gồm UniGram (gồm từ liên tiếp nhau), cụ thể: { 1: I, 2: love, 3: to, 4: bake, 5: cookies, 6: want, 7: pancakes, 8: should, 9: make, 10:some, 11: I_love, 12: love_to,13: to_bake,14: bake_cookies, 15: I_want, 16: want_pancakes,17: pancakes_should, 18: should_I, 19: I_make, 20: make_some } Biểu diễn câu dạng vector đặc trưng, phần tử vector có dạng: : , tính từ xuất câu xét, ta có vector: Câu : [1:1, 2:1, 3:1, 4:1, 5:1, 11:1, 12:1, 13:1,14:1] Câu 2: [1:2, 6:1, 7:1, 8:1, 9:1, 10:1, 15:1, 16:1, 17:1, 18:1, 19:1, 20:1] c) Xây dựng từ điển biểu diễn đặc trưng với loại TriGram Xây dựng từ điển: Ở đây, việc xây dựng từ điển bao gồm TriGram (gồm từ liên tiếp nhau), cụ thể: { 1: I, 2: love, 3: to, 4: bake, 5: cookies, 6: want, 7: pancakes, 8: should, 9: make, 10:some, 11: I_love, 12: love_to, 13: to_bake, 14: bake_cookies, 15: I_want, 16: want_pancakes, 17: pancakes_should, 18: should_I, 19: I_make, 20: make_some, 21: I_love_to, 22: love_to_bake, 23:to_bake_cookies, 24: I_want_pancakes, 25: want_pancakes_should, 26: pancakes_should_I, 27: shoul_I_make, 28: I_make_some } Biểu diễn câu dạng vector đặc trưng, phần tử vector có dạng: : , tính từ xuất câu xét, ta có vector: [1:1, 2:1, 3:1, 4:1, 5:1, 11:1, 12:1, 13:1, 14:1, 21:1, 22:1, 23:1] d) Tạo liệu thực nghiệm với đặc trưng N-gram cho Weka 11 Bƣớc 1: Xây dựng từ điển Sử dụng liệu tập tin liệu xây dựng từ điển chứa đặc trưng âm tiết biểu diễn theo dạng : gram, 1+2 grams 1+2+3 grams Mỗi dòng từ điển có định dạng : Từ 1-gram (UniGram) biểu diễn bình thường, từ chứa 2-gram (BiGram) 3-gram (TriGram) gram, nối liền dấu “_” Bƣớc 2: Tạo liệu thực nghiệm Dựa vào từ điển vừa xây dựng, chuyển đổi thành đặc trưng theo định dạng  index1  value1 , v.v,  indexn  valuen  index  label  ARFF Trong đó: - indexi thứ tự từ thứ i câu xuất từ điển - valuei số lần xuất từ thứ i câu - index thuộc tính chứa class, số sau indexn với n số từ từ điển - label nhãn ý định câu 2.3.2 Đặc trưng Word vector (Glove vector) a) Định nghĩa Về bản, Word vector vector trọng số Ví dụ, 1-of-N mã hoá từ từ điển thành vector có chiều dài N (tổng số lượng từ từ điển) b) Tạo liệu thực nghiệm với đặc trưng Glove vector cho Weka Bƣớc 1: Xây dựng từ điển Mỗi ký tự kèm với ma trận vector cố định (ở sử dụng file từ điển có độ dài vector 300d (https://nlp.stanford.edu/projects/glove/) Bƣớc 2: Tạo liệu thực nghiệm Dựa vào từ điển vừa xây dựng, tiến hành tách từ từ file liệu, với từ, lấy vector Glove tương ứng chúng từ điển Glove, sau tiến hành cộng dồn vào thu vector có độ dài 300 vector Glove câu “tweet” kèm với nhãn 2.3.3 TF-IDF (term frequency – inverse document frequency)[13][14] a) Định nghĩa TF-IDF viết tắt thuật ngữ tiếng Anh term frequency – inverse document frequency trọng số từ văn thu qua thống kê thể mức độ quan trọng từ văn mà thân văn xét nằm tập hợp văn b) Cách tính trọng số TF-IDF Tf- term frequency : dùng để ước lượng tần xuất xuất từ văn 12 Công thức tình: TF(t, d) = ( số lần từ t xuất văn d) / (tổng số từ văn d) IDF- Inverse Document Frequency: dùng để ước lượng mức độ quan trọng từ IDF (t, D) = log_e (Tổng số văn tập mẫu D/ Số văn có chứa từ t ) 2.4 Các thuật toán học máy 2.4.1 Máy véc tơ hỗ trợ SVM (Support Vector Machine) Support Vector Machines (SVM) [8] kỹ thuật việc phân lớp liệu, phương pháp học sử dụng không gian giả thuyết hàm tuyến tính không gian đặc trưng nhiều chiều, dựa lý thuyết tối ưu lý thuyết thống kê a) Ý tưởng phương pháp Ý tưởng thứ ánh xạ liệu gốc sang không gian gọi không gian đặc trưng với số chiều lớn cho không gian xây dựng siêu phẳng cho phép phân chia liệu thành hai phần riêng biệt, phần bao gồm điểm có nhãn phân loại Ý tưởng thứ hai số siêu phẳng cần lựa chọn siêu phẳng có lề lớn b) Cơ sở lý thuyết Ban đầu thuật toán SVM thiết kế cho toán phân lớp nhị phân Ý tưởng sau : Cho X= {xi } tập véctơ không gian R D xi thuộc hai lớp yi = -1 yi = +1 Ta có tập điểm liệu huấn luyện biểu diễn sau : {xi , yi } với i = 1…l, yi ∈ {-1, 1}, l số điểm liệu huấn luyện Mục tiêu SVM xây dựng siêu phẳng hai lớp cho khoảng cách từ tới điểm gần siêu phằng hai lớp cực đại c) Bài toán phân lớp với SVM 13 Hình 2.11: Minh họa toán phân lớp phương pháp SVM [12] Xác định hàm phân lớp để phân lớp mẫu tương lai, nghĩa với mẫu liệu xi cần phải xác định xi phân vào lớp +1 hay lớp -1 d) Các bước phương pháp SVM  Tiền xử lý liệu  Chọn hàm hạt nhân:  Sử dụng tham số cho việc huấn luyện với tập mẫu  Kiểm thử tập liệu Test 2.4.2 Thuật toán Naïve Bayes a) Giới thiệu Naïve Bayes (NB) [11][12] phương pháp phân loại có giám sát dựa vào xác suất sử dụng rộng rãi lĩnh vực máy học [Mitchell, 1996] [Joachims, 1997] [Jason, 2001], sử dụng lần lĩnh vực phân loại Maron vào năm 1961 [Maron, 1961] sau trở nên phổ biến dùng nhiều lĩnh vực công cụ tìm kiếm [Rijsbergen et al, 1970], lọc tài liệu [Sahami et al, 1998] v.v b) Cơ sở lý thuyết Áp dụng phương pháp Naïve Bayes vào chương trình phân loại với cách tiếp cận Naïve Bayes sử dụng xác suất có điều kiện từ chủ đề để dự đoán xác suất chủ đề văn cần phân loại Thuật toán Naïve Bayes dựa định lý Bayes phát biểu sau: ( | ) Biểu diễn: ( ) ( ) ( | ) ( ) ( ) 14 Để sử dụng phân loại Naïve Bayes, nội dung tin tức biểu diễn vectơ x  = (x1, x2, …, xn), x1, x2, …, xn giá trị đặc trưng X1, X2,…, Xn Bước 1: Huấn luyện Naïve Bayes (dựa vào tập liệu), tính ( ) ( | ) Bước 2: Phân lớp ( ), ta cần tính xác suất thuộc phân lớp new new biết trước X X gán vào lớp có xác suất lớn theo công thức: ∈ ( ( )∏ ( | )) Phân loại Bayes đơn giản với mô hình đa thức: ( | )∏ ( | ) ( ( | ) 2.4.3 Mô hình Maximum Entropy Model cực đại (MEM) a) Giới thiệu Mô hình Emtropy cực đại [11][12] phương pháp phân loại văn sử dụng rộng rãi nhiều lĩnh vực xử lý ngôn ngữ tự nhiên như: ngôn ngữ mô hình hóa [Chen Rosenfeld, 1999], gán nhãn từ loại [Ratnaparkhi, 1996], phân loại văn [Beeferman, 1999] b) Cơ sở lý thuyết Để nghiên cứu toán, theo rõi cách xử lý toán vài lần, tập hợp số lượng lớn mẫu (xl,yl), (x2,y2), (x3,y3), , (xN,yN) P ( x , y) = / X ( s ố l ầ n xuất cặp (x,y) mẫu) Trường hợp đặc biệt cặp (x,y) không xuất toàn mẫu, hay xuất toàn mẫu c) Mô tả thuật toán Thuật toán : Improved Iterative Scaling (IIS) Input: hàm đặc trưng f1, f2,…fn; phân phối thực nghiệm = (x,y) Ouput: Giá trị tham số tối ưu *i, xác suất mô hình tối ưu p Bước 1: Bắt đầu với i = với i € {1, 2, , n} Với i € {1, 2, , n} - Sử dụng ( ) ∑ ̃( ) ( | ) ( | ) 15 Trong : ( | ) (∑ ( ) ( )) Bước 2: Cập nhập giá trị : Bước : Lặp lại bước tất chưa hội tụ Thuật toán 2: Input: tập hợp F đặc trưng ứng cử; phân phối thực nghiệm p(x,y) Output: tập s đặc trưng có hiệu lực; xác suất mô hình Ps hợp đặc trưng Bước : Bắt đầu với s= 0; Ps giống Bước : Với đặc trưng ứng cử f € F: - Tính xác suất mô hình PSlJf sử dụng thuật toán - Tính lượng gia tăng log-likelihood từ đặc trưng thêm vào sử dụng công thức ( ̃) ( ̃) ( ) Bước 3: Kiểm tra điều kiện kết thúc Bước 4: Lựa chọn đặc trưng f với độ tăng tối đa AL(S,O) Bước 5: Nối liền f vào tập s Bước 6: Tính xác suất Ps sử dụng thuật toán Bước 7: Lặp lại bước d) Áp dụng cho toán phân loại văn Để thực phương pháp học máy với liệu văn bản, sử dụng đặc trưng N-gram Nó ước tính P(c/d) theo dạng số mũ sau ( | ) Trong đó: Z(d) hàm chuẩn hóa Fi, c đặc trưng / lớp hàm fi : đặc trưng ( ) (∑ ( ) 16 CHƢƠNG THỰC NGHIỆM VÀ ĐÁNH GIÁ 3.1 Dữ liệu thực nghiệm Bộ liệu tiến hành thực nghiệm bao gồm 2130 dòng “tweets” thu thập người dùng mạng hội Twitter bao gồm nhãn ý định[1] : du lịch, đồ ăn & thức uống, nghề nghiệp & giáo dục, hàng hóa & dịch vụ, kiện & hoạt động, ý định cụ thể Bảng 3.1: Số lượng tweet nhãn STT Nhãn tiếng Anh Nhãn tiếng Việt Food Đồ ăn & Thức uống 245 11.52% Travel Du lịch 187 8.78% Career Nghề nghiệp & giáo dục 159 7.46% Goods Hàng hóa & dịch vụ 251 11.78% Event Sự kiện & hoạt động 321 15.00% Trifle Ý định khác 436 20.47% Non-intent Không có ý định 531 24.92% 2130 100% Tổng Số lượng Tỉ lệ (%) Trong dòng “tweet” dòng file liệu “dataset.txt” có dạng: Cấu trúc: _dấu tab_ 3.2 Thiết lập thực nghiệm 3.2.1 Yêu cầu cho thực nghiệm - Môi trường cài đặt cần thiết JRE (Java Runtime Enviroment) phiên 1.6 - Phần mềm sử dụng: Weka phiên 3.6.10 - Dữ liệu chuẩn bị: Các file định dạng đuôi arff tính toán dựa vào phương pháp lấy đặc trưng: N-grams, Glove Vector TF-IDF 3.2.2 Cách thức thực nghiệm - Tập toàn dòng “tweets” chia thành k tập không giao (gọi 17 “fold”) có kích thước xấp xỉ - Mỗi lần (trọng số k lần) lặp, tập sử dụng làm tập kiểm thử, (k-1) tập lại dùng làm tập huấn luyện - Với k giá trị lỗi (mỗi giá trị tương ứng với fold) tính trung bình cộng để thu giá trị lỗi tổng thể „ - Lựa chọn k = 3.2.3 Cách thức đánh giá a) Tính xác (Accuracy) | | ( ) ( ( ) ( )) ∑ { ( ) Trong : x: Một ví dụ tập thử nghiệm D_test o(x): Giá trị đầu (phân lớp) hệ thống ví dụ x c(x): Phân lớp thực (đúng) ví dụ x b) Ma trận nhầm lẫn (Confusion Matrix) Ma trận nhầm lẫn (Confusion Matrix ) sử dụng toán phân loại Ma trận nhầm lẫn (Confusion Matrix) mô tả bảng sau: Bảng 3.3 : Ma trận nhầm lẫn (Confusion Matrix ) Đƣợc Phân lớp hệ thống Lớp Ci Phân thực (đúng) lớp Thuộc Thuộc Không thuộc TPi FNi c) Precision recall (Độ xác Độ hồi tưởng) - Precision lớp ci → Tổng số ví dụ thuộc lớp ci phân loại xác chia cho tổng số ví dụ phân loại vào lớp ci 18 - Recall lớp ci ( ) → Tổng số ví dụ thuộc lớp ci phân loại xác chia cho tổng số ví dụ thuộc lớp ci d) Độ đo : F1 - Tiêu chí đánh giá F1 kết hợp tiêu chí đánh giá Precision Recall - F1 trung bình điều hòa (harmonic mean) tiêu chí Precision Recall - F1 có xu hướng lấy giá trị gần với giá trị nhỏ giá trị Precision Recall e) Phân tích dự đoán lỗi Việc đánh giá xảy lỗi gây khó khăn cho trình thực nghiệm, ảnh hưởng tới độ xác thuật toán học máy, vì: - Nhiều đoạn “tweet” ý định rõ ràng - Đoạn “tweets” dài, với nhiều câu, nhiều từ liên quan đến nhãn - Đoạn “tweets” có nhiều ý định khác 3.3 Công cụ cách thức thực nghiệm 3.3.1 Công cụ Weka [19][20] Công cụ Weka công cụ phần mềm viết Java phục vụ lĩnh vực học máy khai phá liệu 3.3.2 Giới thiệu chuẩn liệu đầu vào cho thực nghiệm (ARFF) Để tiến hành thực nghiệm Weka điều bắt buộc phải đưa liệu định dạng Weka quy định sẵn : csv, arff Trong luận văn này, sử dụng tập tin mô hình ARFF (Atrribute-Regation File Format), tất liệu chuyển sang chuẩn liệu ARFF trước tiến hành thực nghiệm 3.4 Tiến hành thực nghiệm đánh giá kết thực nghiệm với hai nhãn ý định 3.4.1 Kết thực nghiệm với thuật toán áp dụng cho hai nhãn ý định Để kiểm tra xem thuật toán cho kết dự đoán tốt nhất, sử dụng từ điển xây dựng Chọn từ điển phương pháp lấy đặc trưng N-gram để thực nghiệm với toán phân nhãn (non-intent & intent) Biểu đồ 3.1 : So kết thực nghiệm thuật toán với đặc trưng N-gram (2 nhãn) 19 So kết thực nghiệm thuật toán (hai nhãn) 90 85 80 82.71 84.16 83.62 81.03 81.02 80.83 78.22 75.55 75.01 75 70 65 60 55 50 UniGram BiGram SVM Maximum Entropy TriGram Naive Bayes Sau tiến hành thực nghiệm thuật toán SVM, Naïve Bayes, Maximum Entropy Model với đặc trưng N-grams áp dụng cho toán phân hai nhãn, kết quả, cụ thể : Thuật toán SVM: Cho kết tốt với giá trị BiGram với độ xác 84.16% Thuật toán Naïve Bayes : Trả kết tốt với giá trị cao Trigram với độ xác 81.03% Thuật toán Maximum Entropy Model : Kết tốt với giá trị Bigram, với độ xác 78.22% 3.4.2 Kết thực nghiệm thuật toán SVM với đặc trưng khác cho toán phân hai nhãn ý định Sau tiến hành thực nghiệm, thuật toán SVM đặc trưng N-grams, Glove vector TF – IDF với toán phân nhãn ý định so sánh kết phương pháp lấy đặc trưng biểu đồ sau: Biểu đồ 3.2 : So kết thực nghiệm đặc trưng thuật toán SVM (hai nhãn) 20 So kết thực nghiệm phƣơng pháp lấy đặc trƣng (hai nhãn) 86 84 82 84.16 83.04 80.58 80 78 76 74 72 70 N-grams Glove vector TF-IDF Đối với đặc trưng N-grams : khả dự đoán cao với giá trị Bigram độ xác Acc = 84.16% Đối với đặc trưng Glove vector : Độ xác đạt Acc = 83.04 % Đối với đặc trưng TD- IDF: Độ xác đạt Acc = 80.58% 3.5 Tiến hành thực nghiệm đánh giá kết thực nghiệm với bảy nhãn ý định Chúng sử dụng phương pháp lấy đặc trưng N-grams, kết với đặc trưng tốt, tiếp tục tiến hành thực nghiệm tiếp với phương pháp học máy phần trước để đánh giá kết phân loại với bảy nhãn ý định (du lịch, đồ ăn & thức uống, nghề nghiệp & giáo dục, hàng hóa & dịch vụ, kiện & hoạt động, ý định cụ thể) 3.5.1 Kết thực nghiệm phương pháp học máy cho toán bảy nhãn ý định 21 Bảng 3.6 : Kết thực nghiệm với phương pháp học máy với đặc trưng N-gram (bảy nhãn ý định) Thuật toán Số gram Acc(%) UniGram 63.78 BiGram 62.05 TriGram 61.36 UniGram 57.72 BiGram 57.15 TriGram 57.13 Maximum UniGram 35.67 Entropy Model BiGram 35.32 TriGram 24.88 SVM Naive Bayes Dựa vào bảng kết thực nghiệm thấy thuật toán SVM cho kết tốt với giá trị Unigram (63.78 %), kiểm tra độ đo F1 nhãn ý định sơ đồ bên dưới, cụ thể: Biểu đồ 3.3.: Độ đo F1 nhãn ý định với đặc trưng Unigram (thuật toán SVM) Biểu đồ so sánh độ đo xác cho nhãn (bảy nhãn) 90 80 70 79.9 67.3 62 61.8 67.2 69.3 52.3 60 50 40 30 20 10 Non-intent Food Event Goods Career Travel Trifle N-grams Phương pháp lấy đặc trưng theo N-grams với toán phân loại nhãn ý định, giá trị Unigram cho kết dự đoán tốt nhãn Food với độ đo F1 = 79.9 %, nhãn Travel có độ đo F1=67.3% Các nhãn lại có độ xác mức trung bình 22 3.6 Phƣơng pháp kết hợp nâng cao độ xác cho toán phân loại ý định Kết hợp phương pháp đạt độ xác cao N-grams Glove Vector Phương pháp TF-IDF không tiến hành kết hợp nhiều thuộc tính dư thừa, độ xác thấp, không đáp ứng yêu cầu toán  Phương pháp kết hợp N-gram Glove Vector (thuật toán SVM) với nhãn Bảng 3.9 So sánh phương pháp kết hợp Glove Vector đặc trưng N-gram (SVM)(2 nhãn) Số nhãn nhãn Số gram Acc(%) Precision(%) Recall(%) F(%) UniGram 82.71 82.36 82.71 82.1 Glove Vector + UniGram 83.99 83.3 83.99 83.1 BiGram 84.16 84.42 84.16 83.6 Glove Vector + BiGram 85.52 86.86 87.52 86.5 Kết tiến hành thử nghiệm kết hợp Glove Vector + UniGram Glove Vector + BiGram (2 nhãn) sử dụng thuật toán SVM, thu kết sau: - Với Unigram: Giá trị tốt Unigram tăng lên từ 82.71 % lên thành 83.99 % tăng 1.28 % Đối với Bigram : Giá trị tốt thuật toán SVM tăng lên từ 84.16 % lên thành 85.52 % tăng 1.36 % Đối với giá trị Bigram: Độ xác tăng lên từ 62.05 % lên thành 63.26 % tăng 1.21 % Dựa vào kết trên, ta thấy độ xác dù tăng thêm không nhiều phương pháp giúp cải thiện độ xác việc phân loại 23 KẾT LUẬN Khai phá liệu nói chung đặc biệt phân loại ý định người dùng nói riêng ngày đóng vai trò quan trọng hoạt động thương mại, mua bán Trong luận văn này, tiến hành nghiên cứu phương pháp nhằm cải thiện độ xác cho toán phân loại văn bản, cụ thể cải thiện độ xác cho toán phân loại ý định người dùng mạng hội Twitter qua dòng tweets họ Bài toán xác định toán có độ phức tạp cao có nhiều ứng dụng thực tế Phương pháp giải luận văn tập trung vào việc nâng cao độ xác việc phân loại được ý định người dùng thông qua dòng tweets Bằng việc sử dụng mô hình phân lớp quen thuộc Support Vector Machine, Naïve Bayes Maximum Entropy Model Model (MEM) với tập liệu thu từ Twitter, luận văn đưa số phương pháp để giải cho toán đề Quá trình thực nghiệm đạt kết khả quan, cho thấy tính đắn việc lựa chọn kết hợp phương pháp, đồng thời hứa hẹn nhiều tiềm phát triển hoàn thiện Nhìn chung, luận văn đạt số kết như: - Trình bày cách khái quát, tổng quan nêu lên ý nghĩa, vai trò quan trọng toán xác định phân loại ý định người dùng mạng hội Nghiên cứu loại đặc trưng khác cho toán phân loại ý định Nghiên cứu làm thực nghiệm với thuật toán học máy khác So sánh phân tích kết thực nghiệm, đưa kết tốt Luận văn số hạn chế như: - Nghiên cứu dựa số lượng liệu chưa đầy đủ Kết thực nghiệm đạt chưa thực cao Chỉ thử nghiệm tập liệu tiếng anh Về hướng phát triển tương lai, tiến hành thu thập phát triển tập liệu lớn dựa nhiều đặc trưng để góp phần cải thiện khả phân loại Bên cạnh nghiên cứu thử nghiệm với số thuật toán khác để tìm thuật toán phù hợp với toán phân loại ý định người dùng mạng hội tiếng Việt Khắc phục lỗi trình xử lý để nâng cao kết thực nghiệm ... Chƣơng 1: Giới thiệu toán phân loại ý định ngƣời dùng Nội dung chương, tổng quan ý định người dùng mạng xã hội, toán phân loại ý định người dùng với liệu mạng xã hội Twitter cuối hướng tiếp cận nhằm... sẻ người dùng thể ý định rõ ràng nguồn liệu, tài nguyên có ích Vì vậy, luận văn tập trung chủ yếu vào xác định phân loại dòng “tweets” có chứa ý định người dùng mạng xã hội Twitter Việc xác định, ... vào toán phân loại ý định người dùng mạng xã hội Twitter Đây toán có đầu vào dòng trạng thái người dùng đăng lên mạng xã hội Twitter, chia sẻ họ thứ xung quanh cần phải xác định xem chia sẻ, dòng

Ngày đăng: 30/10/2017, 15:08

Từ khóa liên quan

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

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

Tài liệu liên quan