Chương 1: Tổng quan Giới thiệu tổng quan về bài phân loại văn bản, các thách thức phải đối mặt, tầm quan trọng cũng như tính ứng dụng của đề tài mà tôi thực hiện. - _ Chương 2: Cơ sở lý thuyết Chương này tôi tìm hiểu về các cơ sở lý thuyết mà mình thực hiện cho các chương ở phía sau. - _ Chương 3: Các công trình nghiên cứu liên quan Tôi thực hiện nghiên cứu và trình bày các công trình nghiên cứu có cùng đề tài với bài toán về khía cạnh những nghiên cứu đã làm được trước đó trên nền tảng tiếng Anh (vì chưa có trên tiếng Việt). Bên cạnh đó, tôi còn thực hiện nghiên cứu những bộ dữ liệu đã được tạo cho bài toán nhận diện sự mâu thuẫn giữa hành vi của ứng dụng android và mô tả dé dựa vào đó phát triển cho bộ dữ liệu được trình bày ở Chương 4.
- _ Chương 4: Bộ dữ liệu Ở chương 4, tôi mô tả quy trình các bước tạo bộ dữ liệu, từ thu thập dữ liệu, tiền xử lý, các quy định, quy tắc trong quá trình thực hiện chỉnh sửa, cải thiện chất lượng bộ dữ liệu. Tiếp đó, từ bộ dữ liệu thu được, chúng tôi phân tích rõ các đặc điểm của bộ dữ liệu bằng các phương pháp thống kê (số lượng câu, số nhãn, độ dài của câu, các từ đặc trưng của bộ dit liệu và tập nhãn). - _ Chương 5: Các mô hình sử dung Chương này tôi thực hiện tìm hiệu các nội dung liên quan đên các mô hình mà mình lựa chọn dé phục vụ cho chương 6. - Chương 6: Cai đặt, kết quả và đánh giá Trong chương 6, tôi sẽ trình bày các bước của giai đoạn tiền xử lý dữ liệu, các tham số cài đặt cho các mô hình, kết quả của các mô hình, đánh giá nhận xét các kết quả thu được, và cuối cùng phân tích lỗi.
- _ Chương 7: Kết luận va hướng phát triển Trình bày các kết quả thu được trong khóa luận tốt nghiệp này. Các mặt hạn chế cũng như là các hướng phát trién và mở rộng đề tài trong tương lai. TONG QUAN DE TÀI 1. Bài toán phan loại văn ban Nhằm mục dich sử dụng dé thực hiện phân loại văn bản.
Đây thực chất là một bài toán supervised learning (học có giám sát) trong machine learning (hoc máy), bởi lẽ các văn bản này đã được thực hiện gán nhãn. Với mục tiêu dự đoán xem một văn bản thuộc thé loại nào, thì một hệ thống phân loại văn bản phải đạt được việc phân loại một văn bản cho trước. Sau đây là một số ví dụ về những ứng dụng mà một hệ thống phân loại văn bản có: phân loại các bai báo điện tử, phân loại các bình luận của khách hàng trên nền tảng thương mại điện tử là spam hoặc không spam, đánh bình luận người dùng Facebook hoặc Twitter,. Hiện nay các đề tài về phân loại văn bản như phân loại bình luận mạng xã hội Facebook, Twitter,.
phân loại email, các bai báo điện tử được phát triển mạnh mẽ trên cả tiếng Anh, tiếng Trung, tiếng Việt, và các thứ tiếng khác. Tuy nhiên, Trong khóa luận tốt nghiệp này, với bài toán nhận diện sự mâu thuẫn giữa hành vi của ứng dụng android và mô tả thì dường như chưa có ai thực hiện trên miền dữ liệu tiếng Việt. Dựa vào nhiều cách tiếp cận, tôi tìm hiểu và thực hiện chạy model từ đơn giản đến phức tạp cho bài toán, sau đó đúc kết và tự thiết lập cho mình một hệ thong riêng dé tối ưu hóa bài toán đặt ra. Sau khi thực hiện xong bài khóa luận, tôi mong mang đến một ứng dụng giúp người dùng cuối có thể kiểm tra được tính nhất quán giữa hành vi của ứng dụng android và mô tả của chúng.
Mô tả đầu vào và đầu ra của bài toán: - PAu vào (Input) gồm có hai luồng: e Doan nội dung mô tả hoặc chính sách của một ứng dung. e File APK của một ứng dụng. - Đầura (Output): Ung dung có mâu thuẫn hoặc không mâu thuẫn. | (4 Zody là một ứng dụng của hệ điêu hành Android giúp người dũng `) ị APK File mô tả hoặc chính sách : : tiêp cận được đên các phân thưởng trong hoạt động hăng ngày.
k Ngoài ra, Zody có các tính năng: D6 các nơi có các khuyên mãi quanh bạn. - Nhăn tin với chủ quan dé gửi những phản hồi. Gia nhập vòng quay smartphone, iphone. cho khách hang tích điểm.
Z ca hệ chúng tôi qua email: zody@gmail.com (G 5 m và 1¬ hâê cả — 1. Zody là một ứng dung của hệ điêu hành ời dùng tiếp cận được đến > Nhãn 0 C ——* | Ngoài ra, Zody có các tir : Nhãn 1và2 |e có các khuyên mãi quai Nhãn 0 (Not): câu không có quyền. chủ quán dé gửi những ph hôi Gia nhập — PB. +> Nhãn 1và2 Nhãn 1 (Source): câu có liên quan vòng quay smartphone, iphone cho khách | đến quyên truy cập dữ liêu người (hàng tích điêm ) dùng Nhãn 2 (Sink): câu có liên quan đến quyền gửi dữ liệu người dùng.
Liên hệ chúng tôi qua email zody@gmail.com > Nhãn 2 Hình 1- 1. Mô tả bài toán M6 tả bài toán: Dữ liệu các App được lấy từ CH Play. Dựa trên một App ta sẽ lay dữ liệu của 3 file là Description (mô tả), Policy (chính sách) và APK để phục vụ bài toán. Ta có thể hình dung bài toán được giải quyết theo các bước sau: - B1: Đầu vào là một Passage (nội dung lần lượt là file Description (mô tả) hoặc Policy (chính sách)).
- B2: Thực hiện tách Passage thành các câu và dự đoán lân lượt các câu với các nhãn trên câu tương ứng. Đầu ra sẽ là một danh sách nhãn (1). - B3: File APK được đưa vào Androguard cho ra một danh sách nhãn (2). - B4: Kiểm App đó có lạm dụng quyền bằng việc đối chiếu giữa (1) và (2) có cùng các quyền với nhau không.
Nếu cùng các quyền thì App đó không mâu thuẫn và ngược lại. Vi du 1 (Nội dung mô ta một App có quyên): - Dau vào: 1. Zody là một ứng dụng được tạo ra giúp người dùng tiếp cận được đến các phan thưởng trong hoạt động hang ngày. Ngoài ra, Zody có các tinh năng: - D6 các nơi có các khuyến mãi quanh bạn.
- Nhan tin với chủ quán dé gửi những phản hôi. - Gia nhập vòng quay smartphone, iphone. cho khách hàng tích điểm. Liên hệ chúng tôi qua email: zody@ gmail.com - Với đoạn văn bản trên có các dòng sau có các câu liên quan đến các quyền: e_ Dò các nơi có các khuyến mãi quanh bạn.
(quyền Location) —> Nhãn 1 e Nhắn tin với chủ quan dé gửi những phản hồi. (quyền Internet) > Nhãn 2 - Đầura: 1,2 Ví dụ 2 (Nội dung mô tả một App không có quyền): - Đầu vào: Thánh Troll hỏi xoáy toàn nhưng câu đồ hại não, cẩn thận khi chơi nhé :)) - __ Với văn bản trên không đề cập đến quyền nào —> Nhãn 0 - Đầura:0 1. Vấn đề thách thức Giai đoạn chiếm hau hết thời gian trong một dự án chắc chan là giai đoạn xây dựng bộ dữ liệu. Việc thực hiện thu thập dữ liệu các nội dung file mô tả và chính sách cũng như file APK của ứng dụng gặp nhiều khó khăn khi không có sẵn trên các phương tiện tìm kiếm.
Bên cạnh đó khi thu thập về còn phải thực hiện tiền xử lý dữ liệu bằng cách tách đoạn thành câu trên văn bản tiếng Việt. Dành nhiều thời gian đê thực hiện training cho các annotators phục vụ cho việc gan nhãn trên 10 các mẫu dữ liệu. Vì thế, việc xây dựng bộ dữ liệu đủ lớn cả về số lượng cũng như về chat lượng thi sẽ tôn rat nhiêu thời gian và công sức. Các mô hình của bài toán phân loại văn bản phức tạp, khó hiểu và khó triển khai.
Hơn thế, đây là một bài toán khá mới mẻ ở Việt Nam, tài liệu tham khảo cũng như tài nguyên về lĩnh vực này chủ yếu trên tiếng Anh, trong khi đó trên tiếng Việt không có bài nghiên cứu trước đó, việc này gây khó khăn trong quá trình tìm hiểu và nghiên cứu bài toán. Ngoài ra, tiếng Việt mang những đặc điểm, độ khó nhất định (ví dụ như từ ghép, từ đa nghĩa). Việc xử lý ngôn ngữ tiếng Việt cũng là một thách thức lớn đòi hỏi tôi không ngừng tìm tòi, nghiên cứu. Tính ứng dụng của đề tài Nhận diện sự mâu thuẫn giữa hành vi của ứng dụng android và mô tả có tính ứng dụng cao và mang lại ý nghĩa to lớn cho xã hội, bởi vì: - Pau tiên, với việc xây dựng một bộ dữ liệu mới, tôi đã có sự đóng góp và góp phần làm giàu nguồn dữ liệu cho lĩnh vực xử lý ngôn ngữ tự nhiên tiếng Việt.
Bởi vì, ở thời điểm hiện tại, số lượng các bộ dữ liệu chất lượng tiếng Việt phục vụ cho cộng đồng vẫn còn khá ít và không đa dạng. Không những thế, bộ dữ liệu trong dé tài về mô tả và chính sách của ứng dụng trên miền dữ liệu tiếng Việt vô cùng hạn chế. Chính vì thế, việc xây dựng một bộ dữ liệu mới sẽ góp phần bổ sung và thúc day những nghiên cứu sau này của lĩnh vực xử lý ngôn ngữ tự nhiên tại Việt Nam nói chung và bài toán cùng đề tài nói riêng. Tiếp đó, tôi cũng sẽ thực hiện chạy thử nghiệm các mô hình nhằm mục đích đánh giá bộ dữ liệu đã tạo và lựa chọn mô hình tốt nhất dé tạo một hệ thông nhăm trực quan hóa cho bài toán của mình.
- Đối với Appstore, họ thực hiện các phương pháp kiểm tra những quyền có trong ứng dụng được khai báo trong file APK và file mô tả có khớp với nhau hay không, những ứng dụng khi được phát hành chính thức trên Appstore đều được kiểm tra ở phương diện này. Tuy nhiên, CH Play thì không như lãi vậy và người dùng cuối sẽ phải làm điều này. Họ phải thực hiện đọc các nội dung mô tả để xem các ứng dụng có yêu cầu cấp những quyền nằm ngoài phạm vi tính năng hay không, nhưng thông thường một người dùng tải các ứng dụng Android thì sẽ hiếm đọc những nội dung mô tả của ứng dụng hoặc nếu có đọc thì cũng sẽ khó khăn trong việc xác định những quyền mà ứng dụng có thể yêu cầu. Đây cũng chính là một trong những nguyên nhân dẫn đến dữ liệu riêng tư của người dùng bị truy cập hoặc đánh cấp khi sử dụng một ứng dụng không an toàn nào đó.