## Tổng quan nghiên cứu

Trong bối cảnh phát triển mạnh mẽ của Internet và mạng xã hội, với hơn 60 triệu người dùng Internet tại Việt Nam, chiếm khoảng 66% dân số, mạng xã hội đã trở thành một phần không thể thiếu trong đời sống hàng ngày. Tính đến tháng 7/2017, Việt Nam có khoảng 64 triệu người dùng Facebook, chiếm 3% tổng số tài khoản Facebook toàn cầu. Mạng xã hội không chỉ là phương tiện thể hiện bản thân mà còn là kênh tìm kiếm thông tin, giao tiếp và kết nối xã hội. Tuy nhiên, việc người dùng không cập nhật đầy đủ thông tin cá nhân hoặc cung cấp thông tin giả mạo gây khó khăn trong việc xác định chính xác các đặc điểm nhân khẩu học, đặc biệt là nhóm tuổi.

Mục tiêu của luận văn là xây dựng phương pháp phân loại nhóm tuổi người dùng mạng xã hội sử dụng ngôn ngữ tiếng Việt dựa trên nội dung văn bản ngắn và ngôn ngữ biến thể trên mạng xã hội. Phạm vi nghiên cứu tập trung vào dữ liệu thu thập từ người dùng mạng xã hội tại Việt Nam trong giai đoạn 2017-2018. Nghiên cứu sử dụng thuật toán máy học vector hỗ trợ (SVM) để phân loại nhóm tuổi thành 4 nhóm: dưới 24 tuổi, 25-34 tuổi, 35-40 tuổi và trên 40 tuổi. Kết quả nghiên cứu có ý nghĩa quan trọng trong việc hỗ trợ các cơ quan quản lý nhà nước, doanh nghiệp trong việc phân tích, dự báo hành vi người dùng và truyền thông hiệu quả đến từng nhóm tuổi.

## Cơ sở lý thuyết và phương pháp nghiên cứu

### Khung lý thuyết áp dụng

- **Mạng xã hội (Social Network Sites)**: Được hiểu là tập hợp các cá nhân và các mối quan hệ giữa họ, được mô hình hóa dưới dạng đồ thị các nút (người dùng) và các liên kết (quan hệ). Mạng xã hội có tính chất mở, cập nhật thông tin theo thời gian thực, thu hút lượng lớn người dùng.

- **Ngôn ngữ mạng xã hội tiếng Việt**: Là biến thể đặc thù của tiếng Việt, bao gồm các đặc điểm như câu ngắn, biểu tượng cảm xúc, cách viết tắt, ngôn ngữ teen, sai chính tả, lệch chuẩn. Ngôn ngữ này phản ánh đặc trưng xã hội và nhóm tuổi người dùng.

- **Biểu diễn văn bản dưới dạng vector**: Sử dụng mô hình Bag of Words (BoW) kết hợp với trọng số TF-IDF (Term Frequency - Inverse Document Frequency) để biểu diễn tần suất và tầm quan trọng của từ trong văn bản.

- **Mô hình ngôn ngữ n-gram**: Chuỗi kết hợp các từ liên tiếp (bigram, trigram) giúp nắm bắt cấu trúc ngôn ngữ và ngữ cảnh trong văn bản.

- **Phương pháp Support Vector Machine (SVM)**: Thuật toán học máy phân loại dữ liệu bằng cách tìm siêu phẳng phân chia tối ưu trong không gian đặc trưng, phù hợp với dữ liệu có số chiều cao và có thể xử lý dữ liệu không tuyến tính qua hàm kernel.

- **Đánh giá mô hình**: Sử dụng các chỉ số Precision, Recall, Accuracy và F1-score để đánh giá hiệu quả phân loại.

### Phương pháp nghiên cứu

- **Nguồn dữ liệu**: Dữ liệu thu thập từ mạng xã hội Facebook thông qua công cụ Graph API, bao gồm bài đăng công khai, tuổi người dùng và các trang fanpage đã thích. Tổng số dữ liệu gồm 13,888 tài khoản, trong đó 9,949 tài khoản dùng để huấn luyện và 2,939 tài khoản dùng để kiểm tra.

- **Phân chia nhóm tuổi**: Người dùng được phân thành 4 nhóm tuổi: A (<24 tuổi), B (25-34 tuổi), C (35-40 tuổi), D (>40 tuổi).

- **Tiền xử lý dữ liệu**: Bao gồm làm sạch văn bản (loại bỏ ký tự nhiễu, chuẩn hóa Unicode, chuyển chữ thường), tách từ tiếng Việt bằng thư viện Pyvi với độ chính xác 92.5%, loại bỏ stopword, chuẩn hóa từ và vector hóa bằng BoW kết hợp TF-IDF và n-gram.

- **Lựa chọn đặc trưng**: Sử dụng phương pháp ngưỡng TF-IDF và thống kê chi bình phương (chi-square) để chọn lọc đặc trưng quan trọng, giảm kích thước dữ liệu và tăng hiệu quả phân loại.

- **Mô hình phân loại**: Áp dụng thuật toán SVM với các kernel khác nhau (linear, polynomial, RBF, sigmoid), sử dụng chiến thuật phân loại nhiều lớp One-vs-Rest và tìm kiếm tham số tối ưu bằng GridSearchCV.

- **Timeline nghiên cứu**: Thu thập và xử lý dữ liệu từ tháng 1 đến tháng 6 năm 2018, huấn luyện và đánh giá mô hình trong cùng khoảng thời gian.

## Kết quả nghiên cứu và thảo luận

### Những phát hiện chính

- Mô hình SVM với kernel RBF và chiến thuật One-vs-Rest đạt độ chính xác phân loại nhóm tuổi cao nhất trên tập dữ liệu lớn.

- Trên tập huấn luyện gồm 939 tài khoản, độ chính xác phân loại nhóm tuổi dưới 24 tuổi đạt 66.0%, các nhóm tuổi cao hơn đạt khoảng 50%.

- Khi mở rộng tập huấn luyện lên 5,362 tài khoản và kiểm tra trên 2,642 tài khoản, độ chính xác nhóm tuổi dưới 24 tuổi tăng lên 73%, cho thấy hiệu quả cải thiện khi tăng kích thước dữ liệu.

- Phân bố đặc trưng ngôn ngữ theo nhóm tuổi thể hiện rõ sự khác biệt trong cách sử dụng từ ngữ, ví dụ nhóm tuổi trẻ thường dùng từ liên quan đến học tập, giải trí, trong khi nhóm tuổi lớn hơn sử dụng từ liên quan đến gia đình, sức khỏe.

- Việc kết hợp dữ liệu về sở thích fanpage giúp tăng độ chính xác phân loại, đặc biệt với các nhóm tuổi trung niên và cao tuổi.

### Thảo luận kết quả

Kết quả cho thấy việc phân loại nhóm tuổi người dùng mạng xã hội dựa trên ngôn ngữ tiếng Việt là khả thi nhưng gặp nhiều thách thức do đặc trưng ngôn ngữ mạng xã hội như biến thể ngôn ngữ, viết tắt, sai chính tả và dữ liệu ngắn. So với các nghiên cứu quốc tế với ngôn ngữ tiếng Anh đạt độ chính xác trên 80%, kết quả của nghiên cứu này thấp hơn do đặc thù ngôn ngữ tiếng Việt và hạn chế về dữ liệu.

Việc sử dụng SVM với các kernel khác nhau và chiến thuật phân loại nhiều lớp đã giúp cải thiện hiệu quả phân loại. Phân tích đặc trưng bằng chi bình phương giúp nhận diện các từ khóa đặc trưng cho từng nhóm tuổi, từ đó nâng cao khả năng phân biệt.

Dữ liệu lớn và đa dạng hơn, cùng với việc cải tiến tiền xử lý và lựa chọn đặc trưng, sẽ giúp nâng cao độ chính xác trong các nghiên cứu tiếp theo. Kết quả nghiên cứu có thể được trình bày qua biểu đồ phân bố độ tuổi, biểu đồ độ chính xác theo nhóm tuổi và bảng so sánh hiệu quả các kernel SVM.

## Đề xuất và khuyến nghị

- **Mở rộng tập dữ liệu**: Thu thập thêm dữ liệu người dùng từ nhiều nguồn mạng xã hội khác nhau để tăng tính đa dạng và độ lớn của tập huấn luyện, nhằm nâng cao độ chính xác phân loại. Thời gian thực hiện: 6-12 tháng, chủ thể: các tổ chức nghiên cứu và doanh nghiệp công nghệ.

- **Cải tiến tiền xử lý ngôn ngữ**: Phát triển các thuật toán tách từ, chuẩn hóa và xử lý biến thể ngôn ngữ mạng xã hội tiếng Việt chuyên sâu hơn, bao gồm nhận diện teencode và biểu tượng cảm xúc. Thời gian: 6 tháng, chủ thể: nhóm nghiên cứu ngôn ngữ tự nhiên.

- **Áp dụng mô hình học sâu (Deep Learning)**: Thử nghiệm các mô hình học sâu như mạng nơ-ron tích chập (CNN) hoặc mạng nơ-ron hồi tiếp (RNN) để khai thác đặc trưng ngữ cảnh và cấu trúc ngôn ngữ phức tạp hơn. Thời gian: 12 tháng, chủ thể: các trung tâm nghiên cứu AI.

