Mở đầu. Trình bày lý do chọn đề tài, mục tiêu, đối tượng và phạm vi nghiên cứu của đề tài. Chương 2 - Cơ sở lý thuyết. Phân tích và đánh giá các hướng nghiên cứu liên quan đến luận văn của nhóm tác giả trong và ngoài nước liên quan đến bài toán.
Trình bày nội dung lý thuyết của những phương pháp máy học truyền thống Support Vector Machine, Cây quyết định – Decision Tree , Naïve Bayes và các phương pháp học sâu như CNN, mô hình BERT. Chương 3 – Phương pháp thử nghiệm. Trình bày quy trình xây dựng bộ dữu liệu và mô hình cho bài toán phân loại cảm xúc dựa trên phương pháp máy học, học sâu. Chương 4 - Thí nghiệm và kết quả.
Trình bày các công đoạn tiền xử lý ngữ liệu, đưa ra các thông số cho ngữ liệu mà học viên đã cài đặt, kết quả thí nghiệm Chương 5 – Xây dựng ứng dụng web minh họa với ngôn ngữ lập trình Python 5 Chương 6 - Kết luận và hướng phát triển. Cuối cùng, luận văn trình bày các kết quả quan trọng trong đề tài mà học viên đã nghiên cứu và thực hiện, đưa ra các hướng phát triển của đề tài. 6 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trong chương này, học viên sẽ trình bày tổng quan các kiến thức liên quan đến các mô hình máy học truyền thống, mô hình mạng nhận tạo và mô hình học sâu mạng tích chập (Convolutional Neural Network) và mô hình BERT. Cụ thể hơn là trình bày các công trình nghiên cứu liên quan đến bài toán phân tích cảm xúc, các kiến thức tổng quan về mô hình mạng nơron, đặc điểm mạng nơron, và hoạt động của mạng nơron.
Từ những kiến thức nền tảng này sẽ đi đến việc trình bày chi tiết về mô hình mạng tích chập (Convolutional Neural Networks) được áp dụng chính trong các bài toán thị giác máy tính hiện nay và được áp dụng trong luận văn này.1 Các công trình nghiên cứu liên quan Phân tích ý kiến - Sentiment Analysis là một lĩnh vực nghiên cứu hấp dẫn và đang thu hút cộng đồng nghiên cứu Xử lý Ngôn ngữ Tự nhiên (NLP). Do đó, lĩnh vực này trở thành lĩnh vực nghiên cứu sôi nổi vì một số nguyên nhân sau : (1) Bài toán này có nhiều ứng dụng trong hầu hết các lĩnh vực, đặc biệt trong các ứng dụng thương mại điện tử. (2) Phân tích cảm xúc đặt ra nhiều thách thức. Nhiều vấn đề liên quan đến chúng chưa được nghiên cứu trước đó do sự phổ biến chưa cao.
Ngày nay, với sự quan tâm ngày càng nhiều thì các vấn đề đang dần được giải quyết tốt hơn. (3) Sự phát triển mạnh mẽ của truyền thông xã hội, đặc biệt các dữ liệu chứa thông tin quan điểm trên nền tảng Web và các mạng xã hội rất hữu ích để giải quyết các vấn đề liên quan đến các lĩnh vực kinh tế, xã hội, giáo dục, phát triển con người. Do đó, bài toán này đã được tập trung nghiên cứu trong và ngoài nước như sau: - Trong công trình của tác giả Ilham Esa Tiffani, “Optimization of Naïve Bayes Classifier By Implemented Unigram, Bigram, Trigram for Sentiment Analysis of Hotel Review”, 2020 [1] đã trình bày phương pháp tối ưu hóa bộ phân loại văn bản Naïve Bayes bằng cách sử dụng các đặc trưng N-gram, cụ thể là Unigram, Bigram, Trigram trên tập dữ liệu đánh giá khách sạn OpinRank (bằng tiếng Anh). Bộ dữ liệu gồm 1000 đánh giá, trong đó 500 đánh giá được gán nhãn tích cực và 500 đánh giá được gán nhãn tiêu cực.
Kết quả thử nghiệm, thuật toán Naïve Bayes áp dụng cho Unigram có độ chính xác 81,30%, áp dụng cho Bigram với độ chính xác 71,60% và với Trigram là 71,90% - Thử nghiệm và so sánh các giải thuật máy học phổ biến cho bài toán phân loại cảm xúc nhiều lớp được trình bày trong “Multi-class sentiment classification: The 7 experimental comparisons of feature selection and machine learning algorithms” Expert Systems with Applications, 80 (2017), pp. 323-339 [2] của nhóm tác giả Liu Y. Nhóm tác giả đã kết hợp 4 giải thuật trích chọn đặc trưng văn bản là Document frequency (DF), CHI statistics (CHI), Information gain (IG), Gain ratio (GR) với 5 giải thuật máy học phổ biến Decision tree (DT), Naïve bayes (NB), Support vector machine (SVM), Radial basis function neural network (RBFNN). Kết quả được trình bày và so sánh về độ chính xác và thời gian chạy của các loại thuật toán - Trong nghiên cứu của nhóm tác giả Pavel, M.
Toxic Comment Classification Implementing CNN Combining Word Embedding Technique [3] , kết hợp mạng học sâu CNN và kỹ thuật nhúng từ (word embedding) để phân loại các bình luận độc hại trên trang thảo luận của Wikipedia. Kết quả đạt được với độ chính xác 98.05% - Tác giả Yang và cộng sự [4] nghiên cứu mô hình mạng Capsule Network cho bài toán phân loại văn bản – đây là một mô hình cải tiến của mô hình mạng tích chập CNN cho các bài toán xử lý ảnh và đã được nghiên cứu cho các bài toán phân loại văn bản và cho kết quả tương đối khả quan. Tương tự như vậy, tác giả Wang và các cộng sự [5] cũng áp dụng ý tưởng tương tự nhưng dựa trên mô hình mạng LSTM kết hợp với Capsule và thử nghiệm trên các bài toán khác nhau cho kết quả vượt trội với các công trình nghiên cứu trước đây Còn đối các nghiên cứu trong nước thì bài toán phân tích ý kiến bắt đầu gây chú ý tới giới nghiên cứu Xử lý Ngôn ngữ Tự nhiên và Khai thác Dữ liệu (Data Mining) trong những năm gần đây. Các nghiên cứu chủ yếu đang tập trung vào các đánh giá các sản phẩm như thiết bị di động, máy tính, laptop và đánh giá chất lượng dịch vụ khách sạn.
- Phương pháp nghiên cứu phân tích cảm xúc cho những ngôn ngữ ít tài nguyên phục vụ cho nghiên cứu (Bach, Ngo Xuan and Phuong, Tu Minh, “Leveraging User Ratings for Resource-poor Sentiment Classification”, 2015) [6]. Nghiên cứu này tập trung vào phân tích cảm xúc dựa trên những mô hình học không giám sát, bán giám sát kết hợp với thông tin điểm đánh giá (rating score). Dữ liệu nghiên cứu tập trung trên hai ngôn ngữ tiếng Việt và tiếng Nhật, một lượng nhỏ được gán nhãn và một lượng lớn chưa được gán nhãn. Một số kết quả đạt được: (1) Nghiên cứu trên mô hình học không giám sát đạt độ chính xác 70% cho cả tiếng Nhật và tiếng Việt; 8 (2) Mô hình học bán giám sát tốt hơn, đạt độ chính xác tăng từ 1.7% (giảm tỉ lệ lỗi từ 6.
- Tác giả Duc,Hong-Pham và cộng sự trình bày trong “Exploring the Effect of Word Embeddings and Bag-of-Words for Vietnamese Sentiment Analysis” [7] nghiên cứu các phương pháp biểu diễn từ (word embedding) dựa trên các mô hình học sâu CNN, LSTM trên bài toán phân tích cảm xúc. Bộ dữ liệu thử nghiệm được xây dựng 4009 câu bình luận thực tế trong miền dữ liệu của các sản phẩm điện thoại di động. - Nhóm tác giả Duong, Huu-Thanh, Tram-Anh Nguyen-Thi, and Vinh Truong Hoang. "Vietnamese Sentiment Analysis under Limited Training Data Based on Deep Neural Networks.
[8] Trình bày các thử nghiệm và đánh giá của các phương pháp máy học khác nhau trên các bộ dữ liệu thiếu mẫu huấn luyện bằng cách sử dụng kỹ thuật tiền xử lý để tạo ra dữ liệu mới. Các kỹ thuật tăng cường dữ liệu khác nhau như là thay thế từ vựng, dịch máy, chuyển cú pháp và sử dụng nhúng từ giúp tăng độ chính xác của các mô hình học máy cho lĩnh vực phân tích cảm xúc - Mô hình PhoBERT được đánh giá là cho kết quả cao nhất cho bài toán phân tích cảm xúc tiếng việt khi so sánh và thử nghiệm trong [9] “Stock article title sentiment- based classification using PhoBERT” của tác giả Tung, Nguyen Son và cộng sự. Các mô hình máy học PhoBERT, SVM, Logistic Regression, LSTM, Random Forest và Naive Bayes được thử nghiệm trên bộ dữ liệu là các tiêu đề của bài viết về chứng khoán được thu thập trên CafeF. Kết quả thử nghiệm được công bố với sự vượt trội của PhoBERT với các chỉ số Accuracy : 93.2 Phương pháp máy học Naïve Bayes Naïve Bayes là thuật toán đơn giản, được xếp vào kinh điển dùng để giải quyết các bài toán liên quan đến phân lớp dữ liệu dựa vào phương pháp thống kê.
Từ khoảng những năm đầu thập niên 60, các nhà khoa học đã dùng Naïve Bayes để giải quyết các bài toán liên quan đến phân loại câu [13]. Với các điều kiện giả định độc lập nắm vai trò chủ đạo thì Naïve Bayes đưa kết luận nhanh hơn các mô hình hồi quy logistic (Logistic Regression Model [14]). Nhược điểm chính của Naïve Bayes là không thể tìm ra được sự tương tác giữa các đặc trưng. 9 Bộ phân lớp Naïve Bayes được xây dựng trên nền tảng công thức toán học xác suất thống kê cùng tên.
Giả sử ta đưa dữ liệu d và phân lớp c vào công thức Naïve Bayes, ta được như sau: Bài toán đặt ra là với đầu vào là một câu d bất kỳ thì mô hình sẽ xác định phân lớp c nào phù hợp. Ta có công thức tính xác suất phân lớp c của câu d: Với cMAP là xác suất phân lớp c có thể xảy ra với câu d. Tùy vào đặc trưng được sử dụng mà d được phân rã thành các đơn vị nhỏ hơn xn. Trong phạm vi đề tài này, học viên sử dụng đặc trưng là unigram, bigram, trigram (Bag of Words).
Giả sử với đặc trưng unigram thì x sẽ là các âm tiết đơn lẻ được phân rã ra từ câu d, vị trí các từ x này là độc lập với nhau. Ta có công thức phân lớp câu Naïve Bayes hoàn chỉnh như sau: Với c là phân lớp tích cực, tiêu cực hay tiềm năng. J là vị trí của từ x trong câu đang xét. Đối với một từ xn xuất hiện từ bộ test, thuộc lớp c nhưng không xuất hiện trong bộ dữ liệu huấn luyện thì xác suất từ đó sẽ là 0.
Do đó mô hình triển khai như trên cần được làm mịn dữ liệu bằng phương pháp Laplace (add-1). Kỹ thuật làm mịn Laplace được ứng dụng rất nhiều để giải quyết trường hợp từ chưa xác định của Naïve Bayes.3 Phương pháp phân lớp Support Vector Machine Support Vector Machine (SVM) là mô hình được sử dụng trong nhiều ngành, là một mô hình máy học có giám sát được dùng để phân tích hồi quy và phân lớp dữ liệu. Giả sử một dữ liệu huấn luyện được gán hai loại nhãn, thuật toán huấn luyện SVM xây dựng một mô hình có thể gán dữ liệu mới một trong hai nhãn đó. Vậy nên SVM là bộ phân lớp tuyến tính nhị phân phi xác xuất.