Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh bùng nổ công nghệ thông tin và chuyển đổi số toàn cầu, khối lượng dữ liệu được tạo ra mỗi ngày ước tính lên đến 2,5 tỷ gigabytes. Dữ liệu thô phát sinh từ nhiều lĩnh vực như y tế, viễn thông, thương mại điện tử với quy mô từ hàng terabyte đến petabyte (dữ liệu lớn - Big Data). Tuy nhiên, các hệ thống cơ sở dữ liệu truyền thống và truy vấn SQL đơn thuần không thể tự động phát hiện các mẫu tiềm ẩn hoặc các mối quan hệ phức tạp bên trong các tập dữ liệu khổng lồ này. Do đó, việc ứng dụng các kỹ thuật khai phá dữ liệu (Data Mining) kết hợp học máy và ngôn ngữ lập trình Python trở thành yêu cầu cấp thiết nhằm chuyển đổi dữ liệu thô thành tri thức hỗ trợ ra quyết định.
Về mặt thực tiễn y tế, giai đoạn 2019–2022 ghi nhận sự bùng phát nghiêm trọng của đại dịch COVID-19 do chủng Coronavirus gây ra (thuộc cùng nhóm với các chủng gây dịch MERS và SARS), cướp đi sinh mạng của hàng triệu người và gây quá tải nghiêm trọng cho hệ thống cơ sở y tế trên toàn cầu. Trước sức ép của các biến chủng mới và nhu cầu phân luồng bệnh nhân, việc ứng dụng các kỹ thuật phân tích dữ liệu để chẩn đoán sơ bộ triệu chứng, nhận diện các bệnh lý đồng xuất hiện nhằm giảm bớt gánh nặng cho đội ngũ y bác sĩ là một bài toán mang tính thời sự cao.
Khóa luận tốt nghiệp ngành Công nghệ thông tin của tác giả Nguyễn Gia Huy tại Trường Đại học Quốc tế Hồng Bàng (người hướng dẫn: ThS. Lê Văn Hạnh) xác định 4 nhiệm vụ nghiên cứu cụ thể:
- Tìm hiểu về khái niệm phân tích dữ liệu, quy trình phân tích và các kỹ thuật trong phân tích dữ liệu.
- Tìm hiểu về khai phá dữ liệu, quy trình khai phá dữ liệu, khái niệm về tập thường xuyên, luật kết hợp và thuật toán Apriori.
- Tìm hiểu về ngôn ngữ Python và lý do sử dụng Python cùng các thư viện hỗ trợ trong phân tích dữ liệu.
- Áp dụng thuật toán Apriori để chẩn đoán bệnh COVID-19 ở các bệnh nhân đang được theo dõi.
Đối tượng nghiên cứu của đề tài là các kỹ thuật khai phá dữ liệu, trọng tâm là khai phá tập phổ biến và luật kết hợp thông qua giải thuật Apriori và các biến thể. Phạm vi dữ liệu thực nghiệm là tập dữ liệu quan sát bệnh nhân chẩn đoán COVID-19 được mã hóa theo hệ thống danh mục bệnh tật quốc tế ICD của Tổ chức Y tế Thế giới (WHO). Đề tài được thực hiện trong khoảng thời gian từ ngày 15/02/2022 đến ngày 15/05/2022.
Cơ sở lý thuyết và phương pháp
Khóa luận xây dựng trên hệ thống lý thuyết khai phá tri thức từ cơ sở dữ liệu (Knowledge Discovery in Database - KDD), kiến trúc lưu trữ dữ liệu lớn và các mô hình toán học của luật kết hợp.
Về mặt khái niệm và kiến trúc lưu trữ, tác giả phân định rõ ràng giữa kho dữ liệu (Data Warehouse) và hồ dữ liệu (Data Lake), cũng như hai tiến trình nạp dữ liệu ETL (Extract - Transform - Load) và ELT (Extract - Load - Transform). Về xử lý dữ liệu khuyết thiếu, tác giả dựa trên lý thuyết phân loại của Rubin gồm: Missing Completely at Random (MCAR), Missing at Random (MAR), và Missing Not at Random (MNAR), đi kèm các phương pháp xử lý tương ứng như List-wise Deletion, Regression Imputation và Simple Imputation (Mean, Median, Mode).
Về kỹ thuật khai phá dữ liệu, trọng tâm lý thuyết là mô hình khai phá tập mục thường xuyên và luật kết hợp do R. Agrawal đề xuất. Các chỉ số thống kê toán học cốt lõi bao gồm:
-
Độ hỗ trợ (Support): Tỷ lệ phần trăm các giao dịch trong cơ sở dữ liệu $D$ chứa đồng thời cả hai tập mục $X$ và $Y$:
$$Supp(X \rightarrow Y) = P(X \cup Y) = \frac{|{T \in D : X \cup Y \subseteq T}|}{|D|}$$
-
Độ tin cậy (Confidence): Tỷ lệ các giao dịch chứa $X$ cũng đồng thời chứa $Y$:
$$Conf(X \rightarrow Y) = P(Y | X) = \frac{Supp(X \cup Y)}{Supp(X)}$$
-
Tính chất tập thường xuyên (Apriori Property): Mọi tập con của một tập mục thường xuyên đều phải là tập mục thường xuyên; ngược lại, nếu một tập mục không thường xuyên thì mọi tập cha chứa nó đều không thường xuyên.
Phương pháp nghiên cứu kết hợp giữa nghiên cứu lý thuyết tổng hợp và thực nghiệm tính toán:
- Phương pháp lý thuyết: Phân tích, tổng hợp tài liệu chuyên ngành về quy trình phân tích dữ liệu 6 bước, các mô hình học máy (phân lớp, phân cụm, khai thác mẫu tuần tự) và các biến thể thuật toán Apriori (Apriori cơ bản, Apriori nhị phân, Apriori-TID, Apriori-Hybrid).
- Phương pháp thực nghiệm toán học: Tính toán thủ công từng bước tạo tập ứng viên $C_k$ và tập phổ biến $L_k$ trên tập mẫu 5 giao dịch khách hàng với ngưỡng $min_support = 60%$ và $min_confidence = 80%$.
- Phương pháp thực nghiệm lập trình: Cài đặt thuật toán bằng ngôn ngữ Python, sử dụng các thư viện phân tích và khai phá dữ liệu chuyên dụng gồm
pandas, numpy, matplotlib (pyplot) và thư viện khai phá luật kết hợp mlxtend.
- Nguồn dữ liệu: Bảng dữ liệu quan sát bệnh nhân kết hợp danh mục mã bệnh chuẩn ICD của WHO.
Nội dung chính theo từng chương
Chương 1. Giới thiệu về phân tích dữ liệu
Chương 1 hệ thống hóa các định nghĩa, vai trò và quy trình xử lý phân tích dữ liệu hiện đại. Tác giả trích dẫn định nghĩa của Amazon và IBM, xác định phân tích dữ liệu là quá trình thu thập, lưu trữ, làm sạch, biến đổi và mô hình hóa dữ liệu thô nhằm cung cấp thông tin hữu ích cho việc ra quyết định.
Quy trình phân tích dữ liệu chuẩn gồm 6 giai đoạn:
- Xác định mục tiêu: Đặt ra câu hỏi nghiệp vụ và định dạng dữ liệu cần giải quyết.
- Thu thập dữ liệu: Thực hiện qua các phương pháp (quan sát, phỏng vấn qua thư/điện thoại/trực tiếp, điều tra nhóm cố định, nhóm chuyên đề) và tổ chức nạp theo quy trình ETL hoặc ELT. Tác giả lập bảng so sánh chi tiết giữa Data Lake và Data Warehouse:
| Tiêu chí |
Data Lake |
Data Warehouse |
| Loại dữ liệu |
Lưu trữ toàn bộ dữ liệu (cấu trúc, bán cấu trúc, phi cấu trúc). |
Chỉ lưu trữ dữ liệu định lượng, có cấu trúc phục vụ phân tích. |
| Phương pháp Schema |
Áp dụng Schema on Read (chỉ định dạng khi phân tích). |
Áp dụng Schema on Write (định dạng cấu trúc trước khi lưu). |
| Tính linh hoạt |
Linh hoạt cao trong tái cấu trúc, tiết kiệm chi phí ban đầu. |
Khó khăn và tốn kém khi tái cấu trúc do ràng buộc lược đồ. |
| Đối tượng người dùng |
Nhà khoa học dữ liệu (Data Scientists) phân tích chuyên sâu. |
Doanh nghiệp, người dùng phân tích nghiệp vụ, báo cáo định kỳ. |
- Tiền xử lý dữ liệu (Data Preprocessing): Bao gồm:
- Làm sạch dữ liệu (Data Cleaning): Xóa bản ghi trùng lặp, chỉnh sửa lỗi cấu trúc, lọc giá trị ngoại lai và xử lý dữ liệu khuyết thiếu (MCAR, MAR, MNAR) qua các phương pháp List-wise Deletion, Regression Imputation, Simple Imputation.
- Chuyển đổi dữ liệu (Data Transformation): Tích hợp dữ liệu (mô hình bộ ba $<G, S, M>$ gồm lược đồ toàn cầu $G$, nguồn lược đồ $S$, ánh xạ truy vấn $M$) và chuẩn hóa dữ liệu (Min-Max Normalization, Normalization by Decimal Scaling, Z-Score Normalization).
- Rút gọn dữ liệu (Data Reduction): Lấy mẫu dữ liệu (ngẫu nhiên - Random Sampling, phân tầng - Stratified Sampling), giảm chiều dữ liệu (Feature Selection, Feature Extraction bằng PCA), nén dữ liệu (Lossless bằng Run-length/Huffman, Lossy) và rời rạc hóa dữ liệu (Top-down, Bottom-up Discretization).
- Xử lý dữ liệu: Phân tích các phương thức xử lý (thủ công, cơ học, điện tử) và kỹ thuật tính toán: xử lý theo lô (Batch Processing), đơn chương trình, đa chương trình (Multiple Programming), thời gian thực (Real-time), trực tuyến (Online), chia sẻ thời gian (Time-sharing) và xử lý phân tán (Distributed Processing).
- Phân tích dữ liệu: Khái quát 5 cấp độ phân tích (mô tả - Descriptive, khám phá - Exploratory, chẩn đoán - Diagnostic, dự đoán - Predictive, đề xuất - Prescriptive) cùng hai nhóm phương pháp định lượng và định tính.
- Diễn giải dữ liệu và kết luận: Hướng dẫn trực quan hóa qua biểu đồ cột, biểu đồ đường, biểu đồ tròn, bảng và đối chiếu mục tiêu nghiên cứu.
Chương 2. Khai phá dữ liệu
Chương 2 đi sâu vào kỹ thuật khai phá dữ liệu (Data Mining) và tiến trình khám phá tri thức từ cơ sở dữ liệu (KDD). Tác giả trình bày lịch sử phát triển cơ sở dữ liệu từ thập niên 1960 (mô hình phân cấp), 1970–1980 (cơ sở dữ liệu quan hệ), đến thập niên 1990–2000 (kho dữ liệu và khai phá dữ liệu).
Quy trình khai phá dữ liệu gồm các công đoạn: Chuẩn bị dữ liệu (chọn lọc, làm sạch, làm giàu), Mã hóa dữ liệu (phân vùng, nhị phân hóa, chuẩn hóa số học), Khai thác mô hình, và Trình diễn dữ liệu.
Tác giả tổng quan 4 nhóm kỹ thuật khai phá dữ liệu lớn:
- Khai phá tập phổ biến và luật kết hợp: Phân tích giỏ hàng, nhận diện quan hệ đồng thời giữa các thuộc tính.
- Khai thác mẫu tuần tự: Tìm kiếm các mẫu phổ biến có yếu tố thời gian dạng $X \rightarrow Y$.
- Phân lớp dữ liệu: Xây dựng mô hình gán nhãn dữ liệu qua Cây quyết định (ID3, Gini) và thuật toán phân lớp xác suất thống kê Bayes.
- Khai thác phân cụm: Gom nhóm dữ liệu không giám sát dựa trên độ tương đồng qua các phương pháp: phân hoạch (K-means, K-medoids), phân cấp (Dendrogram), dựa trên mật độ, dựa trên mô hình và dựa trên lưới (STING, WaveCluster, CLIQUE).
Phần trọng tâm của chương tập trung vào cơ chế phát hiện luật kết hợp qua giải thuật Apriori và các biến thể:
- Apriori cổ điển: Dựa trên hàm sinh ứng viên
apriori_gen() do Agrawal đề xuất (1994), gồm hai pha nối (join) $L_{k-1} \bowtie L_{k-1}$ để tạo $C_k$ và pha cắt tỉa (prune).
- Apriori nhị phân: Sử dụng ma trận bit nhị phân để tối ưu hóa phép duyệt bản ghi.
- Apriori-TID: Chỉ quét cơ sở dữ liệu gốc ở lần đầu tiên để sinh $L_1$, các bước sau chỉ duyệt trên danh sách mã giao dịch (TID) và ứng viên trong bộ nhớ.
- Apriori-Hybrid: Kết hợp Apriori cơ bản ở các vòng lặp đầu và chuyển sang Apriori-TID khi kích thước tập ứng viên $C_k$ đã thu nhỏ vừa bộ nhớ chính.
Tác giả minh họa chi tiết thuật toán Apriori qua bài toán 5 giao dịch mua hàng gồm các mặt hàng ${a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, s}$ với ngưỡng $min_sup = 60%$ (tương đương tần suất xuất hiện $min_sup_count = 5 \times 0{,}6 = 3$):
- Tập ứng viên $C_1$ thống kê tần suất toàn bộ 17 mặt hàng. Lọc ra tập phổ biến $L_1 = {a:3, b:3, c:4, f:4, m:3, p:3}$.
- Tập ứng viên $C_2$ gồm 15 cặp tổ hợp từ $L_1$. Lọc ra tập phổ biến $L_2 = {{a,c}:3, {a,f}:3, {a,m}:3, {c,f}:3, {c,m}:3, {c,p}:3, {f,m}:3}$.
- Tập ứng viên $C_3$ tạo từ $L_2$ gồm các bộ ba ${{a,c,f}, {a,c,m}, {a,c,p}\dots}$, kiểm tra điều kiện tập con và tần suất để sinh tập phổ biến $L_3$ và các luật kết hợp thỏa mãn $min_conf \ge 80%$.
Chương 3. Python trong phân tích dữ liệu
Chương 3 trình bày vai trò của Python như một ngôn ngữ chủ đạo trong khoa học dữ liệu nhờ cú pháp trực quan, khả năng xử lý tính toán linh hoạt và hệ sinh thái thư viện phong phú.
Tác giả phân tích 3 thư viện nền tảng:
- Pandas: Cung cấp cấu trúc dữ liệu DataFrame và Series chuyên dụng cho dữ liệu dạng bảng. Trình bày danh mục các hàm quan trọng trong việc đọc/ghi file, lọc dữ liệu, xử lý giá trị khuyết, gộp nhóm (
groupby) và biến đổi bảng dữ liệu.
- Numpy: Cung cấp đối tượng mảng đa chiều
ndarray, hệ thống kiểu dữ liệu số học tối ưu bộ nhớ và các hàm toán học, đại số tuyến tính phục vụ tính toán ma trận tốc độ cao.
- Matplotlib (Module pyplot): Phục vụ trực quan hóa dữ liệu với nhiều dạng biểu đồ: biểu đồ cột dọc, biểu đồ cột ngang, biểu đồ cột xếp chồng, biểu đồ tròn, biểu đồ phân bố tần suất (histogram) và biểu đồ phân tán (scatter plot).
Chương 4. Áp dụng thuật toán Apriori để chẩn đoán COVID-19
Chương 4 là phần thực nghiệm ứng dụng của khóa luận. Tác giả sử dụng tập dữ liệu quan sát bệnh nhân mắc COVID-19, ánh xạ các triệu chứng và bệnh lý theo bảng danh mục mã bệnh quốc tế ICD của WHO.
Quy trình thực nghiệm diễn ra qua các bước:
- Tiền xử lý dữ liệu: Làm sạch các trường dữ liệu khuyết, chuẩn hóa mã bệnh ICD và chuyển đổi tập dữ liệu bệnh án thành bảng giao dịch nhị phân (One-hot encoding).
- Cài đặt Apriori thủ công và tự động:
- Thiết lập bảng ứng viên $C_1$, lọc tập thường xuyên $L_1$ của nhóm bệnh nhân và nhóm đối tượng quan sát.
- Thiết lập bảng ứng viên $C_2$, lọc tập thường xuyên $L_2$.
- Thiết lập bảng $L_3$ và bảng tổ hợp các trường hợp kèm độ hỗ trợ và độ tin cậy.
- Sử dụng module
apriori và association_rules từ thư viện mlxtend của Python để trích xuất tự động toàn bộ tập luật kết hợp $L$, bao gồm các luật có từ 3 mục (items) trở lên.
- Phân tích kết quả dịch tễ: Đối chiếu và rút ra mối quan hệ đồng xuất hiện có ý nghĩa thống kê cao giữa COVID-19 và các bệnh lý nhiễm khuẩn:
- Mối quan hệ giữa COVID-19 và sốt thương hàn, phó thương hàn.
- Mối quan hệ giữa COVID-19 và nhiễm khuẩn Salmonella.
- Mối quan hệ giữa COVID-19 và bệnh nhiễm khuẩn đường ruột.
- Đối chiếu thuật toán: So sánh kết quả phát hiện luật của giải thuật Apriori với mô hình phân lớp C4.5.
- Mô hình hóa: Xây dựng đồ thị phân tán biểu diễn tương quan giữa hai đại lượng độ hỗ trợ (Support) và độ tin cậy (Confidence) đối với các trường hợp xuất hiện tổ hợp 3 triệu chứng/bệnh lý.
Kết quả và đóng góp
Khóa luận đạt được các kết quả cụ thể sau:
- Kết quả thực nghiệm thuật toán:
- Đã triển khai thành công thuật toán Apriori trên môi trường Python, thực hiện chính xác các phép toán kết nối và tỉa nhánh từ tập ứng viên $C_1 \rightarrow L_1 \rightarrow C_2 \rightarrow L_2 \rightarrow C_3 \rightarrow L_3$.
- Tự động hóa quá trình sinh luật kết hợp thông qua thư viện
mlxtend, trích xuất các luật kết hợp đạt ngưỡng hỗ trợ và tin cậy xác định trước.
- Phát hiện tri thức y tế:
- Xác định được các mẫu triệu chứng và bệnh lý đồng mắc phổ biến ở bệnh nhân COVID-19, chỉ ra mối liên hệ chặt chẽ giữa COVID-19 với sốt thương hàn/phó thương hàn, nhiễm khuẩn Salmonella và các bệnh nhiễm khuẩn đường ruột.
- Xây dựng đồ thị trực quan hóa phân bố Support - Confidence cho các tổ hợp đa triệu chứng, giúp phân loại mức độ tin cậy của từng mẫu bệnh học.
- Giải pháp và kiến nghị:
- Đề xuất ứng dụng mô hình khai phá luật kết hợp Apriori như một công cụ hỗ trợ chẩn đoán sơ bộ tại các bệnh viện và trung tâm y tế, giúp phân loại bệnh nhân ban đầu nhanh chóng và giảm tải áp lực cho đội ngũ y bác sĩ.
- Khuyến nghị kết hợp quy chuẩn mã bệnh ICD của WHO trong tiền xử lý hồ sơ bệnh án điện tử để nâng cao chất lượng khai phá tri thức y khoa.
- Đóng góp học thuật tự nêu:
- Hệ thống hóa toàn diện các phương pháp tiền xử lý dữ liệu và thuật toán phát hiện luật kết hợp (bao gồm so sánh lý thuyết giữa Apriori, Apriori nhị phân, Apriori-TID, Apriori-Hybrid và C4.5).
- Cung cấp quy trình hoàn chỉnh từ khâu chuẩn bị dữ liệu y tế, xử lý mã hóa đến lập trình phân tích và đồ thị hóa bằng Python.
Hạn chế và hướng nghiên cứu tiếp
Khóa luận chỉ ra một số hạn chế và hướng phát triển:
- Hạn chế:
- Thuật toán Apriori cổ điển gặp vấn đề về hiệu năng tính toán khi tập dữ liệu có kích thước lớn hoặc chuỗi mục phổ biến kéo dài, do phải quét cơ sở dữ liệu nhiều lần và sinh số lượng lớn tập ứng viên $C_k$.
- Phạm vi dữ liệu thử nghiệm chủ yếu dựa trên các quan sát triệu chứng sẵn có theo mã ICD, chưa bao quát đầy đủ tất cả các biến chủng phát sinh sau này của virus.
- Hướng nghiên cứu tiếp:
- Nghiên cứu và cài đặt thử nghiệm các biến thể tối ưu hơn như Apriori-TID, Apriori-Hybrid hoặc cấu trúc cây FP-Growth nhằm loại bỏ bước sinh ứng viên tốn kém bộ nhớ.
- Mở rộng tập dữ liệu thực nghiệm trên quy mô lớn hơn với nhiều triệu chứng lâm sàng và cận lâm sàng đa dạng.
- Xây dựng hệ thống phần mềm hoàn chỉnh có giao diện người dùng để triển khai thực tế tại các cơ sở khám chữa bệnh.
Giá trị tham khảo
Khóa luận có giá trị tham khảo thiết thực cho các đối tượng sau:
- Sinh viên ngành Công nghệ thông tin, Khoa học dữ liệu và Hệ thống thông tin: Có thể sử dụng Chương 1 và Chương 2 như tài liệu tham khảo chi tiết về quy trình tiền xử lý dữ liệu chuẩn (làm sạch, chuẩn hóa, giảm chiều) và cơ chế tính toán từng bước của thuật toán Apriori.
- Người nghiên cứu ứng dụng khai phá dữ liệu trong y tế: Tham khảo phương pháp chuyển đổi dữ liệu bệnh án theo chuẩn mã bệnh ICD của WHO sang dạng ma trận giao dịch nhị phân để khai phá luật kết hợp ở Chương 4.
- Lập trình viên phân tích dữ liệu bằng Python: Tham khảo quy trình sử dụng các thư viện
pandas, numpy, matplotlib và mlxtend để tự động hóa việc tính toán Support, Confidence và vẽ đồ thị phân tích luật.
Câu hỏi thường gặp
1. Điểm khác biệt cốt lõi giữa thuật toán Apriori cơ bản và thuật toán Apriori-TID là gì?
Thuật toán Apriori cơ bản phải quét lại toàn bộ cơ sở dữ liệu ở mỗi bước $k$ để đếm độ hỗ trợ của các tập ứng viên $C_k$. Ngược lại, Apriori-TID chỉ quét cơ sở dữ liệu gốc ở lần đầu tiên để tạo $L_1$; từ bước thứ hai trở đi, thuật toán sử dụng danh sách định danh giao dịch (TID) đi kèm tập ứng viên hiện hành được lưu trong bộ nhớ để ước lượng độ hỗ trợ mà không cần duyệt lại cơ sở dữ liệu thô.
2. Khóa luận sử dụng chuẩn phân loại y tế nào để mã hóa dữ liệu bệnh nhân COVID-19?
Tác giả sử dụng bảng danh sách mã bệnh ICD (International Classification of Diseases) do Tổ chức Y tế Thế giới (WHO) ban hành để chuẩn hóa và mã hóa các triệu chứng cũng như bệnh lý quan sát trên bệnh nhân.
3. Ngưỡng tham số nào được tác giả sử dụng trong ví dụ minh họa tính toán thủ công thuật toán Apriori ở Chương 2?
Trong ví dụ minh họa 5 giao dịch mua hàng của khách hàng (TID từ 1 đến 5), tác giả thiết lập ngưỡng độ hỗ trợ tối thiểu $min_support = 60%$ (tương đương tần suất xuất hiện tối thiểu $min_sup_count = 3$) và độ tin cậy tối thiểu $min_conf = 80%$.
4. Dữ liệu khuyết thiếu được tác giả phân thành những loại nào trong giai đoạn tiền xử lý?
Dữ liệu khuyết thiếu được phân thành 3 loại: MCAR (Missing Completely at Random - mất hoàn toàn ngẫu nhiên), MAR (Missing at Random - mất ngẫu nhiên có liên hệ với biến quan sát) và MNAR (Missing Not at Random - mất không ngẫu nhiên do bản chất của chính biến đó).
5. Thư viện Python chuyên dụng nào được sử dụng để tìm tập phổ biến và luật kết hợp tự động trong Chương 4?
Tác giả sử dụng thư viện mlxtend của Python, cụ thể là các hàm phục vụ trích xuất tập mục thường xuyên và luật kết hợp kết hợp cùng pandas và matplotlib.
Kết luận
Khóa luận tốt nghiệp của sinh viên Nguyễn Gia Huy đã tổng hợp hệ thống lý thuyết toàn diện về phân tích dữ liệu và kỹ thuật khai phá dữ liệu, tập trung sâu vào mô hình khai phá luật kết hợp với giải thuật Apriori. Bằng việc kết hợp giữa tính toán lý thuyết và lập trình thực nghiệm bằng ngôn ngữ Python (sử dụng Pandas, Numpy, Matplotlib, mlxtend), công trình đã chứng minh tính khả thi của việc phát hiện các mẫu triệu chứng và bệnh lý đồng mắc ở bệnh nhân COVID-19 theo mã bệnh ICD của WHO. Kết quả đạt được cung cấp cơ sở học thuật và kỹ thuật rõ ràng, mở ra tiềm năng ứng dụng tin học hóa hỗ trợ công tác sàng lọc và giảm tải áp lực cho các cơ sở y tế.