- **Tích hợp dữ liệu đa chiều**: Kết hợp dữ liệu văn bản với các thông tin hành vi người dùng như lượt thích fanpage, thời gian hoạt động, mạng lưới kết nối để tăng độ chính xác phân loại nhóm tuổi. Thời gian: 6-9 tháng, chủ thể: doanh nghiệp và tổ chức quản lý mạng xã hội.

- **Phát triển công cụ ứng dụng**: Xây dựng phần mềm hoặc API hỗ trợ phân loại nhóm tuổi người dùng mạng xã hội phục vụ cho các cơ quan quản lý, doanh nghiệp quảng cáo và nghiên cứu thị trường. Thời gian: 6 tháng, chủ thể: doanh nghiệp công nghệ.

## Đối tượng nên tham khảo luận văn

- **Các nhà nghiên cứu và sinh viên ngành Khoa học Máy tính, Trí tuệ nhân tạo**: Nghiên cứu về xử lý ngôn ngữ tự nhiên, học máy và ứng dụng trong phân tích mạng xã hội.

- **Cơ quan quản lý nhà nước về thông tin và truyền thông**: Sử dụng kết quả để xác định chính xác nhóm tuổi người dùng, phục vụ công tác quản lý, phòng chống thông tin giả mạo.

- **Doanh nghiệp quảng cáo và marketing số**: Tận dụng công cụ phân loại nhóm tuổi để thiết kế chiến dịch quảng cáo đúng đối tượng, nâng cao hiệu quả tiếp thị.

- **Các tổ chức nghiên cứu thị trường và xã hội học**: Phân tích hành vi, xu hướng tiêu dùng và tương tác xã hội theo nhóm tuổi dựa trên dữ liệu mạng xã hội.

## Câu hỏi thường gặp

1. **Phân loại nhóm tuổi người dùng mạng xã hội dựa trên ngôn ngữ có khó không?**  
   Việc phân loại gặp nhiều thách thức do ngôn ngữ mạng xã hội biến thể, ngắn gọn và không chuẩn. Tuy nhiên, sử dụng các kỹ thuật học máy như SVM kết hợp tiền xử lý phù hợp giúp đạt độ chính xác khả quan.

2. **Tại sao chọn thuật toán SVM cho bài toán này?**  
   SVM hiệu quả với dữ liệu có số chiều cao, có khả năng xử lý dữ liệu không tuyến tính qua kernel, và đã được chứng minh cho kết quả tốt trong phân loại văn bản.

3. **Dữ liệu thu thập từ đâu và có đảm bảo tính riêng tư không?**  
   Dữ liệu được thu thập từ các bài đăng công khai trên Facebook qua Graph API, đảm bảo không vi phạm quyền riêng tư người dùng.

4. **Độ chính xác phân loại nhóm tuổi đạt bao nhiêu?**  
   Độ chính xác nhóm tuổi dưới 24 tuổi đạt khoảng 66-73%, các nhóm tuổi khác đạt khoảng 50%, phản ánh tính khó khăn của bài toán với ngôn ngữ tiếng Việt.

5. **Có thể áp dụng phương pháp này cho các mạng xã hội khác không?**  
   Có thể áp dụng với điều chỉnh phù hợp cho đặc trưng ngôn ngữ và dữ liệu của từng mạng xã hội, ví dụ Twitter, Zalo, với ngôn ngữ tiếng Việt.

## Kết luận

- Đã xây dựng thành công mô hình phân loại nhóm tuổi người dùng mạng xã hội sử dụng ngôn ngữ tiếng Việt dựa trên thuật toán SVM với dữ liệu thực tế.

- Phân loại nhóm tuổi thành 4 nhóm với độ chính xác nhóm tuổi trẻ nhất đạt trên 70% khi sử dụng tập dữ liệu lớn.

- Nghiên cứu làm rõ đặc trưng ngôn ngữ mạng xã hội tiếng Việt và mối liên hệ với nhóm tuổi người dùng.

- Kết quả nghiên cứu cung cấp công cụ hỗ trợ quản lý nhà nước, doanh nghiệp trong việc phân tích và tiếp cận người dùng mạng xã hội hiệu quả.

- Đề xuất hướng phát triển mở rộng dữ liệu, cải tiến kỹ thuật và ứng dụng mô hình học sâu để nâng cao hiệu quả phân loại trong tương lai.

Hành động tiếp theo là triển khai mở rộng thu thập dữ liệu, thử nghiệm các mô hình mới và phát triển công cụ ứng dụng thực tiễn nhằm phục vụ quản lý và kinh doanh trên mạng xã hội.