Skip to content

DaoTuPhat/Student-Sentiment-Topic-Classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Phân tích Cảm xúc và Chủ đề Phản hồi của Sinh viên (Vietnamese Student Feedback Analysis)

Dự án này tập trung vào việc xây dựng và so sánh các mô hình học sâu để giải quyết bài toán phân loại cảm xúc trên dữ liệu văn bản tiếng Việt. Đây là bài tập thực hiện trong khuôn khổ môn học Xử lý Ngôn ngữ Tự nhiên (NLP).

1. Dữ liệu (Dataset)

Dự án sử dụng bộ dữ liệu UIT-VSFC (Vietnamese Students’ Feedback Corpus).

  • Nội dung: Các câu phản hồi của sinh viên về chất lượng giảng dạy và cơ sở vật chất.
  • Quy mô: Bao gồm hơn 16,000 câu văn bản được gán nhãn.
  • Các tác vụ nhãn:
    • Sentiment (Cảm xúc): 3 lớp (0: Tiêu cực, 1: Trung tính, 2: Tích cực).
    • Topic (Chủ đề): 4 lớp (0: Giảng viên, 1: Chương trình đào tạo, 2: Cơ sở vật chất, 3: Khác).
  • Đặc điểm: Dữ liệu có sự mất cân bằng lớp nghiêm trọng (nhãn Trung tính và các chủ đề "Khác" chiếm tỉ lệ rất thấp), gây khó khăn cho quá trình huấn luyện.

2. Tiền xử lý (Preprocessing)

  • Tách từ (Word Segmentation): Sử dụng thư viện VnCoreNLP (RDRSegmenter) để xử lý tách từ ghép tiếng Việt, đảm bảo độ chính xác cao nhất cho đầu vào PhoBERT.

3. Kiến trúc Mô hình (Architectures)

Dự án triển khai và so sánh hai cách tiếp cận chính:

Mô hình 1: PhoBERT-Sentiment (Baseline)

  • Kiến trúc: Sử dụng mô hình ngôn ngữ tiền huấn luyện PhoBERT-base.
  • Mục tiêu: Chỉ thực hiện phân loại cảm xúc (Single-task).
  • Kỹ thuật: Sử dụng Focal Loss thay cho Cross-Entropy để cải thiện khả năng học trên các lớp dữ liệu thiểu số.

Mô hình 2: Multi-Task PhoBERT-CNN (Proposed)

  • Kiến trúc: Sử dụng PhoBERT làm xương sống (Backbone), kết hợp với khối Multi-Kernel CNN (kích thước filter: 2, 3, 4, 5) để trích xuất đặc trưng cục bộ sâu hơn.
  • Học đa nhiệm (Multi-task): Sử dụng cấu trúc hai nhánh đầu ra (Dual-head) để dự đoán đồng thời cả Sentiment và Topic trong cùng một lần lan truyền tiến (Forward pass).

4. Kết quả (Results)

Bảng 1: Kết quả thực nghiệm của mô hình Baseline trên tập Test

Nhãn (Label) Precision Recall F1-score
0 (Negative) 0.9476 0.9503 0.9490
1 (Neutral) 0.5833 0.5868 0.5851
2 (Positive) 0.9546 0.9516 0.9531
Accuracy 0.9318

Bảng 2: Kết quả thực nghiệm của mô hình Multi-task trên tập Test

Nhãn (Label) Precision Recall F1-score
0 (Negative) 0.9525 0.9546 0.9536
1 (Neutral) 0.6364 0.6287 0.6325
2 (Positive) 0.9528 0.9522 0.9525
Accuracy 0.9362

5. Nhận xét

  • Cải thiện hiệu năng: Mô hình Multi-task đạt Accuracy 93.62%, tăng nhẹ so với mức 93.18% của Baseline.
  • Tối ưu nhãn thiểu số: Đột phá lớn nhất nằm ở nhãn Neutral với F1-score tăng từ 0.5851 lên 0.6325, chứng minh sự tương hỗ hiệu quả giữa hai tác vụ và sức mạnh của khối CNN trong việc bắt đặc trưng cục bộ.
  • Tính ổn định: Đồ thị huấn luyện cho thấy cả hai mô hình hội tụ ổn định, đạt trạng thái bão hòa hiệu năng cao nhờ sức mạnh trích xuất đặc trưng của PhoBERT.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors