Hệ thống này sử dụng mô hình mạng nơ-ron tích chập EfficientNet-B0 được huấn luyện trên tập dữ liệu ảnh X-quang vú MINI-DDSM.. Mục tiêu Đề tài "Phân loại ảnh ung thư vú từ xa sử dụng mạ
TỔNG QUAN
Đặt vấn đề
Bệnh ung thư, đặc biệt là ung thư vú, đang trở thành một vấn đề sức khỏe cộng đồng nghiêm trọng, ảnh hưởng đến hàng triệu phụ nữ trên toàn thế giới và tại Việt Nam Sự gia tăng tình trạng này liên quan đến nhiều yếu tố như di truyền, môi trường, và lối sống không lành mạnh, bao gồm hút thuốc, uống rượu bia, cùng với chế độ ăn uống không cân đối.
Ung thư vú (UTV) là một trong những loại ung thư phổ biến nhất ở phụ nữ, đặc biệt là những người trên 40 tuổi Trên toàn cầu, khoảng 19,3 triệu người mắc bệnh ung thư và 10 triệu người tử vong mỗi năm Tại Việt Nam, ước tính có khoảng 182.000 trường hợp mắc bệnh và 122.000 ca tử vong hàng năm UTV đứng thứ ba về tỷ lệ mắc (9,6%) sau ung thư phổi và ung thư gan Theo GLOBOCAN, năm 2020 có hơn 2,2 triệu phụ nữ được chẩn đoán mắc ung thư vú, trong đó gần 685.000 trường hợp tử vong Tại châu Á, tỷ lệ này chiếm 45% tổng số ca ung thư vú toàn cầu Dự báo cho thấy số ca mắc UTV sẽ tăng 20,9% và tỷ lệ tử vong tăng 27,8% từ 2020 đến 2030 Việc chẩn đoán sớm UTV rất quan trọng vì có thể cải thiện khả năng chữa trị; nếu phát hiện sớm khi bệnh còn khu trú trong tuyến vú, tỷ lệ sống sau 5 năm có thể đạt đến 90% Tại châu Á, tỷ lệ sống thêm 5 năm của bệnh nhân dao động từ 56,5% đến 86,7%.
Với tỷ lệ phụ nữ mắc UTV ngày càng cao, việc phát hiện sớm và phân loại chính xác loại bệnh ung thư này là cực kỳ quan trọng để nâng cao khả năng hồi phục và giảm bớt khó khăn trong điều trị Bên cạnh việc chú ý đến các dấu hiệu trong cuộc sống hàng ngày, việc thực hiện các chương trình tầm soát định kỳ cũng cần thiết Tuy nhiên, nhiều người vẫn chủ quan và không thực hiện tầm soát định kỳ vì nhiều lý do khác nhau.
Việc tầm soát lần đầu có thể không phát hiện ra bệnh do thiết bị, công nghệ hoặc các nguyên nhân khác, dẫn đến tình trạng khi bệnh có dấu hiệu rõ ràng thì đã quá muộn và khó chữa trị.
Có nhiều phương pháp chẩn đoán ung thư vú, bao gồm kiểm tra tự thực hiện hàng tháng, các phương pháp hình ảnh và xét nghiệm chuyên sâu Trong đó, chụp X-quang vú (mammography) là phương pháp quan trọng giúp phát hiện sớm ung thư vú.
Việc áp dụng Trí Tuệ Nhân Tạo (AI) trong chẩn đoán ung thư vú là rất quan trọng, giúp phát hiện sớm và chính xác hơn, tối ưu hóa thời gian và tài nguyên cho bác sĩ AI hỗ trợ quyết định lâm sàng và mở rộng khả năng tiếp cận đến các khu vực xa xôi Nhờ vào việc liên tục cập nhật và cải tiến từ dữ liệu mới, AI nâng cao khả năng chẩn đoán theo thời gian, trở thành công cụ quan trọng trong cuộc chiến chống lại ung thư, mang lại lợi ích đáng kể cho bệnh nhân và hệ thống y tế.
Mục tiêu, đối tượng và giới hạn nghiên cứu
1.2.1 Mục tiêu Đề tài "Phân loại ảnh ung thư vú từ xa sử dụng mạng học sâu" đặt ra mục tiêu phát triển một hệ thống chẩn đoán ung thư vú sử dụng trí tuệ nhân tạo (AI) và dựa trên dữ liệu lớn từ hình ảnh X-quang, đồng thời xây dựng thêm một trang web để chuẩn đoán ảnh từ xa Mục tiêu của nó là hỗ trợ bác sĩ trong quá trình chẩn đoán bệnh ung thư vú, đồng thời cung cấp phương tiện hiệu quả và tiện lợi để phát hiện sớm các dấu hiệu của bệnh
1.2.2 Đối tượng Đối tượng nghiên cứu:
• Loại dữ liệu hình ảnh: ảnh xám (grayscale), độ phân giải cao
• Thu thập từ các nguồn uy tín: kho dữ liệu y tế, bệnh viện, trung tâm chẩn đoán hình ảnh
2 Các mô hình mạng học sâu:
• Sử dụng các kiến trúc mạng nơ-ron tích chập (CNN) tiên tiến như ResNet, VGG, EfficienNet, Inception, v.v
• Có thể kết hợp với các kỹ thuật học sâu khác như mạng nơ-ron tuần hoàn (RNN), Transformer để tăng hiệu quả phân loại
• Huấn luyện mô hình trên tập dữ liệu ảnh X-quang vú
3 Thuật toán tiền xử lý ảnh:
• Kỹ thuật bình thường hóa dữ liệu: điều chỉnh độ sáng, độ tương phản, v.v để đồng nhất dữ liệu đầu vào
• Kỹ thuật tăng cường dữ liệu: tạo thêm ảnh mới từ ảnh gốc bằng cách xoay, lật, cắt xén, v.v để tăng kích thước tập dữ liệu và giảm nhiễu
• Kỹ thuật xử lý ảnh: lọc nhiễu, loại bỏ các vật thể không mong muốn, v.v để cải thiện chất lượng ảnh đầu vào
Xây dựng giao diện web với thiết kế giao diện người dùng (UI) thân thiện và dễ sử dụng, cho phép người dùng tải lên ảnh X-quang vú và nhận kết quả phân loại Kết quả phân loại được hiển thị một cách rõ ràng và dễ hiểu, đồng thời cung cấp thông tin về độ tin cậy của kết quả để người dùng yên tâm hơn.
Kết nối với mô hình học sâu bằng cách sử dụng các API hoặc dịch vụ web để liên kết giao diện web với mô hình đã được đào tạo Người dùng có thể tải lên ảnh X-quang vú, sau đó truyền tải đến mô hình học sâu Kết quả phân loại từ mô hình sẽ được nhận và hiển thị trên giao diện web một cách trực quan.
Quản lý dữ liệu là rất quan trọng trong việc lưu trữ an toàn các ảnh X-quang vú và kết quả phân loại Đồng thời, việc bảo vệ dữ liệu người dùng cần tuân thủ các quy định pháp luật hiện hành để đảm bảo quyền riêng tư và an toàn thông tin.
Khi hoàn thành đề tài kết quả dự kiến ta có:
1 Xây dựng mô hình phân loại ảnh ung thư vú từ xa có độ chính xác cao:
• Đạt tỷ lệ phân loại chính xác (accuracy) cao hơn các phương pháp truyền thống
• Giảm tỷ lệ sai sót (error rate) và tỷ lệ dương tính giả (false positive rate)
2 Phát triển hệ thống hỗ trợ chẩn đoán ung thư vú từ xa:
• Tự động phân loại ảnh X-quang vú của bệnh nhân
• Cung cấp kết quả phân loại và mức độ tin cậy cho bác sĩ tham khảo
• Hỗ trợ bác sĩ trong việc chẩn đoán ung thư vú sớm và chính xác hơn
3 Đánh giá hiệu quả của mô hình học sâu trong phân loại ảnh ung thư vú:
• So sánh hiệu suất của mô hình học sâu với các phương pháp truyền thống
• Phân tích các yếu tố ảnh hưởng đến hiệu quả phân loại của mô hình
• Xác định những hạn chế và hướng nghiên cứu tiếp theo
4 Hệ thống web hoàn chỉnh:
• Cho phép người dùng dễ dàng tải lên ảnh X-quang vú và nhận kết quả phân loại
• Thiết kế giao diện đẹp mắt và phù hợp với nhiều thiết bị truy cập khác nhau
Đề tài cũng có thể mở rộng nghiên cứu về các ứng dụng của mạng học sâu trong chẩn đoán ung thư vú, nhằm cải thiện độ chính xác và hiệu quả trong việc phát hiện bệnh.
• Phân tích mô bệnh học ung thư vú
• Dự đoán nguy cơ tái phát ung thư vú
• Lập kế hoạch điều trị ung thư vú phù hợp với từng bệnh nhân
Phân loại ảnh ung thư vú từ xa sử dụng mạng học sâu là một lĩnh vực nghiên cứu tiềm năng, có nhiều ứng dụng thực tế trong y tế Nghiên cứu này có khả năng nâng cao hiệu quả chẩn đoán và điều trị ung thư vú, từ đó góp phần cứu sống nhiều bệnh nhân.
Mặc dù nghiên cứu "Phân loại ảnh ung thư vú từ xa sử dụng mạng học sâu" có tiềm năng lớn trong việc hỗ trợ chẩn đoán ung thư vú, nhưng vẫn tồn tại một số hạn chế cần được lưu ý.
- Sử dụng các nguồn ảnh X- quang vú có sẵn như MIAS, DDSM, Mini- DDSM,
- Mô hình chỉ được huấn luyện và thực nghiệm trên các model pretrained: Resnet-152, EfficienB0, DenseNet201, VGG-16
- Mô hình chỉ được thí nghiệm trên Laptop, chưa áp dụng vào thực tế
Trong quá trình thực hiện Đồ án tốt nghiệp, nhóm tập trung giải quyết và hoàn thành được những nội dung sau:
• Nội dung 1: Tìm kiếm và sàng lọc tập ảnh để sử dụng cho quá trình huấn luyện và thử nghiệm hệ thống
• Nội dung 2: Nghiên cứu về nguyên lý của trí tuệ nhân tạo và mạng học sâu
• Nội dung 3: Tìm hiểu và nắm vững quá trình huấn luyện mạng học sâu
• Nội dung 4: Thực hiện quá trình huấn luyện và điều chỉnh mạng học sâu trên tập ảnh đã chuẩn bị
• Nội dung 5: Lập trình để thiết kế web chuẩn đoán hình ảnh
• Nội dung 6: Hoàn thiện trang web để người dùng có thể gửi ảnh từ xa
• Nội dung 7: Viết báo cáo
• Nội dung 8: Bảo vệ luận văn
Bệnh ung thư vú là một trong những loại ung thư phổ biến nhất ở phụ nữ, với triệu chứng thường gặp là sự xuất hiện của khối u hoặc thay đổi ở vú Phương pháp chẩn đoán hiện nay bao gồm khám lâm sàng, siêu âm, chụp X-quang vú (Mammography) và sinh thiết Chụp X-quang vú đóng vai trò quan trọng trong việc phát hiện sớm ung thư vú, giúp xác định kích thước và vị trí của khối u, từ đó tạo điều kiện thuận lợi cho việc điều trị Các phương pháp điều trị ung thư vú hiện nay bao gồm phẫu thuật, hóa trị, xạ trị và liệu pháp hormone, tùy thuộc vào giai đoạn và đặc điểm của bệnh.
- Giới thiệu về mạng học sâu, các kiến trúc phổ biến, ưu điểm và ứng dụng trong y tế, đặc biệt là trong phân loại ảnh
- Xác định mục tiêu đối tượng và giới hạn nghiên cứu, xây dựng nội dung thực hiện và bố cục đồ án
Chương 2: CƠ SỞ LÝ THUYẾT
Trong bài viết này, chúng tôi tóm tắt các mô hình mạng học sâu phổ biến được sử dụng cho phân loại ảnh ung thư vú, đồng thời phân tích ưu nhược điểm của từng mô hình Việc lựa chọn mô hình phù hợp cho bài toán phân loại ảnh ung thư vú là rất quan trọng, vì nó ảnh hưởng trực tiếp đến độ chính xác và hiệu quả trong chẩn đoán Các mô hình như CNN, ResNet và VGG đã được khảo sát kỹ lưỡng, cho thấy mỗi mô hình có những điểm mạnh và hạn chế riêng Cuối cùng, chúng tôi đưa ra những gợi ý về mô hình tối ưu cho việc phân loại ảnh ung thư vú, nhằm nâng cao chất lượng chẩn đoán và hỗ trợ bác sĩ trong việc điều trị.
Các nguồn dữ liệu ảnh ung thư vú uy tín bao gồm các cơ sở dữ liệu từ các tổ chức y tế, bệnh viện và nghiên cứu khoa học Tập dữ liệu thường được cấu trúc theo các tiêu chí như loại hình ảnh, giai đoạn bệnh và thông tin bệnh nhân Đặc điểm của tập dữ liệu bao gồm độ phân giải cao, tính đa dạng về chủng loại và số lượng mẫu Trước khi huấn luyện mô hình, kỹ thuật xử lý dữ liệu bao gồm chuẩn hóa hình ảnh, loại bỏ nhiễu và phân loại ảnh để đảm bảo độ chính xác và hiệu quả trong việc phát hiện ung thư vú.
- Giới thiệu các chỉ số đánh giá hiệu quả mô hình phân loại, phương pháp phân tích kết quả đánh giá và điều chỉnh mô hình
- Giới thiệu và cách thiết lập Website để kết nối máy học
Chương 3: XÂY DỰNG MÔ HÌNH HUẤN LUYỆN
- Giới thiệu khung phần mềm và công cụ phát triển được sử dụng để xây dựng mô hình
- Trình bày kiến trúc mạng học sâu được thiết kế, bao gồm các lớp mạng, hàm kích hoạt, hàm mất mát và kỹ thuật tối ưu hóa kiến trúc
Quá trình huấn luyện mô hình bao gồm các bước quan trọng như chia tập dữ liệu thành các phần huấn luyện và kiểm tra, cài đặt tham số huấn luyện phù hợp, theo dõi tiến trình huấn luyện để đảm bảo hiệu suất tối ưu và điều chỉnh tham số khi cần thiết nhằm nâng cao độ chính xác của mô hình.
- Giải thích phương pháp lưu trữ và chia sẻ mô hình sau khi hoàn thành huấn luyện
Chương 4: THI CÔNG HỆ THỐNG
- Trình bày thiết kế và triển khai hệ thống web để phân loại ảnh ung thư vú từ xa
- Mô tả giao diện người dùng, chức năng chính của hệ thống, quy trình xử lý ảnh và kết quả phân loại
Các kỹ thuật web đóng vai trò quan trọng trong việc xây dựng hệ thống, bao gồm ngôn ngữ lập trình như HTML, CSS và JavaScript, giúp tạo ra giao diện người dùng hấp dẫn Framework web như React, Angular và Django hỗ trợ việc phát triển nhanh chóng và hiệu quả hơn Cơ sở dữ liệu, chẳng hạn như MySQL và MongoDB, lưu trữ và quản lý dữ liệu một cách an toàn Cuối cùng, bảo mật web là yếu tố không thể thiếu, với các biện pháp như mã hóa SSL và xác thực người dùng để bảo vệ thông tin nhạy cảm.
Chương 5: KẾT QUẢ VÀ NHẬN XÉT, ĐÁNH GIÁ MÔ HÌNH
- Trình bày kết quả thu được sau khi huấn luyện mô hình, bao gồm độ chính xác, độ nhạy, độ đặc hiệu và các chỉ số đánh giá khác
- Phân tích hiệu quả của mô hình và so sánh với các phương pháp phân loại ảnh ung thư vú truyền thống
- Đưa ra nhận xét về ưu và nhược điểm của mô hình, cũng như những hạn chế của nghiên cứu
Chương 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
- Tóm tắt những kết quả chính của nghiên cứu và khả năng hoạt động của hệ thống
- Đưa ra kết luận về tiềm năng ứng dụng của hệ thống trong chẩn đoán ung thư vú từ xa
Để nâng cao chất lượng nghiên cứu, cần tập trung vào việc cải thiện độ chính xác của mô hình, mở rộng khả năng phân loại sang các loại ung thư khác, và triển khai hệ thống vào thực tế lâm sàng Những hướng phát triển này sẽ không chỉ nâng cao hiệu quả chẩn đoán mà còn góp phần vào việc điều trị ung thư một cách hiệu quả hơn.
Bố cục
Bệnh ung thư vú là một trong những loại ung thư phổ biến nhất ở phụ nữ, với triệu chứng có thể bao gồm khối u hoặc thay đổi về hình dạng vú Phương pháp chẩn đoán hiện nay bao gồm khám lâm sàng, siêu âm và chụp X-quang vú (Mammography), trong đó chụp X-quang vú đóng vai trò quan trọng giúp phát hiện sớm các dấu hiệu bất thường Điều trị ung thư vú thường bao gồm phẫu thuật, xạ trị, hóa trị và liệu pháp hormone, tùy thuộc vào giai đoạn và loại ung thư Việc phát hiện sớm và điều trị kịp thời có thể cải thiện đáng kể tỷ lệ sống sót cho bệnh nhân ung thư vú.
- Giới thiệu về mạng học sâu, các kiến trúc phổ biến, ưu điểm và ứng dụng trong y tế, đặc biệt là trong phân loại ảnh
- Xác định mục tiêu đối tượng và giới hạn nghiên cứu, xây dựng nội dung thực hiện và bố cục đồ án
Chương 2: CƠ SỞ LÝ THUYẾT
Trong bài viết này, chúng tôi tóm tắt các mô hình mạng học sâu phổ biến được sử dụng cho phân loại ảnh ung thư vú Mỗi mô hình sẽ được phân tích về ưu nhược điểm, giúp người đọc hiểu rõ hơn về hiệu suất và khả năng ứng dụng của từng mô hình Cuối cùng, chúng tôi sẽ đưa ra lựa chọn mô hình phù hợp nhất cho bài toán phân loại ảnh ung thư vú, nhằm tối ưu hóa kết quả và hỗ trợ trong việc chẩn đoán.
Các nguồn dữ liệu ảnh ung thư vú uy tín bao gồm các cơ sở dữ liệu như The Cancer Imaging Archive (TCIA) và Breast Cancer Digital Repository (BCDR) Những tập dữ liệu này thường có cấu trúc rõ ràng, bao gồm hình ảnh chẩn đoán và thông tin bệnh lý liên quan Đặc điểm của các tập dữ liệu này thường là độ phân giải cao và đa dạng về loại hình ảnh, giúp tăng tính chính xác cho mô hình Trước khi huấn luyện mô hình, kỹ thuật xử lý dữ liệu bao gồm tiền xử lý hình ảnh, chuẩn hóa kích thước và loại bỏ nhiễu, nhằm cải thiện chất lượng dữ liệu đầu vào.
- Giới thiệu các chỉ số đánh giá hiệu quả mô hình phân loại, phương pháp phân tích kết quả đánh giá và điều chỉnh mô hình
- Giới thiệu và cách thiết lập Website để kết nối máy học
Chương 3: XÂY DỰNG MÔ HÌNH HUẤN LUYỆN
- Giới thiệu khung phần mềm và công cụ phát triển được sử dụng để xây dựng mô hình
- Trình bày kiến trúc mạng học sâu được thiết kế, bao gồm các lớp mạng, hàm kích hoạt, hàm mất mát và kỹ thuật tối ưu hóa kiến trúc
Quá trình huấn luyện mô hình bao gồm các bước quan trọng như chia tập dữ liệu thành các phần huấn luyện và kiểm tra, cài đặt các tham số huấn luyện phù hợp, theo dõi tiến trình huấn luyện để đảm bảo mô hình đang học hiệu quả, và điều chỉnh các tham số khi cần thiết nhằm tối ưu hóa kết quả.
- Giải thích phương pháp lưu trữ và chia sẻ mô hình sau khi hoàn thành huấn luyện
Chương 4: THI CÔNG HỆ THỐNG
- Trình bày thiết kế và triển khai hệ thống web để phân loại ảnh ung thư vú từ xa
- Mô tả giao diện người dùng, chức năng chính của hệ thống, quy trình xử lý ảnh và kết quả phân loại
Các kỹ thuật web đóng vai trò quan trọng trong việc xây dựng hệ thống, bao gồm ngôn ngữ lập trình như JavaScript, Python và PHP, cùng với các framework web như React, Angular và Django Cơ sở dữ liệu như MySQL, MongoDB và PostgreSQL được sử dụng để lưu trữ và quản lý dữ liệu hiệu quả Bảo mật web cũng là một yếu tố không thể thiếu, với các biện pháp như mã hóa dữ liệu, xác thực người dùng và phòng chống tấn công mạng.
Chương 5: KẾT QUẢ VÀ NHẬN XÉT, ĐÁNH GIÁ MÔ HÌNH
- Trình bày kết quả thu được sau khi huấn luyện mô hình, bao gồm độ chính xác, độ nhạy, độ đặc hiệu và các chỉ số đánh giá khác
- Phân tích hiệu quả của mô hình và so sánh với các phương pháp phân loại ảnh ung thư vú truyền thống
- Đưa ra nhận xét về ưu và nhược điểm của mô hình, cũng như những hạn chế của nghiên cứu
Chương 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
- Tóm tắt những kết quả chính của nghiên cứu và khả năng hoạt động của hệ thống
- Đưa ra kết luận về tiềm năng ứng dụng của hệ thống trong chẩn đoán ung thư vú từ xa
Để nâng cao hiệu quả nghiên cứu, cần tập trung vào việc cải thiện độ chính xác của mô hình, mở rộng khả năng phân loại cho các loại ung thư khác nhau và triển khai hệ thống vào thực tế lâm sàng.
CƠ SỞ LÝ THUYẾT
Ung thư vú
Ung thư vú là bệnh do sự phát triển bất thường của tế bào vú Trong điều kiện bình thường, tế bào vú phân chia một cách kiểm soát và tự giới hạn Tuy nhiên, khi bị ung thư, quá trình này bị gián đoạn, dẫn đến sự phát triển không kiểm soát của tế bào và hình thành khối u ác tính.
Các yếu tố góp phần vào sự phát triển của ung thư vú bao gồm [3]:
1 Yếu tố Gen: Một trong những yếu tố quan trọng nhất là di truyền Các gen BRCA1 và BRCA2 là những gen đặc biệt có liên quan đến nguy cơ phát triển ung thư vú và chúng có thể được truyền từ thế hệ này sang thế hệ khác
2 Yếu tố Hormon: Hormon estrogen và progesterone có vai trò quan trọng trong sự phát triển của tế bào vú Estrogen dư thừa trong cơ thể có thể tăng nguy cơ mắc ung thư vú
3 Lối sống và môi trường: Hút thuốc lá, tiêu thụ rượu, tiếp xúc với các chất độc hại, thiếu vận động và chế độ ăn uống không cân đối
4 Tuổi tác: Nguy cơ mắc ung thư vú tăng theo độ tuổi, với hầu hết các trường hợp được chẩn đoán ở phụ nữ sau tuổi 50
Hình 2.1 Các triệu chứng và dấu hiệu của UTV [19]
2.1.1 Một số khái niệm về các giai đoạn ung thư vú
Ung thư vú được phân chia thành các giai đoạn khác nhau dựa trên mức độ tiến triển của bệnh Giai đoạn đầu, hay còn gọi là tiền ung thư, là khi các tế bào bất thường mới chỉ bắt đầu tăng trưởng trong các ống dẫn sửa Giai đoạn I là giai đoạn xâm lấn, khi các tế bào khối u đã lan sang mô vú khỏe mạnh nhưng vẫn trong một khu vực nhỏ Đến giai đoạn II, tế bào ung thư phát triển và lan đến vùng giới hạn của vú và các hạch bạch huyết Giai đoạn III cho thấy tế bào ung thư đã lan rộng đến các hạch bạch huyết nhưng chưa di căn đến xương và các cơ quan khác Cuối cùng, ở giai đoạn IV, tế bào ung thư đã di căn xa từ vú, ảnh hưởng đến xương, phổi, gan và não, làm cho việc điều trị trở nên khó khăn hơn so với các giai đoạn trước.
Hình 2.2 Các giai đoạn của ung thư vú [20]
Các phương pháp sàng lọc ung thư vú bao gồm tự kiểm tra vú hàng ngày, khám sức khỏe định kỳ sau tuổi 40, và đặc biệt là chụp X-quang tuyến vú (mammography) Chụp X-quang tuyến vú được coi là một phương pháp quan trọng giúp giảm tỷ lệ tử vong do ung thư vú lên tới 20-22% và có giá trị cao trong chương trình sàng lọc ung thư vú tại mỗi quốc gia.
Chụp X-quang vú được khuyến nghị cho phụ nữ có triệu chứng lâm sàng và tiền sử gia đình ung thư vú Đối với phụ nữ không có triệu chứng, việc sàng lọc ung thư vú nên được thực hiện từ độ tuổi 40 đến 75, với tần suất hai năm một lần Đối với những người có nguy cơ cao, chụp X-quang vú nên được thực hiện hàng năm.
Nhu cầu chụp X-quang vú đang gia tăng mạnh mẽ, dẫn đến sự cần thiết phải có nhiều bác sĩ chuyên về phiên giải hình ảnh X-quang vú, hay còn gọi là bác sĩ chẩn đoán hình ảnh ung thư vú Tuy nhiên, hiện tại ở Việt Nam vẫn chưa có nghiên cứu cụ thể nào về số lượng bác sĩ chẩn đoán hình ảnh ung thư vú có khả năng đáp ứng nhu cầu ngày càng cao này.
Một nghiên cứu dự đoán tại Mỹ cho thấy trong hai thập kỷ tới sẽ có sự thiếu hụt nghiêm trọng về số lượng bác sĩ chẩn đoán hình ảnh X-quang tuyến vú Điều này đặt ra vấn đề quan trọng về việc cần đảm bảo đủ nguồn nhân lực chuyên môn trong lĩnh vực này để đáp ứng nhu cầu sàng lọc và chẩn đoán ung thư vú.
2.1.3 Các bước thực hiện kĩ thuật chụp x-quang vú
– Giải thích cho bệnh nhân về quy trình chụp Xquang vú
– Bệnh nhân cởi áo ngoài và áo lót, có thể thay áo rộng không cần cài cúc phía trước để thuận tiện cho quá trình chụp
– Bệnh nhân sẽ đứng hoặc ngồi quay mặt về phía máy chụp
Để thực hiện chụp ảnh vú hiệu quả, đặt vú lên bảng nhận ảnh và ép vú bằng tấm nhựa của máy, đảm bảo lực ép đủ mạnh để làm mỏng tuyến vú và dàn đều, giúp quan sát tổn thương rõ hơn và giảm cường độ chiếu tia, đồng thời tránh rung do di động (cần chú ý đến cảm giác đau của bệnh nhân) Nên chụp ít nhất ở hai tư thế: tư thế thẳng trên dưới và tư thế chếch trong-ngoài, có thể thêm tư thế nghiêng để xác định rõ hơn vị trí tổn thương.
– Chụp ép phóng đại khu trú vùng nghi ngờ tổn thương hoặc tổn thương chưa được bộc lộ rõ trên các tư thế đã chụp
– Hình ảnh chụp X-quang vú sẽ được xử lý và lưu trữ dưới dạng hình ảnh số hoặc được in phim
– Siêu âm vú phối hợp (Hình ảnh X-quang vú luôn được đọc phối hợp với hình ảnh siêu âm vú)
– Phân tích hình ảnh, kết luận hình ảnh tuyến vú theo phân loại BIRADS [7]
Hình 2.4 Ảnh minh họa chụp ung thư vú tại bệnh viện
2.1.4 Phân loại các tổn thương X-quang vú
Hiện nay, tất cả các bệnh viện tại Việt Nam đều áp dụng hệ thống BIRADS 2013 (Breast Imaging Reporting and Data System) để phân loại mức độ ác tính của các tổn thương trên X-quang tuyến vú.
• BI-RADS 0: không đánh giá được tổn thương trên X-quang tuyến vú, cần dựa vào các thăm dò khác
• BI-RADS 1: Tuyến vú bình thường, không có tổn thương
• BI-RADS 2: Tổn thương ở vú thuộc dạng lành tính
Tuyến vú được phân loại theo BI-RADS 3 có khả năng tổn thương lành tính, nhưng cần theo dõi trong thời gian ngắn để đưa ra kết luận chính xác Nguy cơ ác tính trong trường hợp này là hơn 0% nhưng dưới 2%.
BI-RADS 4 chỉ ra rằng vùng vú có dấu hiệu bất thường, có khả năng là tổn thương ác tính Để đánh giá chính xác mức độ tổn thương, bác sĩ sẽ chỉ định bệnh nhân thực hiện sinh thiết.
• BI-RADS 5: Ở mức độ này, tổn thương ở vú gần như chắc chắn là ác tính, tỷ lệ mắc phải ung thư vú là rất cao (lớn hơn 95%)
Hình 2.5 Mô vú có tổn thương (hình bên trái) và các kiểu mô vú
(hình bên phải) theo BI-RADS
Trong hệ thống y tế Việt Nam hiện nay, việc thiếu bác sĩ chuyên môn về đọc phim X-quang tuyến vú và khoảng cách trình độ giữa các bệnh viện trung ương và tuyến cơ sở gây ảnh hưởng đến độ chính xác chẩn đoán Để khắc phục tình trạng này, việc áp dụng trí tuệ nhân tạo để phát triển hệ thống hỗ trợ chẩn đoán X-quang ung thư vú được đề xuất Hệ thống này nhằm nâng cao độ chính xác chẩn đoán, rút ngắn thời gian đọc kết quả và giảm sự chênh lệch về độ chính xác giữa các bác sĩ ở các tuyến khác nhau.
Nghiên cứu ứng dụng trí tuệ nhân tạo (AI) trong chẩn đoán ung thư vú đang thu hút sự quan tâm lớn toàn cầu, bao gồm cả Việt Nam Nhiều nghiên cứu quốc tế đã chứng minh rằng AI cải thiện độ chính xác và tốc độ chẩn đoán so với các phương pháp truyền thống Tại Việt Nam, mặc dù lĩnh vực này còn mới mẻ, nhưng đã có tiến bộ đáng kể với một số bệnh viện và trung tâm nghiên cứu áp dụng AI vào chẩn đoán và điều trị ung thư Họ cũng hợp tác với các tổ chức quốc tế để nâng cao năng lực và tiếp cận công nghệ tiên tiến Việc áp dụng AI trong phân tích hình ảnh X-quang hứa hẹn sẽ cải thiện quá trình chẩn đoán và điều trị ung thư vú, đồng thời giảm thiểu sự chênh lệch về trình độ chuyên môn giữa các bác sĩ và khắc phục tình trạng thiếu hụt nguồn nhân lực chuyên môn.
Deep Learning
Deep Learning là một phương pháp trong Machine Learning thuộc lĩnh vực trí tuệ nhân tạo (AI), cho phép các hệ thống máy tính tự động học từ dữ liệu và cải thiện hiệu suất thông qua các thuật toán.
Hình 2.6 Mối quan hệ giữa học sâu, máy học và trí tuệ nhân tạo
Thuật ngữ "sâu" trong Deep Learning mô tả mạng neural với nhiều tầng kết nối, cho phép truyền dữ liệu và học hiểu các mô hình phức tạp Deep Learning đang phát triển nhanh chóng và đã tạo ra cuộc cách mạng trong nhiều lĩnh vực như thị giác máy tính, xử lý ngôn ngữ tự nhiên và nhận dạng giọng nói Trong thị giác máy tính, các mạng neural sâu đã đạt được thành tựu ấn tượng trong phân loại ảnh, nhận dạng khuôn mặt và phát hiện vật thể Trong xử lý ngôn ngữ tự nhiên, Deep Learning được sử dụng để xây dựng hệ thống dịch máy, phân loại văn bản và tạo ra mô hình ngôn ngữ tự động.
Một trong những thành tựu nổi bật của Deep Learning là khả năng tự động học các đặc trưng từ dữ liệu thô mà không cần xây dựng thủ công Điều này không chỉ giảm bớt công sức mà còn giảm thiểu sự phụ thuộc vào kiến thức chuyên gia trong quá trình phát triển mô hình học máy.
2.2.1 Cách thức hoạt động của Deep Learning
Deep Learning hoạt động bằng cách xây dựng và huấn luyện các mạng neural sâu để tự động học và hiểu dữ liệu [9]
Hình 2.7 Deep Learning hoạt động như thế nào?
Quá trình này bao gồm các bước chính sau:
Chuẩn bị dữ liệu là bước quan trọng đầu tiên trong Deep Learning, bao gồm thu thập và làm sạch dữ liệu, chuyển đổi dữ liệu sang định dạng phù hợp cho mạng nơ-ron, và gán nhãn chính xác để mô hình phân loại hoặc dự đoán Cuối cùng, dữ liệu cần được chia thành các tập con khác nhau như tập huấn luyện, tập kiểm tra và tập xác thực.
Mạng nơ-ron là mô hình học máy mô phỏng cấu trúc và hoạt động của não bộ con người, bao gồm các lớp lặp lại và nơ-ron là đơn vị xử lý cơ bản Mỗi nơ-ron nhận đầu vào từ các nơ-ron ở tầng trước, thực hiện tính toán đầu ra dựa trên trọng số và hàm kích hoạt, sau đó tổng hợp thông tin để truyền tới các nơ-ron ở tầng tiếp theo.
Huấn luyện mạng nơ-ron là quá trình sử dụng tập dữ liệu có gán nhãn để tối ưu hóa hiệu suất của mạng Đầu tiên, dữ liệu đầu vào được đưa vào mạng nơ-ron, sau đó mỗi nơ-ron tính toán đầu ra dựa trên dữ liệu và trọng số hiện tại Tiếp theo, đầu ra dự đoán được so sánh với nhãn thực tế để xác định lỗi Dựa trên kết quả so sánh, trọng số của các kết nối giữa các nơ-ron được điều chỉnh nhằm giảm thiểu lỗi dự đoán Quá trình này được lặp lại nhiều lần cho đến khi đạt được hiệu suất mong muốn.
Sau khi hoàn tất quá trình huấn luyện mạng nơ-ron, việc đánh giá mô hình trên các tập dữ liệu kiểm tra là cần thiết để xác định hiệu suất của nó Mô hình này sau đó có thể được áp dụng cho nhiều nhiệm vụ khác nhau, bao gồm phân loại và dự đoán.
Cải thiện mô hình là một quá trình lặp đi lặp lại, bao gồm việc điều chỉnh cấu trúc mạng nơ-ron như số lượng lớp, số lượng nơ-ron trong mỗi lớp và kiểu kết nối giữa các lớp Bên cạnh đó, việc tối ưu hóa thuật toán huấn luyện và thu thập thêm dữ liệu huấn luyện cũng đóng vai trò quan trọng trong việc nâng cao hiệu suất của mô hình.
2.2.2 Ưu và nhược điểm của Deep Learning [9]
Deep Learning có khả năng tự học từ dữ liệu phức tạp và trích xuất đặc trưng từ nhiều dạng thông tin khác nhau, bao gồm hình ảnh, âm thanh, văn bản và giọng nói.
Cung cấp độ chính xác cực kỳ cao, công nghệ này mang lại kết quả dự đoán chính xác trong nhiều lĩnh vực, bao gồm nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên và dự đoán chuỗi thời gian.
• Khả năng thích ứng: Có thể học hỏi và thích ứng với các dữ liệu mới liên tục
Deep Learning yêu cầu một khối lượng lớn dữ liệu để huấn luyện mô hình hiệu quả Việc thu thập và chuẩn bị dữ liệu có thể tốn kém và mất thời gian, đặc biệt đối với các tác vụ phức tạp.
Chi phí tính toán cho việc huấn luyện các mô hình Deep Learning trên dữ liệu lớn rất cao, yêu cầu nguồn tài nguyên mạnh mẽ như CPU, GPU và bộ nhớ Điều này tạo ra gánh nặng tài chính lớn, đặc biệt cho các doanh nghiệp và tổ chức nhỏ khi đầu tư vào phần cứng và phần mềm.
Cấu trúc phức tạp của mạng nơ-ron khiến việc giải thích hoạt động của mô hình trở nên khó khăn Điều này đặc biệt quan trọng trong các lĩnh vực như y học và tài chính, nơi cần có sự minh bạch và rõ ràng trong các quyết định.
Convolutional Neural Networks( CNN)
Convolutional Neural Network (CNN) là một trong những mô hình Deep Learning tiên tiến nhất CNN có kiến trúc lý tưởng nên thường được sử dụng trong
16 thị giác máy tính để xử lý, phân tích hình ảnh và giúp chúng ta xây dựng được những hệ thống thông minh với độ chính xác rất cao [10]
Cấu trúc cơ bản của một CNN bao gồm các thành phần chính sau:
1 Lớp Convolutional : Đây là lớp đầu tiên và cũng là lớp quan trọng nhất của mô hình CNN, trong đó các bộ lọc (filters) được dùng để xử lý ảnh đầu vào Mỗi bộ lọc sẽ tạo ra một feature map biểu diễn các đặc trưng cụ thể của hình ảnh
2 Lớp Activation: Sau mỗi lớp convolutional, một hàm kích hoạt như ReLU (Rectified Linear Unit) thường được áp dụng để tạo tính phi tuyến cho mạng
3 Lớp Pooling: Lớp này thường được sử dụng để giảm kích thước của feature map bằng cách chọn ra giá trị quan trọng nhất trong mỗi vùng của feature map Các lớp pooling phổ biến bao gồm max pooling và average pooling
4 Lớp Fully Connected: Sau khi thông qua các lớp convolutional và pooling, đầu ra được đưa vào các lớp fully connected để thực hiện phân loại hoặc dự đoán Lớp này thường được kết hợp với hàm kích hoạt như Softmax để tạo ra các xác suất phân loại
5 Dropout Layer: Đây là một kỹ thuật được sử dụng để ngăn chặn việc quá mức hóa (overfitting) bằng cách ngẫu nhiên loại bỏ một số neuron trong quá trình huấn luyện
Cấu trúc tổng quát của một mạng nơ-ron tích chập (CNN) bao gồm các lớp convolutional, lớp activation, lớp pooling và lớp fully connected sắp xếp theo thứ tự Các tham số của mạng, như số lượng và kích thước của các bộ lọc, được điều chỉnh trong quá trình huấn luyện để tối ưu hóa hiệu suất trên tập dữ liệu huấn luyện.
CNN tự động học các đặc trưng quan trọng từ ảnh, giúp giảm thiểu sự can thiệp của con người trong quá trình xử lý ảnh, mang lại hiệu quả cao hơn trong việc nhận diện và phân loại hình ảnh.
➢ Hiệu quả tính toán: CNN chỉ tính toán trên các vùng đặc trưng của ảnh, giúp giảm thiểu thời gian tính toán và tăng tốc độ xử lý
Khả năng tái sử dụng của CNN cho phép hệ thống phân loại ảnh hoạt động tự động và hiệu quả bằng cách sử dụng lại các trọng số đã được học trong quá trình huấn luyện.
➢ Độ chính xác cao: CNN có độ chính xác cao trong việc phân loại các đối tượng trong ảnh và trích xuất các đặc trưng quan trọng từ ảnh
➢ Cần nhiều dữ liệu huấn luyện: CNN yêu cầu một lượng dữ liệu huấn luyện lớn để có thể học được các đặc trưng quan trọng từ ảnh
➢ Nhạy cảm với biến động trong dữ liệu: CNN có thể bị ảnh hưởng nếu dữ liệu huấn luyện thay đổi hoặc bị nhiễu
➢ Độ phức tạp cao: CNN có cấu trúc phức tạp và khó hiểu, đặc biệt là với những người mới bắt đầu học.
Transfer Learning
Trong thiết kế mô hình máy học với lượng dữ liệu hạn chế, Transfer Learning là giải pháp hiệu quả giúp cải thiện hiệu suất mô hình Transfer Learning, một lĩnh vực con của máy học và AI, cho phép chuyển giao kiến thức từ một tác vụ sang tác vụ tương tự khác Thay vì xây dựng mô hình từ đầu cho mỗi nhiệm vụ mới, phương pháp này tái sử dụng kiến thức đã học từ các nhiệm vụ trước để tối ưu hóa kết quả mà không cần nhiều dữ liệu huấn luyện.
Một số Mô Hình Phân Loại Dựa Trên Mô Hình CNN
Hình 2.9 Cách thức hoạt động của transfer learning
Trong lĩnh vực Deep Learning, Transfer Learning thường được thực hiện thông qua các mô hình đã được huấn luyện trước như VGG, DenseNet và EfficientNet trong Pytorch Phương pháp này giúp giảm thiểu thời gian và công sức khi huấn luyện mô hình từ đầu, đồng thời nâng cao hiệu suất của mô hình Nhóm nghiên cứu đã chọn mô hình EfficientNet để đáp ứng các yêu cầu của bài toán, nhờ vào hiệu suất cao và khả năng xử lý hình ảnh hiệu quả của nó.
2.5 Một số Mô Hình Phân Loại Dựa Trên Mô Hình CNN
Mô hình VGG-16, được phát triển bởi nhóm Visual Geometry Group tại Đại học Oxford, là một kiến trúc mạng nơ-ron tích chập (CNN) với 16 lớp, bao gồm 13 lớp tích chập và 3 lớp kết nối đầy đủ VGG-16 nổi bật nhờ tính đơn giản và hiệu quả cao trong các nhiệm vụ thị giác máy tính như phân loại hình ảnh và nhận dạng đối tượng Kiến trúc của nó bao gồm chuỗi các lớp tích chập liên tiếp và các lớp max-pooling với độ sâu tăng dần, cho phép mô hình học các biểu diễn phức tạp của các đặc trưng thị giác, dẫn đến dự đoán chính xác Mặc dù đơn giản hơn so với các kiến trúc hiện đại, VGG-16 vẫn được ưa chuộng trong nhiều ứng dụng học sâu nhờ tính linh hoạt và hiệu suất vượt trội.
Cuộc thi ILSVRC (ImageNet Large Scale Visual Recognition Challenge) là một sự kiện hàng năm về thị giác máy tính, nơi các đội thi đấu để giải quyết các nhiệm vụ như định hình đối tượng và phân loại hình ảnh Năm 2014, mô hình VGG16 do Karen Simonyan và Andrew Zisserman đề xuất đã xuất sắc giành vị trí hàng đầu trong cả hai nhiệm vụ, bao gồm phát hiện đối tượng từ 200 lớp và phân loại hình ảnh.
Mô hình VGG-16 có độ chính xác là 92.7% (top-5) trên tập dữ liệu ImageNet, bao gồm 14 triệu hình ảnh thuộc 1000 lớp khác nhau
Hình 2.10 Cấu trúc CNN của VGG-16
Mô hình VGG16 yêu cầu hình ảnh đầu vào có kích thước cố định 224x224 và sử dụng các bộ lọc nhỏ 3x3 để xử lý Mỗi lớp tích chập áp dụng hàm kích hoạt ReLU để tạo ra đầu ra tuyến tính cho hình ảnh Sau mỗi lớp tích chập, lớp tổng hợp được sử dụng để giảm kích thước và số lượng neuron trong các feature map Số lượng bộ lọc trong các lớp tăng dần từ 64, 128, 256 đến 512.
Mô hình kết thúc với ba lớp kết nối đầy đủ, trong đó hai lớp đầu tiên mỗi lớp có 4096 kênh, và lớp thứ ba có 1000 kênh, tương ứng với số lượng lớp đầu ra trong tập dữ liệu ImageNet.
Cấu hình VGG16 nổi bật với sự lặp lại 5 lần của khối tích chập và khối tổng hợp, điều này giúp mô hình nhận diện và học các đặc điểm hình ảnh một cách chi tiết và hiệu quả.
EfficientNet là một mạng CNN tiên tiến, nổi bật với hiệu suất cao và tốc độ nhanh Nó áp dụng phương pháp mở rộng phức hợp, kết hợp đồng nhất chiều rộng, chiều sâu và độ phân giải của kiến trúc mạng, mang lại hiệu quả tối ưu trong việc xử lý hình ảnh.
Hình 2.11 Cấu Trúc Của Efficient_B0
EfficientNet là mạng trích xuất đặc trưng không gian hiệu quả cho các nhiệm vụ phân loại, bao gồm bảy mô hình CNN từ EfficientNet-B0 đến EfficientNet-B7 Cấu trúc của EfficientNet-B0 được phân chia thành bảy khối dựa trên số kênh, bước nhảy và kích thước bộ lọc tích chập Nhóm nghiên cứu đã chọn EfficientNet-B0 vì nó mang lại tốc độ tính toán nhanh và độ chính xác rất cao.
DenseNet là một mạng tích chập tiên tiến với hiệu suất cao, nơi mỗi lớp được kết nối trực tiếp với tất cả các lớp trước đó Mạng này cho phép các kết nối giữa hai lớp bất kỳ có cùng kích thước feature map, giúp cải thiện khả năng tối ưu hóa Nhờ vào thiết kế này, DenseNet có thể mở rộng quy mô lên đến hàng trăm lớp mà không gặp phải khó khăn trong quá trình huấn luyện.
DenseNet thường cho thấy hiệu suất ấn tượng trong các thí nghiệm, duy trì độ chính xác ổn định ngay cả khi số lượng tham số tăng lên Điều này cho thấy mô hình không chỉ tránh được hiện tượng suy giảm hiệu suất mà còn không gặp phải tình trạng overfitting trong quá trình huấn luyện.
DenseNet thường đạt kết quả xuất sắc trên nhiều tập dữ liệu chuẩn, mặc dù có ít tham số và chi phí tính toán thấp hơn so với các mô hình mạng khác Mô hình này đã chứng minh hiệu suất cao trong các thí nghiệm phân loại ảnh.
Ứng dụng của Website trong lĩnh vực y tế
Công nghệ thông tin ngày càng trở nên thiết yếu trong ngành y tế, cung cấp nhiều giải pháp và ứng dụng web nhằm cải thiện chất lượng dịch vụ và trải nghiệm của bệnh nhân Một số ứng dụng nổi bật trong lĩnh vực này bao gồm:
❖ Quản lý hồ sơ bệnh án: Hệ thống EMR giúp lưu trữ, truy cập và quản lý thông tin bệnh nhân an toàn, hiệu quả
❖ Đặt lịch khám: Hệ thống đặt lịch trực tuyến giúp bệnh nhân dễ dàng đặt lịch, chọn bác sĩ và theo dõi lịch hẹn
❖ Telehealth: Telehealth cho phép bệnh nhân tham khảo ý kiến bác sĩ từ xa qua video call, chat hoặc tin nhắn
Trang web quản lý sức khỏe giúp người dùng theo dõi các chỉ số quan trọng như nhịp tim, huyết áp, giấc ngủ và chế độ ăn uống Bên cạnh đó, người dùng còn có thể ghi lại lịch sử sử dụng thuốc và nhận thông báo nhắc nhở khi đến giờ uống thuốc.
Cùng với sự phát triển của công nghệ, nhiều giải pháp và ứng dụng web, app đã ra đời để hỗ trợ các lĩnh vực như chẩn đoán hình ảnh, điều trị và nghiên cứu y khoa Điều này giúp lĩnh vực y tế trở nên hiện đại, hiệu quả và dễ tiếp cận hơn với người dân Chính vì vậy, nhóm chúng em đã quyết định xây dựng một trang web nhằm hỗ trợ chẩn đoán ung thư vú.
PHÂN LOẠI HÌNH ẢNH UNG THƯ VÚ DÙNG MẠNG EFFICIENTNET-B0
Sơ đồ khối của hệ thống
Hình 3.1 Sơ đồ khối của hệ thống hỗ trợ chẩn đoán ung thư vú
Mô tả hệ thống (server):
- Dữ liệu đầu vào: Đưa ảnh chụp X-quang tuyến vú được thu thập từ tệp dữ liệu Mini-DDSM vào để tiến hành huấn luyện mô hình
- Tiền xử lý dữ liệu: áp dụng các phương pháp biến đổi (Tensor, Resize, RandomHorizontalFlip) để cho dữ liệu huấn luyện và kiểm tra
- Khởi tạo mô hình: Tải mô hình EfficientNet-B0 và chỉnh sửa lớp cuối cùng để phù hợp với số lớp cần thiết mà đề tài yêu cầu
Hàm mất mát và tối ưu hóa là những yếu tố quan trọng giúp mô hình học từ dữ liệu huấn luyện, từ đó cải thiện khả năng dự đoán và khả năng tổng quát hóa trên dữ liệu kiểm tra.
- Huấn luyện mô hình: Huấn luyện qua nhiều epoch, cập nhật trọng số và tính toán độ chính xác
- Lưu mô hình huấn luyện: Lưu vào file.pth để có thể dễ dàng tìm kiếm và sử dụng
Giao tiếp qua API cho phép server cung cấp dịch vụ chẩn đoán bằng cách nhận ảnh X-quang từ website và trả về kết quả chẩn đoán dựa trên mô hình đã được huấn luyện.
- Website: Là giao diện để xử lý các yêu cầu từ người dùng bao gồm nhập thông tin cá nhân, tải ảnh lên và nhận kết quả chẩn đoán
Thu thập dữ liệu
Để huấn luyện mô hình hiệu quả, cần có một tập dữ liệu lớn đáp ứng các yêu cầu cụ thể.
• Tập dữ liệu phải đủ lớn và chứa đầy đủ các trường hợp bệnh cần thiết
• Tập dữ liệu cần phải mang tính phổ biến và đa dạng, đảm bảo bao gồm nhiều biến thể của bệnh
• Có ROI Mask để hỗ trợ việc khoanh vùng bệnh, giúp trong việc đánh giá và định vị vùng bệnh một cách chính xác
Hiện nay, có nhiều tập dữ liệu phổ biến toàn cầu như VinDR-Mammo, MIAS và Mini-DDSM Trong nghiên cứu này, nhóm đã chọn tập dữ liệu Mini-DDSM do nó đáp ứng đầy đủ các yêu cầu cần thiết.
Hình 3.2 Sơ đồ thu thập dữ liệu
Thu thập dữ liệu: Lấy hình ảnh X-quang từ tập dữ liệu Mini-DDSM
Tiền xử lý dữ liệu: Tiến hành resize ảnh về kích thước mong muốn và lật ảnh ngẫu nhiên
Xác minh và kiểm tra: Kiểm tra lại các nhãn để đảm bảo độ chính xác và tin cậy của chúng.
Cơ Sở Dữ Liệu Mini-DDSM
Mini-DDSM là một tập dữ liệu con đầy đủ, đã được cập nhật với hình ảnh định dạng JPEG, giúp tối ưu hóa quy trình sử dụng Tập dữ liệu này có dung lượng khoảng 45GB, bao gồm tất cả các thuộc tính và thông tin từ DDSM Đặc biệt, Mini-DDSM được cung cấp miễn phí, tạo điều kiện thuận lợi cho các nhà nghiên cứu và chuyên gia y tế trong việc truy cập và sử dụng để phát triển các phương pháp chẩn đoán và điều trị ung thư vú trong lĩnh vực học máy và học sâu.
Các số liệu báo cáo của Mini-DDSM như sau:
❖ Thuộc tính ảnh: Gồm ảnh X-quang tuyến vú, có ba mức độ bệnh là Benign, Cancer, Normal
Kích thước ảnh thường lớn hơn 1000x1000 pixels, nhưng trong quá trình xử lý trước khi huấn luyện, kích thước ảnh đã được điều chỉnh xuống còn 300x300 pixels để phù hợp với mô hình.
❖ Số lượng ảnh: Tập dữ liệu có 7809 nhũ ảnh kỹ thuật số và được chia chi tiết như sau:
Bảng 3.1: Số lượng các nhãn (Labels)
Bảng 3.2: Hình ảnh trong tập Mini-DDSM
Ảnh X-quang vú Mô tả
Bức ảnh X-quang của vú phải được chụp từ góc trên xuống (CC) đã được phân loại là ung thư (Cancer) theo dữ liệu từ bộ sưu tập Mini-DDSM.
Hình ảnh X-quang của vú phải được chụp từ góc nghiêng trên xuống (MLO) cho thấy kết quả phân loại là Benign theo tập dữ liệu Mini-DDSM.
Đây là hình ảnh X-quang của vú trái được chụp theo góc nghiêng từ trên xuống (MLO), được phân loại là bình thường trong tập dữ liệu Mini-DDSM.
Xử lý dữ liệu
Bảng số liệu 3.2 cho thấy dữ liệu được phân chia thành ba nhãn với tỷ lệ tương đối đồng đều: 2.685 mẫu "Benign" (34,4%), 2.716 mẫu "Cancer" (34,7%) và 2.408 mẫu "Normal" (30,9%) Sự phân bố này giúp giảm thiểu sai lệch và nhiễu trong quá trình huấn luyện mô hình, từ đó nâng cao độ chính xác và hiệu quả của mô hình.
Bảng 3.3: Dữ liệu huấn luyện
Label Số Lượng Tỷ lệ
Hình 3.3 Biểu đồ dữ liệu huấn luyện
Dữ liệu huấn luyện được chia thành hai tệp: tệp huấn luyện (Train) chiếm 80% và tệp kiểm tra (Test) chiếm 20%, nhằm đánh giá hiệu suất của mô hình Sự chênh lệch lớn giữa số lượng mẫu trong hai tệp, với tệp Train gấp 4 lần tệp Test, là chủ đích của nhóm để mô hình có thể học được nhiều đặc tính của nhũ ảnh, từ đó nâng cao hiệu suất và độ chính xác.
Bảng 3.4: Chi tiết số lượng train và test
Label Số Lượng Tỷ lệ
Biến đổi dữ liệu (Data Transform)
Sử dụng Data Transform là một bước quan trọng trong việc huấn luyện mô hình chẩn đoán bệnh Ung Thư Vú Pytorch cung cấp các trọng số và mô hình pretrained, do đó, việc chuẩn hóa dữ liệu đầu vào là cần thiết Để mô hình có thể học hiệu quả và đạt được kết quả tốt nhất, hình ảnh đầu vào cần được chuẩn hóa đúng cách.
Data Transform là quá trình chuẩn hóa dữ liệu đầu vào để Pytorch có thể hiểu và xử lý, từ đó hỗ trợ huấn luyện mô hình hiệu quả Quá trình này bao gồm việc chuyển đổi định dạng dữ liệu, thực hiện các biến đổi như chuẩn hóa, cắt ảnh, xoay ảnh và các phép biến đổi khác nhằm tối ưu hóa dữ liệu cho quá trình huấn luyện.
Data Transform cho phép mô hình tiếp cận và học hỏi từ các nhũ ảnh ở nhiều góc độ khác nhau một cách hiệu quả Quá trình này đảm bảo tất cả hình ảnh đồng nhất về kích thước, giúp mô hình hoạt động ổn định và trơn tru Nhóm đã áp dụng nhiều phương pháp Data Transform trong nghiên cứu của mình.
• Transforms.ToTensor: Chuyển đổi ảnh thành tensor của PyTorch và chuẩn hóa các giá trị pixel về khoảng [0, 1] Công thức cơ bản là:
- Image[h, w, c]: Hình ảnh đầu vào với các giá trị pixel từ 0 đến 255
- Tensor[c, h, w]: Tensor đầu ra với các giá trị pixel được chuẩn hóa từ
0 đến 1, với thứ tự kênh là (c, h, w)
Hàm Transforms.Resize((300, 300)) được sử dụng để thay đổi kích thước ảnh thành 300x300 pixel, đảm bảo tất cả ảnh đầu vào cho mô hình có kích thước đồng nhất Việc này là cần thiết để thực hiện xử lý batch trong các mạng nơ-ron.
- Image[h, w, c]: Hình ảnh đầu vào với kích thước ban đầu (h, w)
- (h new , w new ): Kích thước mới của ảnh
- Imageresized[h new , w new , c] = Hình ảnh đầu ra với kích thước mới
Transformations trong xử lý ảnh bao gồm Transforms.RandomHorizontalFlip, cho phép lật ngẫu nhiên hình ảnh theo chiều ngang với xác suất 𝑝 Khi hình ảnh được lật, các pixel ở cột i sẽ được hoán đổi với các pixel ở cột W – 1 – i, trong đó W là chiều rộng của hình ảnh.
- Image[h,i,c]: Giá trị pixel tại hàng h, cột i, và kênh c trong hình ảnh gốc
- Imageflipped[h, i, c]: Giá trị pixel tại hàng h, cột i, và kênh c trong hình ảnh đã lật
Hình 3.4 Ảnh sau khi sử dụng data transform
Tinh Chỉnh Mô Hình
Đề tài này áp dụng phương pháp Transfer Learning với các mô hình đã được huấn luyện trước trên tập dữ liệu ImageNet, bao gồm VGG-16, Resnet-152 và Efficientnet-B0 ImageNet là một tập dữ liệu hình ảnh khổng lồ, chứa hơn 14 triệu hình ảnh màu với độ phân giải cao và đa dạng về chủ đề Tuy nhiên, nhóm nghiên cứu sử dụng tập ảnh dạng grayscale, có những khác biệt nhất định so với tập dữ liệu ImageNet được dùng để pre-train.
Bảng 3.5: So sánh 2 tập dữ liệu
Tập dữ liệu ImageNet Grayscale
Màu sắc trong ảnh màu với ba kênh RGB cung cấp thông tin phong phú về màu sắc, giúp mô hình học được các đặc điểm liên quan đến màu sắc và sắc độ.
Chỉ có một kênh thông tin, loại bỏ màu sắc và chỉ giữ lại độ sáng, yêu cầu mô hình học nhận diện các đặc điểm dựa trên độ tương phản và cấu trúc hình ảnh Ứng dụng này được thiết kế nhằm phục vụ cho các mục đích nhận dạng và phân loại ảnh tổng quát.
Thường được sử dụng trong các lĩnh vực đặc thù như y tế, nơi thông tin màu sắc không quan trọng hoặc không có
Kích thước và độ phức tạp cao, đa dạng về nội dung và chủ đề
Thường có kích thước và độ phức tạp thấp hơn, tập trung vào một số ít các đặc điểm cụ thể
Trước khi áp dụng phương pháp học tập chuyển giao để huấn luyện mô hình, các trọng số đã được tối ưu hóa của các model pretrained sẽ được giữ lại nhằm đảm bảo chất lượng kết quả Tuy nhiên, do số lượng đầu ra của mỗi model pretrained khác nhau, cần điều chỉnh đầu ra cho phù hợp với mô hình mới.
Mô hình mạng EfficientNet-B0
Mục tiêu của nghiên cứu là huấn luyện mô hình chẩn đoán ba mức độ của bệnh ung thư vú: Benign, Cancer và Normal Để đạt được điều này, cần điều chỉnh đầu ra của các mô hình pretrained trong lớp Fc và Classifier Mô hình pretrained được sử dụng cho toàn bộ nghiên cứu là EfficientNet-B0.
EfficientNet-B0 employs a uniform scaling formula known as compound scaling, which systematically enhances the network's depth, width, and resolution simultaneously The following is the formula for the EfficientNet architecture.
❖ Công thức mở rộng đồng đều
• Công thức mở rộng đồng đều được định nghĩa như sau:
𝑑 = 𝛼 ϕ , 𝑤 = 𝛽 ϕ , 𝑟 = 𝛾 ϕ (3.4) Với 𝛼, 𝛽, 𝛾 là các hệ số mở rộng cho độ sâu, chiều rộng, và độ phân giải;
𝜙 là hệ số mở rộng toàn cục (compound coefficient)
❖ Công thức cụ thể cho EfficientNet-B0:
• EfficientNet-B0 được thiết kế với các hệ số mở rộng 𝛼 , 𝛽, 𝛾 được xác định thông qua tìm kiếm kiến trúc (neural architecture search) và có các giá trị sau:
• EfficientNet-B0 sử dụng một mạng gốc (baseline network) với các tham số sau: input resolution = 224×224, width = 1, depth = 1
• Conv3x3: Đây là lớp tích chập đầu vào với kernel 3x3, stride 2
MBConv, short for Mobile Inverted Bottleneck Convolution, is a widely used component in deep learning models and serves as the primary building block of EfficientNet, featuring various parameters.
MBConv1: Sử dụng convolution 3x3, stride 1, không có mở rộng (hệ số mở rộng= 1)
MBConv6: Sử dụng convolution 3x3 hoặc 5x5, stride 1 hoặc 2, với hệ số mở rộng 6
Lớp Kết Nối Đầy Đủ (FC) là lớp cuối cùng trong mô hình phân loại, có nhiệm vụ chuyển đổi các đặc trưng không gian thành các đặc trưng trừu tượng hơn để thực hiện phân loại hoặc dự đoán, thường đảm nhận vai trò lớp đầu ra.
To achieve the objectives of the study, the Fully Connected (FC) layer of the pretrained EfficientNet-B0 model is modified to classify three labels: Benign, Normal, and Cancer The original FC layer is replaced with a network consisting of two Dense layers, with a ReLU activation function introduced in between.
Mô hình pretrained EfficientNet-B0 đã được áp dụng phương pháp Transfer Learning, cho phép mô hình phân loại chẩn đoán bệnh ung thư vú kế thừa các tính năng và đặc điểm của model pretrained Điều này giúp giảm thời gian tinh chỉnh huấn luyện và tăng độ tin cậy của mô hình Nhờ vào Transfer Learning, mô hình cũng có khả năng chiết suất và học tập vượt trội.
Quá Trình Huấn Luyện Mô Hình
Quá trình huấn luyện mô hình chẩn đoán bệnh bắt đầu bằng việc thu thập dữ liệu đáp ứng yêu cầu đề tài Sau đó, tiến hành tiền xử lý dữ liệu, sử dụng ngôn ngữ lập trình để phân loại các mẫu theo tên và biến đổi dữ liệu phù hợp với từng mô hình pretrained.
Chúng ta sẽ tiến hành chuyển đổi định dạng dữ liệu và chuẩn hóa hình ảnh để phù hợp với mô hình pretrained Tiếp theo, chúng ta sẽ tinh chỉnh lớp cuối cùng của mô hình, đảm bảo đầu ra có ba lớp, nhằm phân loại chính xác ba giai đoạn bệnh theo mục tiêu của đề tài.
Bước tiếp theo là xác định các tham số của các mô hình đã được huấn luyện trước để tối ưu hóa kết quả Quá trình này bao gồm việc tinh chỉnh các thông số như kích thước Batch, số Epochs, bộ tối ưu (Optimizer) và tốc độ học (Learning rate) để phù hợp với quá trình huấn luyện.
✓ Batch size2: Số lượng mẫu dữ liệu sẽ được xử lý trong một lần huấn luyện
✓ Epochs0: Số lần toàn bộ tập dữ liệu được truyền qua mô hình Quá trình huấn luyện sẽ kết thúc khi hoàn thành 100 epochs
✓ Optimizer được chọn là Adam vì nó có khả năng thích nghi tốt và có hiệu suất cao trong các bài toán dùng trong mạng học sâu
✓ Learning rate=0.001: Xác định mức độ thay đổi của các trọng số
Sau khi hoàn thành việc huấn luyện mô hình, bước tiếp theo là đánh giá hiệu suất và độ chính xác để đảm bảo tính tin cậy Các tiêu chí đánh giá mô hình trong quá trình huấn luyện bao gồm nhiều yếu tố quan trọng.
1 Hàm mất mát (Loss Function):
Hàm mất mát CrossEntropyLoss là một trong những hàm phổ biến nhất trong các bài toán phân loại, giúp đo lường sự khác biệt giữa dự đoán của mô hình và nhãn thực tế.
• loss(𝑥,𝑦) là giá trị hàm loss, đại diện cho sai số giữa giá trị dự đoán và giá trị thực tế
• xi là nhãn thực tế của lớp thứ i Nếu lớp i là lớp thực sự của mẫu dữ liệu xi = 1, nếu không xi = 0
• yi là xác suất dự đoán của mô hình đối với lớp thứ i
Độ chính xác được xác định bằng tỷ lệ phần trăm dự đoán đúng so với tổng số mẫu dữ liệu Trong mỗi epoch, độ chính xác được tính cho cả tập dữ liệu huấn luyện và tập dữ liệu kiểm tra.
• TP: Số lượng các mẫu dương tính được dự đoán đúng
• TN: Số lượng các mẫu âm tính được dự đoán đúng
• FP: Số lượng các mẫu âm tính được dự đoán sai
• FN: Số lượng cái mẫu dương tính được dự đoán sai.
Thông tin phần cứng sử dụng để huấn luyện mô hình
Laptop ASUS trang bị card đồ họa NVIDIA GeForce GTX 1650 hỗ trợ các tác vụ AI và máy học ở mức cơ bản Card đồ họa này có 896 lõi CUDA và tốc độ xung nhịp tối đa khoảng 1665 MHz, cho phép thực hiện các phép tính song song cần thiết cho huấn luyện và suy luận mô hình máy học Với giá cả phải chăng, GTX 1650 là lựa chọn lý tưởng cho những người mới bắt đầu tìm hiểu về AI.
Mặc dù NVIDIA GeForce GTX 1650 có hiệu suất tốt, nhưng nó không thể so sánh với các GPU chuyên biệt cho học sâu như NVIDIA RTX hay Tesla Đối với những tác vụ phức tạp hoặc yêu cầu hiệu suất cao, nên lựa chọn các GPU cao cấp với nhiều lõi CUDA và tính năng tăng tốc AI chuyên biệt, giúp mô hình dễ dàng huấn luyện và đạt được kết quả tốt hơn.
XÂY DỰNG HỆ THỐNG CHẨN ĐOÁN TỪ XA
Mô hình hệ thống hỗ trợ chẩn đoán từ xa bệnh ung thư vú
Để tiếp nhận hình ảnh từ các cơ sở y tế, một máy chủ đã được xây dựng song song với hệ thống xử lý và chẩn đoán dựa trên AI, như mô tả trong hình 4.1 Mô hình này giúp cải thiện hiệu quả trong việc xử lý và phân tích hình ảnh y tế.
• Máy chụp X quang vú: Đây là thiết bị dùng để chụp ảnh X-quang của vú
Hệ thống có khả năng kết nối và truyền tải dữ liệu qua internet, cho phép truyền dữ liệu từ xa và sử dụng các dịch vụ trên đám mây một cách hiệu quả.
• PC cá nhân và PC người dùng: PC cá nhân dùng để giao tiếp với máy chủ còn
PC người dùng thì có thể thể truy cập vào hệ thống để xem kết quả chẩn đoán sau khi đã được xử lý
Hình 4.1 Mô hình hệ thống
Bên trong máy chủ có hai thành phần chính:
• AI (Trí tuệ nhân tạo) sẽ phân tích các ảnh X-quang để hỗ trợ chẩn đoán hoặc phát hiện các bất thường
Báo cáo kết quả được tạo ra từ phân tích của AI, cung cấp thông tin chi tiết về tình trạng sức khỏe của bệnh nhân.
Hệ thống hỗ trợ chẩn đoán ung thư vú qua ảnh X-quang được phát triển với giao diện người dùng trên nền tảng web, giúp triển khai trực tuyến và truy cập từ xa Giao diện hệ thống sẽ được thiết kế bằng HTML và sử dụng ngôn ngữ Python, đảm bảo tính tương thích cao với hệ thống AI.
Hình 4.2 Sơ đồ các giao diện phần mềm chính của hệ thống
Tổng quan về hệ thống
Hệ thống chẩn đoán ung thư vú bằng AI được thiết kế dưới dạng trang web, hỗ trợ bác sĩ và chuyên viên y tế trong việc chẩn đoán dựa trên hình ảnh X-quang Mục tiêu của ứng dụng là phát triển một công cụ chẩn đoán tin cậy, với độ chính xác cao, dễ quản lý và phát triển, nhằm nâng cao hiệu quả trong chẩn đoán và điều trị ung thư vú.
Hệ thống cho phép người dùng dễ dàng chẩn đoán trên trang web, tiết kiệm thời gian và công sức, với kết quả được truyền đạt nhanh chóng và thuận tiện Nó có khả năng chẩn đoán ba mức độ của bệnh ung thư vú, nhưng chỉ mang tính chất tham khảo và không thay thế cho chẩn đoán chính thức của bác sĩ Ứng dụng được xây dựng theo kiến trúc hiện đại, đảm bảo hiệu suất và trải nghiệm người dùng tốt nhất, với các thành phần chính được tích hợp.
• Frontend (Giao diện người dùng): Đây là phần giao diện và hiển thị kết quả cho người dùng
• Backend (Xử lý logic và quản lý cơ sở dữ liệu): Là phần xử lý, nhận và gửi dữ liệu giữa Frontend và Model API
• API (Application Programming Interface): Phân tích và chẩn đoán kết quả dựa trên hình ảnh X-quang vú bằng mô hình máy học đã được huấn luyện
Hình 4.3 Sơ đồ khối của Website
Xây dựng ứng dụng
4.4 Xây dựng ứng dụng
Frontend của website là phần giao diện người dùng tương tác trực tiếp, bao gồm tất cả những yếu tố mà người dùng thấy như văn bản, kích thước và màu sắc chữ, kiểu chữ, cũng như các hiệu ứng chuyển động như thay đổi con trỏ chuột khi di chuột vào menu hoặc các menu sổ xuống.
Một Frontend được xây dựng từ các ngôn ngữ lập trình như HTML, CSS và Javascript, cho phép thu thập dữ liệu từ tương tác của người dùng và gửi tín hiệu đến Backend để xử lý Khi triển khai giao diện người dùng, cần đảm bảo các thuộc tính cần thiết để đáp ứng yêu cầu của đề tài.
Giao diện người dùng cần phải có tính thẩm mỹ cao và dễ sử dụng, với bố cục hợp lý để đảm bảo thao tác đơn giản Các thành phần như nút nhấn và label phải được sắp xếp một cách rõ ràng và logic Màu sắc và kích thước của các đơn vị hiển thị cần hài hòa và dễ nhìn, đồng thời giao diện cũng phải tương thích với nhiều thiết bị và màn hình khác nhau.
Giao diện sẽ tương tác với Backend thông qua API, cho phép gửi và nhận yêu cầu từ người dùng Các yêu cầu này bao gồm việc gửi hình ảnh X-quang và nhận kết quả trả về Do đó, giao diện cần triển khai chức năng gọi API tương ứng và xử lý phản hồi từ Backend một cách hiệu quả.
• Nhập thông tin người dùng: Để có thể liên hệ, hỗ trợ người dùng tốt hơn và giải quyết các vấn đề phát sinh
Giao diện nhập thông tin bệnh nhân, như hình 4.4, cho phép người dùng tương tác ngay khi truy cập trang web Dưới đây là một số chi tiết về các đối tượng trong giao diện này.
Tiêu đề giao diện không chỉ thể hiện tên đề tài mà còn bao gồm biểu tượng mạng xã hội, giúp người dùng dễ dàng truy cập vào trang cá nhân của nhà phát triển, từ đó thuận tiện liên hệ với bộ phận phát triển trang web.
• Biểu mẫu nhập thông tin: Người dùng được yêu cầu nhập các thông tin cá nhân
• Chức năng tải tệp lên: Người dùng có thể chọn những hình ảnh X-quang cần chẩn đoán bằng cách nhấn vào nút “Chọn tệp”
• Nút chẩn đoán: Sau khi điền đẩy đủ thông tin và chọn tệp, người dùng nhấn vào nút chẩn đoán để gửi yêu cầu chẩn đoán lên hệ thống
Hình 4.4 Hình ảnh của giao diện người dùng
Giao diện kết quả chẩn đoán, như hình 4.5, hiển thị thông tin cá nhân và kết quả chẩn đoán từ hình ảnh X-quang vú mà người dùng đã tải lên.
Hình 4.5 Giao diện hiển thị kết quả chẩn đoán 4.4.2 Thi Công Backend
Backend là phần hỗ trợ quan trọng cho hoạt động của website hoặc ứng dụng mà người dùng không thấy Nó giống như bộ não của con người, xử lý yêu cầu và lựa chọn thông tin chính xác để hiển thị Nhờ vào Backend, website hoạt động hiệu quả và cung cấp thông tin nhanh chóng cho người dùng.
Backend đóng vai trò quan trọng trong việc thực hiện các chức năng chính của hệ thống Bài viết này sẽ xây dựng Backend bằng Python và framework Flask để phát triển chương trình đáp ứng yêu cầu đề tài Flask sẽ được sử dụng để tạo API, xử lý yêu cầu HTTP từ người dùng, cũng như xử lý hình ảnh X-quang và trả về kết quả chẩn đoán thông qua mô hình học sâu triển khai bằng PyTorch.
Hình 4.6 Lưu đồ giải thuật của Backend
Quy trình bắt đầu bằng việc khởi tạo mô hình và thiết lập ảnh đầu vào, sau đó sử dụng API Flask để khởi động trang web Người dùng sẽ nhập thông tin và ảnh để hệ thống chẩn đoán bệnh thông qua mô hình đã được huấn luyện Hệ thống liên tục kiểm tra tình trạng hoạt động của trang web và có khả năng lặp lại quy trình nếu mọi thứ hoạt động đúng, hoặc kết thúc nếu phát hiện lỗi Để xây dựng Backend, cần thực hiện các bước chính, bao gồm thiết lập môi trường làm việc.
❖ Cài đặt các công cụ và thư viện cần thiết: Cài đặt Python, pip và các thư viện liên quan như Flask, PyTorch, EfficienetNet- PyTorch, Pillow
❖ Tạo cấu trúc thư mục: Tạo thư mục dự án với các thư mục con và tải lên hình ảnh
42 b) Chuẩn bị mô hình học sâu:
❖ Tải và thiết lập mô hình EfficientNet đã được huấn luyện trước đó và thêm các lớp mạng thần kinh để phù hợp với yêu cầu của đề tài
❖ Nạp trọng số từ tệp ‘.pth’ vào mô hình c) Thiết lập ứng dụng Flask:
❖ Tạo ứng dụng Flask và cấu hình thư mục tải lên cho các tệp hình ảnh
❖ Tạo các hàm để xử lý yêu cầu GET và POST, xử lý hình ảnh tải lên và dự đoán kết quả
To set up the localhost address for the backend, use "https://hm05frtl-5000.asse.devtunnels.ms/" for API communication with the frontend Additionally, create a user interface to enhance user interaction within the application.
Tạo tệp HTML cho trang chủ và trang kết quả, trong đó trang chủ có biểu mẫu cho phép người dùng nhập thông tin cá nhân và tải hình ảnh X-quang vú Trang kết quả sẽ hiển thị kết quả chẩn đoán kèm theo thông tin và hình ảnh đã chọn Cuối cùng, chạy và kiểm tra ứng dụng để đảm bảo hoạt động hiệu quả.
❖ Chạy ứng dụng và mở trình duyệt để truy cập giao diện người dùng
❖ Thực hiện các thao tác nhập thông tin, tải hình ảnh và nhận kết quả chẩn đoán để đảm bảo hệ thống hoạt đống chính xác.
Thi công model API
Model API được xây dựng bằng thư viện Flask của Python, có nhiệm vụ tạo API để thực hiện các chức năng sau:
• Nhận tên file ảnh cần chẩn đoán: API tiếp nhận tên file ảnh được gửi từ Frontend thông qua phương thức POST khi người dùng gửi yêu cầu
• Tiền xử lý ảnh: Sau khi nhận được tên file ảnh, API tiến hành xử lý ảnh trước khi đưa vào mô hình học máy
API cho phép tải mô hình máy học đã được huấn luyện từ tệp tin ".pth", có thể được lưu trữ cục bộ hoặc trên máy chủ từ xa.
• Dự đoán và đưa ra kết quả chẩn đoán: API sử dụng mô hình máy học đã được tải trước đó để chẩn đoán cho ảnh được cung cấp
Hình 4.7 Mô hình hoạt động của API [18]
Khi người dùng tải ảnh lên Frontend và yêu cầu chẩn đoán, Frontend sẽ gửi yêu cầu dự đoán qua API "/predict" đến Backend:
• Backend nhận yêu cầu và gọi API của Model API để thực hiện dự đoán
• Backend nhận kết quả trả về từ Model API và gửi lại cho Frontend
• Frontend hiển thị kết quả chẩn đoán ra màn hình cho người dùng Việc sử dụng Model API mang lại nhiều lợi ích, bao gồm:
API hỗ trợ tự động hóa quy trình chẩn đoán hình ảnh, giúp giảm thiểu sự can thiệp của con người và tiết kiệm thời gian đáng kể.
• Cải thiện độ chính xác: Mô hình máy học có thể chẩn đoán với độ chính xác cao hơn so với chẩn đoán thủ công của con người
• Khả năng mở rộng: API có thể dễ dàng mở rộng để xử lý lượng lớn dữ liệu và đáp ứng nhu cầu ngày càng tăng của người dùng
• Tính linh hoạt: API có thể được tích hợp vào nhiều ứng dụng khác nhau, chẳng hạn như website, ứng dụng di động, v.v
API mô hình là yếu tố then chốt trong việc phát triển hệ thống chẩn đoán hình ảnh hiệu quả và chính xác Sử dụng API không chỉ giúp đơn giản hóa quy trình chẩn đoán mà còn nâng cao độ tin cậy và mở rộng khả năng ứng dụng của hệ thống.
Hình 4.8 Lưu đồ giải thuật của API
KẾT QUẢ VÀ NHẬN XÉT
Kết quả huấn luyện hệ thống
Nhóm chúng em đã phát triển và huấn luyện một mô hình mạng học sâu nhằm phân loại ảnh ung thư vú từ xa, với mục tiêu phân loại hình ảnh thành ba mức độ bệnh: Benign, Cancer và Normal.
5.1.1 Kết quả huấn luyện thể hiện ở dạng biểu đồ:
Hình 5.1 Giá trị độ chính xác(Accuracy)
Hình 5.2 Giá trị hàm mất mát (Loss)
Kết quả huấn luyện trên ba trường hợp bệnh ung thư vú cho thấy độ chính xác của mô hình đạt khoảng 97% Thời gian hoàn thành quá trình huấn luyện là khoảng thời gian tối ưu để đảm bảo hiệu quả.
Trong quá trình huấn luyện kéo dài 3200 phút, biểu đồ độ chính xác (hình 5.5) và biểu đồ hàm mất mát (hình 5.6) cho thấy sự khác biệt giữa tập train và tập test, với đường màu xanh dương đại diện cho tập train và đường màu cam cho tập test Kết quả sau khi huấn luyện cho thấy những điểm nổi bật và cần lưu ý trong quá trình đánh giá mô hình.
✓ Đối với biểu đồ hình 5.1
Giá trị của hàm Training Accuracy đạt khoảng 97% và tăng nhanh, gần đạt tối đa sau 20 epochs, duy trì ổn định ở mức cao Điều này chứng tỏ mô hình học tập hiệu quả với dữ liệu đã được cung cấp.
Giá trị hàm Testing Accuracy chỉ đạt khoảng 77%, với độ chính xác dao động quanh mức 0,8 Điều này cho thấy mô hình chưa tổng quát tốt trên tập test, vì không có sự cải thiện đáng kể sau vài epochs đầu.
✓ Đối với biểu đồ hình 5.2
Giá trị của hàm Training Loss giảm dần và ổn định sau khoảng 20 epochs, cho thấy mô hình đang học hiệu quả từ dữ liệu huấn luyện.
❖ Giá trị hàm Testing Loss không ổn định, dao động nhiều và không có xu hướng giảm dần
5.1.2 Đánh giá theo phương pháp ma trận nhầm lẫn
Ma trận nhầm lẫn là một công cụ quan trọng trong việc đánh giá hiệu suất của mô hình phân loại trong máy học và thị giác máy tính, thể hiện số lượng điểm dữ liệu được phân loại vào từng lớp so với thực tế Nó thường được trình bày dưới dạng bảng hai chiều, trong đó hàng biểu thị nhãn thực tế và cột biểu thị dự đoán của mô hình Các ô trong ma trận cho thấy số lượng điểm dữ liệu thực sự thuộc vào mỗi loại nhãn và được dự đoán vào từng loại nhãn Công cụ này hỗ trợ đánh giá độ chính xác, độ nhạy, và các chỉ số đánh giá khác của mô hình phân loại Một ma trận nhầm lẫn bao gồm 4 chỉ số chính.
TP (True Positive) là số lượng dự đoán chính xác của mô hình, phản ánh số lần mô hình xác định đúng tình trạng của bệnh nhân.
TN (True Negative) đại diện cho số lượng dự đoán chính xác gián tiếp của mô hình, cụ thể là khi mô hình xác định đúng một người không mắc bệnh.
FP (False Positive) là số lượng dự đoán sai lệch của mô hình, xảy ra khi mô hình nhầm lẫn và cho rằng bệnh nhân mắc bệnh trong khi thực tế không phải vậy.
FN (False Negative) là chỉ số thể hiện số lượng dự đoán sai lệch của mô hình, cụ thể là khi mô hình cho rằng một người không mắc bệnh, trong khi thực tế họ lại đang mắc bệnh.
Hình 5.3 Chỉ số của một ma trận nhầm lẫn [21]
Công thức của các chỉ số:
• Precision được định nghĩa là tỉ lệ số điểm true positive trong số những điểm được phân loại là positive (TP + FP) có công thức như sau:
• Recall được định nghĩa là tỉ lệ số điểm true positive trong số những điểm thực sự là positive (TP + FN)
F1-Score là một chỉ số quan trọng trong đánh giá hiệu suất của mô hình, được tính bằng trung bình hài hòa của Precision và Recall Chỉ số này giúp cân bằng giữa Precision và Recall, đặc biệt hiệu quả trong các trường hợp dữ liệu không cân bằng Công thức tính F1-Score là: 𝐹1_𝑆𝑐𝑜𝑟𝑒 = 2 × 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 × 𝑅𝑒𝑐𝑎𝑙𝑙.
Hình 5.4 Ma trận nhầm lẫn Ý nghĩa tổng quát từng chỉ số của ma trận nhầm lẫn theo hình 5.4:
• 412 (TP cho BENIGN): Mô hình dự đoán chính xác BENIGN 412 lần
• 114 (FP cho CANCER từ BENIGN): Mô hình dự đoán sai BENIGN là CANCER 114 lần
• 22 (FP cho NORMAL từ BENIGN): Mô hình dự đoán sai BENIGN là NORMAL 22 lần
• 117 (FP cho BENIGN từ CANCER): Mô hình dự đoán sai CANCER là BENIGN 117 lần
• 381 (TP cho CANCER): Mô hình dự đoán chính xác CANCER 381 lần
• 17 (FP cho NORMAL từ CANCER): Mô hình dự đoán sai CANCER là NORMAL 17 lần
• 35 (FP cho BENIGN từ NORMAL): Mô hình dự đoán sai NORMAL là BENIGN 35 lần
• 15 (FP cho CANCER từ NORMAL): Mô hình dự đoán sai NORMAL là CANCER 15 lần
• 449 (TP cho NORMAL): Mô hình dự đoán chính xác NORMAL 449 lần
Để cải thiện mô hình và giảm thiểu số lượng dự đoán sai giữa Benign và Cancer, cần thực hiện điều chỉnh các tham số của mô hình, bổ sung dữ liệu huấn luyện và áp dụng các kỹ thuật tiền xử lý hiệu quả.
Hình 5.5 Biểu đồ hiệu suất của mô hình
Biểu đồ hình 5.8 minh họa hiệu suất của mô hình phân loại trong ba trường hợp bệnh ung thư vú: Normal (bình thường), Benign (lành tính) và Cancer (ung thư).
Mô hình trong trường hợp bình thường đạt độ chính xác cao trong việc xác định hình ảnh X-quang vú, với các chỉ số Precision, Recall và F1-Score đều vượt qua 90%.
Kiểm tra độ chính xác và độ ổn định của hệ thống
5.2.1 Độ chính xác của hệ thống
Sau khi hoàn thành quá trình huấn luyện mô hình, nhóm chúng tôi tiến hành kiểm tra độ chính xác cho từng trường hợp bệnh, thực hiện kiểm tra ngẫu nhiên 20 tình trạng bệnh khác nhau.
50 ảnh trên cả hai tập test và train của tập ảnh Mini- DDSM, sau đó thu được các biểu đồ sau:
Hình 5.6 Biểu đồ kiểm tra độ chính xác của tập train
Hệ thống chẩn đoán cho thấy độ chính xác cao trên tập train, với tỷ lệ 100% cho các trường hợp Normal và Cancer, cho thấy tất cả chẩn đoán đều đúng Đối với trường hợp Benign, độ chính xác đạt 95%, chỉ có 5% trường hợp có thể bị chẩn đoán sai Kết quả này chứng tỏ hiệu suất tốt của hệ thống trong việc kiểm tra các trường hợp Normal và Cancer, mặc dù vẫn còn một số sai sót nhỏ đối với Benign.
Hình 5.7 Biểu đồ kiểm tra độ chính xác của tập test
Hệ thống chẩn đoán cho thấy tỷ lệ chính xác tốt trên tập test, với 75% cho trường hợp Benign và 25% chẩn đoán sai, trong khi tỷ lệ chính xác cho Cancer đạt 70% và 30% chẩn đoán sai Đặc biệt, hệ thống duy trì độ chính xác cao 95% cho trường hợp Normal, chỉ có 5% chẩn đoán sai.
Kết quả kiểm tra cho thấy hệ thống hoạt động hiệu quả hơn trên các trường hợp Normal, nhưng vẫn còn một số sai sót trong việc chẩn đoán các trường hợp Benign và Cancer.
5.2.2 Độ ổn định của hệ thống
Bảng 5.1 Kiểm tra độ ổn định của hệ thống
Laptop Điện thoại hệ điều hành Android Điện thoại hệ điều hành IOS
Mạng nội bộ (cùng wifi)
Truy cập nhanh, web hoạt động tốt Truy cập nhanh, web hoạt động tốt Truy cập nhanh, web hoạt động tốt
Truy cập nhanh, web hoạt động tốt Truy cập mức độ ổn, tùy theo tốc độ mạnh của mạng
Truy cập mức độ ổn, tùy theo tốc độ mạnh của mạng
Theo bảng 5.1, hệ thống hoạt động ổn định trên mọi thiết bị khi kết nối cùng một mạng wifi Tuy nhiên, tốc độ truy cập có thể chậm hơn một chút đối với thiết bị di động khi sử dụng mạng 4G hoặc kết nối với mạng wifi khác.
5.3 Kết quả thực thi Website
Sau khi hoàn thành việc khai triển mô hình đã được huấn luyện lên giao diện người dùng, ta chạy hệ thống qua các bước sau:
• Bằng cách gõ lệnh “python app.py” trong cửa sổ terminal
Chương trình sẽ được khởi động trên trình duyệt qua đường dẫn https://hm05frtl-5000.asse.devtunnels.ms/ Người dùng cần nhập dữ liệu bệnh nhân và tải ảnh X-quang lên giao diện trang web để bắt đầu quá trình chẩn đoán Sau khi hoàn tất, nhấn vào ô “Chẩn đoán” để chương trình xử lý và hiển thị kết quả chẩn đoán cùng thông tin bệnh nhân.
Hình 5.8 Giao diện truy cập web của máy tính người dùng
Bài viết trình bày kết quả chẩn đoán ba trường hợp bệnh ung thư vú, bao gồm thông tin người dùng như họ tên, ngày sinh, chiều cao, cân nặng, quê quán và dân tộc Kết quả chẩn đoán tình trạng bệnh dựa trên ảnh X-quang được tải lên Hình 5.9 minh họa trường hợp Benign, hình 5.10 là trường hợp Cancer, và hình 5.11 thể hiện tình trạng Normal Ngoài ra, hình 5.12 và 5.13 cho thấy giao diện và kết quả khi truy cập bằng điện thoại.
Hình 5.9 Kết quả nhận diện của trường hợp Benign
Hình 5.10 Kết quả nhận diện của trường hợp Cancer
Hình 5.11 Kết quả nhận diện của trường hợp Normal
Hình 5.12 Giao diện khi truy cập bằng điện thoại
Sau khi hoàn thành quá trình huấn luyện, mô hình đạt độ chính xác khoảng 97% trong việc nhận diện ba tình trạng của bệnh ung thư vú: bình thường (Normal), lành tính (Benign) và ung thư (Cancer), đáp ứng tốt các mục tiêu đã đề ra Tuy nhiên, mô hình vẫn còn một số hạn chế cần cải thiện.
Hiệu suất của mô hình phụ thuộc mạnh mẽ vào chất lượng dữ liệu huấn luyện Nếu hình ảnh có chất lượng kém, ánh sáng yếu hoặc bị nhiễu, mô hình có thể không hoạt động hiệu quả.
Huấn luyện mạng học sâu cần nhiều tài nguyên tính toán, tạo ra thách thức lớn cho các tổ chức hoặc cá nhân thiếu cơ sở hạ tầng mạnh mẽ để đáp ứng yêu cầu này.
Mạng học sâu thường khó để diễn giải, điều này có thể ảnh hưởng đến sự tin cậy của các chuyên gia y tế khi áp dụng mô hình vào thực tiễn.
Mô hình phân loại ảnh ung thư vú từ xa có tiềm năng phát triển để nâng cao hiệu suất và tối ưu hóa giao diện web, nhằm tạo điều kiện dễ sử dụng cho thực tiễn Hơn nữa, nó có thể tích hợp vào các hệ thống chẩn đoán y khoa, giúp bác sĩ phát hiện sớm ung thư vú, từ đó đưa ra các biện pháp kịp thời và hiệu quả.
Nhận xét
Sau khi huấn luyện, mô hình đạt độ chính xác khoảng 97% trong việc nhận diện ba tình trạng bệnh ung thư vú: bình thường (Normal), lành tính (Benign) và ung thư (Cancer), đáp ứng đầy đủ mục tiêu đề ra Tuy nhiên, mô hình vẫn còn một số hạn chế cần cải thiện.
Hiệu suất của mô hình phụ thuộc vào chất lượng dữ liệu huấn luyện Nếu hình ảnh có chất lượng kém, ánh sáng yếu hoặc bị nhiễu, mô hình có thể không hoạt động hiệu quả.
Huấn luyện mạng học sâu cần nhiều tài nguyên tính toán, tạo ra thách thức cho các tổ chức hoặc cá nhân thiếu cơ sở hạ tầng mạnh mẽ để đáp ứng nhu cầu này.
Mạng học sâu thường khó hiểu, điều này có thể ảnh hưởng đến sự tin cậy của các chuyên gia y tế khi áp dụng mô hình vào thực tiễn.
Mô hình phân loại ảnh ung thư vú từ xa có khả năng phát triển mạnh mẽ, nhằm nâng cao hiệu suất và tối ưu hóa giao diện web để dễ sử dụng trong thực tiễn Hệ thống này có thể được tích hợp vào các giải pháp chẩn đoán y khoa, hỗ trợ bác sĩ trong việc phát hiện sớm ung thư vú, từ đó đưa ra các biện pháp kịp thời và hiệu quả.