Bối cảnh và vấn đề nghiên cứu
Khóa luận tốt nghiệp "Xây dựng ứng dụng phân loại tin tức COVID-19 trên mạng xã hội Twitter" được thực hiện bởi sinh viên Nguyễn Bá Minh Hoàng (MSSV: 16520435) và Nguyễn Gia Huy (MSSV: 16520517), dưới sự hướng dẫn của TS. Nguyễn Lưu Thùy Ngân và ThS. Nguyễn Thị Kim Phụng, thuộc Khoa Hệ thống Thông tin, Trường Đại học Công nghệ Thông tin – Đại học Quốc gia Thành phố Hồ Chí Minh (năm 2020).
Đại dịch COVID-19 bùng phát trên quy mô toàn cầu đã gây ra những tác động nghiêm trọng đối với sức khỏe cộng đồng, kinh tế và đời sống xã hội. Trong bối cảnh dịch bệnh diễn biến phức tạp và chưa được kiểm soát hoàn toàn, việc nắm bắt kịp thời diễn biến thực tế, tâm lý, các mối quan tâm và lo ngại của người dân là yêu cầu cấp thiết đối với các cơ quan nghiên cứu và tổ chức y tế có thẩm quyền.
Twitter là nền tảng tiểu blog (micro-blogging) sở hữu hàng trăm triệu người dùng trên toàn thế giới, cho phép đăng tải và trao đổi các tin nhắn ngắn có độ dài tối đa 140 ký tự (các "tweet"). Thông qua các dịch vụ trên nền tảng Web, tin nhắn SMS hoặc ứng dụng di động, thông tin trên Twitter được truyền tải theo thời gian thực trực tiếp từ hiện trường hoặc từ nguồn phát sinh sự kiện. Twitter cung cấp cơ chế phân loại nội dung bằng "hashtag" — đoạn ký tự có ý nghĩa được bắt đầu bằng dấu "#". Khi bài viết được gán hashtag, hệ thống sẽ gom nhóm bài viết đó cùng các nội dung có chung chủ đề. Tần suất xuất hiện lớn của một cụm hashtag phản ánh chủ đề đang thịnh hành tại một thời điểm nhất định.
Đề tài được xây dựng dựa trên ba căn cứ khảo sát:
- Nhu cầu quan sát và phân tích dữ liệu thực tế về diễn biến dịch bệnh COVID-19.
- Các nghiên cứu khoa học liên quan đến khai phá dữ liệu mạng xã hội.
- Các hệ thống phân tích và phân loại dữ liệu sẵn có.
Mục tiêu nghiên cứu được xác định cụ thể trong văn bản:
- Đáp ứng nhu cầu phân loại các bài viết trên nền tảng mạng xã hội Twitter hỗ trợ các tổ chức, cơ quan có thể xác định nhanh chóng các vùng dịch, theo dõi các phản ứng của người dân đối với dịch bệnh.
- Sử dụng dữ liệu hashtag của các bài đăng liên quan đến dịch bệnh COVID-19 trên mạng xã hội Twitter để huấn luyện và kiến tạo các cụm phục vụ phân loại bài viết, giúp chính phủ và các tổ chức y tế quản lý dữ liệu COVID-19 và kiểm soát tốt các vùng dịch.
Nhiệm vụ trọng tâm của khóa luận là phân tích, so sánh và lựa chọn thuật toán gom cụm tối ưu cho bộ dữ liệu hashtag thu thập từ Twitter xung quanh chủ đề COVID-19, từ đó xây dựng ứng dụng phân loại bài viết hoàn chỉnh.
Phạm vi nghiên cứu của đề tài bao gồm:
- Không gian dữ liệu: Tập dữ liệu bài đăng tiếng Anh có chứa hashtag liên quan đến COVID-19 trên mạng xã hội Twitter.
- Nguồn dữ liệu: Tập dữ liệu thứ cấp từ nền tảng Kaggle do tác giả Gabriel Preda cung cấp (tệp tin
covid19_tweets.csv).
- Môi trường và công nghệ thực nghiệm: Ngôn ngữ lập trình Python phiên bản 3.8; các thư viện phân tích dữ liệu chuyên dụng gồm Pandas, Scikit-learn, NumPy, SciPy, Matplotlib; gói xử lý tách từ ghép Wordninja.
Cơ sở lý thuyết và phương pháp
Khóa luận thiết lập nền tảng lý thuyết xoay quanh các kỹ thuật trong Xử lý ngôn ngữ tự nhiên (Natural Language Processing - NLP), các mô hình biểu diễn dữ liệu văn bản và các thuật toán học máy không giám sát (gom cụm dữ liệu).
Quy trình xử lý văn bản bao gồm các khái niệm cốt lõi:
- Khử nhiễu dữ liệu (Data Denoising): Loại bỏ các thành phần dư thừa như thẻ HTML, đoạn mã JavaScript, các ký tự đặc biệt không mang thông tin ngữ nghĩa.
- Tách từ (Word Segmentation): Nhận diện và phân chia ranh giới giữa các từ đơn lẻ, đặc biệt quan trọng đối với các từ viết liền nhau trong chuỗi hashtag.
- Chuẩn hóa từ (Text Normalization): Biến đổi các dạng biểu diễn không đồng nhất của từ ngữ về dạng chuẩn thống nhất (ví dụ: chuyển các từ viết tắt dạng mạng xã hội như "2moro" về "tomorrow", "b4" về "before").
- Loại bỏ từ dừng (Stopwords Removal): Lọc bỏ các từ xuất hiện phổ biến nhưng mang ít giá trị phân loại thông tin (như "is", "that", "this" trong tiếng Anh).
- Rút gọn từ về gốc: Khảo sát hai kỹ thuật chính là Stemming (loại bỏ hậu tố ngữ pháp dựa trên quy tắc đơn giản) và Lemmatization (sử dụng từ điển ngôn ngữ để quy đổi chính xác các biến thể ngữ pháp về dạng nguyên thể).
Phương pháp vector hóa dữ liệu sử dụng hai mô hình:
- Mô hình túi từ (Bag of Words): Đại diện văn bản dưới dạng tập hợp các từ xuất hiện, bỏ qua yếu tố cú pháp và trật tự từ vựng.
- Mô hình không gian vector (Vector Space Model): Biểu diễn tài liệu thành các vector $n$-chiều trong không gian Euclid. Trọng số của từng chiều được xác định thông qua chỉ số TF-IDF (Term Frequency – Inverse Document Frequency).
Công thức tính trọng số TF-IDF trong nghiên cứu được triển khai theo chuẩn thư viện Scikit-learn:
- Tần số xuất hiện của từ: $TF(t) = \text{Số lần xuất hiện của từ } t \text{ trong văn bản}$.
- Tần số tài liệu nghịch đảo có làm mịn: $IDF(t) = 1 + \ln\left(\frac{N + 1}{DF(t) + 1}\right)$, trong đó $N$ là tổng số văn bản, $DF(t)$ là số văn bản có chứa từ $t$.
- Trọng số tổng hợp: $TF\text{-}IDF = TF \times IDF$.
Về lý thuyết gom cụm, báo cáo tiến hành khảo sát tổng quan 9 thuật toán:
- K-Means: Thuật toán phân hoạch dựa trên việc tối thiểu hóa tổng bình phương khoảng cách từ các điểm dữ liệu đến tâm cụm tương ứng.
- Agglomerative Hierarchical Clustering (AHC): Thuật toán phân cụm phân cấp tiếp cận từ dưới lên (Bottom-up), xem mỗi đối tượng ban đầu là một cụm riêng lẻ và tuần tự gộp các cụm gần nhau nhất.
- BIRCH (Balanced Iterative Reducing and Clustering using Hierarchies): Thuật toán phân cụm phân cấp từ trên xuống (Top-down) dựa trên cây đặc trưng cụm (Clustering Feature Tree - CF Tree) lưu bộ ba giá trị thống kê $(n, LS, SS)$.
- DBSCAN: Thuật toán phân cụm dựa trên mật độ, phân chia không gian dữ liệu thông qua các tham số bán kính lân cận ($eps$) và số điểm tối thiểu ($minPts$).
- OPTICS: Thuật toán mở rộng từ DBSCAN nhằm phát hiện các cụm có mật độ biến thiên.
- Gom cụm quang phổ (Spectral Clustering): Kỹ thuật giảm chiều không gian dựa trên phổ của ma trận tương đồng trước khi tiến hành phân cụm.
- Mô hình hỗn hợp Gauss (Gaussian Mixtures): Phương pháp sử dụng thuật toán Tối đa hóa kỳ vọng (Expectation-Maximization) để ước lượng tham số phân phối xác suất.
- Mini Batch K-Means: Biến thể tối ưu hóa của K-Means sử dụng các mẫu dữ liệu ngẫu nhiên nhỏ (mini-batches) nhằm giảm thời gian tính toán.
- Mean-Shift: Thuật toán xác định tâm cụm thông qua việc cập nhật điểm dữ liệu về hướng có mật độ trơn cao nhất.
Dựa trên tính chất của dữ liệu hashtag văn bản, nhóm tác giả chọn lọc 3 thuật toán để tiến hành thực nghiệm so sánh: K-Means, BIRCH và Agglomerative Clustering.
| Thuật toán |
Ưu điểm theo phân tích của tác giả |
Khuyết điểm theo phân tích của tác giả |
| K-Means |
Dễ cài đặt; tự điều chỉnh với dữ liệu lớn; đảm bảo hội tụ; dễ thích ứng với dữ liệu mới; có thể gom cụm các hình thái kích cỡ khác nhau. |
Phải chỉ định trước số cụm $k$; phụ thuộc vào điểm khởi tạo; kém hiệu quả nếu mật độ dữ liệu đa dạng; nhạy cảm với điểm ngoại lệ; độ phức tạp tăng theo số chiều. |
| BIRCH |
Tìm cụm với một lần duyệt dữ liệu; độ phức tạp tuyến tính $O(n)$ với $n$ là số dòng dữ liệu. |
Chỉ xử lý dữ liệu kiểu số học; nhạy cảm với thứ tự dữ liệu; có xu hướng tạo cụm hình cầu đồng dạng do kiểm soát bằng bán kính. |
| Agglomerative Clustering |
Ít bị ảnh hưởng bởi điểm ngoại lệ; kết quả trực quan hóa dưới dạng cây phân cấp. |
Kém hiệu quả khi dữ liệu bị thiếu; tiêu tốn bộ nhớ lưu trữ và thời gian tính toán; khó xác định hiệu quả đối với dữ liệu nhiều chiều. |
Tiêu chuẩn đánh giá chất lượng phân cụm sử dụng 3 chỉ số học máy không giám sát:
- Silhouette Score: Đánh giá độ gắn kết của đối tượng trong cụm so với khoảng cách tới các cụm lân cận. Giá trị dao động trong khoảng $[-1, 1]$, giá trị càng gần 1 thể hiện chất lượng phân cụm càng cao:
$$Silhouette = \frac{b - a}{\max(a, b)}$$
Trong đó $a$ là khoảng cách trung bình nội cụm, $b$ là khoảng cách trung bình tới cụm gần nhất.
- Calinski-Harabasz Score: Tỷ số giữa ma trận phân tán đối cụm (Between Cluster Scatter Matrix - BCSM) và ma trận phân tán nội cụm (Within Cluster Scatter Matrix - WCSM), được chuẩn hóa theo số lượng dữ liệu $N$ và số cụm $k$:
$$Calinski\text{-}Harabasz = \frac{\text{trace}(BCSM)}{\text{trace}(WCSM)} \times \frac{N - k}{k - 1}$$
Điểm số càng cao phản ánh các cụm được phân hoạch càng rõ rệt.
- Davies-Bouldin Score: Thước đo độ tương tự trung bình giữa các cụm dựa trên tỷ lệ giữa kích thước cụm và khoảng cách giữa các tâm cụm ($R_{ij} = (S_i + S_j) / d_{ij}$). Giá trị càng gần 0 phản ánh mô hình phân hoạch càng tốt.
Thiết kế và triển khai hệ thống
Nguồn dữ liệu thực nghiệm được thu thập từ Kaggle thông qua tệp tin covid19_tweets.csv. Nhóm nghiên cứu nêu rõ lý do sử dụng dữ liệu bên thứ ba: Twitter API áp dụng các chính sách bảo mật khắt khe và tài khoản giáo dục tại Việt Nam không nằm trong danh sách được hỗ trợ trực tiếp.
Tập dữ liệu thô bao gồm 179.108 dòng và 13 cột thông tin:
| Tên trường dữ liệu |
Kiểu dữ liệu |
Mô tả chi tiết |
user_name |
String |
Tên người dùng Twitter |
user_location |
String |
Địa chỉ/Vị trí do người dùng đăng ký |
user_description |
String |
Phần mô tả tiểu sử của người dùng |
user_created |
Date |
Ngày tạo tài khoản |
user_followers |
Integer |
Số lượng người theo dõi tài khoản |
user_friends |
Integer |
Số lượng bạn bè của tài khoản |
user_favourites |
Integer |
Số lượt bài viết tài khoản đã bấm yêu thích |
user_verified |
Boolean |
Tình trạng xác thực tài khoản chính chủ |
date |
Date |
Ngày đăng bài viết |
text |
String |
Toàn văn nội dung bài tweet |
hashtags |
List |
Danh sách các hashtag trích xuất từ bài tweet |
source |
String |
Nguồn thiết bị đăng tải (iOS, Android, Web) |
is_retweet |
Boolean |
Trạng thái bài viết được chia sẻ lại (retweet) |
Quy trình tiền xử lý dữ liệu hashtag được triển khai qua 5 bước liên tiếp:
- Chuyển đổi cấu trúc: Tách mảng chứa nhiều hashtag trong mỗi bài đăng thành các dòng hashtag đơn lẻ.
- Lọc ký tự: Loại bỏ các hashtag chứa dấu câu, ký tự đặc biệt và dữ liệu kiểu số thuần túy (ví dụ:
<Sarscov>, 19122019).
- Sửa lỗi mã hóa: Loại bỏ các dòng hashtag bị lỗi font chữ do lỗi giải mã ký tự đặc biệt.
- Phân tách từ ghép: Ứng dụng package
wordninja để tách các hashtag viết liền thành các từ tiếng Anh có nghĩa (ví dụ: chuyển CoronaVirusUpdate thành coronavirus và update).
- Chuẩn hóa hình thức: Chuyển toàn bộ ký tự thành chữ thường và loại bỏ các từ dừng (stopwords) trong danh mục từ điển tiếng Anh.
Dữ liệu văn bản sau khi làm sạch được vector hóa bằng kỹ thuật TF-IDF thông qua lớp TfidfVectorizer từ thư viện Scikit-learn. Tiếp theo, hệ thống áp dụng phương pháp đồ thị khuỷu tay (Elbow Method) trên thuật toán K-Means để khảo sát sự biến thiên của tổng bình phương khoảng cách nội cụm theo các giá trị $k$, từ đó xác định số lượng cụm tối ưu là $k = 6$.
Mô hình phân cụm tối ưu được tích hợp vào ứng dụng phần mềm có giao diện người dùng. Kiến trúc hệ thống bao gồm:
- Mô-đun tiếp nhận dữ liệu: Cung cấp giao diện File Explorer cho phép người dùng chọn tệp dữ liệu đầu vào chứa các bài viết và hashtag.
- Mô-đun xử lý dữ liệu: Tự động áp dụng quy trình tiền xử lý, vector hóa TF-IDF và nạp dữ liệu vào mô hình gom cụm đã được huấn luyện.
- Mô-đun trình diễn kết quả: Hiển thị phân vùng dữ liệu theo từng nhóm chủ đề tương ứng (từ Cụm 0 đến Cụm 5), giúp phân loại tự động nội dung bài viết theo các khía cạnh khác nhau của tin tức COVID-19.
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương 1 giới thiệu lý do lựa chọn đề tài xuất phát từ sự bùng phát của đại dịch COVID-19 và vai trò truyền thông thời gian thực của mạng xã hội Twitter. Báo cáo phân tích cơ chế hoạt động của bài đăng 140 ký tự và vai trò định danh chủ đề của các hashtag. Tác giả xác định hai mục tiêu nghiên cứu cụ thể, xác lập phạm vi công nghệ (Python 3.8, Scikit-learn, Pandas, Wordninja) và tóm tắt cấu trúc văn bản thành 5 chương.
Chương 2: Cơ sở lý thuyết
Nội dung chương 2 tập trung trình bày các kiến thức chuyên ngành liên quan đến xử lý ngôn ngữ tự nhiên và các thuật toán máy học. Tác giả phân tích các kỹ thuật tiền xử lý văn bản (khử nhiễu, tách từ, chuẩn hóa, stopwords, stemming, lemmatization), mô hình túi từ và mô hình không gian vector TF-IDF. Phần sau của chương trình bày chi tiết nguyên lý hoạt động của 9 thuật toán gom cụm dữ liệu cùng công thức toán học của 3 độ đo đánh giá chất lượng mô hình không giám sát (Silhouette, Calinski-Harabasz, Davies-Bouldin) và giới thiệu chức năng của thư viện Scikit-learn.
Chương 3: Phương pháp thực hiện
Chương 3 trình bày chi tiết quy trình thực nghiệm. Tác giả mô tả bài toán phân loại tin tức thông qua hashtag và phân tích lý do chọn tập dữ liệu Kaggle gồm 179.108 bản ghi với 13 trường thuộc tính. Quy trình làm sạch dữ liệu 5 bước được minh họa bằng các bảng dữ liệu trước và sau xử lý. Tác giả phân tích ưu - nhược điểm của 3 thuật toán K-Means, BIRCH, Agglomerative Clustering và tiến hành kiểm chứng thử nghiệm các thuật toán trên tập dữ liệu mẫu nhỏ tọa độ 2D trước khi áp dụng cho dữ liệu lớn.
Chương 4: Cài đặt và triển khai hệ thống
Chương 4 mô tả toàn bộ quá trình cài đặt thực tế trên máy tính. Tác giả thực hiện tiền xử lý dữ liệu, vector hóa bằng TfidfVectorizer, ứng dụng phương pháp Elbow để lựa chọn $k = 6$ cụm tối ưu. Chương này trình bày kết quả thực thi các thuật toán gom cụm trên không gian vector, so sánh hiệu năng của các thuật toán thông qua bảng số liệu độ đo đánh giá và mô tả chi tiết giao diện ứng dụng từ bước chọn tệp dữ liệu đến bước trích xuất kết quả phân loại thành 6 cụm nội dung riêng biệt.
Chương 5: Kết luận
Chương cuối tóm tắt lại các kết quả chính đã hoàn thành trong đề tài, bao gồm việc xây dựng quy trình xử lý dữ liệu văn bản Twitter, so sánh thực nghiệm các giải pháp phân cụm và hoàn thiện ứng dụng phân loại tin tức hỗ trợ công tác quản lý thông tin dịch bệnh. Chương này cũng nêu rõ các định hướng mở rộng đề tài trong tương lai.
Kết quả và đóng góp
Khóa luận đã hoàn thành các nội dung thực nghiệm và kỹ thuật cụ thể:
- Xử lý thành công tập dữ liệu lớn với 179.108 bản ghi bài đăng Twitter về dịch bệnh COVID-19 thông qua chuỗi 5 bước tiền xử lý chuyên biệt cho hashtag.
- Thực hiện vector hóa văn bản bằng TF-IDF và xác định thành công giá trị số cụm tối ưu $k = 6$ thông qua phương pháp Elbow Method.
- Thiết lập bảng so sánh định lượng chất lượng gom cụm của 3 thuật toán K-Means, BIRCH và Agglomerative Clustering dựa trên ba chỉ số chuẩn hóa Silhouette Score, Calinski-Harabasz Score và Davies-Bouldin Score.
- Xây dựng hoàn chỉnh ứng dụng có giao diện đồ họa, cho phép tải tệp dữ liệu từ máy tính và phân loại các bài đăng Twitter vào 6 nhóm cụm chủ đề khác nhau (từ Cụm 0 đến Cụm 5).
Về giải pháp và kiến nghị, tác giả đề xuất ứng dụng mô hình gom cụm tự động này cho các cơ quan chức năng, chính quyền và tổ chức y tế. Việc phân loại dữ liệu mạng xã hội theo cụm chủ đề thời gian thực hỗ trợ theo dõi phản ứng của người dân đối với dịch bệnh, nhanh chóng phát hiện các mối quan tâm nổi cộm và khoanh vùng các khu vực có nguy cơ bùng phát dịch để có biện pháp can thiệp kịp thời.
Về đóng góp, đề tài cung cấp một quy trình thực nghiệm hoàn chỉnh từ khâu thu thập dữ liệu thứ cấp, tiền xử lý tách từ ghép cho hashtag tiếng Anh bằng wordninja, đến việc đánh giá so sánh khách quan các thuật toán gom cụm văn bản không giám sát trên nền tảng Scikit-learn.
Hạn chế và hướng nghiên cứu tiếp
Khóa luận ghi nhận các hạn chế kỹ thuật:
- Nguồn thu thập dữ liệu bị phụ thuộc vào bên thứ ba (Kaggle) do các rào cản về chính sách bảo mật của Twitter API và việc tài khoản giáo dục tại Việt Nam không được hỗ trợ kết nối trực tiếp để thu thập dữ liệu theo thời gian thực.
- Phạm vi trích xuất đặc trưng mới chỉ giới hạn trên trường dữ liệu hashtag, chưa khai thác toàn diện ngữ cảnh ngữ nghĩa trong toàn văn bài đăng (
text).
- Các thuật toán phân cụm phân cấp (tiêu biểu như Agglomerative Clustering) đòi hỏi tài nguyên bộ nhớ lưu trữ lớn và chi phí tính toán cao, gây khó khăn khi mở rộng quy mô dữ liệu.
- Việc xử lý ngôn ngữ chỉ mới tập trung vào các từ vựng tiếng Anh.
Các hướng phát triển tiếp theo được tác giả định hướng trong văn bản:
- Nâng cấp cơ chế kết nối để thu thập dữ liệu trực tiếp trong thời gian thực khi điều kiện cấp quyền API cho phép.
- Mở rộng phạm vi phân tích sang toàn văn nội dung bài viết thay vì chỉ sử dụng chuỗi hashtag.
- Cải tiến mô hình phân loại bằng cách kết hợp thêm các giải thuật học sâu (Deep Learning) hoặc xử lý đa ngôn ngữ, bao gồm dữ liệu tiếng Việt.
Giá trị tham khảo
Báo cáo khóa luận có giá trị tham khảo chuyên môn đối với:
- Sinh viên và học viên thuộc các ngành Hệ thống Thông tin, Khoa học Dữ liệu, Công nghệ Thông tin đang thực hiện đồ án hoặc khóa luận về Khai phá dữ liệu (Data Mining) và Xử lý ngôn ngữ tự nhiên (NLP).
- Các nhà phát triển hệ thống quan tâm đến bài toán xử lý dữ liệu phi cấu trúc, văn bản ngắn dạng hashtag trên mạng xã hội.
Các nội dung có giá trị tham khảo kỹ thuật cao trong văn bản gồm:
- Quy trình 5 bước tiền xử lý dữ liệu chuỗi hashtag, đặc biệt là kỹ thuật sử dụng thư viện
wordninja để tách các từ ghép viết liền thành các từ vựng tiếng Anh độc lập.
- Phương pháp phối hợp vector hóa TF-IDF với phương pháp đồ thị khuỷu tay (Elbow Method) để xác định số lượng cụm tối ưu.
- Khung đánh giá thực nghiệm mô hình học máy không giám sát dựa trên bộ ba độ đo Silhouette, Calinski-Harabasz và Davies-Bouldin.
Câu hỏi thường gặp
1. Tại sao nhóm nghiên cứu không thu thập dữ liệu trực tiếp từ Twitter API mà phải lấy qua Kaggle?
Twitter API áp dụng các chính sách nghiêm ngặt về an toàn và bảo mật thông tin người dùng. Mặc dù Twitter có chính sách hỗ trợ nghiên cứu giáo dục, nhưng Việt Nam không thuộc danh sách các quốc gia được hỗ trợ chương trình này tại thời điểm thực hiện đề tài. Do đó, nhóm tác giả phải sử dụng tập dữ liệu thứ cấp có độ tin cậy cao từ nền tảng Kaggle do tác giả Gabriel Preda chia sẻ.
2. Tập dữ liệu covid19_tweets.csv có dung lượng và cấu trúc các thuộc tính như thế nào?
Tập dữ liệu gồm 179.108 dòng và 13 cột thuộc tính: user_name, user_location, user_description, user_created, user_followers, user_friends, user_favourites, user_verified, date, text, hashtags, source, is_retweet.
3. Thư viện Wordninja đóng vai trò gì trong giai đoạn tiền xử lý dữ liệu?
Hashtag trên Twitter thường được người dùng viết liền các từ không có khoảng trắng (ví dụ: #CoronaVirusUpdate). Gói wordninja được sử dụng để phân tách các chuỗi ký tự viết liền này thành các từ tiếng Anh đơn lẻ có nghĩa (coronavirus và update), phục vụ cho các bước chuẩn hóa và vector hóa tiếp theo.
4. Ba thuật toán phân cụm nào được nhóm tác giả lựa chọn để cài đặt thực nghiệm và so sánh?
Nhóm tác giả đã lựa chọn 3 thuật toán gồm: K-Means (phương pháp phân hoạch), BIRCH (phương pháp phân cấp theo cấu trúc cây CF) và Agglomerative Clustering (phương pháp phân cấp tích lũy từ dưới lên).
5. Hệ thống xác định số lượng cụm $k$ tối ưu dựa trên phương pháp nào?
Hệ thống sử dụng phương pháp đồ thị khuỷu tay (Elbow Method) trên thuật toán K-Means, tính toán độ biến thiên của tổng bình phương khoảng cách từ các điểm tới tâm cụm để xác định điểm uốn tối ưu tại $k = 6$.
Kết luận
Khóa luận tốt nghiệp của sinh viên Nguyễn Bá Minh Hoàng và Nguyễn Gia Huy đã nghiên cứu và triển khai thành công quy trình phân loại tin tức COVID-19 từ tập dữ liệu hashtag trên mạng xã hội Twitter. Đề tài đã xây dựng chuỗi tiền xử lý dữ liệu văn bản hoàn chỉnh, áp dụng kỹ thuật vector hóa TF-IDF, xác định số cụm tối ưu bằng phương pháp Elbow và so sánh định lượng 3 thuật toán gom cụm K-Means, BIRCH, Agglomerative Clustering thông qua các độ đo Silhouette, Calinski-Harabasz và Davies-Bouldin. Kết quả nghiên cứu đã được đóng gói thành một ứng dụng phần mềm có giao diện trực quan, tạo cơ sở kỹ thuật hỗ trợ các tổ chức y tế và cơ quan quản lý theo dõi, phân nhóm thông tin dư luận và dịch bệnh trong các tình huống y tế công cộng.