Xây dựng phần mềm dự đoán khả năng nhiễm covid 19 thông qua triệu chứng Xây dựng phần mềm dự đoán khả năng nhiễm covid 19 thông qua triệu chứng Xây dựng phần mềm dự đoán khả năng nhiễm covid 19 thông qua triệu chứng Xây dựng phần mềm dự đoán khả năng nhiễm covid 19 thông qua triệu chứng
TỔNG QUAN
Đặt vấn đề
Từ 17 tháng 11 năm 2019 – nay thì cả thế giới nói chung và Việt Nam [6] nói riêng đều đang phải hứng chịu một đại dịch mà xuất phát điểm của nó là từ Vũ Hán tại Trung Quốc [8] và đại dịch, căn bệnh này có tên là Coronavirus (COVID-19) Căn bệnh này này khiến cho hệ miễn dịch cơ thể bị suy yếu, nhưng chủ yếu là viêm phổi Phổi người bệnh bị tổn thương nặng làm suy hô hấp nhanh, do hệ miễn dịch đã bị suy yếu do virus điều đó làm cho các cơ quan nội tạng bị nhiễm độc bởi các độc tố của Coronavirus Với những người có bệnh nền từ trước đó thì việc mắc căn bệnh thì có thể dẫn đến tử vong Người bị mắc Covid có những triệu chứng tuy nhìn giống cảm, sốt, ho bình thường nhưng nó nặng hơn, người mắc bệnh sẽ bị khó thở, mệt, mất vị giác đó là một số dấu hiệu thường gặp
Cho đến ngày nay, tuy đã 2 năm kể từ lúc bệnh dịch này xuất hiện Nhưng hậu quả nó để lại là quá lớn, với hơn 6 triệu trường hợp được xác nhận trên khắp thế giới
Vì nó là một loại vi rút rất dễ lây lan với cả vật trung gian truyền bệnh trong không khí và ngày càng có thêm nhiều biến thể của virus này xuất hiện Đối với người bệnh sau khi hết bệnh vẫn còn mang mầm bệnh trong cơ thể và có thể tái phát bệnh lại cũng như là lây bệnh cho người khác Cho nên việc phát hiện COVID-19 là điều tối quan trọng để chống lại mối đe dọa này
Vi-rút này có thể lây từ miệng hoặc mũi của người bị nhiễm bệnh dưới dạng các giọt nhỏ khi họ ho, hắt hơi, nói chuyện, hát hoặc thở Những giọt này có kích thước từ các giọt bắn lớn theo đường hô hấp cho đến các sol khí nhỏ
Chúng ta có thể bị nhiễm bệnh khi hít phải vi-rút nếu đang ở gần người nhiễm COVID-19 hoặc chạm vào bề mặt có vi-rút rồi lại chạm tay vào mắt, mũi hoặc miệng Vi-rút dễ lây lan hơn trong nhà và ở những nơi đông đúc
Hình 1-1 Các triệu chứng Covid-19
Dưới đây là một số triệu chứng thường gặp ở bệnh nhân mắc COVID-19:
• Sốt: Sốt là triệu chứng phổ biến nhất của COVID-19 Bệnh nhân có thể gặp sốt cao hoặc sốt thấp
• Ho khan: Ho không có đờm hoặc có ít đờm Ho có thể xuất hiện từ ban đầu hoặc sau một thời gian
• Khó thở: Khó thở có thể xuất hiện như một triệu chứng nặng trong COVID-
19 Bệnh nhân có thể cảm thấy khó thở hoặc hít thở nhanh hơn bình thường
• Mệt mỏi: Mệt mỏi không bình thường và mệt mỏi dễ xảy ra trong quá trình COVID-19 Bệnh nhân có thể cảm thấy mệt mỏi ngay cả khi không hoạt động nặng
• Đau nhức cơ: Một số người mắc COVID-19 có thể gặp đau nhức cơ và khó chịu toàn thân, tương tự như khi mắc cảm lạnh hoặc cúm
• Đau họng: Đau họng có thể xuất hiện và gây khó chịu cho bệnh nhân
• Mất vị giác và mất khứu giác: Một số người bị mắc COVID-19 có thể trải qua mất vị giác (không cảm nhận được vị) hoặc mất khứu giác (không có khả năng phát hiện mùi)
Vậy để làm sao phát hiện ra bản thân có bị mắc bệnh covid hay không? Với những dấu hiệu cảm, khó thở, ho liên tục thì ta có thể nhận biết được ngay là nhiễm bệnh, còn đối với một số trường hợp không có triệu chứng bệnh thì việc chuẩn đoán bệnh trở nên khó khăn hơn khi không thể biết được người nào đang bị nhiễm bệnh, chỉ có cách là sử dụng các loại dụng cụ xét nghiệm để xác định bản thân có nhiệm bệnh hay không
Hầu hết người mắc bệnh COVID-19 sẽ gặp các triệu chứng từ nhẹ đến trung bình và hồi phục mà không cần phải điều trị đặc biệt Tuy nhiên, một số người sẽ chuyển bệnh nghiêm trọng và cần được hỗ trợ y tế Bên cạnh đó để quản lý chặt chẽ các ca bệnh thì người bệnh hay không bệnh thì cũng đều phải chủ động thực hiện việc khai báo Với việc có khá nhiều ứng dụng để khai báo y tế nhưng chủ yếu là kiểm tra những địa điểm mà người bệnh có triệu chứng, không triệu chứng đã đi qua Nhưng chỉ là đơn giản là khai báo địa điểm thôi, còn việc biết được người đó bệnh hay không điều đó là không thể Hay đơn cử như việc khai báo y tế hằng ngày ở VNPT, mỗi sáng nhân viên đều mở quét QR khai báo, và nhập OTP, còn về các lựa chọn có triệu chứng nào đó thì ít ai quan tâm, đa phần chọn một lần rồi tự động lưu cho lần sau Việc này dẫn tới việc khai báo dường như không còn ý nghĩa Nên khi xây dựng ứng dụng chuẩn đoán COVID-19 này, có thể tích hợp việc nhân viên khai báo, ví dụ khi bạn có triệu chứng ho rát họng, mở app lên kéo chọn ho 30%, rát họng 50%, hệ thống sẽ chuẩn đoán và cho ra kết quả, nếu bạn có khả năng nghi nhiễm, hệ thống sẽ báo với lễ tân và tiến hành thực hiện việc test nhanh, vừa giúp cho bạn có thể phát hiện khả năng nghi nhiễm COVID sớm nhất, vừa giúp công ty kiểm soát được nhân viên một cách trực quan nhất
Hình 1-1 Khai báo qua cổng y tế
Hiện nay đã có vắc-xin đã giúp hỗ trợ phần nào ngăn đại dịch này này càng lây lan rộng ra Mặc dù đã được tiêm vắc-xin thì người bệnh vẫn có khả năng nhiễm bệnh có triệu chứng hoặc không triệu chứng và với một số triệu chứng thông thường thì ta lại phải mua bộ xét nghiệm để thử xem có bệnh hay không Điều đó khiến việc chuẩn đoán bệnh trở nên rườm rà và tốn chi phí
Thế nên việc chuẩn đoán bệnh là một công việc khó khăn đối với các chuyên gia y tế Với tỷ lệ lây nhiễm cao, ngày càng tăng như vậy, đại dịch COVID-19 đòi hỏi bệnh nhân phải có cách chuẩn đoán nhanh Vì không phải lúc nào cũng có sẵn bộ dụng cụ xét nghiệm nên việc chuẩn đoán sơ bộ thường phải được thực hiện hoàn toàn dựa trên các tình trạng sẵn có của bệnh nhân và các triệu chứng mà họ hiện đang gặp phải
Xuất phát từ những phân tích và quan sát trên nhiệm vụ nghiên cứu của đề tài
“Xây dựng phần mềm dự đoán khả năng nhiễm Covid-19 thông qua triệu chứng”, nhằm:
- Góp phần phát triển phương pháp luận phục vụ việc thu thập các tri thức chuyên gia y tế trong môi trường thông tin mờ, xây dựng một hệ hỗ trợ chuẩn đoán, giúp đem lại cơ hội phát hiện các ca bệnh ẩn, cũng như góp phần vào việc kiểm soát tình trạng của các nhân viên một cách trực quan nhất, phát hiện, chữa trị và chữa lành bệnh một cách kịp thời cho bệnh nhân
- Hỗ trợ VNPT có thêm tham khảo về giải pháp kiểm soát sức khỏe của các nhân viên, dự đoán khả năng nhiễm Covid-19 của nhân viên để có hướng giải quyết kịp thời tránh lây lan.
Lý do chọn đề tài
Nhận thấy hiện tại ở VNPT chưa có các giải pháp hỗ trợ kiểm soát thông tin sức khỏe liên quan đến Covid-19 của nhân viên Các nhân viên khi tới công ty đều phải điền cổng khai báo bằng tay Luận văn “Xây dựng phần mềm dự đoán khả năng nhiễm Covid-19 thông qua triệu chứng” nghiên cứu và giải quyết vấn đề hỗ trợ kiểm tra dự đoán khả năng nhiễm Covid-19 của nhân viên để có các giải pháp xử lý kịp thời Căn cứ vào tình hình nghiên cứu và thực tiễn, tính khả thi vì góp phần tiết kiệm thời gian công sức cũng như số hóa quy trình khai báo sức khỏe ở công ty hiện nay Qua đó em tổng kết các lý do để chọn đề tài:
• Tầm quan trọng của chuẩn đoán: Chuẩn đoán chính xác COVID-19 là một yếu tố quan trọng trong việc kiểm soát và quản lý dịch bệnh Việc sử dụng triệu chứng để chuẩn đoán có thể giúp phát hiện sớm, xác định và điều trị các trường hợp nhiễm bệnh một cách hiệu quả Do đó, nghiên cứu về cách sử dụng tập mờ loại 2 trong việc chuẩn đoán COVID-19 có thể mang lại lợi ích lớn cho cộng đồng y tế và xã hội
• Tiềm năng của tập mờ loại 2: Tập mờ loại 2 là một công cụ mạnh mẽ trong việc xử lý sự không chắc chắn và mờ mịt trong thông tin y tế Việc áp dụng tập mờ loại 2 vào việc chuẩn đoán COVID-19 có thể giúp giải quyết vấn đề của sự biến thiên, đa dạng và không chắc chắn trong triệu chứng bệnh Điều này có thể cải thiện tính chính xác và đáng tin cậy của quá trình chuẩn đoán
• Góp phần vào nghiên cứu và phát triển: Việc nghiên cứu và áp dụng tập mờ loại 2 trong lĩnh vực y tế, đặc biệt là trong việc chuẩn đoán bệnh, là một lĩnh vực mới và đầy triển vọng Đề tài này có thể đóng góp vào việc phát triển kiến thức và công nghệ trong lĩnh vực này, mở ra cơ hội cho các nghiên cứu và ứng dụng tương lai
• Ứng dụng thực tế: Nghiên cứu về việc sử dụng tập mờ loại 2 để chuẩn đoán COVID-19 có tiềm năng ứng dụng thực tế rộng rãi Nếu thành công, phương pháp này có thể được triển khai và tích hợp vào các hệ thống y tế hiện có, từ các ứng dụng di động đến các nền tảng y tế trực tuyến Điều này có thể cung cấp hỗ trợ quan trọng cho việc chuẩn đoán và quản lý COVID-19 trong thực tế.
Mục tiêu đề tài
• Nghiên cứu để phân tích các triệu chứng, mức độ ảnh hướng của các triệu chứng đối với bệnh nhân
• Xây dựng một mô hình tập mờ loại 2 có khả năng xử lý và biểu diễn sự không chắc chắn trong quá trình chuẩn đoán COVID-19 dựa trên triệu chứng Mô hình này sẽ được xây dựng dựa trên các quy tắc suy luận và các thông số liên quan để đưa ra dự đoán về khả năng mắc COVID-19 của một cá nhân dựa trên triệu chứng hiện tại
• Tìm hiểu logic mờ để vận dụng xây dựng chức năng chuẩn đoán khả năng nhiễm Covid-19 thông qua dữ liệu cung cấp từ nhân viên
• Kết quả đề tài cho phép tìm giải pháp công nghệ thông tin để xử lý các vấn đề về chuẩn đoán bệnh tạo điều kiện thuận lợi trong việc đánh giá, tiên lượng và điều trị
• Kiểm tra tính ứng dụng của mô hình tập mờ loại 2 trong các tình huống thực tế và cải thiện mô hình dựa trên phản hồi và kinh nghiệm thu thập được
• Tìm hiểu về logic mờ để chuẩn đoán
• Thu thập dữ liệu về các triệu chứng của bệnh nhân Covid-19 (Dữ liệu phải đầy đủ và chính xác, phải đại diện cho các trường hợp mắc Covid-19 trong thực tế)
• Xây dựng mô hình fuzzy logic type-2 để chẩn đoán Covid-19 (Mô hình fuzzy logic type-2 sẽ được xây dựng dựa trên các biến fuzzy, các hàm fuzzy và các luật suy luận Các biến fuzzy sẽ đại diện cho các triệu chứng của bệnh nhân Covid-19 Các hàm fuzzy sẽ xác định mức độ nghiêm trọng của từng triệu chứng Các luật suy luận sẽ xác định mối quan hệ giữa các triệu chứng và khả năng mắc Covid-19)
• Đánh giá độ chính xác của mô hình (Độ chính xác của mô hình sẽ được đánh giá bằng cách sử dụng tập dữ liệu thử nghiệm Tập dữ liệu thử nghiệm sẽ bao gồm các thông tin về các triệu chứng của bệnh nhân Covid-19)
• Sử dụng thư viện PyIT2FLS để xây dựng Type-2 Fuzzy Logic System
• Dùng Pandas để thao tác và phân tích dữ liệu
• Xây dựng một ứng dụng minh họa kết quả nghiên cứu của đề tài bằng Python.
Nội dung nghiên cứu
✓ Đối tượng của nghiên cứu
- Các triệu chứng chính của Covid-19 bao gồm: Ho, sốt, khó thở, tức ngực Nghiên cứu phương pháp chuẩn đoán Covid-19
- Ứng dụng sử dụng cho cá nhân hoặc VNPT Đồng Nai trong việc khai báo y tế và kiểm soát nhân viên
- Ứng dụng sẽ thu thập dữ liệu được cung cấp mỗi ngày đi làm của nhân viên VNPT Đồng Nai
Do đó, luận văn thực hiện các nội dung sau:
Nội dung 1: Thu thập dữ liệu về các bệnh nhân nhiễm bệnh Covid-19 cũng như triệu chứng của các bệnh nhân đó
Nội dung 2: Xây dựng bộ khung logic mờ với các rule liên quan đến khả năng nhiễm bệnh Covid-19 Dựa trên các cơ sở này sẽ quét và dự đoán khả năng nhiễm Covid là bao nhiêu phần trăm
Nội dung 3: Phân tích yêu cầu thực thế của bài toán và xây dựng các bước phân tích hệ thống để hỗ trợ việc lập trình, xây dựng ứng dụng
Nội dung 4: Xây dựng một chương trình demo cụ thể hóa nội dung luận văn.
Phương pháp nghiên cứu
- Đối với Nội dung 1, sử dụng internet để thu thập tài liệu trong và ngoài nước về chuẩn đoán Covid-19, tham khảo ở các cộng đồng Research Data (kaggle) để thu thập dataset Tổng hợp dữ liệu thu thập được, lọc các dữ liệu không cần thiết, sau đó tính tỉ lệ đối với từng triệu chứng nhiễm bệnh
- Đối với Nội dung 2 sẽ design Fuzzy Logic System theo từng triệu chứng và tạo lập rule, giải mờ đưa ra kết quả phục vụ cho chức năng dự đoán Covid
- Đối với Nội dung 3, sẽ vẽ ra mô hình kiến trúc dự án, tìm hiểu Python lập trình ứng dụng Tìm hiểu các thuật toán CNN, PyIT2FLSđể xây dựng Type-2 Fuzzy Logic System Xây dựng ứng dụng với module chính: tiếp nhận thông tin sức khỏe (qua các thông tin chi tiết về từng triệu chứng được nhân viên cung cấp) và dự đoán khả năng nhiễm Covid-19.
Đóng góp đề tài
Các đóng góp cụ thể của đề tài bao gồm:
Nội dung 1: kết quả là báo cáo tổng kết và chi tiết về các lý thuyết nghiên cứu được
Nội dung 2: kết quả là một hệ thống Fuzzy Logic tính toán được tỷ lệ nhiễm bệnh
Nội dung 3: kết quả là toàn bộ mã nguồn cài đặt
Nội dung 4: kết quả là một chương trình demo có thể chạy được trên website.
Cấu trúc của luận văn
Thực hiện giới thiệu về lý do chọn đề tài, mục đích nghiên cứu và nói tổng quát về phương pháp thực hiện nghiên cứu của đề tài
Chương 2 CƠ SỞ LÝ THUYẾT
Báo cáo toàn diện nội dung tìm hiểu về lý thuyết đề cập ở Nội dung 1, bên cạnh đó có kết quả khảo sát của một vài cách tiếp cận trước đây liên quan đến bài toán
Chương 3 XÂY DỰNG HỆ THỐNG
Báo cáo toàn diện và phương pháp nghiên cứu:
- Cách xây dựng bộ dữ liệu, một số thống kê về dữ liệu
- Xây dựng bộ Logic mờ và coding
Chương 4 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Kết luận những nội dung đã hoàn thành và điểm lại những gì đã đạt và chưa đạt được, bên cạnh đó đề xuất một số ý tưởng cho việc phát triển bài toán trong tương lai.
CƠ SỞ LÝ THUYẾT
Các nghiên cứu liên quan
Về phần mềm dự đoán khả năng nhiễm bệnh COVID-19 thông qua triệu chứng, có một số đề tài trong và ngoài nước với sự nghiên cứu liên quan như sau:
Công trình [Duc Q Nguyen, Nghia Q Vo, Thinh T Nguyen, Khuong Nguyen-
An, Quang H Nguyen, Dang N Tran & Tho T Quan (2022)], BeCaked – An Explainable Artificial Intelligence Model For COVID-19 Forecasting [10], nhóm tác giả đã giới thiệu một sự kết hợp mới giữa Susceptible-Infectious-Recovered- Deceased (SIRD) compartmental model và Variational Autoencoder (VAE) neural network gọi là BeCaked Với sự hỗ trợ của Deep Learning, dựa trên số trường hợp lây nhiễm, đã hồi phục và đã tử vong, mô hình BeCaked có thể xác định các tham số của mô hình SIRD Sử dụng các tham số này, các phương trình vi phân có thể được giải chính xác để dự đoán xu hướng phát triển của đại dịch COVID-19 Nhóm tác giả cũng đã đưa ra những so sánh với những mô hình hàng đầu trên thế giới và đạt kết quả gần như cao nhất, được công bố trên tạp chí quốc tế với hạng 1 và đã áp dụng thực tế ở Tp.Hồ Chí Minh trong làn sóng thứ 4 của đại dịch Tuy nhiên mô hình gặp những hạn chế ở những quốc gia vùng có dân số ít hơn, chính sách phòng chống dịch khác nhau, cũng như việc xuất hiện nhiều biến thể mới cũng làm ảnh hưởng tới độ chính xác của mô hình
Trong luận văn thạc sĩ [Dương Thị Kim Chi (2023), Mô hình chẩn đoán bệnh
Covid-19 từ dữ liệu lâm sàng bằng phương pháp XGBoost Tạp chí khoa học Đại học
Thủ Dầu Một][11] đã sử dụng XGBoost, một thuật toán học máy mạnh mẽ, có khả năng xử lý dữ liệu lớn và phù hợp với việc xây dựng mô hình dự đoán trong bài toán chẩn đoán COVID-19 Kết quả đạt được với độ chính xác khá cao Tác giả cũng đưa ra chi tiết các bước thực hiện cũng như đánh giá hiệu năng khi so sánh với các mô hình khác Tuy nhiên hiệu suất của mô hình phụ thuộc nhiều vào chất lượng và tính đại diện của dữ liệu lâm sàng, vẫn còn tồn tại các yếu tố nhiễu dẫn tới hiệu quả của mô hình, thêm vào đó sự biến thể phức tạp của dịch bệnh làm ảnh hưởng trực tiếp tới mô hình dự đoán, cần bổ sung nhiều tập dữ liệu đa dạng hơn và chính xác hơn
Trong công trình [Warda M Shaban, Asmaa H Rabie, Ahmed I Saleh, M.A Abo-Elsoud (2021) Detecting COVID-19 patients based on fuzzy inference engine and Deep Neural Network https://doi.org/10.1016/j.asoc.2020.106906][12], nhóm tác giả đã đưa ra chiến lược chuẩn đoán kết hợp (HDS) qua việc sử dụng X-quang phổi và đưa ra 4 tập mờ: Tế bào máu trắng (WBC), tế bào bạch huyết (LYM), Bạch cầu đơn nhân (MON) và xác định vị trí Dehydrogenase (LDH) Chiến lược HDS được xác thực bằng cách xác thực chéo 10 lần Chiến lược HDS dựa trên Fuzzy Logic và Deep neural network đã cho ra kết quả nhanh chóng và tỉ lệ chính xác lên tới 97.658%, một tỉ lệ khá cao và giúp ích rất nhiều cho đội ngũ y bác sĩ ở Ai Cập
Công trình [Shadab Hafiz Choudhury, Azmary Jannat Aurin, Tanbin Akter Mitaly and Rashedur M Rahman(2021) Predicting the possibility of COVID-19 infection using fuzzy logic system https://doi.org/10.1504/IJIIDS.2021.116465][13] đã đề cập đến các triệu chứng chính của Covid-19 (tức ngực, ho, sốt, khó thở) và sử dụng Fuzzy logic tính toán đưa ra khả năng dự đoán nhiễm bệnh thông qua dữ liệu được cung cấp từ user thông qua giao diện ứng dụng Nhìn chung hệ thống đã phát triển theo đúng định hướng của nó, tuy nhiên do tập dữ liệu còn nhỏ và chưa đa dạng nên tỉ lệ chính xác chưa cao, giao diện cũng chưa thực sự đẹp và tiện dụng
Công trình [Nur- A- Alam, Mominul Ahsan, Abdul Based, Julfikar Haider, Marcin Kowalski (2021) COVID-19 Detection from Chest X-Ray Images Using Feature Fusion and Deep Learning https://doi.org/10.3390/s21041480][14] đã đề xuất một phương pháp tiếp cận bằng thị giác máy để phát hiện COVID-19 từ hình ảnh X-quang phổi Các tính năng được trích xuất bởi gradient hướng biểu đồ (HOG) và mạng nơ-ron tích tụ (CNN) từ hình ảnh tia X đã được hợp nhất để phát triển mô hình phân loại thông qua đào tạo của CNN (VGGNet) Sau khi xác thực chéo 5 lần, cho thấy kết quả khả quan về mặt nhận dạng COVID-19 so với các công việc liên quan, tức thì với độ chính xác thử nghiệm là 99,49%, độ đặc hiệu là 95,7% và độ nhạy là 93,65% Hiệu suất này cao hơn khi so sánh với các kỹ thuật khác như ANN, KNN, SVM
Trong [Nitesh Dhiman, M.K Sharma (2020) Fuzzy Logic Inference System for
Identification and Prevention of Coronavirus][15], nhóm tác giả đã thu thập dữ liệu ở 3 quốc gia Ấn Độ, Ý, Iran với 6 yếu tố đầu vào (Ethanol, nhiệt độ khí quyển, nhiệt độ cơ thể, Khó thở, Ho và lạnh, sau đó sử dụng Fuzzy Logic Type-1 để đưa ra kết quả suy luận về mức độ nghi nhiễm Tập dữ liệu khá đầy đủ và chi tiết, tuy nhiên các quy tắc lập luận còn khá ít nên kết quả chuẩn đoán chưa có độ chính xác cao
Cụng trỡnh [Mesut Toğaỗara, Burhan Ergenb, ZaferCửmert (2020) COVID-19 detection using deep learning models to exploit Social Mimic Optimization and structured chest X-ray images using fuzzy color and stacking approaches https://doi.org/10.1016/j.compbiomed.2020.103805][16], nhóm tác giả đã sử dụng kỹ thuật xếp chồng để tăng hiệu quả cho việc tiền xử lý hình ảnh Các mô hình học sâu (MobileNetV2 và SqueezeNet) ít tham số truyền vào giúp tối ưu được tốc độ và hiệu suất Cung cấp tỉ lệ thành công 99.27% trong việc phát hiện bệnh bằng X-Quang Tuy nhiên để đạt được hiệu suất tối đa, ảnh gốc cung cấp cần phải có kích thước và độ phân giải đúng chuẩn Chỉ cần một thay đổi nhỏ về kích thước cũng gây khó khăn trong việc xử lý
Tóm lại, các nghiên cứu liên quan đến chẩn đoán Covid-19 trong và ngoài nước đã đạt được những tiến bộ đáng kể trong những năm gần đây Các phương pháp chẩn đoán mới dựa trên trí tuệ nhân tạo, chẳng hạn như fuzzy logic, machine learning và deep learning, đã cho thấy hiệu quả cao trong việc chẩn đoán Covid-19 Ưu điểm chung của các nghiên cứu
• Sử dụng các phương pháp chẩn đoán dựa trên trí tuệ nhân tạo: Các phương pháp chẩn đoán dựa trên trí tuệ nhân tạo, chẳng hạn như fuzzy logic, machine learning và deep learning, có khả năng học hỏi và thích ứng với dữ liệu mới Do đó, các phương pháp này có thể mang lại độ chính xác cao hơn các phương pháp chẩn đoán truyền thống
• Sử dụng các dữ liệu lớn: Các nghiên cứu liên quan đến chẩn đoán Covid-19 thường sử dụng các dữ liệu lớn, bao gồm dữ liệu về triệu chứng, hình ảnh và dấu ấn sinh học của bệnh nhân Covid-19 Việc sử dụng các dữ liệu lớn giúp các phương pháp chẩn đoán có độ chính xác cao hơn
• Sử dụng các kỹ thuật xử lý dữ liệu tiên tiến: Các nghiên cứu liên quan đến chẩn đoán Covid-19 sử dụng các kỹ thuật xử lý dữ liệu tiên tiến, chẳng hạn như kỹ thuật học máy, để phân tích dữ liệu và đưa ra kết quả chẩn đoán Các kỹ thuật này giúp các phương pháp chẩn đoán có độ chính xác cao hơn
Hạn chế chung của các nghiên cứu
• Dữ liệu sử dụng để xây dựng mô hình còn hạn chế: Dữ liệu sử dụng để xây dựng mô hình chẩn đoán Covid-19 thường được thu thập từ các bệnh viện, trung tâm y tế Dữ liệu này có thể không đại diện đầy đủ cho các trường hợp mắc Covid-
• Mô hình chẩn đoán chưa được đánh giá trên một tập dữ liệu lớn: Để đánh giá độ chính xác của mô hình chẩn đoán một cách chính xác, cần đánh giá mô hình trên một tập dữ liệu lớn Tuy nhiên, các nghiên cứu hiện nay thường chỉ đánh giá mô hình trên một tập dữ liệu nhỏ
• Mô hình chẩn đoán chưa được đánh giá trong điều kiện thực tế: Để đánh giá hiệu quả của mô hình chẩn đoán trong thực tế, cần đánh giá mô hình trên các bệnh nhân Covid-19 trong điều kiện thực tế Tuy nhiên, các nghiên cứu hiện nay thường chỉ đánh giá mô hình chẩn đoán trên các dữ liệu mô phỏng.
Tổng quan Logic mờ và ứng dụng
Logic truyền thống chỉ quan tâm đến 2 giá trị tuyệt đối (đúng hoặc sai) Logic truyền thống luôn tuân theo 2 giả thuyết Một là tính thành viên của tập hợp: Với một phần tử và một tập hợp bất kỳ, thì phần tử hoặc là thuộc tập hợp đó, hoặc thuộc phần bù của tập đó Giả thiết thứ hai là định luật loại trừ trung gian, khẳng định một phần tử không thể vừa thuộc một tập hợp vừa thuộc phần bù của nó
Thí dụ: Nếu nhiệt độ trên 35 độ C thì nóng, ngược lại là không nóng Hình bên dưới minh họa tập hợp “NÓNG” gồm tất cả các nhiệt độ từ 35 độ C trở lên [15]
Từ hình vẽ ta thấy logic giòn không thể hiện được sự khác biệt giữa các thành viên trong cùng một tập hợp Giữa hai nhiệt độ 45 và 55 độ C, logic này không thể hiện được nhiệt độ nào nóng hơn nhiệt độ nào
Ngoài ra, logic này còn có một nhược điểm khác quan trọng hơn đó là chúng không thể biểu diễn được các dữ kiện mang tính mơ hồ, không chính xác mà trong thực tế lại có rất nhiều phát biểu bằng ngôn ngữ tự nhiên ở dạng này, chẳng hạn như:
Hình 2-2 Giả thuyết Logic mờ Trời có lạnh không => Lạnh/Không? Lạnh là lạnh thế nào, rất lạnh hoặc lạnh ít hoặc rất ít
Vì vậy, logic truyền thống không thể hỗ trợ cho những suy luận trên những thông tin mang tính mơ hồ, thiếu chính xác như vậy Khái niệm tập hợp cũng được sinh ra từ đó, dựa vào giá trị chân trị đúng/sai để diễn tả về việc một phần tử thuộc hay không thuộc về nó Từ đó tập hợp trở thành nền tảng quan trong trong Toán học Để khắc phục khuyết điểm của logic truyền thống,năm 1965 Giáo sư Lotfi Aliasker Zadeh đã đưa ra lý thuyết “Fuzzy sets” trong công trình “L.A Zadeh, Fuzzy
Sets, Information and control, Vol.8, p.338-353(1965) Ông đã quan sát thấy rằng không giống như máy tính, con người có nhiều khả năng khác nhau giữa CÓ và KHÔNG, chẳng hạn như:
Hình 2-3 Các kết quả có thể biểu hiện ở Logic mờ
Lý thuyết của Zadeh biểu diễn tính mờ hay tính thiếu chính xác trong các phát biểu (như ở mục trên) theo cách định lượng bằng cách đưa ra một hàm tư cách thành viên tập hợp (set membership function) nhận giá trị thực giữa 0 và 1
Kiến trúc logic mờ gồm 4 phần chỉnh:
Hình 2-4 Kiến trúc Logic mờ
- Fuzzification (Mờ hóa): Bước này chuyển đổi đầu vào hoặc các crisp number thành các tập mờ Bạn có thể đo crisp input bằng sensors và chuyển chứng vào hệ thống điều khiển để xử lý thêm Nó chia tín hiệu đầu vào thành năm bước như:
Hình 2-5 Tín hiệu đầu vào
- Rules (Quy tắc): Nó chứa tất cả các rule và điều kiện IF-ELSE do các chuyên gia đưa ra để kiểm soát hệ thống ra quyết định Bản cập nhật gần đây về lý thuyết mờ cung cấp các phương pháp hiệu quả khác nhau để thiết kế và điều chỉnh các bộ điều khiển mờ Thông thường, những phát triển này làm giảm số luật mờ
- Inference Engine (Công cụ suy luận) – Nó xác định mức độ phù hợp giữa đầu vào mờ và các quy tắc Theo trường đầu vào, nó sẽ quyết định các quy tắc sẽ được kích hoạt Kết hợp các quy tắc đã kích hoạt, tạo thành các hành động điều khiển
- Defuzzification (Giải mờ) - Quá trình Giải mờ chuyển đổi các tập hợp mờ thành một giá trị sắc nét Có nhiều loại kỹ thuật khác nhau và bạn cần chọn loại phù hợp nhất với hệ thống chuyên gia
Membership Function là một biểu đồ xác định cách mỗi điểm trong không gian đầu vào được ánh xạ tới giá trị liên thuộc trong khoảng từ 0 đến 1 Nó cho phép bạn định lượng các thuật ngữ ngôn ngữ và biểu diễn tập mờ bằng đồ thị Hàm thành viên của tập mờ A trên không gian nền của tập X được định nghĩa là μA:X → [0,1]
Trong hàm này, giữa giá trị 0 và 1, mỗi phần tử của X đều sẽ được ánh xạ Chúng ta có thể định nghĩa nó là các cấp độ thành viên Ngoài ra, nó định lượng mức độ thành viên của phần tử, dựa vào giá trị X đến tập mờ A
- Trục x - Đại diện cho vũ trụ của bài giảng (Universe of Discourse)
- Trục y - Đại diện cho các cấp độ thành viên trong khoảng [0, 1]
X được gọi là không gian nên hay còn gọi là một vũ trụ (universe) hoặc là tập tham chiếu Thực chất X là miền xác định của hàm μA μA gọi là hàm thuộc (membership function) hay mức độ phụ thuộc (membership degree) để chỉ mức độ phụ thuộc của các phần tử trong X vào tập A là bao nhiêu phần trăm
Tập A được quy ước bằng nhiều cách biểu diễn khác nhau, chẳng hạn có thể viết 𝐴 = {(x, μA(x))/x ∈ X} hoặc 𝐴 = { μA(x)
Chúng ta có thể xác định tất cả các hàm thành viên cho LP, MP, S, MN và LN Điều đó được hiển thị như hình dưới:
Các dạng hàm liên thuộc tam giác là phổ biến nhất trong số các dạng hàm liên thuộc khác Ở đây, đầu vào của bộ làm mờ 5 cấp thay đổi từ -10 vôn đến +10 vôn
Do đó đầu ra tương ứng cũng thay đổi
Tập mờ loại 2 (Fuzzy logic type-2)
Fuzzy Logic Type-2 (FL Type-2) là một phần mở rộng của Fuzzy Logic Type-
1 (FL Type-1), một khung toán học được sử dụng để xử lý sự không chắc chắn và mập mờ trong quá trình ra quyết định FL Type-2 cung cấp mức độ linh hoạt và biểu đạt cao hơn so với FL Type-1 bằng cách cho phép mô hình và quản lý sự không chắc chắn một cách chính xác hơn
Trong FL Type-2, sự không chắc chắn liên quan đến các tập mờ được biểu diễn bởi một tập hàm thành viên, mỗi hàm thành viên đại diện cho một mức độ không chắc chắn khác nhau Những hàm thành viên này được gọi là "footprints of uncertainty" và xác định ranh giới mà giá trị thành viên của các tập mờ có thể biến đổi trong đó
Hình 2-20 Footprints of uncertainty trong fuzzy logic type-2
FL Type-2 giới thiệu một chiều không chắc chắn thứ hai, bên cạnh giá trị hàm thành viên, được gọi là "certainty levels" (mức độ chắc chắn) Mức độ chắc chắn cung cấp một đánh giá về mức độ tin cậy trong các giá trị thành viên được gán cho các tập mờ Bằng cách kết hợp mức độ chắc chắn, FL Type-2 cho phép biểu diễn sự không chắc chắn một cách tinh tế hơn, vì nó bao gồm mức độ tin cậy trong các giá trị thành viên được gán Việc sử dụng FL Type-2 đặc biệt có lợi trong các tình huống mà sự không chắc chắn cao hoặc thông tin có sẵn hạn chế Nó cho phép ra quyết định linh hoạt hơn bằng cách mô hình và quản lý nhiều nguồn không chắc chắn cùng một lúc
Tuy nhiên, cần lưu ý rằng FL Type-2 liên quan đến tính toán phức tạp hơn và đòi hỏi tài nguyên tính toán bổ sung so với FL Type-1 Do đó, FL Type-2 thường được sử dụng trong các tình huống mà lợi ích của khả năng mô hình hóa tăng cao hơn áp đảo nhược điểm tính toán liên quan FL Type-2 có các ứng dụng trong nhiều lĩnh vực, bao gồm hệ thống điều khiển, nhận dạng mẫu, trí tuệ nhân tạo và hệ thống hỗ trợ ra quyết định Nó cho phép mô hình hóa chính xác và linh hoạt hơn của các vấn đề thực tế liên quan đến thông tin không chắc chắn và mập mờ
Ví dụ: Ở phần trên, chúng ta đã thấy cách chúng ta sử dụng tập mờ loại 1 khi chúng ta không thể xác định tư cách thành viên của một phần tử là 0 hoặc 1 Chúng ta có thể mở rộng khái niệm này khi hoàn cảnh mờ đến mức chúng ta gặp khó khăn trong việc quyết định tư cách thành viên cấp dưới dạng một số trong [0, 1] Trong những trường hợp này, tập mờ loại 2 cung cấp khuôn khổ cần thiết để chính thức hóa và làm việc với thông tin này
Chúng tôi bắt đầu cuộc thảo luận này bằng cách trình bày lại động lực đằng sau lý thuyết tập mờ Giả sử nhiệt độ hôm nay là 25 độ C, hay 77 độ F Chúng ta có thể coi hôm nay là một ngày nắng nóng không? Việc đọc nhiệt kế chính xác cho chúng ta biết điều gì trong ngày và chúng ta nên điều chỉnh hành vi của mình như thế nào dựa trên việc đọc này?
Cơ quan Khí quyển và Đại dương Quốc gia Hoa Kỳ (NOAA) coi phạm vi từ 26 đến 32 độ là 'thận trọng' và xác định các phạm vi cao hơn thang nhiệt độ là 'nguy hiểm' và 'cực kỳ nguy hiểm' Nếu chúng ta tuân thủ định nghĩa này, chúng ta có thể tưởng tượng ra giới hạn của một ngày nóng bức do NOAA vẽ ra Do đó, chúng ta có thể kết luận rằng hôm nay sẽ không thuộc loại ngày 'nóng', có thể thuộc loại 'ấm' hoặc 'hơi nóng'
Phân loại một ngày bằng cách sử dụng logic này có nghĩa là nhiệt độ dưới 26 độ và hơn 32 độ sẽ không làm cho ngày trở nên 'nóng'
Nếu chúng ta xem khái niệm ngày 'nóng' từ một lăng kính mờ nhạt, lý luận của chúng ta sẽ thay đổi Chúng ta có thể coi 20 độ là hơi 'nóng', trong khi 30 độ là 'nóng' tích cực Mặt khác, chúng ta có thể phân loại bốn mươi độ là nhiệt độ quá 'nóng'; có lẽ nó có thể thuộc danh mục 'nóng bức Xem 'nóng' như một khái niệm mờ nhạt sẽ biến ranh giới cứng nhắc thành một đường cong xác định các mức độ thuộc về khác nhau đối với mọi nhiệt độ trong các danh mục khác nhau Do đó, nhiệt độ có thể là 'ấm' 'nóng' và 'nóng bức' đồng thời, mặc dù ở các mức độ khác nhau trong mỗi loại
Hình 2-21 Giả thuyết cho logic mờ loại 2
Bây giờ chúng ta thử hỏi hai người khác nhau vẽ biểu đồ nhận thức của họ về tập mờ 'nóng' và buộc họ sử dụng tập hình thang để mô tả, gần như chắc chắn Chúng tôi sẽ nhận được hai định nghĩa hơi khác nhau Chúng ta sẽ thấy rằng mức độ thuộc về một nhiệt độ nhất định đối với tập hợp 'nóng' sẽ dần dần bị nhòe khi chúng ta yêu cầu nhiều người hơn đưa ra định nghĩa của họ và đến lượt mọi điểm mô tả mức độ thuộc về sẽ biến thành mờ thiết lập trong một chức năng ba chiều
Do đó logic mờ loại 2 được thúc đẩy bởi tiền đề rằng các khái niệm có ý nghĩa khác nhau đối với những người khác nhau
Hình 2-22 Sự khác nhau về định nghĩa của mỗi người
Một tập mờ loại 2 để xác định khái niệm nhiệt độ 'nóng' mà chúng ta sẽ ký hiệu là A, có thể được mô tả dưới đây:
Hình 2-23 Mô tả tập mờ loại 2
Hàm thành viên của Tập mờ loại 2 là ba chiều, với o Trục x được gọi là biến chỉnh o Trục y được gọi là biến thứ cấp hoặc miền thứ cấp được ký hiệu là u Lưu ý rằng trục này biểu thị mức độ thuộc về tập hợp loại 1 và do đó nằm trong [0,1] Tuy nhiên, có một loạt các mức độ giá trị thuộc về mọi giá trị biến chính trong trường hợp này o Trục z được gọi là giá trị hàm liên thuộc membership function value ( cấp hai ) được biểu thị bằng à
Cách đơn giản nhất để xác định một tập mờ loại 2 là xem xét tập hợp tất cả các điểm trong không gian ba chiều tạo nên một tập hợp Do đó, về mặt hình thức, một tập hợp loại 2 cũng có thể được biểu diễn như sau:
𝑥𝜇 𝐴̃ (𝑥, 𝑢)/ (𝑥, 𝑢) Trong đó dấu tích phân kép biểu thị phép hợp trên x và u có thể chấp nhận được đối với một vũ trụ diễn ngôn liên tục (đối với các vũ trụ diễn ngôn rời rạc, thay vào đó, hãy sử dụng các ký hiệu tổng kép) Do đó, chúng ta có thể mô tả tập hợp loại 2 được hiển thị ở trên như sau:
Hơn nữa, 𝒥 𝑥 ⊆ [0,1] được hiểu như là primary membership
Nếu chúng ta cô lập một giá trị biến sơ cấp, chúng ta nhận thấy rằng chúng ta thu được một tập mờ loại 1 được gọi là lát cắt dọc
Hình 2-20 Lát cắt dọc của Logic mờ loại 2
Do đó, một lát cắt dọc là một tập mờ Loại 1
Hàm kết quả từ một lát dọc cũng được gọi là hàm thành viên phụ, được viết chính thức là 𝜇 𝐴̃ (𝑥 ′ ):
Do đó, hàm liên thuộc cấp hai tại x là:
Miền của hàm thành viên phụ được gọi là thành viên chính của x Do đó trong phương trình trên 𝒥 𝑥 ⊆ [0,1] với ∀ 𝑥 ∈ 𝑋 là primary membership function
Hỗ trợ 2D của bộ loại 2 được gọi là footprint of uncertainty (FOU)
FOU đại diện cho sự không chắc chắn trong các thành viên chính của tập hợp loại 2 Đó là sự kết hợp của tất cả các thành viên chính
Hình 2-21 FOU hàm thành viên
FOU được tô bóng ngụ ý một phân phối ở trên cùng của tập mờ loại 2 trong chiều thứ ba phụ thuộc vào sự lựa chọn của các lớp thứ cấp Khi tất cả các lớp cấp hai thuộc tập loại 2 đều bằng 1, tập đó được gọi là interval type-2 fuzzy set
Nhận thấy rằng FOU có giới hạn trên và dưới, được gọi là hàm thành viên trên (UMF) và dưới (LMF):
Hình 2-22 Biểu diễn hàm thành viên dưới𝐿𝑀𝐹(𝐴̃) = 𝜇 𝐴̃ = inf {𝑢|𝑢 ∈ [0,1], 𝜇 𝐴̃ (𝑥, 𝑢) > 0
Hình 2-23 Biểu diễn hàm thành viên trên 𝑈𝑀𝐹(𝐴̃) = 𝜇̅̅̅ = sup{𝑢|𝑢 ∈ [0,1], 𝜇 𝐴̃ 𝐴̃ (𝑥, 𝑢) > 0 Đánh giá: Qua đây chúng ta nhận thấy tập mờ loại 2 như một cấu trúc tinh vi hơn, nơi chúng ta có thể giải thích tính mờ không thể giải thích được bằng tập loại 1 Khi hình ảnh hoặc dữ liệu có mức độ nhiễu và độ chắc chắn không cao, thì kết quả có thể không chắc chắn khi sử dụng tập mờ loại 1 Trong những trường hợp này và trong bài toán thực tế này thì tập mờ loại 2 có thể hoạt động và thu được hiệu suất tốt hơn
Qua đó em lập ra bảng so sánh giữa Type-1 và Type-2:
XÂY DỰNG HỆ THỐNG
Thu thập data và tiền xử lý
Bước thu thập dữ liệu và tiền xử lý là hai bước quan trọng trong quá trình xây dựng hệ thống chuẩn đoán Covid-19 thông qua Fuzzy Logic Type-2 Dưới đây là chi tiết cũng như yêu cầu của 2 bước này:
• Xác định các triệu chứng: Đầu tiên, cần xác định danh sách các triệu chứng có thể liên quan đến Covid-19 Các triệu chứng thông thường bao gồm sốt, ho, khó thở, mệt mỏi, đau cơ, đau họng và mất vị giác/nhận biết mùi Tuy nhiên, danh sách này có thể được mở rộng để bao gồm các triệu chứng mới được phát hiện qua nghiên cứu và thông tin y tế cập nhật
• Sử dụng nguồn dữ liệu đáng tin cậy: Thu thập dữ liệu từ các nguồn đáng tin cậy như tổ chức y tế quốc gia, tổ chức y tế thế giới (WHO), các báo cáo y tế địa phương, các nghiên cứu y khoa và các tài liệu y tế khác Dữ liệu có thể bao gồm thông tin về triệu chứng, kết quả xét nghiệm, lịch sử tiếp xúc và các yếu tố nguy cơ khác liên quan đến Covid-19
• Đảm bảo tính đại diện và đa dạng của dữ liệu: Khi thu thập dữ liệu, cần đảm bảo tính đại diện và đa dạng của mẫu dữ liệu Điều này có nghĩa là thu thập thông tin từ nhiều nguồn và đối tượng khác nhau, bao gồm các nhóm tuổi, giới tính, địa phương và tình trạng y tế khác nhau
Mục tiêu chỉnh trong quá trình thu thập dữ liệu là tìm dữ liệu tưởng quan tới sự xuất hiện của các triệu chứng và mức độ nghiêm trọng của các triệu chứng đó với khả năng một cá nhân mắc phải Covid-19 có khả năng lây nhiễm cao Tuy nhiên, những nỗ lực này đã bị cản trở do thiếu thông tin về mức độ nghiêm trọng, các thông tin như mức độ sốt chính xác hoặc nhịp thở được các bệnh viện giữ kín vì nó được bảo mật thông tin y tế thuộc về bệnh nhân của họ Tuy nhiên may mắn thay cũng đã có nhiều tài liệu nghiên cứu được xuất bản trong hơn 1 năm qua Một trong số đó là “Covid-
19 Open Research Dataset Challenge” trên kaggle.com [2], những bài báo trong thử thách này chứa dữ liệu về sự lây lan của dịch, các triệu chứng được bệnh nhân báo cáo, mức độ nghiêm trọng của các triệu chứng đó, các yếu tố gây ra các ca nghiêm trọng và hiệu quả của các biện pháp, phương pháp điều trị y tế khác nhau ở các quốc gia trên thế giới Những tài liệu này cần thiết để xây dựng cơ sở quy tắc của hệ thống Fuzzy Logic trong đề tài Trong bộ tài liệu này em đã tìm thấy 2 bộ dữ liệu:
- Novel Corona Virus 2019 Dataset [3]: Bộ dữ liệu này có thông tin cấp độ hàng ngày về số trường hợp bị ảnh hưởng, tử vong và phục hồi từ vi-rút corona mới năm 2019 Xin lưu ý rằng đây là dữ liệu chuỗi thời gian và do đó, số trường hợp vào bất kỳ ngày cụ thể nào là số tích lũy
Hình 3-1 Tập dữ liệu Novel Corona Virus 2019
- Patient Medical Data for Novel Coronavirus COVID-19 [4]: Hồ sơ bệnh nhân bao gồm tuổi, giới tính, địa điểm, ngày khởi phát, triệu chứng, lịch sử du lịch, bệnh mãn tính và ngày xuất viện hoặc tử vong
Hình 3-2 Chi tiết dữ liệu hồ sơ bệnh nhân
Tiền xử lý dữ liệu:
• Loại bỏ nhiễu: Dữ liệu thu thập có thể chứa nhiễu hoặc thông tin không chính xác Trước khi tiếp tục tiền xử lý, cần kiểm tra và loại bỏ các nhiễu này để đảm bảo tính chính xác của dữ liệu
• Xử lý giá trị thiếu: Có thể xảy ra tình huống một số thông tin bị thiếu trong dữ liệu thu thập Trong trường hợp này, cần áp dụng các phương pháp xử lý giá trị thiếu như điền giá trị trung bình, giá trị mode hoặc phương pháp dự báo để hoàn thiện dữ liệu
• Chuẩn hóa dữ liệu: Đối với việc sử dụng Fuzzy Logic Type-2, có thể cần chuẩn hóa các biến số để đảm bảo tính nhất quán giữa các biến Chuẩn hóa dữ liệu có thể bao gồm chuyển đổi các giá trị thành dạng số, thực hiện chuẩn hóa min- max hoặc chuẩn hóa z-score để đưa các biến về cùng một phạm vi
• Xử lý biến số: Trong một số trường hợp, có thể cần xử lý các biến số để đảm bảo tính nhất quán và phù hợp với mô hình Fuzzy Logic Type-2 Việc này có thể bao gồm phân loại các biến số thành các tập hợp mờ hoặc áp dụng các phép biến đổi để tạo ra biến số phù hợp với lý thuyết Fuzzy Logic Type-2 Qua tiền xử lý và lập biểu đồ của 2 tập dữ liệu đã tìm được, chúng ta có thể đưa ra kết luận về những vấn đề phổ biến nhất về các triệu chứng được báo cáo Sau khi kết hợp hai bộ dữ liệu và loại bỏ các bộ dữ liệu trùng lắp và không cần thiết (loại bỏ các triệu chứng được báo cáo của những người có kết quả xét nghiệm âm tính với Covid-19), chúng ta giữ lại cỡ 1514 mẫu người bệnh, những người này đều được báo cáo dương tính với Covid-19 Sau đây là biểu đồ thống kê về số ca nhiễm của từng loại triệu chứng sau khi lọc dữ liệu:
Hình 3-3 Thống kê ca nhiễm theo triệu chứng
Xây dựng bộ Logic mờ
Một loạt các triệu chứng đã được báo cáo bởi những người mắc bệnh Covid-
19, em kết hợp tất cả các triệu chứng và phân các yếu tố nguy cơ vào bốn loại chung:
Ho, Sốt, Khó thở, Các rủi ro bổ sung khác Vì thông tin không đủ chi tiết về mức độ nghiêm trọng của từng triệu chứng, nên em buộc phải sử dụng đường vòng để tiếp cận, đưa ra giả định chỉnh rằng bệnh nhân chỉ báo cáo một triệu chứng cụ thể nếu đó là đủ nghiêm trọng Nói chung, các Membership Functions của em được xây dựng bằng cách ngoại suy thông tin từ các bài báo và bộ dữ liệu khác
Tất cả các Membership Functions đều nằm trong miền [0,10], miền này đại diện cho đầu vào mà người dùng có thể nhập theo thang điểm đó Bảng đưa ra dưới đây đưa ra các suy luận gần đúng cho từng biến mờ Ở đây sử dụng Type-2 Fuzzy Logic, nên tách thành Upper và Lower Membership Functions (UMF và DMF)
Bảng 3-1 Suy luận Membership Function
Inputs Linguistic Variable UMF Range LMF
MF Shape Độ lệch chuẩn
Các rủi ro bổ sung
Không chắc [0,4] [0,1.5] Gaussian 1.0 Rất có thể [2,10] [4,8] Gaussian 1.0 Khả năng cao [6,10] [8,10] Gaussian 1.0
Bảng trên đây là mô tả về các biến đầu vào và đầu ra của hệ thống chẩn đoán Covid-19 dựa trên logic mờ Type-2:
• Ho: o Không: Ho không có hoặc rất ít o Có: Ho thường xuyên hoặc nặng
• Sốt: o Nhẹ: Sốt nhẹ, dưới 38 độ C o Vừa phải: Sốt từ 38 độ C đến 39 độ C o Cao: Sốt trên 39 độ C
• Khó thở: o Nhẹ: Khó thở nhẹ, có thể đi lại bình thường o Vừa phải: Khó thở vừa phải, có thể đi lại với tốc độ chậm o Cao: Khó thở nặng, không thể đi lại
• Các rủi ro bổ sung: o Thấp: Không có hoặc có ít rủi ro bổ sung o Cao: Có nhiều rủi ro bổ sung, chẳng hạn như tiếp xúc gần với người nhiễm Covid-19, đã từng đi du lịch đến các khu vực có dịch bệnh, hoặc có tiền sử bệnh lý nền
• Overall (khả năng nhiễm Covid-19): o Không chắc: Khả năng nhiễm Covid-19 thấp o Rất có thể: Khả năng nhiễm Covid-19 trung bình o Khả năng cao: Khả năng nhiễm Covid-19 cao
Các biến đầu vào và đầu ra đều được mô tả bằng các tập mờ Type-2 Các tập mờ Type-2 được mô tả bằng hai lớp mờ: lớp mờ độ thuộc và lớp mờ độ không chắc chắn Lớp mờ độ thuộc mô tả mức độ thuộc của một phần tử trong tập mờ, trong khi lớp mờ độ không chắc chắn mô tả mức độ không chắc chắn về mức độ thuộc này
Từ bảng trên ta thấy được điểm mạnh của việc sử dụng Type-2 Fuzzy Logic Sự không chính xác gây ra do dữ liệu không đầy đủ có thể được giải thích tốt hơn Vì không có số liệu chính xác nên ở đây sử dụng đồ thị Gaussian cho các Membership Functions, thường phù hợp để làm việc với các giá trị gần đúng Mỗi Membership
Function sẽ được đưa ra trực quan dưới đây
Hình 3-4 Biểu diễn tập mờ với triệu chứng ho
- Đối với Ho (Cough), sau khi phân tích data em nhận thấy khoảng 40% trong số đó báo cáo ho là một triệu chứng, 60% còn lại thì không Bằng cách lấy giả định đã đưa ra trước đó, nếu định vị của mức độ nghiêm trọng của triệu chứng ho trên 40 (P40) sẽ giải thích cho những bệnh nhân báo cáo ho như một triệu chứng Điều này cho phép xây dựng Membership Function hình thang cho cả 2 linguistic variable đầu vào
• self.severity: Đây là biến đầu vào biểu diễn mức độ ho được đo lường trong self.cough_neg = IT2FS(self.severity, trapezoid_mf, [0., 0.001, 3, 7, 1.0], tri_mf, [0, 0.001, 2, 0.5]) self.cough_pos = IT2FS(self.severity, trapezoid_mf, [5, 8, 9.999, 10, 1.0],tri_mf, [8.5, 9.999, 10, 0.5]) hệ thống Giá trị của biến này có thể dao động từ 0 đến 10
Hàm mờ hình thang (trapezoid_mf):
• Hàm mờ hình thang được sử dụng để xác định độ thuộc của một giá trị đầu vào cho một tập mờ Type-2
• Các tham số của hàm mờ hình thang trong đoạn mã có nghĩa như sau: o [0., 0.001, 3, 7, 1.0]: Đây là danh sách các điểm kiểm soát của hàm mờ
▪ 0.0 và 0.001 là các giá trị đầu vào ngưỡng (threshold) bên trái, xác định điểm bắt đầu của vùng lõi (core) và vùng bóng tối (primary membership) bên trái
▪ 3 và 7 là các giá trị đầu vào ngưỡng bên phải, xác định điểm kết thúc của vùng lõi và vùng bóng tối bên phải
▪ 3 và 7 là các giá trị đầu vào ngưỡng bên phải, xác định điểm kết thúc của vùng lõi và vùng bóng tối bên phải o tri_mf: Hàm mờ triangular (tam giác) được sử dụng để mô tả vùng bóng tối (secondary membership) của tập mờ Type-2 Các tham số của hàm mờ tam giác được cung cấp tiếp theo
Hàm mờ tam giác (tri_mf):
• Hàm mờ tam giác được sử dụng để mô tả mức độ không chắc chắn của độ thuộc
• Các tham số của hàm mờ tam giác trong đoạn mã có nghĩa như sau: o [0, 0.001, 2, 0.5]: Đây là danh sách các điểm kiểm soát của hàm mờ tam giác Chúng xác định hình dạng của vùng bóng tối
▪ 0.0 và 0.001 là các giá trị đầu vào ngưỡng bên trái tương tự như hàm mờ hình thang
▪ 2 là giá trị đỉnh (peak) của vùng bóng tối, nơi độ không chắc chắn đạt mức cao nhất
▪ 0.5 là độ thuộc tối đa (full membership) trong vùng bóng tối, có nghĩa là các giá trị nằm ở điểm đỉnh của vùng bóng tối thuộc hoàn toàn vào tập mờ Ý nghĩa của hai tập mờ:
• self.cough_neg: Tập mờ này đại diện cho mức độ ho "Không" Dựa trên các tham số, độ thuộc của một giá trị mức độ ho cho tập mờ "Không" cao nhất khi giá trị đó nằm trong khoảng từ 3 đến 7 và giảm dần về 0 khi giá trị tiến về các ngưỡng bên trái hoặc bên phải Vùng bóng tối cho biết mức độ không chắc chắn về độ thuộc, cao nhất gần điểm đỉnh ở 2 và giảm dần về 0 khi tiến về các ngưỡng
• self.cough_pos: Tập mờ này đại diện cho mức độ ho "Có" Dựa trên các tham số, độ thuộc của một giá trị mức độ ho cho tập mờ "Có" cao nhất khi giá trị đó nằm trong khoảng từ 5 đến 8 và giảm dần về 0 khi giá trị tiến về các ngưỡng bên trái hoặc bên phải Vùng bóng tối cũng tương tự như self.cough_neg, chỉ khác về vị trí ngưỡng và đỉnh
- Đối với sốt (Fever), nó không giống như ho, chúng ta thực sự có thể ánh xạ các biến ngôn ngữ thành các giá trị gần đúng Nên ở đây chúng ta sử dụng Gaussian
Hình 3-5 Biểu diễn tập mờ với triệu chứng sốt
• self.severity: Biến đầu vào biểu diễn mức độ sốt được đo lường trong hệ thống, tương tự như trường hợp ho ở đoạn trước
Các tham số của hàm Gauss:
• Các tham số trong danh sách [mean, sigma, width, full_membership] mô tả hàm gauss: o mean: Tham số này xác định vị trí đỉnh của hàm gauss, tức là giá trị sốt mà độ thuộc đạt mức cao nhất o sigma: Tham số này xác định độ rộng của hàm gauss, ảnh hưởng đến độ dốc của nó và vùng bao phủ của độ thuộc.3 và 7 là các giá trị đầu vào ngưỡng bên phải, xác định điểm kết thúc của vùng lõi và vùng bóng tối bên phải o width: Tham số này xác định chiều rộng của vùng lõi (core) trong tập mờ