Luận án Một số phương pháp học máy xác định đặc điểm người dùng trên mạng internet
Sự phát triển mạnh mẽ của Internet và các dịch vụ trên Internet có những tác
động lớn đến nhiều mặt trong xã hội. Chỉ với một thiết bị được kết nối đến mạng
Internet, người dùng có thể dễ dàng sử dụng các kênh trao đổi thông tin như
website, email, diễn đàn, mạng xã hội, hoặc các dịch vụ khác như tìm kiếm thông
tin, thương mại điện tử (TMĐT) v.v. Một đặc điểm chung của các hệ thống này là
không bắt buộc người dùng cung cấp chính xác thông tin cá nhân khi sử dụng. Việc
này nhằm khuyến khích và tạo thuận lợi cho người dùng trong quá trình sử dụng,
tuy nhiên cũng tạo ra một số vấn đề. Thứ nhất, người dùng có thể sử dụng các kênh
trao đổi thông tin một cách nặc danh hoặc giả mạo, với mục đích xấu. Thứ hai, việc
thiếu thông tin cá nhân người dùng làm cho các nhà cung cấp dịch vụ trên Internet
gặp khó khăn trong việc cá nhân hóa hệ thống nhằm tăng trải nghiệm cho người
dùng, thúc đẩy bán hàng, hoặc thực hiện các hoạt động quảng cáo trực tuyến hiệu
quả hơn.
Luận án này thực hiện nghiên cứu về vấn đề xác định các đặc điểm của người
dùng dựa trên phân tích văn bản do người dùng tạo ra hoặc dựa trên phân tích hành
vi người dùng thực hiện trên hệ thống bằng các phương pháp học máy.
Các nội dung tiếp theo của phần này bao gồm: Phần 1.1 trình bày lý do lựa
chọn đề tài. Phần 1.2 và 1.3 nêu các mục tiêu và đóng góp của luận án. Nội dung
của phần 1.4 là bố cục của toàn bộ luận án.
Tóm tắt nội dung tài liệu: Luận án Một số phương pháp học máy xác định đặc điểm người dùng trên mạng internet
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Dương Trần Đức MỘT SỐ PHƯƠNG PHÁP HỌC MÁY XÁC ĐỊNH ĐẶC ĐIỂM NGƯỜI DÙNG TRÊN MẠNG INTERNET LUẬN ÁN TIẾN SĨ KỸ THUẬT Hà Nội – Năm 2018 i HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Dương Trần Đức MỘT SỐ PHƯƠNG PHÁP HỌC MÁY XÁC ĐỊNH ĐẶC ĐIỂM NGƯỜI DÙNG TRÊN MẠNG INTERNET Chuyên ngành: Kỹ thuật máy tính Mã số: 9.48.01.06 LUẬN ÁN TIẾN SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC: 1. PGS.TS PHẠM BẢO SƠN 2. TS. TÂN HẠNH Hà Nội – Năm 2018 ii LỜI CAM ĐOAN Tôi xin cam đoan đây là công trình nghiên cứu do tôi thực hiện. Các số liệu và kết quả trình bày trong luận án là trung thực, chưa được công bố bởi bất kỳ tác giả nào hay ở bất kỳ công trình nào khác. Tác giả Dương Trần Đức iii LỜI CẢM ƠN Tôi xin gửi lời cảm ơn chân thành tới Khoa Đào tạo Sau Đại học, Khoa Công nghệ Thông tin, Ban Lãnh đạo Học viện Công nghệ Bưu chính Viễn thông, các Quý Thầy Cô đã giúp tôi trang bị kiến thức, tạo điều kiện thuận lợi cho tôi trong suốt quá trình thực hiện Luận án này. Đồng thời, tôi xin bày tỏ lòng cảm ơn chân thành và sâu sắc tới PGS. TS. Phạm Bảo Sơn và TS. Tân Hạnh, những người đã tận tình khuyến khích và hướng dẫn trong quá trình thực hiện để tôi có thể hoàn thành Luận án. Xin chân thành cảm ơn các đồng nghiệp, các nhà khoa học, các thầy cô giáo công tác tại Khoa Công nghệ Thông tin, Học viện Công nghệ Bưu chính Viễn thông, Đại học Công nghệ - Đại học Quốc gia Hà Nội đã động viên, hỗ trợ tôi trong quá trình thực hiện Luận án. Cuối cùng, xin gửi lời tri ân sâu sắc tới gia đình, bạn bè, những người đã luôn động viên, khuyến khích, là chỗ dựa tinh thần cho tôi trong thời gian thực hiện Luận án. iv MỤC LỤC Trang TRANG PHỤ BÌA ................................................................................................... i LỜI CAM ĐOAN ................................................................................................... ii LỜI CẢM ƠN ........................................................................................................ iii MỤC LỤC ............................................................................................................. iv DANH MỤC BẢNG BIỂU ................................................................................... vii DANH MỤC HÌNH VẼ ....................................................................................... viii DANH MỤC CÁC TỪ VIẾT TẮT ........................................................................ ix MỞ ĐẦU ................................................................................................................ 1 1. LÝ DO LỰA CHỌN ĐỀ TÀI ...................................................................... 1 2. MỤC TIÊU CỦA LUẬN ÁN ...................................................................... 3 3. PHẠM VI NGHIÊN CỨU ........................................................................... 4 4. CÁC ĐÓNG GÓP CỦA LUẬN ÁN ............................................................ 4 5. BỐ CỤC CỦA LUẬN ÁN ........................................................................... 5 CHƯƠNG 1: TỔNG QUAN VỀ XÁC ĐỊNH ĐẶC ĐIỂM NGƯỜI DÙNG ............ 1 1.1 XÁC ĐỊNH ĐẶC ĐIỂM NGƯỜI DÙNG THÔNG QUA PHÂN TÍCH VĂN BẢN ........................................................................................................... 1 1.1.1 Giới thiệu ............................................................................................. 1 1.1.2 Đặc điểm của văn bản trực tuyến ......................................................... 4 1.1.3 Các dạng thức trong phân tích tác giả văn bản ..................................... 5 1.1.4 Các kỹ thuật phân tích........................................................................ 11 1.1.5 Các đặc trưng nhận diện..................................................................... 15 1.2 NHẬN DIỆN ĐẶC ĐIỂM NGƯỜI DÙNG THÔNG QUA PHÂN TÍCH HÀNH VI .......................................................................................................... 24 1.2.1 Giới thiệu ........................................................................................... 24 1.2.2 Tập đặc trưng hành vi ........................................................................ 25 1.2.3 Các kỹ thuật phân tích........................................................................ 28 1.2.4 Nhận xét và đánh giá ......................................................................... 29 v 1.3 CÔNG CỤ THỰC NGHIỆM ................................................................... 30 1.4 KẾT LUẬN CHƯƠNG ............................................................................ 31 CHƯƠNG 2: XÁC ĐỊNH ĐẶC ĐIỂM TÁC GIẢ BÀI VIẾT DIỄN ĐÀN TIẾNG VIỆT ..................................................................................................................... 33 2.1 XÁC ĐỊNH ĐẶC ĐIỂM TÁC GIẢ BÀI VIẾT DIỄN ĐÀN TIẾNG VIỆT SỬ DỤNG CÁC ĐẶC TRƯNG CƠ BẢN ......................................................... 34 2.1.1 Giới thiệu ........................................................................................... 34 2.1.2 Phương pháp ...................................................................................... 35 2.1.3 Thực nghiệm ...................................................................................... 40 2.1.4 Kết luận ............................................................................................. 47 2.2 SỬ DỤNG CÁC ĐẶC TRƯNG NỘI DUNG ........................................... 47 2.2.1 Giới thiệu ........................................................................................... 47 2.2.2 Phương pháp ...................................................................................... 48 2.2.3 Thực nghiệm ...................................................................................... 49 2.2.4 Kết luận ............................................................................................. 61 2.3 SỬ DỤNG CÁC ĐẶC TRƯNG VẦN VÀ ÂM TIẾT TIẾNG VIỆT ........ 62 2.3.1 Giới thiệu ........................................................................................... 62 2.3.2 Tổng quan về các nghiên cứu phân tích tác giả sử dụng các đặc trưng dựa trên từ vựng............................................................................................. 63 2.3.3 Âm tiết và vần trong tiếng Việt .......................................................... 66 2.3.4 Phương pháp ...................................................................................... 68 2.3.5 Thực nghiệm ...................................................................................... 70 2.3.6 Kết luận ............................................................................................. 78 2.4 KẾT LUẬN CHƯƠNG ............................................................................ 79 CHƯƠNG 3: XÁC ĐỊNH ĐẶC ĐIỂM NGƯỜI DÙNG DỰA TRÊN DỮ LIỆU LỊCH SỬ TRUY CẬP HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ ............................ 81 3.1 PHƯƠNG PHÁP TÁI CHỌN MẪU ........................................................ 82 3.1.1 Giới thiệu ........................................................................................... 82 3.1.2 Phương pháp ...................................................................................... 82 3.1.3 Thực nghiệm ...................................................................................... 87 vi 3.1.4 Kết luận ............................................................................................. 93 3.2 PHƯƠNG PHÁP TRÍCH CHỌN ĐẶC TRƯNG DỰA TRÊN BIỂU DIỄN CÂY ................................................................................................................. 94 3.2.1 Giới thiệu ........................................................................................... 94 3.2.2 Phương pháp ...................................................................................... 95 3.2.3 Thực nghiệm ................................................................................... 101 3.3 KẾT LUẬN CHƯƠNG .......................................................................... 106 KẾT LUẬN VÀ HƯỚNG NGHIÊN CỨU TIẾP THEO ..................................... 107 1. KẾT LUẬN ............................................................................................. 107 2. HƯỚNG NGHIÊN CỨU TIẾP THEO ..................................................... 109 DANH MỤC CÔNG TRÌNH CÔNG BỐ ............................................................ 110 TÀI LIỆU THAM KHẢO ................................................................................... 112 PHỤ LỤC 1: XÂY DỰNG ỨNG DỤNG THỬ NGHIỆM XÁC ĐỊNH ĐẶC ĐIỂM TÁC GIẢ VĂN BẢN TIẾNG VIỆT.................................................................... 125 1.1 ĐẶT VẤN ĐỀ ....................................................................................... 125 1.2 MÔ TẢ HỆ THỐNG .............................................................................. 126 1.2.1 Sơ đồ hệ thống ................................................................................. 126 1.2.2 Chức năng Thu thập dữ liệu ............................................................. 126 1.2.3 Chức năng Xử lý dữ liệu .................................................................. 127 1.2.4 Chức năng Trích chọn đặc trưng ...................................................... 128 1.2.5 Chức năng Xây dựng mô hình nhận diện ......................................... 129 1.2.6 Chức năng Xây dựng dịch vụ nhận diện ........................................... 129 1.2.7 Chức năng Ứng dựng Web thử nghiệm sử dụng dịch vụ .................. 129 1.3 XÂY DỰNG HỆ THỐNG...................................................................... 130 1.3.1 Mô đun Thu thập dữ liệu .................................................................. 130 1.3.2 Mô đun Xử lý dữ liệu và trích chọn đặc trưng .................................. 130 1.3.4 Mô đun Xây dựng dịch vụ nhận diện ............................................... 133 1.3.5 Mô đun ứng dụng thử nghiệm sử dụng dịch vụ ................................ 133 1.4 KẾT LUẬN ............................................................................................ 135 vii DANH MỤC BẢNG BIỂU Bảng 1.1. Các đặc trưng dựa theo phong cách ....................................................... 19 Bảng 2.1 Các đặc trưng cơ bản.............................................................................. 39 Bảng 2.2. Thống kê về tập dữ liệu huấn luyện ....................................................... 41 Bảng 2.3. Kết quả xác định đặc điểm tác giả bài viết diễn đàn .............................. 44 Bảng 2.4. Kết quả thực nghiệm sử dụng các đặc trưng nâng cao ........................... 55 Bảng 2.5. Kết quả trên thuật toán SMO sau khi điều chỉnh tham số ...................... 58 Bảng 2.6. Những đặc trưng nội dung (từ nội dung) quan trọng nhất ...................... 60 Bảng 2.7. Cấu trúc âm tiết tiếng Việt .................................................................... 68 Bảng 2.9. Các đặc trưng ........................................................................................ 70 Bảng 2.10. Kết quả xác định đặc điểm tác giả sử dụng các đặc trưng vần và âm tiết .............................................................................................................................. 71 Bảng 2.11. Các vần và âm tiết quan trọng trong nhận diện tác giả ......................... 73 Bảng 3.2. Các đặc trưng chung ............................................................................. 84 Bảng 3.3. Các đặc trưng dựa trên sản phẩm .......................................................... 85 Bảng 3.3. Các đặc trưng dựa trên sản phẩm chuyển tiếp........................................ 85 Bảng 3.4. Thống kê dữ liệu ................................................................................... 88 Bảng 3.5. Ma trận chi phí ...................................................................................... 90 Bảng 3.6. Kết quả của các thực nghiệm trên các thuật toán khác nhau (chưa áp dụng kỹ thuật hỗ trợ) ...................................................................................................... 91 Bảng 3.8. Kết quả thực nghiệm khi áp dụng thêm các kỹ thuật hỗ trợ ................... 92 Bảng 3.9. Các đặc trưng về sản phẩm/loại sản phẩm riêng rẽ ................................ 95 Bảng 3.10. Các đặc trưng nâng cao ..................................................................... 100 Bảng 3.11. Kết quả thực nghiệm khi sử dụng ClassBalancer kết hợp CosSensitiveClassifier với ma trận chi phí 1:3 ..................................................... 102 Bảng 3.12. Kết quả phân loại sau khi lựa chọn đặc trưng và tối ưu tham số ........ 105 viii DANH MỤC HÌNH VẼ Hình 2.2. Độ chính xác nhận diện trên các số lượng đặc trưng khác nhau ............. 59 Hình 3.1. Biểu diễn dạng cây của danh mục sản phẩm/loại sản phẩm được xem ... 96 Hình 3.2. Biểu diễn dạng cây của lượt xem có 1 loại sản phẩm mức A ................. 97 Hình 3.3. Biểu diễn dạng cây của lượt xem có nhiều loại sản phẩm mức A........... 97 Hình 1 Sơ đồ tổng quát của hệ thống .................................................................. 127 Hình 2 Giao diện mô đun xử lý dữ liệu và trích chọn đặc trưng ......................... 131 Hình 3 Giao diện mô đun Xây dựng mô hình nhận diện ...................................... 132 Hình 4 Giao diện mô đu thử nghiệm nhận diện tác giả văn bản ........................... 132 Hình 5 Mã nguồn dịch vụ Web xác định đặc điểm tác giả ................................... 134 Hình 6 Giao diện ứng dụng Web sử dụng dịch vụ ............................................... 134 Hình 7 Mã nguồn mô đun ứng dụng Web sử dụng dịch vụ ................................. 135 ix DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Thuật ngữ tiếng Anh Thuật ngữ tiếng Việt BAC Balanced Accuracy Độ đo chính xác cân bằng BMR Bayesian Multinomial Regression Hồi quy đa thức Bayes BN Bayesian Networks Mạng Bayes BNC British National Corpus Kho ngữ liệu quốc gia Anh BPN Back Propagation Network Mạng truyền ngược DT Decision Tree Cây quyết định EG Exponential Gradient Gradient mũ EM Expectation Maximization Cực đại hóa kỳ vọng ID Information Gain Độ lợi thông tin IRS Information Retrieval Similarity Độ tương tự trích xuất thông tin JAX-RS Java API for RESTful Web Services Giao diện lập trình ứng dụng Java cho dịch vụ Web REST JSON Javascript Object Notion KLS Kullback–Leibler Similarity Độ tương tự Kullback–Leibler NIST National Institute of Standards and Technology Viện Tiêu chuẩn và Công nghệ Quốc gia (Hoa Kỳ) PAKDD – Pacific Asia Knowledge Discovery and Data Mining Hội nghị về P ... Informatics, pp. 59-73. 125 PHỤ LỤC 1 XÂY DỰNG ỨNG DỤNG THỬ NGHIỆM XÁC ĐỊNH ĐẶC ĐIỂM TÁC GIẢ VĂN BẢN TIẾNG VIỆT Phần này trình bày về việc xây dựng hệ thống thử nghiệm dịch vụ xác định đặc điểm tác giả văn bản tiếng Việt trên Internet. Như đã nói ở các phần trước, xác định đặc điểm tác giả văn bản có nhiều ứng dụng trong thực tế như lĩnh vực thương mại (hỗ trợ quảng cáo trực tuyến đúng đối tượng, phân tích ý kiến khách hàng, phát triển sản phẩm, v.v.), lĩnh vực an ninh (hỗ trợ điều tra tội phạm trực tuyến). Do các văn bản từ các nguồn khác nhau và thuộc các loại khác nhau đều có thể được trích chọn các đặc trưng giống nhau, việc xây dựng một hệ thống thử nghiệm xác định đặc điểm tác giả văn bản là khả thi. Đối với lĩnh vực xác định đặc điểm người dùng dựa trên hành vi, do việc trích chọn các đặc trưng hành vi của người dùng trên mỗi hệ thống có tính chất phụ thuộc hệ thống (chẳng hạn các hệ thống TMĐT có các phân loại sản phẩm/cách đặt mã sản phẩm khác nhau), chúng tôi chưa xây dựng thử nghiệm hệ thống cho lĩnh vực này. Các phần tiếp theo có bố cục như sau. Phần 1 nêu vấn đề cần giải quyết. Phần 2 mô tả các chức năng hệ thống. Phần 3 trình bày về xây dựng, triển khai hệ thống và một số giao diện minh họa. Phần 4 trình bày kết luận. 1.1 ĐẶT VẤN ĐỀ Một số hệ thống hoạt động trên mạng Internet như các diễn đàn, mạng xã hội, trao đổi trực tuyến, v.v. có nhu cầu trong việc xác định đặc điểm người dùng thông qua phân tích các văn bản người dùng để lại trên hệ thống. Tuy nhiên, trong một số trường hợp, hệ thống chưa có nhiều dữ liệu mẫu do số văn bản người dùng để lại trên hệ thống chưa nhiều và cũng không nhiều văn bản có thông tin đặc điểm người dùng để có thể dùng để làm mẫu phân tích. Trong các trường hợp khác, mặc dù có thể thu thập được số lượng mẫu đáng kể để phân tích nhưng việc xây dựng một hệ thống nhận diện riêng từ các nguồn mẫu đã có cộng với các nguồn khác là tốn kém 126 nguồn lực, hơn nữa các mẫu này chưa có tính tổng quát và có thể cho kết quả không tốt khi nhận diện các trường hợp mới. Trong bối cảnh đó, một hệ thống xác định đặc điểm tác giả văn bản hoạt động độc lập và cung cấp chức năng xác định đặc điểm tác giả của các bản tin được gửi đến dưới dạng dịch vụ là một giải pháp hữu ích. Hệ thống được xây dựng theo mô hình này sẽ có thể tận dụng được các mẫu từ nhiều nguồn khác nhau và cung cấp các chức năng nhận diện dưới dạng giao diện lập trình ứng dụng (API) và các hệ thống khác có nhu cầu xác định đặc điểm tác giả văn bản có thể gửi các yêu cầu theo định dạng cho trước tới và nhận kết quả trả về của hệ thống. Ngoài ra, hệ thống cũng có thể cho phép các hệ thống khác xây dựng mô hình riêng trên dữ liệu của mình nhằm khai thác tính đặc thù của hệ thống. 1.2 MÔ TẢ HỆ THỐNG 1.2.1 Sơ đồ hệ thống Hình 1 cho thấy sơ đồ tổng quát các thành phần của hệ thống. 1.2.2 Chức năng Thu thập dữ liệu Mô đun này có nhiệm vụ thu thập các dữ liệu mẫu (các bản tin) từ các hệ thống trên mạng Internet. Các dữ liệu được thu thập có ít nhất một trong 4 thông tin về đặc điểm người viết như giới tính, độ tuổi, nghề nghiệp, và vùng miền để dùng làm nhãn huấn luyện. Các hệ thống có thể thu thập dữ liệu mẫu là các hệ thống có sự tham gia trao đổi bằng văn bản của người dùng như diễn đàn, mạng xã hội, các trang web cho phép người dùng bình luận/nêu ý kiến v.v. Trong ứng dụng này, chúng tôi thu thập dữ liệu từ một số diễn đàn tiếng Việt phổ biến như diễn đàn Otofun (otofun.net), Webtretho (webtretho.com.vn), Tinhte (tinhte.vn). Các dữ liệu thu thập được sau đó được lưu trữ trong cơ sở dữ liệu để sử dụng cho các bước tiếp theo. 127 Hình 1 Sơ đồ tổng quát của hệ thống 1.2.3 Chức năng Xử lý dữ liệu Sau khi dữ liệu được thu thập, một số bước xử lý cần được thực hiện để làm sạch dữ liệu, đồng thời một số thao tác khác như bổ sung/chỉnh sửa nhãn thủ công, xử lý về mặt ngôn ngữ học cũng được tiến hành. 1.2.3.1 Tiền xử lý dữ liệu Do dữ liệu từ bộ thu thập tự động có thể chứa các thông tin nhiễu như các ký tự đặc thù ứng dụng, các ký tự lỗi, hoặc một số bản tin chứa quá nhiều các ký tự đặc biệt hoặc các chữ số, các bản tin chứa các thông tin không phải do tác giả viết (do tham khảo từ nguồn khác, do trích dẫn bài người khác), v.v. các thao tác tiền xử lý Xây dựng mô hình Internet Thu thập dữ liệu Xử lý dữ liệu Trích chọn đặc trưng Lưu trữ véc tơ đặc trưng Dữ liệu huấn luyện Dữ liệu thô Tập véc tơ đặc trưng Mô hình nhận diện Dịch vụ xác định đặc điểm tác giả Ứng dụng Web Ứng dụng di động Ứng dụng desktop 128 như phát hiện và lọc bỏ phần dữ liệu gây nhiễu là cần thiết để đảm bảo tính chính xác và khách quan của dữ liệu. Ngoài ra, do các thông tin về tác giả thu thập được có thể thiếu và không chính xác (do các hệ thống không có cơ chế xác minh thông tin do người dùng tự cung cấp), một số thao tác rà soát, bổ sung và điều chỉnh nhãn thủ công cũng được thực hiện. 1.2.3.2 Tách từ và gán nhãn từ loại Ngoài các thao tác xử lý thông thường, một số thao tác xử lý về mặt ngôn ngữ cũng được thực hiện nhằm phục vụ cho hoạt động trích chọn đặc trưng. Do có một số đặc trưng liên quan đến từ và loại từ, các thao tác tách từ và gán nhãn từ loại được áp dụng. Việc tách từ trong tiếng Việt không đơn giản như một số ngôn ngữ khác (như tiếng Anh). Từ trong tiếng Việt có nhiều từ ghép, và các từ ghép này chứa nhiều cụm ký tự (cách nhau bởi dấu cách). Do vậy, việc tách từ trong tiếng Việt không đơn thuần là tách các cụm ký tự phân cách bởi dấu cách trong một câu mà còn phải dựa trên các tính chất ngôn ngữ học khác. Gán nhãn từ loại cũng là một thao tác cơ bản trong tiếng Việt. Có nhiều từ loại phổ biến như danh từ, động từ, tính từ v.v. Trong ứng dụng này chúng tôi sử dụng 18 từ loại phổ biến làm đặc trưng nhận diện. 1.2.4 Chức năng Trích chọn đặc trưng Dữ liệu sau khi được xử lý sẽ được thực hiện trích chọn các đặc trưng cần thiết cho huấn luyện bộ phân loại. Tại bước này, các thao tác như thống kê các ký tự, loại ký tự, loại từ, độ dài từ, độ đa dạng từ vựng, tần suất các từ chức năng, từ nội dung v.v. được thực hiện. Trong ứng dụng này, chúng tôi sử dụng tập đặc trưng đầy đủ bao gồm các đặc trưng dựa trên phong cách kết hợp với các đặc trưng dựa trên nội dung như được trình bày trong phần 3.2. Các véc tơ đặc trưng sau khi được trích chọn sẽ được lưu trữ cùng với nhãn tương ứng vào các tập dữ liệu huấn luyện và được sử dụng để xây dựng nên các mô hình nhận diện. 129 1.2.5 Chức năng Xây dựng mô hình nhận diện Mô hình nhận diện được xây dựng trên tập dữ liệu huấn luyện được tạo ra ở bước trước bằng các thuật toán học máy như SVM, Bayesian Networks, Decision Tree. Mô hình sau khi xây dựng xong sẽ được lưu trữ trên máy tính để phục vụ cho quá trình nhận diện dữ liệu mới sau này. Ngoài việc xây dựng mô hình nhận diện từ tập dữ liệu có sẵn như trên, ứng dụng cũng cho phép xây dựng mô hình từ các dữ liệu cung cấp tức thời. Theo đó, các dữ liệu mẫu có thể được cung cấp trong quá trình nhận diện và mô hình được xây dựng tức thời dựa trên các dữ liệu này và có thể sử dụng ngay cho hoạt động nhận diện dữ liệu mới. 1.2.6 Chức năng Xây dựng dịch vụ nhận diện Mô hình sau khi xây dựng xong có thể được sử dụng để nhận diện các dữ liệu mới. Theo đó, một bài viết chưa rõ đặc điểm tác giả có thể được nhận diện bởi mô hình để xác định ra các đặc điểm của tác giả bài viết. Như đã nói ở trên, mô đun thực hiện công việc nhận diện dữ liệu mới sẽ được xây dựng theo cơ chế dịch vụ Web (Web service) nhằm cung cấp cách thức thuận tiện cho các hệ thống khác có thể sử dụng mô hình. Dịch vụ Web là một phương pháp để các ứng dụng chủ và khách có thể giao tiếp thông qua Web bằng giao thức HTTP (HyperText Transfer Protocol). Theo Hiệp hội World Wide Web (W3C), dịch vụ Web cung cấp các phương tiện chuẩn để thực hiện tương tác giữa các ứng dụng chạy trên nhiều nền tảng khác nhau. Các dịch vụ Web đơn giản có thể kết hợp với nhau để cung cấp các dịch vụ phức tạp và tinh xảo hơn. Sau khi dịch vụ được xây dựng xong, các ứng dụng từ các nền tảng khác có thể gửi các yêu cầu sử dụng dịch vụ tới và nhận phản hổi nếu đáp ứng các yêu cầu về định dạng. 1.2.7 Chức năng Ứng dựng Web thử nghiệm sử dụng dịch vụ Ứng dụng xác định đặc điểm tác giả văn bản sau khi được xây dựng và triển khai dưới dạng dịch vụ Web theo kiểu RESTful có thể được truy cập tới bởi các hệ 130 thống khách trên nhiều nền tảng khác nhau nền tảng Web, nền tảng di động, nền tảng ứng dụng desktop v.v. Trong phạm vi của luận án, chúng tôi xây dựng một ứng dụng Web thử nghiệm sử dụng dịch vụ. Chức năng cơ bản của ứng dụng Web là tiếp nhận dữ liệu từ phía người sử dụng, đóng gói và gửi yêu cầu tới dịch vụ xác định đặc điểm tác giả, đồng thời nhận kết quả trả về và hiện thị cho người dùng xem. Ngoài ra, ứng dụng Web cũng có tính năng tiếp nhận phản hồi về độ chính xác của dịch vụ và có thể tiếp nhận dữ liệu mẫu mới để có thể cải thiến mô hình nhận diện. 1.3 XÂY DỰNG HỆ THỐNG 1.3.1 Mô đun Thu thập dữ liệu Để thực hiện việc thu thập dữ liệu từ các diễn đàn, chúng tôi xây dựng một bộ thu thập dữ liệu tự động trên Web (Web Crawler) sử dụng Scapy. Scrapy là một framework được viết bằng Python cho phép thu thập và rút trích các dữ liệu từ các website một cách hiệu quả, kể cả khi website đó không có các API cho việc thu thập các dữ liệu thô. Sử dụng Scrapy, các bộ Spider được tạo ra để thực thu thập dữ liệu tự động, đồng thời chạy định kỳ cập nhật dữ liệu mới, và lưu trữ kết quả thu thập được dưới dạng tệp XML. Tệp này sau đó sẽ được rút trích thông tin vào đưa vào CDSL phục vụ cho việc xử lý và trích chọn đặc trưng. 1.3.2 Mô đun Xử lý dữ liệu và trích chọn đặc trưng Mô đun Xử lý dữ liệu và trích chọn đặc trưng được xây dựng bằng ngôn ngữ Java. Mô đun cho phép nhận dữ liệu thô đầu vào dưới dạng tệp XML, Excel, hoặc trực tiếp từ CSDL, sau đó thực hiện các thao tác tiền xử lý văn bản và xử lý về mặt ngôn ngữ học như nói ở trên trước khi thực hiện trích chọn đặc trưng. Hình 2 cho thấy giao diện của mô đun khi xử lý và lưu trữ tập dữ liệu huấn luyện. Để thực hiện các thao tác xử lý ngôn ngữ học, chúng tôi sử dụng các thư viện tách từ và gán nhãn từ loại vnTokenizer và vnTagger có sẵn được xây dựng từ nghiên cứu của [90], [91]. 131 Hình 2 Giao diện mô đun xử lý dữ liệu và trích chọn đặc trưng 1.3.3 Mô đun Xây dựng mô hình nhận diện Để xây dựng mô hình nhận diện, chúng tôi sử dụng thư viện thuật toán học máy của công cụ Weka [112] để xây dựng mô hình trên tập dữ liệu xây dựng được. Thư viện thuật toán học máy của Weka được cung cấp trong gói weka.classifiers.* và các gói giúp tạo lập và điều khiển tập dữ liệu như weka.core.Instance hoặc weka.core.Attribute. Hình 3 cho thấy giao diện của mô đun Xây dựng mô hình nhận diện. Mô hình nhận diện sau khi được xây dựng xong sẽ được lưu trữ dạng tệp theo định dạng của thư viện weka (ARFF) và có thể dùng để nhận diện đặc điểm dữ liệu mới. Trong mô đun này, chúng tôi cũng xây dựng một chức năng cho phép nhận diện thử nghiệm ngay trên hệ thống cục bộ thông qua giao diện chương trình như trong hình 4. 132 Hình 3 Giao diện mô đun Xây dựng mô hình nhận diện Hình 4 Giao diện mô đu thử nghiệm nhận diện tác giả văn bản 133 1.3.4 Mô đun Xây dựng dịch vụ nhận diện Về mặt kỹ thuật, dịch vụ Web có thể được xây dựng theo nhiều cách khác nhau. Tuy nhiên, có thể chia các dịch vụ Web thành 2 loại: dịch vụ Web dựa trên chuẩn SOAP (Simple Object Access Protocol) và dịch vụ Web theo kiểu RESTful (Representational State Transfer). Dịch vụ Web dựa trên SOAP có thiết kế phức tạp hơn và phù hợp với các ứng dụng lớn, trong khi dịch vụ Web kiểu RESTful có thiết kế đơn giản hơn và phù hợp với các ứng dụng gọn nhẹ. Trong mô đun này, chúng tôi lựa chọn sử dụng dịch vụ Web kiểu RESTful do tính chất của ứng dụng không có kiến trúc phức tạp. Để thống nhất về mặt công nghệ, chúng tôi lựa chọn Java API for RESTful Web Services (JAX-RS) để xây dựng dịch vụ xác định đặc điểm tác giả văn bản trên mô hình xây dựng được. JAX-RS là bộ giao diện lập trình ứng dụng dựa trên ngôn ngữ Java để giúp tạo các dịch vụ Web kiểu RESTful. Dịch vụ Web RESTful có thể chấp nhận nhiều loại định dạng đầu vào và kết quả trả về như XML, Json, Text v.v. Do tham số đầu vào cho dịch vụ chỉ là nội dung bản tin cần xác định đặc điểm tác giả nên dịch vụ Web trong mô đun này có đầu vào kiểu định dạng văn bản và đầu ra có định dạng Json (do có 4 đầu ra dự đoán 4 mặt đặc điểm của tác giả). Hình 5 cho thấy một phần mã nguồn của dịch vụ Web xác định đặc điểm tác giả văn bản. 1.3.5 Mô đun ứng dụng thử nghiệm sử dụng dịch vụ Sau khi dịch vụ Web xác định đặc điểm tác giả được xây dựng và triển khai, các hệ thống từ nhiều nền tảng khác nhau như Web, nền tảng di động, ứng dụng desktop v.v. có thể yêu cầu sử dụng dịch vụ theo chuẩn của dịch vụ Web RESTful. Trong ứng dụng này, chúng tôi xây dựng 1 mô đun trên nền Web thử nghiệm dịch vụ Web xác định đặc điểm tác giả. Mô đun này được xây dựng bằng công nghệ Java JSP/Servlet và triển khai trên máy chủ Web Glassfish 4.0. Hình 6 và 7 là giao diện và một phần mã nguồn của mô đun ứng dụng Web sử dụng dịch vụ. 134 Hình 5 Mã nguồn dịch vụ Web xác định đặc điểm tác giả Hình 6 Giao diện ứng dụng Web sử dụng dịch vụ 135 Hình 7 Mã nguồn mô đun ứng dụng Web sử dụng dịch vụ 1.4 KẾT LUẬN Trong chương này, chúng tôi đã phát triển một hệ thống xác định đặc điểm tác giả văn bản dựa trên công nghệ dịch vụ Web. Hệ thống bao gồm các chức năng từ thu thập dữ liệu mẫu tự động trên Internet, tiến hành xử lý, trích chọn và lưu trữ đặc trưng, huấn luyện mô hình và cung cấp dịch vụ xác định đặc điểm tác giả theo mô hình dịch vụ Web RESTful sử dụng công nghệ JAX-RS. Với dịch vụ được cung cấp, các hệ thống trên nhiều nền tảng khác nhau có thể yêu cầu sử dụng dịch vụ theo chuẩn giao tiếp thống nhất. Bên cạnh đó, chúng tôi cũng xây dựng một hệ thống Web thử nghiệm sử dụng dịch vụ bằng công nghệ Java JSP/Servlet. Ứng dụng này nhận thông tin đầu vào từ phía người dùng là các bản tin, tiến hành đóng gói yêu cầu, gửi tới dịch vụ Web xác định đặc điểm tác giả, và nhận kết quả trả về hiển thị cho người dùng. Theo cơ chế này, bất kỳ ứng dụng nào được xây dựng trên các nền tảng công nghệ hỗ trợ giao tiếp theo chuẩn dịch vụ Web RESTful đều có thể gửi yêu cầu tới dịch vụ và nhận kết quả phản hồi. Trong tương lai, ứng dụng có thể cải tiến theo các hướng thu thập thêm dữ liệu để huấn luyện để xây dựng các mô hình có khả năng xử lý các đầu vào đa dạng hơn. Ngoài ra, hệ thống hiện tại mới thử nghiệm loại văn bản bài viết diễn đàn. Do đó, hệ thống cũng có thể mở rộng thu thập thêm nhiều loại dữ liệu khác để xây dựng các 136 mô hình đặc thù theo loại văn bản như blog, email, mạng xã hội, bình luận/đánh giá, v.v.
File đính kèm:
- luan_an_mot_so_phuong_phap_hoc_may_xac_dinh_dac_diem_nguoi_d.pdf
- 2 Totat Luanan_DucDT.pdf
- 3 Trang thong tin LA_DucDT (TV).pdf
- 4 Trang thong tin LA_DucDT (TA).pdf