Đăng ký Đăng nhập
Trang chủ Nghiên cứu và phát triển giải pháp xử lý dữ liệu dòng tại nút biên trong lĩnh vự...

Tài liệu Nghiên cứu và phát triển giải pháp xử lý dữ liệu dòng tại nút biên trong lĩnh vực y tế

.PDF
66
1
94

Mô tả:

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA ———————————– NGUYỄN LÊ NGỌC DƯƠNG NGHIÊN CỨU VÀ PHÁT TRIỂN GIẢI PHÁP XỬ LÝ DỮ LIỆU DÒNG TẠI NÚT BIÊN TRONG LĨNH VỰC Y TẾ Ngành: Khoa Học Máy Tính Mã ngành: 8.48.01.01 LUẬN VĂN THẠC SĨ TP. HỒ CHÍ MINH, tháng 8 năm 2021 CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA–ĐHQG-HCM Cán bộ hướng dẫn khoa học : PGS.TS. Thoại Nam Cán bộ chấm nhận xét 1 : TS. Nguyễn Quang Hùng Cán bộ chấm nhận xét 2 : PGS.TS. Nguyễn Thanh Hiên Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp. HCM ngày 05 tháng 08 năm 2021 (Trực tuyến). Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ) 1. Chủ Tịch: PGS.TS. Trần Văn Hoài 2. Thư Ký: TS. Lê Thanh Vân 3. Phản Biện 1: TS. Nguyễn Quang Hùng 4. Phản Biện 2: PGS.TS. Nguyễn Thanh Hiên 5. Uỷ Viên: PGS.TS. Trần Công Hùng Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có). CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự Do - Hạnh Phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Nguyễn Lê Ngọc Dương MSHV: 1970212 Ngày, tháng, năm sinh: 23/08/1996 Nơi sinh: Cần Thơ Ngành: Khoa Học Máy Tính Mã số: 8.48.01.01 I. TÊN ĐỀ TÀI: Nghiên cứu và phát triển giải pháp xử lý dữ liệu dòng tại nút biên trong lĩnh vực y tế. NHIỆM VỤ VÀ NỘI DUNG: – Tìm hiểu những thách thức về xử lý dữ liệu lớn trong lĩnh vực y tế và mô hình mô hình điện toán biên/sương mù ứng dụng trong lĩnh vực y tế; – Tìm hiểu bệnh tim mạch, phương pháp theo dõi bệnh tim mạch, và ứng dụng học máy để xây dựng mô hình dự đoán bệnh tim mạch tại nhà; – Dựa trên điện toán biên/sương mù xây dựng khung phần mềm thu thập phân tích dữ liệu có khả năng mở rộng và xử lý theo thời gian thực; – Đánh giá tính khả thi và so sánh với các công trình nghiên cứu đi trước. II. NGÀY GIAO NHIỆM VỤ: 20/01/2021 III. NGÀY HOÀN THÀNH NHIỆM VỤ: 20/06/2021 IV. CÁN BỘ HƯỚNG DẪN: PGS.TS. Thoại Nam Tp. HCM, ngày ........ tháng ......... năm 2021 CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN ĐÀO TẠO (Họ tên và chữ ký) (Họ tên và chữ ký) TRƯỞNG KHOA KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH (Họ tên và chữ ký) Lời cảm ơn Đầu tiên là lời cảm ơn chân thành đến Thầy PGS.TS. Thoại Nam trong suốt thời gian qua đã hướng dẫn và giúp đỡ tận tình trong quá trình thực hiện luận văn tốt nghiệp. Với những lời nhận xét hướng dẫn, và định hướng chuyên nghiệp của Thầy đã giúp tôi có được hướng tiếp cận đúng để thực hiện đề tài, giúp chúng tôi thấy được những thuận lợi và hạn chế của các phương pháp khác nhau và từng bước khắc phục để ngày một hoàn thiện hơn. Bên cạnh đó là lời cảm ơn sâu sắc đến gia đình và bạn bè đã động viên, cổ vũ tinh thần và góp ý trong suốt quá trình học tập và thực hiện đề tài, đặc biệt là gia đình đã chăm lo và hy sinh rất nhiều để tôi có thể chuyên tâm học tập. Và sau cùng, tôi kính chúc quý Thầy Cô trong khoa Khoa Học và Kĩ Thuật Máy Tính nhiều sức khỏe, niềm tin để tiếp tục thực hiện sứ mệnh cao đẹp của mình là truyền nhiệt huyết và kiến thức cho thế hệ mai sau. TP.Hồ Chí Minh, Tháng 08 Năm 2021 Nguyễn Lê Ngọc Dương i Tóm tắt Trong bối cảnh số hoá toàn cầu hiện nay trong nhiều lĩnh vực khác nhau, đặc biệt trong lĩnh vực y tế thì việc theo dõi và quản lý về nhu cầu sức khoẻ từ xa theo thời gian thực để có thể dự đoán trước bệnh tật giúp giảm chi phí nhập viện là ưu tiên hàng đầu cho quốc gia và toàn thế giới. Vì vậy, các thiết bị y tế có khả năng kết nối internet và các ứng dụng di động, v.v. liên tục được phát triển. Tuy nhiên các thiết bị này liên tục sinh ra một lượng dữ liệu khổng lồ, được gọi là dữ liệu lớn. Với tốc độ tạo dữ liệu ngày càng nhanh, nên việc thu thập, xử lý và phân tích dữ liệu để có thể thực hiện các dự đoán trong trường hợp khẩn cấp hoặc trích xuất thông tin theo thời gian thực là một thách thức rất lớn đối với các kiến trúc và phương pháp xử lý truyền thống. Do đó, cần phải có giải pháp về kiến trúc và phương pháp xử lý luồng dữ liệu theo thời gian thực một cách hiệu quả và có khả năng mở rộng cao. Để khắc phục vấn đề này, luận văn đề xuất khung phần mềm hỗ trợ phân tích và dự đoán trước bệnh theo thời gian thực, giúp theo dõi bệnh nhân từ xa, giúp làm giảm nhiều chi phí. Khung phần mềm được xây dựng dựa trên kiến trúc được đề mới xuất gần đây được gọi là điện toán biên/sương mù (Edge/Fog Computing), nó đem lại khả năng xử lý và phản hồi nhanh do các máy xử lý đặt ở vị trí gần các nguồn sinh dữ liệu, ngoài ra còn có khả năng lưu trữ tại nút biên/sương mù (Edge/Fog Node). Khung phần mềm tập trung vào việc thu thập dữ liệu từ các thiết bị hoặc ứng dụng di động thông qua Apache Kafka, mỗi loại bệnh sẽ được quản lý bởi một hoặc nhiều Kafka Topics, ứng dụng giúp xử lý dữ liệu và áp dụng mô hình học máy dự đoán được xây dựng dựa trên Kafka Streams. Để kiểm chứng cho tính khả thi của khung phần mềm, luận văn xây dựng khung phần mềm giúp thu thập dữ liệu và dự doán bệnh tim mạch (Heart Disease) với mô hình học sâu (Deeplearning) được huấn luyện từ tập dữ liệu có sẵn. ii Abstract In our current age of global digitization across different fields, medical in particular, real-time remote health monitoring and managing helps predict diseases in advance and reduce hospitalization costs. As a result, such practice has become a top priority for many countries around the world. Therefore, Internetcapable medical devices, wearables, mobile applications, etc. are continuously developed. However, these devices ceaselessly generate huge amounts of data, formally known as Big Data. With the speed of data generation getting increasingly faster, it is a challenge for traditional processing architectures and methods to collect, process, and analyze this data in order to make emergency predictions or extract real-time information. Thus, there exists an urgent need for an efficient and scalable real-time data stream processing architecture and method. To solve this problem, this thesis proposes a software framework that supports real-time analysis and prediction of diseases so as to help monitor patients remotely and reduce costs. The software framework is based on a recently proposed architecture called Edge/Fog Computing, which provides fast processing and responses thanks to the processing machines being placed near the data generation sources and the storage capability at Edge/Fog Nodes. Moreover, the software framework is focused on collecting data from mobile devices and applications via Apache Kafka - each disease will be managed by one or more Kafka Topics, while Kafka Streams is used to build applications that preprocess data and apply predictive machine learning models. To substantiate the viability of the software framework, this thesis builds a software framework to help monitor and predict cardiovascular disease through a Deep Learning model trained from the available data sets with the aim of detecting disease risks as early as possible. iii Lời cam đoan Tôi là Nguyễn Lê Ngọc Dương học viên cao học khoa Khoa Học và Kĩ Thuật Máy Tính, Đại học Bách Khoa TP. HCM, MSHV 1970212. Tôi xin cam đoan rằng luận văn thạc sĩ "Nghiên cứu và phát triển giải pháp xử lý dữ liệu dòng tại nút biên trong lĩnh vực y tế" là kết quả tìm hiểu, nghiên cứu độc lập của chính bản thân. Tôi xin cam đoan: 1. Luận văn được thực hiện cho mục đích tìm hiểu và nghiên cứu ở bậc cao học. 2. Các công trình, bài báo tham khảo để xây dựng nên luận văn này đều được trích dẫn, tham khảo. Tất cả các tài liệu được trích dẫn và có tính kế thừa từ các tạp chí và các công trình nghiên cứu đã được công bố. 3. Những công cụ, phần mềm cho quá trình thực hiện luận văn đều là phần mềm mã nguồn mở. 4. Hình ảnh và số liệu được trích dẫn nguồn tham khảo rõ ràng. 5. Kết quả nghiên cứu được trình bày trung thực dựa trên số liệu thực tế khi chạy chương trình. TP.Hồ Chí Minh, Ngày ..... Tháng ..... Năm ..... iv Mục lục 1 Giới thiệu đề tài 1 1.1 Tổng quan đề tài . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Mục tiêu, đối tượng nghiên cứu và phạm vi của đề tài . . . . . . . 4 1.2.1 Mục tiêu và đối tượng nghiên cứu . . . . . . . . . . . . . . 4 1.2.2 Phạm vi của đề tài . . . . . . . . . . . . . . . . . . . . . . . 5 1.2.3 Cấu trúc luận văn . . . . . . . . . . . . . . . . . . . . . . . . 5 2 Những nghiên cứu liên quan và bài toán cần giải quyết 6 2.1 Những nghiên cứu liên quan . . . . . . . . . . . . . . . . . . . . . . 6 2.2 Bài toán cần giải quyết . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.3 Công cụ giải bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.1 Công cụ xử lý dữ liệu dòng (Stream Processing Engines) . 10 2.3.2 Apache Kafka . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3.3 Kafka Streams . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3 Khung phần mềm thu thập và phân tích dữ liệu trong y tế 18 3.1 Kiến trúc tổng quan . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.2 Kiến trúc khung phần mềm thu thập và phân tích dữ liệu . . . . . 20 3.3 Thu thập dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.4 Ứng dụng xử lý dữ liệu luồng . . . . . . . . . . . . . . . . . . . . . 22 4 Giải thuật xử lý dữ liệu tại nút biên 24 4.1 Bệnh tim mạch (Heart Disease) . . . . . . . . . . . . . . . . . . . . 24 4.2 Phương pháp theo dõi bệnh tim từ xa . . . . . . . . . . . . . . . . 26 4.3 Xây dựng mô hình học máy . . . . . . . . . . . . . . . . . . . . . . 30 v MỤC LỤC 4.4 4.3.1 Trực quan hoá tập dữ liệu . . . . . . . . . . . . . . . . . . . 30 4.3.2 Huấn luyện mô hình . . . . . . . . . . . . . . . . . . . . . . 32 Công cụ tích hợp mô hình vào ứng dụng xử lý luồng . . . . . . . . 34 5 Đánh giá khung phần mềm 5.1 5.2 36 Mô hình học máy dự đoán bệnh tim mạch . . . . . . . . . . . . . . 36 5.1.1 Phương pháp đánh giá mô hình dự đoán . . . . . . . . . . 36 5.1.2 Độ chính xác của mô hình dự đoán bệnh tim theo dõi từ xa 37 Khung phần mềm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.2.1 Phương pháp đánh giá khung phần mềm . . . . . . . . . . 40 5.2.2 Đánh giá hiệu năng khung phần mềm . . . . . . . . . . . . 41 6 Kết luận 45 6.1 Kết quả đạt được . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 6.2 Khó khăn và hạn chế . . . . . . . . . . . . . . . . . . . . . . . . . . 46 6.3 Định hướng tương lai . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Tài liệu tham khảo 48 A Bảng đối chiếu thuật ngữ Anh - Việt A1 B Thiết lập cho thử nghiệm B2 B.1 Thiết lập Kafka Broker . . . . . . . . . . . . . . . . . . . . . . . . . B2 B.2 Thiết lập mô phỏng dữ liệu . . . . . . . . . . . . . . . . . . . . . . B3 B.3 Thiết lập Kafka Streaming Application . . . . . . . . . . . . . . . . B3 vi Danh sách hình vẽ 1.1 Tổng quan mô hình điện toán biên/sương mù [1] . . . . . . . . . . 1.2 Tổng quan mô hình điện toán biên/sương mù ứng dụng trong lĩnh vực y tế [2] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 3 4 Các tính năng của công cụ xử lý luồng hiện có và message broker [3] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Mô hình Publish/Subscribe [4] . . . . . . . . . . . . . . . . . . . . . 11 2.3 Một hệ sinh thái sử dụng Apache Kafka [3] . . . . . . . . . . . . . 13 2.4 Luồng dữ liệu và Kafka [3] . . . . . . . . . . . . . . . . . . . . . . . 13 2.5 Đồ thị cấu trúc liên kết các bộ xử lý luồng trong Kafka Streams [5] 16 3.1 Kiến trúc tổng quan khung phần mềm . . . . . . . . . . . . . . . . 19 3.2 Thành phần và chức năng của từng thành phần trong khung phần mềm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.3 Đồ thị cấu trúc liên kết xử lý và dự đoán bệnh tim . . . . . . . . . 22 4.1 Điện tâm đồ (ECG) . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.2 Độ dốc của nhịp tim . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.3 Thống kê số lượng nhãn của tập dữ liệu . . . . . . . . . . . . . . . 30 4.4 Tần suất bệnh tim mạch theo độ tuổi . . . . . . . . . . . . . . . . 31 4.5 Tần suất bệnh tim mạch theo các cơn đau ngực . . . . . . . . . . . 31 4.6 Mối tương quan giữa các thuộc tính . . . . . . . . . . . . . . . . . 32 4.7 K-Fold Cross Validation . . . . . . . . . . . . . . . . . . . . . . . . 33 4.8 Cấu trúc mô hình dự đoán bệnh tim . . . . . . . . . . . . . . . . . 33 4.9 Thông số mô hình dự đoán bênh tim mạch . . . . . . . . . . . . . 34 vii Danh sách bảng 4.1 Các thuộc tính của bệnh tim mạch . . . . . . . . . . . . . . . . . . 27 5.1 Confusion Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.2 Confusion Matrix cho mô hình 1 . . . . . . . . . . . . . . . . . . . 37 5.3 Confusion Matrix cho mô hình 2 . . . . . . . . . . . . . . . . . . . 38 5.4 Confusion Matrix cho mô hình 3 . . . . . . . . . . . . . . . . . . . 38 5.5 Confusion Matrix cho mô hình 4 . . . . . . . . . . . . . . . . . . . 39 5.6 Confusion Matrix cho mô hình 5 . . . . . . . . . . . . . . . . . . . 39 5.7 Cấu hình máy dùng cho thí nghiệm . . . . . . . . . . . . . . . . . . 41 5.8 Kết quả thông lượng tham khảo [4] . . . . . . . . . . . . . . . . . . 42 5.9 Kết quả thông lượng tham khảo với sự ảnh hưởng từ băng thông mạng [6] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 5.10 Kết quả thông lượng của khung phần mềm được hiện thực với Kafka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.11 Kết quả thời gian xử lý tham khảo. . . . . . . . . . . . . . . . . . . 44 5.12 Kết quả thời gian xử lý của khung phần mềm được hiện thực với Kafka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 viii Chương 1 Giới thiệu đề tài 1.1 Tổng quan đề tài Ngày nay, thời đại được mô tả là thời đại của dữ liệu, nơi tất cả dữ liệu đều được số hóa và trở nên có ý nghĩa trong mọi lĩnh vực. Nên nhu cầu theo dõi về mọi mặt là cần thiết. Do đó, thị trường IoT toàn cầu dự kiến sẽ đạt hơn 10 nghìn tỷ đô la vào năm 2025 [7]. Đặc biệt trong nền công nghiệp y tế chăm sóc sức khoẻ (Healthcare Industry), một lượng lớn dữ liệu được sinh ra từ các thiết bị theo dõi như MioT, Wearable Medical Devices, và một số công cụ thu thập dữ liệu khác. Gartner đã ước tính tổng số thiết bị IoT là 8,4 tỷ vào năm 2017 và tăng 31% so với năm 2016. Intel ước tính 200 tỷ vào năm 2020, tương đương với 26 thiết bị thông minh cho mỗi con người trên Trái đất. Về con số chi phí, tổng số tiền chi cho các thiết bị và dịch vụ IoT là 2 nghìn tỷ đô la vào năm 2017, các dự báo khác bao gồm 772,5 tỷ đô la vào năm 2018, tăng 14,6% so với ước tính. Nó có thể đạt 1 nghìn tỷ đô la vào năm 2020 và 1,1 nghìn tỷ đô la vào năm 2021. Các giải pháp IoT chăm sóc sức khỏe vào năm 2025 có thể đạt khoảng 1 nghìn tỷ đô la vào năm 2025. Các số liệu thống kê sau đây cho thấy độ ảnh hưởng của việc ứng dụng công nghệ trong nển công nghiệp chăm sóc sức khỏe [8]: 1. Các thiết bị IoT ở các tổ chức chăm sóc sức khỏe chiếm 60%. 2. Bảo trì và giám sát IoT đang diễn ra trên 73% các tổ chức. 3. Đến năm 2019, các công cụ và công nghệ IoT có khả năng được triển khai 1 CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI tại 87% các tổ chức chăm sóc sức khỏe. 64% bệnh nhân trong ngành chăm sóc sức khỏe bắt đầu sử dụng các công cụ IoT. 4. Tuy nhiên, có 89% vi phạm bảo mật IoT xảy ra trong các tổ chức chăm sóc sức khỏe. Từ những con số từ thống kê có thể thấy, nền công nghiệp chăm sóc sức khỏe đang phát triển rất nhanh và phải đối mặt với nhiều thách thức được mô tả như 5 đặc tính trong dữ liệu lớn: Volume, Variety, Velocity, Veracity và Value (5V) [9]. Từ nhiều khảo sát có thể thấy trong nền công nghiệp chăm sóc sức khỏe thông mình phải đối mặt mới 3 thách thức chính: • Thứ nhất, dữ liệu chăm sóc sức khỏe đến từ nhiều nguồn phân tán, chẳn hạn như hồ sơ y tế điện tử, hình ảnh lâm sàng, dữ liệu chẩn đoán và dữ liệu yêu cầu về sức khỏe, hệ thống phát trực tuyến, cảm biến gắn vào giường bệnh để liên tục theo dõi thông tin bệnh nhân, v..v, thu thập dữ liệu từ các hệ thống phân tán là một quá trình phức tạp do lượng dữ liệu khổng lồ. • Thứ hai, lưu trữ dữ liệu lớn và không đồng nhất đó là một vấn đề lớn; do đó, nhu cầu về một hệ thống lưu trữ dữ liệu lớn với hiệu suất hoạt động hiệu quả là rất cần thiết. • Thứ ba, thách thức này liên quan đến phân tích dữ liệu, đặc biệt là xử lý dữ liệu lớn trong thời gian thực, bao gồm mô hình hóa, trực quan hóa, dự đoán và tối ưu hóa. Với những thách thức này đòi hỏi các hệ thống xử lý mới phải đối phó với dữ liệu không đồng nhất hoặc xử lý dữ liệu lớn trong thời gian thực. Điều này cho thấy hệ thống tập trung điện toán đám mây (Cloud Computing) thuần túy sẽ không giúp giải quyết được những thách thức vì cần phải xử lý tập trung theo gói (Batch Processing), và tốn nhiều thời gian để xử lý. Do đó, cần phải có một mô hình thu thập và xử lý theo thời gian thực (Real-time Processing) hoặc cận thời gian thực (Near Real-time Processing). Gần đây một kiến trúc hệ thống mới được đề xuất đó là mô hình phân tích dữ liệu theo thời gian thực điện toán biên/sương mù Hình 1.1, với mục đích giảm tải cho điện toán đám mây và mang 2 CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI các nút có khả năng tính toán, dự đoán và lưu trữ gần với nguồn sinh dữ liệu từ các ICU, bệnh viện, phòng khám, v.v. Mô hình mang lại khả năng tiền xử lý dữ liệu, trích xuất những thông tin có ý nghĩa trước khi được thu thập tập trung về máy chủ trung tâm. Ngoài ra, với thiết kế đặt gần các nguồn sinh dữ liệu (người dùng, thiết bị, . . . ) về vị trí địa lý nên khả năng phản hồi nhanh, độ trễ thấp, rất phù hợp cho việc theo dõi các thông số cần tính chất thời gian thực. Dựa trên mô hình điện toán biên/sương mù, luận văn xây dựng khung phần mềm tập trung vào giải quyết việc thu thập và tiền xử lý dữ liệu theo thời gian thực hoặc cận thời gian thực trong lĩnh vực y tế Hình 1.2. Hình 1.1: Tổng quan mô hình điện toán biên/sương mù [1] 3 CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI Hình 1.2: Tổng quan mô hình điện toán biên/sương mù ứng dụng trong lĩnh vực y tế [2] 1.2 Mục tiêu, đối tượng nghiên cứu và phạm vi của đề tài 1.2.1 Mục tiêu và đối tượng nghiên cứu Luận văn đề ra 2 mục tiêu cụ thể như sau: • Dựa trên mô hình điện toán biên/sương mù xây dựng khung phần mềm để thu thập và theo dõi dữ liệu trong lĩnh vực y tế. Khung phần mềm đem lại khả năng mở rộng và chịu tải cao với một lượng lớn dữ liệu được xử lý tại nút biên trước khi dữ liệu về nút xử lý trung tâm; • Ứng dụng giải thuật giúp khung phần mềm có khả năng tiền xử lý và dự đoán tại nút biên. Khả năng xử lý trong khoảng thời gian cho phép giúp khung phần mềm có thể đem lại độ trễ thấp nhất có thể. Đối tượng nghiên cứu của luận văn là các loại bệnh cần theo dõi và phát hiện sớm các bất thường để đội ngũ y bác sĩ có thể dễ dàng theo dõi và can thiệp điều trị kịp thời như bệnh tim mạch, bệnh tiểu đường, bệnh tiểu đường thời kỳ thai sản, v.v. Cụ thể đối tượng nghiên cứu chính trong luận văn là bệnh tim mạch. 4 CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI 1.2.2 Phạm vi của đề tài Luận văn sẽ không tập trung vào việc định nghĩa các dữ liệu được sinh ra như thế nào và dữ liệu sau khi đã xử lý qua khung phần mềm được ứng dụng như thế nào. Tất cả dữ liệu về các thông số theo dõi bệnh tim sẽ được mô phỏng, ngoại trừ tập dữ liệu dùng để huấn luyện mô hình dự đoán bệnh tim từ Kaggle [10]. Luận văn sẽ tập trung vào xây dựng khung phần mềm dựa trên nền điện toán biên/sương mù và ứng dụng giải thuật máy học vào dự đoán bệnh tim mạch. Hiện thực và đánh giá khung phần mềm về khả năng chịu tải và khả năng xử lý đưa ra dự đoán thông qua mô hình máy học. 1.2.3 Cấu trúc luận văn Chương 1. Tổng quan về nội dung, mục tiêu và phạm vi nghiên cứu. Chương 2. Những nghiên cứu liên quan và bài toán cần giải quyết. Chương 3. Khung phần mềm thu thập và phân tích dữ liệu. Chương 4. Giải thuật xử lý tại nút biên. Chương 5. Đánh giá khung phần mềm. Chương 6. Kết luận. 5 Chương 2 Những nghiên cứu liên quan và bài toán cần giải quyết 2.1 Những nghiên cứu liên quan Ngày nay, phân tích dữ liệu lớn, đặc biệt là phân tích chăm sóc sức khỏe đã trở thành một vấn đề quan trọng đối với một số lượng lớn các nghiên cứu. Gần đây, nhiều bài nghiên cứu đang sử dụng máy học kết hợp với xử lý luồng trong hệ thống chăm sóc sức khoẻ thông minh. Trong [11] tác giả đã đưa ra những thách thức phải đối mặt trong việc xử lý một lượng lớn dữ liệu về y tế. Họ đã đưa ra những thách thức như sau. Thứ nhất, việc thu thập và nhập dữ liệu là cần thiết cho thiết lập chăm sóc sức khỏe lâm sàng, và nó là dữ liệu dạng luồng nên những thách thức chính trong khi xử lý việc thu thập dữ liệu là băng thông mạng, khả năng mở rộng và các vấn đề chi phí. Thứ 2, sau khi thu thập thì việc quản lý và lưu trữ rất khó khắn và cần chi phí rất lớn. Thứ 3, để cải thiện kết quả của bệnh nhân và phát hiện các dấu hiệu cảnh báo của các biến chứng, cần có khung phần mềm xử lý dòng theo thời gian thực. Ví dụ trong các dịch vụ chăm sóc sức khỏe hiện đại, bệnh nhân thường được kết nối với thiết bị y tế liên tục theo dõi huyết áp và nhịp 6 CHƯƠNG 2. NHỮNG NGHIÊN CỨU LIÊN QUAN VÀ BÀI TOÁN CẦN GIẢI QUYẾT tim. Và để giải quyết các vấn đề, họ đã đề xuất mô hình kết hợp Apache Kafka và Apache Spark Streaming. Kafka hoạt động rất tốt trong việc vận chuyển dữ liệu giữa các hệ thống khác nhau, nhưng lại không có công cụ phân tích và xử lý, nên Spark Streaming được áp dụng vào để thực hiện việc phân tích. Nhóm tác giải ở [12] [13] cũng với ý tưởng kết hợp Apache Kafka và Apache Spark xây dựng hệ thống xử lý luồng cho việc thu thập thông tin, phân tích dự đoán bệnh tim mạch với mô hình máy học Decision Tree. Họ sử dụng bộ dữ liệu tim mạch Cleveland để huấn luyện mô hình. Cả hai đều thu thập dữ liệu và quản lý bệnh nhân thông qua mạng xã hội Twitter, sử dụng Twitter Streaming API để tạo các luồng dữ liệu.[12] thu thập dữ liệu và phân tích thông qua Spark Streaming, [13] kết hợp thêm Kafka để thu thập dữ liệu và Spark Streaming với mô hình học máy để phân tích và dự đoán. Bài báo [14] dựa trên các ý tưởng về xây dựng hệ thống phân tích luồng và áp dụng mô hình máy học. Điểm đặc biệt trong [14] là nó vừa thu thập dữ liệu và vừa huấn luyện mô hình (online traning). Kiến trúc mô hình như sau, trong giai đoạn đầu, dữ liệu được thu thập từ các nguồn dữ liệu khác nhau; Kafka Producer liên tục tạo ra luồng dữ liệu và truyền về Kafka Broker thông qua các chủ đề khác nhau, tên các chủ đề liên quan đến các bệnh khác nhau. Thứ hai, Spark Streaming nhận luồng dữ liệu y tế với các thuộc tính liên quan đến từng bệnh và sau đó áp dụng mô hình máy học để dự đoán tình trạng sức khỏe. Thứ ba, Online Predict nhận các gói dữ liệu đầu vào và chịu trách nhiệm phân tích và cập nhật mô hình theo dữ liệu mới đến. Ở giai đoạn cuối cùng, kết quả dự đoán đến các nơi lưu dữ liệu, trong đó đầu ra cũng sẽ gửi lại một lần nữa đến Kafka để được sử dụng bởi các ứng dụng khác như dịch vụ web, hệ thống báo động, bảng điều khiển, ứng dụng di động và mạng xã hội bệnh viện. Nhóm tác giả ở bài báo [15] xây dựng mô hình HealthFog, kết hợp mô hình deep learning ở điện toán biên để theo dõi, phân tích và dự đoán bệnh tim mạch theo thời gian thực. Tác giả đưa ra thách thức với mô hình điện toán đám mây hiện tại không thể đáp ứng hết khi cần phân tích dự đoán theo thời gian thực với số lượng các thiết bị có thể tạo ra dữ liệu quá lớn. Nên với mô hình HealthFog tác giả xây dựng kết hợp điện toán biên và điện toán đám mấy để giải quyết bài toán trên. Sử dụng ứng dụng di động để thu thập dữ liệu của bệnh nhân, và các dữ liệu sẽ được gửi về nút biên có tên là FogBus. Tận dụng lợi thế của 7 CHƯƠNG 2. NHỮNG NGHIÊN CỨU LIÊN QUAN VÀ BÀI TOÁN CẦN GIẢI QUYẾT điện toán biên được thế kế nằm gần các nguồn sinh dữ liệu nên việc nhận phân tích và dự đoán với mô hình máy học đem lại phản hồi nhanh. Các dữ liệu được phân tích ở FogBus sẽ được gửi về điện toán đám mây để có thể sử dụng lại. Với ý tưởng điện toán biên, [16] tác giả sử dụng một cụm máy Raspberry Pi 3 để chạy ứng dụng xử lý luồng tại nút biên. Trong bài báo này, điện toán biên được sử dụng để theo dõi, thu thập dữ liệu từ các thiết bị IoT trên xe đang di chuyển liên tục. Mô hình kết hợp MQTT và Apache Flink để phân tích và xử lý. Kết quả đem lại mô hình có thể theo dõi được 245369 xe đang di chuyển tại Italy, với 0.8 dữ liệu được sinh ra trong mỗi giây. Quá trình xử lý mất 10s để có thể gửi về đám mây. Một khung phần mềm thu thập, chuẩn hoá các loại dữ liệu không đồng nhất, và kết hợp mô hình dự đoán tính toán nhỏ được đề xuất trong [3], bài báo tận dụng sức mạnh của Kafka Streams xây dựng mô hình dự đoán hạn hán. Dựa vào dữ liệu từ các trạm thu thập dữ liệu môi trường, và điểm đặc biệt các dữ liệu của các trạm lại có định dạng khác nhau, tác giả kết hợp Kafka Streaming xây dựng công cự xử lý luồng để định dạng lại dữ liệu theo mong muốn và cho đi qua mô hình dữ đoán hạn hán. Trong bài báo, tác giả sử dụng Confluent Platform [17] một công cụ được xây dựng dựa trên Apache Kafka hỗ trợ nhiều tính năng mới để hiện thực nên mô hình đề xuất. Mô hình điện toán biên ngày càng được ứng dụng nhiều trong IoT, tại phòng thí nghiệm ở các trường đại học cũng đã đem vào giảng dạy và thực hành. Bài báo [18] xây dựng mô hình điện toán biên cho phòng thí nghiệm, tận dụng Kafka để thu thập dữ liệu thông qua Kafka Connect để có thể hỗ trợ nhiều giao thức trong IoT như MQTT, COAP, HTTP, v.v. 2.2 Bài toán cần giải quyết Các công trình nghiên cứu đi trước đã đưa ra những thách thức liên quan về việc thu thập dữ liệu y tế, và từ các dữ liệu đó phân tích, trích xuất những thông tin cần thiết để đưa ra dự đoán nhanh nhất có thể và sau đó là lưu trữ dữ liệu. Với các khó khăn từ các công trình nghiên cứu đi trước, luận văn hình thành bài toán như sau. Với nhu cầu mức sống ngày càng cao của con người và việc 8 CHƯƠNG 2. NHỮNG NGHIÊN CỨU LIÊN QUAN VÀ BÀI TOÁN CẦN GIẢI QUYẾT ngày càng phát triển của khoa học kỹ thuật, thì việc ứng dụng khoa học kỹ thuật vào lĩnh vực y tế như các công trình nghiên cứu trên là rất cần thiết. Các phòng khám, các bệnh viện, hoặc các trung tâm chăm sóc đặc biệt, v.v rất cần theo dõi những thông số cần thiết liên quan đến bệnh của bệnh nhân một các chặt chẽ. Cụ thể trong phạm vi của luận văn, đối tượng bệnh cần theo dõi là bệnh tim, một căn bệnh có nguy cơ gây tử vong cao nên việc theo dõi liên tục và đưa ra dự đoán sớm những dấu hiệu là rất cần thiết. Giả sử một trường hợp cụ thể, các bệnh nhân sau khi điều trị bệnh tim tại các cơ sở chữa trị được xuất viện và cần theo dõi với tần suất theo yêu cầu của y bác sĩ. Với cách truyền thống không có sự can thiệp của khoa học kỹ thuật, các bệnh nhân chỉ có thể được theo dõi mỗi lần tái khám định kỳ, trong quá trình giữa hai lần tái khám, đội ngũ y bác sĩ không thể theo dõi và phát hiện bất thường ngay lập tức và can thiệp điều trị. Khi áp dụng sự theo dõi từ công nghệ, bệnh nhân có thể được theo dõi từ xa và đều đặn, các thông số sẽ được theo dõi và phát hiện bất thường ngay lập tức, giúp y bác sĩ có thể can thiệp kịp thời. Với bài toán đã đề ra, khung phần mềm cần xây dựng cần phải giải quyết được các vấn đề được trình bày sau: 1. Cách thu thập và quản lý dữ liệu đầu và từ các bệnh khác nhau, với nhiều định dạng khác nhau; 2. Giải thuật xử lý dữ liệu và đưa ra dự đoán bất thường một cách nhanh chóng; 3. Có khả năng mở rộng và đáp ứng khi lượng dữ liệu ngày càng nhiều theo thời gian. Một số công trình nghiên cứu đi trước đã đưa ra cách theo dõi và dự đoán phát hiện sớm bệnh tim mạch, các tác giả đã kết hợp mô hình máy học Decision Tree và cả mô hình học sâu để đưa ra dự đoán trong mô hình theo dõi bệnh của họ, hệ thống của họ hướng tới hệ thống xử lý tập trung ứng dụng các công nghệ xử lý dữ liệu lớn như Apache Spark chạy trên cụm máy chủ. Và cũng có công trình nghiên cứ tập trung vào điện toán biên để xây dựng mô hình theo dõi bệnh tim. Nhóm tác giả ở công trình [15] [16] đã cho thấy được sức mạnh của điện toán biên/sương mù trong việc giải bài toán tiền xử lý dữ liệu. 9
- Xem thêm -

Tài liệu liên quan