Các số liệu ban đầu:• Tập dữ liệu X quang lồng ngực: NIH Chest X-ray.• Các mơ hình phân loại: ResNet-50, VGG19, DenseNet-121, EfficientNet-B0.• Phương pháp đánh giá mơ hình: AUC-ROC, Gra
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHĨA LUẬN TỐT NGHIỆP NGÀNH KỸ THUẬT Y SINH THIẾT KẾ ỨNG DỤNG CHẨN ĐỐN HÌNH ẢNH X QUANG PHỔI SỬ DỤNG DEEP LEARNING GVHD: TS NGUYỄN MẠNH HÙNG SVTH : HOÀNG ĐÌNH THỨC LÊ THỊ ANH THƯ SKL011404 Tp Hồ Chí Minh,tháng 7/2023 BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN - ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP Y SINH ———————————– ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT Y SINH ĐỀ TÀI: THIẾT KẾ ỨNG DỤNG CHẨN ĐOÁN HÌNH ẢNH X QUANG PHỔI SỬ DỤNG DEEP LEARNING GVHD: TS Nguyễn Mạnh Hùng SVTH1: Hồng Đình Thức MSSV1: 19129003 SVTH2: Lê Thị Anh Thư MSSV2: 19129053 TP Hồ Chí Minh - 07/2023 TRƯỜNG ĐH SPKT TP HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc —————————————– Tp HCM, ngày 02 tháng 07 năm 2023 NHIỆM VỤ KHÓA LUẬN TỐT NGHIỆP Họ tên sinh viên 1: Hồng Đình Thức MSSV: 19129003 Họ tên sinh viên 2: Lê Thị Anh Thư MSSV: 19129053 Chuyên ngành: Kỹ thuật Y Sinh Mã ngành: 7520212D Hệ đào tạo: Đại học quy Mã hệ: Khóa: 2019 Lớp: 191290 I TÊN ĐỀ TÀI: THIẾT KẾ ỨNG DỤNG CHẨN ĐỐN HÌNH ẢNH X QUANG PHỔI SỬ DỤNG DEEP LEARNING II NHIỆM VỤ: Các số liệu ban đầu: • Tập liệu X quang lồng ngực: NIH Chest X-ray • Các mơ hình phân loại: ResNet-50, VGG19, DenseNet-121, EfficientNet-B0 • Phương pháp đánh giá mơ hình: AUC-ROC, Grad-CAM • Ngơn ngữ lập trình sử dụng: Python, Javascript, HTML, CSS • Các framework thư viện sử dụng: Pytorch, Flask, Waitress, ReactJS, Express JS • Cơ sở liệu: MongoDB, sử dụng dịch vụ MongoDB Atlas để quản lý • Cộng cụ đóng gói triển khai ứng dụng web: Docker Nội dung thực hiện: • Tìm hiểu xử lý tập liệu NIH Chest X-ray • Thí nghiệm huấn luyện với mơ hình phân loại tập liệu xử lý • Đánh giá kết thí nghiệm việc huấn luyện mơ hình • Xây dựng API đưa dự đốn từ mơ hình huấn luyện • Xây dựng Backend cho ứng dụng • Xây dựng Frontend cho ứng dụng • Kiểm thử, đánh giá tồn hệ thống tiến hành tinh chỉnh • Thiết lập ứng dụng chế độ sản phẩm • Đóng gói, triển khai ứng dụng với Docker • Viết báo cáo • Bảo vệ luận văn III NGÀY GIAO NHIỆM VỤ: 20/02/2023 IV NGÀY HOÀN THÀNH: 19/06/2023 V HỌ VÀ TÊN NGƯỜI HƯỚNG DẪN: TS NGUYỄN MẠNH HÙNG CÁN BỘ HƯỚNG DẪN BM ĐIỆN TỬ CÔNG NGHIỆP - Y SINH TRƯỜNG ĐH SPKT TP HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc —————————————– Tp HCM, ngày 02 tháng 07 năm 2023 LỊCH TRÌNH THỰC HIỆN KHĨA LUẬN TỐT NGHIỆP Họ tên sinh viên 1: Hồng Đình Thức Lớp: 191290A MSSV: 19129003 Họ tên sinh viên 2: Lê Thị Anh Thư Lớp: 191290A MSSV: 19129053 Tên đề tài: Thiết kế ứng dụng chẩn đốn hình ảnh X quang phổi sử dụng Deep Learning Tuần/Ngày Nội dung Tuần Gặp GVHD, chọn đề tài viết đề (20/02 - 27/02) cương cho đề tài Thiết kế tổng quan hệ thống, xác Tuần định thành phần cần (28/02 - 06/03) cách thành phần tương tác với Tuần (07/03 - 13/03) Tìm hiểu lựa chọn liệu để huấn luyện mơ hình Tuần Tìm hiểu lựa chọn phương pháp (14/03 - 20/03) để huấn luyện, đánh giá mô hình pre-trained model sử dụng Tuần Tiến hành thí nghiệm huấn (21/03 - 27/03) luyện mơ hình dựa phương pháp pre-trained model lựa chọn Tuần Hồn thành thí nghiệm huấn (28/03 - 03/04) luyện mơ hình đánh giá mơ hình Xác nhận GVHD Tìm hiểu cách xây dựng ứng dụng Tuần Web, cách thức triển khai mô hình (04/04 - 10/04) huấn luyện thơng qua API, tìm hiểu đóng gói triển khai ứng dụng web Docker Tuần (11/04 - 17/04) Xây dựng API đưa dự đốn từ mơ hình huấn luyện Tuần Xây dựng Backend ứng dụng (18/04 - 24/04) Kết hợp Backend với API dự đoán tiến hành kiểm thử, tinh chỉnh Tuần 10 (25/04 - 01/05) Xây dựng giao diện người dùng (Frontend) Tuần 11 Xây dựng chức tương ứng (09/05 - 15/05) giao diện liên kết với Backend Tuần 12 (16/05 - 22/05) Hoàn thiện ứng dụng web chạy thử nghiệm toàn hệ thống Tuần 13 Thiết lập ứng dụng chế độ sản (23/05 - 29/05) phẩm, đóng gói triển khai ứng dụng với Docker Tuần 14 Viết báo cáo (30/05 - 05/06) Tuần 15 (06/06 - 12/06) Tuần 16 (13/06 - 19/06) Chỉnh sửa, hoàn thiện báo cáo làm slide thuyết trình Báo cáo trước GVHD nộp báo cáo DATN GV HƯỚNG DẪN (Ký ghi rõ họ tên) LỜI CAM ĐOAN Chúng xác nhận tất thông tin, liệu tài liệu tham khảo sử dụng đề tài ghi nhận trích dẫn cách Mọi nguồn tài liệu ngồi, bao gồm cơng trình xuất bản, báo nghiên cứu tài nguyên trực tuyến, ghi rõ phần tài liệu tham khảo báo cáo dự án Trong suốt q trình thực đề tài, nhóm tn thủ nguyên tắc tiêu chuẩn đạo đức Nhóm tôn trọng quyền riêng tư bảo mật liệu liên quan đến bệnh nhân thông tin nhạy cảm sử dụng dự án này, đảm bảo tất liệu ẩn danh xử lý cách an tồn Nhóm nhận thức dự án không thay cho việc chẩn đoán y tế chuyên nghiệp Ứng dụng thiết kế nhằm hỗ trợ người dùng việc hiểu phân tích hình ảnh X quang phổi cách cung cấp thơng tin bất thường có hình ảnh để tiến hành kiểm tra thêm Quyết định chẩn đoán điều trị cuối nên bác sĩ chun gia y tế có trình độ định Sinh viên thực đề tài Hồng Đình Thức - Lê Thị Anh Thư LỜI CẢM ƠN Trong suốt q trình thực đề tài, nhóm nhận nhiều giúp đỡ từ quý thầy cô, bạn bè đặc biệt hỗ trợ từ TS Nguyễn Mạnh Hùng Nhóm muốn bày tỏ lịng biết ơn đến TS Nguyễn Mạnh Hùng tận tình hướng dẫn nhóm suốt q trình thực đề tài Sự đóng góp, đề xuất hỗ trợ quý báu thầy góp phần lớn vào thành cơng hồn thiện đề tài Nhóm xin bày tỏ lòng biết ơn đến Trường Đại học Sư Phạm Kỹ Thuật TP Hồ Chí Minh, khoa Điện - điện tử, môn Điện tử công nghiệp - Y sinh tạo hội cho nhóm thực hồn thành đồ án tốt nghiệp Nhóm muốn bày tỏ lịng biết ơn đến thầy suốt hành trình nhóm giảng đường Đại học truyền đạt cho nhóm kiến thức từ tảng đến nâng cao quý thầy cô đóng góp ý kiến đề xuất để cải thiện đề tài Cuối cùng, nhóm xin chân thành cảm ơn gia đình đặc biệt bạn ngành Kỹ thuật y sinh Khóa 2019 ln ủng hộ, động viên hỗ trợ nhóm q trình thực đề tài Sinh viên thực đề tài Hồng Đình Thức - Lê Thị Anh Thư Mục lục TỔNG QUAN 1.1 Đặt vấn đề 1.2 Mục tiêu 1.3 Nội dung nghiên cứu 1.4 Giới hạn 1.5 Bố cục CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu Deep Learning 2.2 Bài toán phân loại đa nhãn (Multilabel Classification) 2.3 Transfer Learning 2.4 Hàm kích hoạt Sigmoid 2.5 Giới thiệu Dataset 10 2.5.1 Khảo sát tập liệu 10 2.5.2 NIH Chest X-ray 11 Các mơ hình phân loại dựa CNN 13 2.6.1 DenseNet-121 13 2.6.2 ResNet-50 14 2.6.3 VGG19 15 2.6.4 EfficientNet-B0 16 Giới thiệu ứng dụng Web 17 2.7.1 Cấu trúc hệ thống Web 17 2.7.2 React JS 19 2.7.3 Express JS 21 2.7.4 API 22 2.6 2.7 vii 2.8 JWT (JSON Web Token) 23 2.7.6 Nginx 24 2.7.7 Docker 25 Giới thiệu hội chứng 27 HUẤN LUYỆN MƠ HÌNH 29 3.1 Tổng quan phương pháp 29 3.2 Xử lí liệu 30 3.3 Huấn luyện mơ hình 35 3.3.1 Tinh chỉnh mô hình 35 3.3.2 Hàm mát 36 3.3.3 Tiến hành huấn luyện 36 Đánh giá mơ hình 38 3.4.1 Đánh giá dựa ROC-AUC 38 3.4.2 Đánh giá dựa GradCAM 39 3.4 2.7.5 THI CÔNG HỆ THỐNG 40 4.1 Tổng quan hệ thống 40 4.2 Thi công Frontend 44 4.3 Thi công Backend 52 4.4 Tạo Model API 56 4.5 Đóng gói triển khai ứng dụng với Docker 58 KẾT QUẢ VÀ NHẬN XÉT 63 5.1 Kết nhận xét mơ hình dựa đánh giá AUC-ROC 63 5.1.1 Kết 63 5.1.2 Nhận xét 66 Kết nhận xét mơ hình dựa GradCAM 67 5.2.1 Kết 67 5.2.2 Nhận xét 69 Kết thực thi ứng dụng web nhận xét 69 5.3.1 Kết 69 5.3.2 Nhận xét 77 5.2 5.3