Đặc biệt, việc giải quyết vấn đề không đồng nhất của dữ liệu tổn thương da đã được thực hiện hiệu quả, với mô hình phân loại sử dụng phương pháp cắt vùng ảnh dựa trên kết quả mô hình phâ
MỤC TIÊU CỦA ĐỀ TÀI
1 CHƯƠNG 1: TỔNG QUAN VỀ MACHINE LEARNING
2 CHƯƠNG 2: TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU
3 CHƯƠNG 3: PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN CHẨN ĐOÁN BỆNH DA
4 CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ
2 NHỮNG HẠN CHẾ CỦA ĐỀ TÀI
KẾ HOẠCH THỰC HIỆN ĐỀ TÀI
STT Thời gian Công việc Ghi chú
Hệ thống các kiến thức đã học và các khái niệm liên quan
- Nắm vững các khái niệm cơ bản và nâng cao về Deep Learning
- Tìm hiểu về các mô hình Deep Learning phổ biến và ứng dụng thực tế của chúng
- Hiểu rõ về các thuật toán tối ưu và các thách thức trong quá trình huấn luyện mô hình
2 Từ 28/09/2023 Đến 27/10/2023 Nghiên cứu và áp dụng thuật toán phân vùng ảnh trong mô hình Deep Learning
- Nghiên cứu các thuật toán phân vùng ảnh (Image
- Áp dụng thuật toán phù hợp vào bài toán cụ thể và đánh giá hiệu suất
- Chuẩn bị tập dữ liệu và xây dựng môi trường thí nghiệm
3 Từ 28/10/2023 Đến 24/11/2023 Tiếp tục nghiên cứu và thực hiện phân loại ảnh sử dụng các mô hình Deep Learning
- Nghiên cứu các mô hình Deep Learning cho phân loại ảnh
- Tiếp tục xử lý dữ liệu và chuẩn bị cho quá trình huấn luyện
- Huấn luyện mô hình, đánh giá và điều chỉnh siêu tham số
4 Từ 25/11/2023 Đến 15/12/2023 Tiến hành huấn luyện và đánh giá mô hình học sâu
- Thực hiện quá trình đánh giá kết quả của mô hình trên tập dữ liệu thử nghiệm
- Đề xuất cải tiến và làm rõ hướng phát triển cho công trình
Tổng nghiên cứu, viết báo cáo khóa luận, thiết kế Powerpoint
- Viết báo cáo khóa luận với cấu trúc logic và chặt chẽ
- Thiết kế bài trình bày trên PowerPoint với đồ họa và biểu đồ mô tả kết quả Ý kiến giảng viên hướng dẫn: ………
Ngày tháng năm 2023 Ngày tháng năm 2023
(ký & ghi rõ họ tên) Người viết đề cương
PGS.TS Hoàng Văn Dũng Lê Hải Dương
DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT 8
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 10
3 MỤC TIÊU CỦA ĐỀ TÀI 11
CHƯƠNG 1: TỔNG QUAN VỀ MACHINE LEARNING 13
1.1.2 CÁC PHƯƠNG PHÁP ĐÀO TẠO MÔ HÌNH MACHINE LEARNING… 16
1.2.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI ANN 18
1.2.2 GIỚI THIỆU VỀ KIẾN TRÚC MẠNG ANN 19
1.3.1 KHÁI NIỆM MẠNG NƠ-RON TÍCH CHẬP 21
1.4.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI TRANSFORMER 23
1.4.2 TRANSFORMER ỨNG DỤNG TRONG THỊ GIÁC MÁY TÍNH 24
1.5 CƠ SỞ LÝ THUYẾT PHÂN ĐOẠN HÌNH ẢNH 26
1.5.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN ĐOẠN HÌNH ẢNH 26
1.5.2 ỨNG DỤNG TRONG LĨNH VỰC Y HỌC 26
1.5.3 TỔNG QUAN VỀ MÔ HÌNH PHÂN ĐOẠN ẢNH 27
1.5.4 METRICS ĐÁNH GIÁ CHO CÁC BÀI TOÁN PHÂN VÙNG ẢNH 29 1.6 CƠ SỞ LÝ THUYẾT PHÂN LOẠI HÌNH ẢNH 30
1.6.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN LOẠI HÌNH ẢNH 30
1.6.2 ỨNG DỤNG TRONG LĨNH VỰC Y HỌC 32
1.6.3 TỔNG QUAN VỀ CÁC MÔ HÌNH LOẠI ẢNH 33
1.6.4 METRICS ĐÁNH GIÁ CHO CÁC BÀI TOÁN LOẠI VÙNG ẢNH 35
CHƯƠNG 2: TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU 37
2.1 KHẢO SÁT THỰC TRẠNG HIỆN TẠI 37
2.1.1 SỰ PHỔ BIẾN CỦA UNG THƯ DA TRÊN TOÀN CẦU 37
2.1.2 ỨNG DỤNG CHĂM SÓC DA CHO BẢN THÂN VÀ DỊCH VỤ Y TẾ TỪ XA… 38
2.2 NHỮNG THÁCH THỨC HIỆN TẠI 41
2.2.1 SỰ THIẾU ĐỒNG BỘ TRONG VIỆC THU THẬP DỮ LIỆU VỀ TỔN THƯƠNG DA 41
2.2.2 KHÓ KHĂN CHO VIỆC GIẢI QUYẾT 2 NHIỆM VỤ: PHÂN LOẠI VÀ PHÂN ĐOẠN TỔN THƯƠNG DA TRÊN MỘT MÔ HÌNH
2.3 TẬP DỮ LIỆU VỀ DA 43
2.3.1 DỮ LIỆU CHO NHIỆM VỤ PHÂN ĐOẠN 44
2.3.2 DỮ LIỆU CHO NHIỆM VỤ PHÂN LOẠI 46
2.4 MÔI TRƯỜNG VÀ TÀI NGUYÊN SỬ DỤNG 47
CHƯƠNG 3: PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN CHẨN ĐOÁN BỆNH DA……… 50
3.1 ĐỀ XUẤT GIẢI PHÁP TỔNG THỂ 503.2 GIAI ĐOẠN 1: PHÂN ĐOẠN TỔN THƯƠNG DA BẰNG SEGFORMER 51
3.3 GIAI ĐOẠN 2: TẠO HÌNH ẢNH TỔN THƯƠNG CẮT XÉN VỚI ĐỆM ĐƯỜNG VIỀN 52
3.4 GIAI ĐOẠN 3: PHÂN LOẠI HÌNH ẢNH BẰNG CONVNEXT 52
3.5 KIẾN TRÚC MÔ HÌNH SEGFORMER 53
3.5.4 LÝ DO CHỌN MÔ HÌNH SEGFORMER 56
3.6.4 LÝ DO CHỌN MÔ HÌNH CONVNEXT 59
CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 60
4.1 HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN ĐOẠN TỔN THƯƠNG DA…… 60
4.1.1 TIỀN XỬ LÝ DỮ LIỆU 60
4.1.3 HÀM MẤT MÁT VÀ THUẬT TOÁN TỐI ƯU 63
4.1.5 KẾT QUẢ HUẤN LUYỆN MÔ HÌNH PHÂN ĐOẠN TỔN THƯƠNG DA………… 68
4.2 HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA…… 70
4.2.1 KIẾN TRÚC MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA 70
4.2.2 TIỀN XỬ LÝ DỮ LIỆU 70
4.2.4 HÀM MẤT MÁT VÀ THUẬT TOÁN TỐI ƯU 75
4.2.5 KẾT QUẢ HUẤN LUYỆN MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA……… 76
4.3 PHÂN TÍCH KẾT QUẢ ĐẠT ĐƯỢC QUA QUÁ TRÌNH THỰC NGHIỆM……… 79
4.3.2 PHÂN TÍCH TRƯỜNG HỢP DA ÁC TÍNH BỊ ĐOÁN NHẦM THÀNH
4.3.3 KẾT QUẢ TÔNG QUAN PHƯƠNG PHÁP 83
2 HẠN CHẾ CỦA ĐỀ TÀI 85
Hình ảnh 1.1 Mối quan hệ giữa AI, ML, Deep learning 15
Hình ảnh 1.2 Ví dụ về Supervised Learning và Unsupervised Learning [6] 17
Hình ảnh 1.3 Ví dụ về Reinforcement Learning [7] 18
Hình ảnh 1.4 Ví dụ mạng CNN – Convolutional Neural Network [12] 21
Hình ảnh 1.6 Vision Transformer (ViT) [16] 25
Hình ảnh 1.7 Ví dụ về phần đoạn hình ảnh [18] 26
Hình ảnh 1.8 Ví dụ về phần đoạn hình ảnh ứng dụng trong y tế [19] 27
Hình ảnh 1.9 Ví dụ về phần đoạn hình ảnh sử dụng phương pháp K-mean [21] 28
Hình ảnh 1.10 Kiến trúc mô hình SegNet [22] 28
Hình ảnh 1.15 Ví dụ về bài toán phân loại ảnh 31
Hình ảnh 1.16 Hình ảnh phân loại bệnh phổi thông qua ảnh CT [27] 33
Hình ảnh 1.17 Kiến trúc mô hình VGG-16 [28] 34
Hình ảnh 2.1 Hình ảnh thống kê ung thư da ở Úc [35] 37
Hình ảnh 2.2 Ứng dụng SkinVision [38] 38
Hình ảnh 2.3 Ứng dụng iDoc24 [39] 39
Hình ảnh 2.4 Ứng dụng First Derm [40] 40
Hình ảnh 2.5 Ứng dụng Cureskin [41] 41
Hình ảnh 2.6 Một số hình ảnh từ tập dữ liệu ISIC 2020 [42] 42
Hình ảnh 2.7 Thông tin về ISIC Challenge [44] 44
Hình ảnh 2.8 Thông tin về tập dữ liệu ISIC 2018 [43] 44
Hình ảnh 2.9 ISIC2018_Task1-2_Test_Input [43] 45
Hình ảnh 2.10 ISIC2018_Task1_Test_GroundTruth [43] 45
Hình ảnh 2.11 Tập dữ liệu ISIC2020 sau khi được cấu trúc 46
Hình ảnh 2.12 Một số hình ảnh từ tập dữ liệu ISIC2020 [42] 47
Hình ảnh 3.1 Khung toàn diện để phân tích tổn thương da: Phân đoạn, trích xuất đường viền, cắt xén tổn thương và phân loại ảnh 50
Hình ảnh 3.2 Hình ảnh kết quả đạt được kết thúc giai đoạn 1 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 52
Hình ảnh 3.3 Hình ảnh kết quả đạt được kết thúc giai đoạn 2 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 52
Hình ảnh 3.4 Hình ảnh kết quả đạt được kết thúc giai đoạn 3 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 53
Hình ảnh 3.5 Kiến trúc mô hình SegFormer [45] 54
Hình ảnh 3.6 Block of the SegFormer [45] 55
Hình ảnh 4.1 Hình ảnh kết quả được in ra trong quá trình huấn luyện mô hình SegFormer 66
Hình ảnh 4.2 Kết quả quá trình training được đo trên tập train 67
Hình ảnh 4.3 Kết quả quá trình training được đo trên tập validation 68
Hình ảnh 4.4 Kết quả đánh giá mô hình trên tập test 68
Hình ảnh 4.5 Đoạn mã khai báo kiến trúc mô hình SkinClassifier 70
Hình ảnh 4.6 Hình ảnh về hai tập dữ liệu 71
Hình ảnh 4.7 Đoạn mã dùng để augment image 72
Hình ảnh 4.8 Các hình ảnh mới được tạo ra sau khi qua các phép biến đổi 74
Hình ảnh 4.9 Kết quả đánh giá tập test khi huấn luyện trên tập Crop Lesion Image 76
Hình ảnh 4.10 Kết quả đánh giá tập test khi huấn luyện trên tập Original Image 77
Hình ảnh 4.11 So sánh Accuracy trong quá trình training hai bộ dữ liệu Crop Lesion
Hình ảnh 4.12 So sánh Precision trong quá trình training hai bộ dữ liệu Crop Lesion
Hình ảnh 4.13 So sánh Recall trong quá trình training hai bộ dữ liệu Crop Lesion Image và Original Image 78
Hình ảnh 4.14 So sánh khoảng chênh lệch Accuracy / Precision / Recall trong quá trình training hai bộ dữ liệu Crop Lesion Image và Original Image 79
Hình ảnh 4.15 Hình ảnh một vài mẫu mà 2 phương pháp dự đoán sai 80
Hình ảnh 4.16 Hình ảnh dự đoán sai da ác tính thành lành tính của phương pháp truyền thống 82
Hình ảnh 4.17 Hình ảnh dự đoán sai da ác tính thành lành tính của phương pháp đề xuất 83
Bảng 1 Thông tin về tập dữ liệu ISIC 2020 [42] 46
Bảng 2 Tài nguyên sử dụng trên server 48
Bảng 3 Tài nguyên sử dụng trên colab 49
Bảng 4 So sánh kết quả của mô hình SegFormer với các mô hình khác [45] 57
Bảng 5 Bảng ISIC 2018 Leaderboards nhiệm vụ 1 Lesion Boundary Segmentation [46] 69
Bảng 6 Kết quả mô hình phân loại ảnh trên hai tập dữ liệu 76
Bảng 7 Tổng hợp kết quả training mô hình phân đoạn và phân loại tổn thương da 80
DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT
Thuật ngữ Tên đầy đủ Nghĩa tiếng Việt
AI Artificial Intelligence Trí tuệ nhân tạo
ML Machine Learning Học máy
CV Computer Vision Thị giác máy tính
CNN Convolutional Neural Networks Mạng nơ-ron tích chập
ANN Artificial Neural Network Mạng nơ-ron nhân tạo
DL Deep Learning Học sâu
DNN Deep Neural Network Mạng nơ-ron sâu
Hợp tác hình ảnh da quốc tế
ReLU Rectified Linear Unit Đơn vị tuyến tính chỉnh lưu
BERT Bidirectional Encoder Representations from Transformers
Biểu diễn từ Transformer với bộ mã hóa hai chiều
LSTM Long Short-Term Memory Bộ nhớ Ngắn hạn Dài
ViT Vision Transformer Transformer dành cho thị giác
IoU Intersection over Union Giao nhau trên Liên hiệp
Luận văn này tập trung vào việc xây dựng mô hình Machine Learning để dự đoán vùng tổn thương trên ảnh y tế, bằng cách áp dụng các kiến thức chuyên sâu về lĩnh vực này Trong quá trình nghiên cứu, chúng tôi đã áp dụng SegFormer để thực hiện phân vùng tổn thương da và kết hợp với ConvNeXt để phân loại ảnh da lành tính và da ác tính Ứng dụng thực tế của mô hình này hướng tới việc hỗ trợ đội ngũ y bác sĩ trong quá trình chẩn đoán và điều trị các trường hợp liên quan tới bệnh về da Điều này mang lại lợi ích đáng kể trong việc nâng cao chất lượng chăm sóc sức khỏe, từ đó cải thiện đời sống và kết quả điều trị cho bệnh nhân
Kết quả thu được là tích cực, với mô hình phân vùng tổn thương da vượt qua top
1 trên ISIC 2018 Leaderboards Mô hình phân loại da, áp dụng phương pháp cắt ảnh, đã đạt hiệu suất vượt trội so với phương pháp truyền thống Đặc biệt, việc giải quyết vấn đề không đồng nhất của dữ liệu tổn thương da đã được thực hiện hiệu quả, với mô hình phân loại sử dụng phương pháp cắt vùng ảnh dựa trên kết quả mô hình phân đoạn tổn thương da, đem lại hiệu suất vượt trội Luận văn mở ra một hướng tiếp cận mới trong lĩnh vực phân loại ảnh y tế
Trong báo cáo này, chúng tôi duy trì nguyên văn tiếng Anh cho một số thuật ngữ nhằm bảo toàn ý nghĩa và nguyên tắc chính xác Điều này giúp đảm bảo sự rõ ràng và mạch lạc trong việc truyền đạt thông tin
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI Đề tài “xây dựng mô hình machine learning dự đoán vùng tổn thương trên ảnh y tế” không chỉ là một nhiệm vụ nghiên cứu mà còn là một sứ mệnh cấp thiết trong lĩnh vực sức khỏe toàn cầu Bệnh ngoài da, với ảnh hưởng lớn đến hàng triệu người trên khắp thế giới, không chỉ tạo ra vấn đề về thể chất mà còn tác động mạnh mẽ đến tâm lý của bệnh nhân Quan trọng hơn, nếu không được chẩn đoán và điều trị kịp thời, những bệnh lý này có thể phát triển thành những vấn đề nghiêm trọng, trong đó có cả nguy cơ mắc ung thư da
Hiện nay, phương pháp chẩn đoán truyền thống do chuyên gia y tế thực hiện vẫn đang được ưa chuộng, tuy nhiên, đây là quá trình tốn kém và chủ quan Để đáp ứng nhu cầu ngày càng tăng về sự chính xác và tốc độ trong chẩn đoán bệnh da, việc áp dụng các mô hình Machine Learning tự động trở nên cực kỳ quan trọng
Tuy nhiên, chúng ta đối mặt với thách thức lớn về khan hiếm dữ liệu, đặc biệt là trong lĩnh vực dữ liệu hình ảnh ung thư Sự không nhất quán và hiếm hoi của dữ liệu tạo ra những thách thức đặc biệt trong việc phát triển và đánh giá mô hình học máy Luận văn đã giải quyết vấn đề này bằng cách đề xuất một phương pháp độc đáo xử lý dữ liệu không nhất quán và tận dụng tối đa hiệu suất của mô hình
Những nỗ lực nghiên cứu của luận văn không chỉ nhằm mục đích cung cấp giải pháp đột phá cho vấn đề chẩn đoán ung thư da mà còn mong muốn đóng góp vào sự phát triển của các công cụ hỗ trợ quyết định và phương pháp chẩn đoán chính xác cho hình ảnh y tế Hy vọng rằng kết quả của đề tài sẽ mở ra những tiềm năng mới, đưa ra những thay đổi tích cực trong lĩnh vực y tế và đem lại lợi ích toàn diện cho cộng đồng y học và bệnh nhân
Trong khuôn khổ của một khóa luận tốt nghiệp, phạm vi của đề tài được hạn chế bởi thời lượng nghiên cứu và tài nguyên, đồng thời những giới hạn sau cũng giúp định hình rõ ràng phạm vi và mục tiêu của công trình
● Thứ nhất: Trong phạm vi của đề tài này, luận văn tập trung đi sâu vào các thuật toán liên quan đến việc dự đoán vùng tổn thương và phân loại bệnh trên ảnh y tế
Sự chú trọng này giúp tập trung nghiên cứu và phát triển mô hình Machine Learning để giải quyết một khía cạnh cụ thể của vấn đề lớn hơn về bệnh ngoài da
● Thứ hai: Các thuật toán được tìm hiểu, tham khảo và khái quát lại trong đề tài đều xuất phát từ các công trình nghiên cứu đã được công bố trên các tạp chí quốc tế về thị giác máy tính Điều này đảm bảo tính chất tiên tiến và đáng tin cậy của các phương pháp được áp dụng trong nghiên cứu
● Thứ ba: Các thông số và kết quả được trình bày trong nghiên cứu chỉ mang tính chất tham khảo do giới hạn về dữ liệu và tài nguyên phần cứng để huấn luyện các mạng học sâu Điều này là để thể hiện sự minh bạch và rõ ràng về các giả định và hạn chế trong quá trình nghiên cứu
● Thứ tư: Dữ liệu sử dụng trong nghiên cứu này được lựa chọn từ ISIC Challenge
Dataset, giúp đảm bảo tính đa dạng và độ chân thực của thông tin y tế hình ảnh Tuy nhiên, nhận thức rằng sự hạn chế của bộ dữ liệu này cũng có thể ảnh hưởng đến khả năng tổng quát hóa của mô hình trong một số trường hợp
3 MỤC TIÊU CỦA ĐỀ TÀI Để đảm bảo sự thành công và ứng dụng thực tế của đề tài "xây dựng mô hình machine learning dự đoán vùng tổn thương trên ảnh y tế ", luận văn đã đặt ra các mục tiêu nghiên cứu chi tiết như sau:
● Trình bày khái quát về machine learning và các khái niệm cơ bản: o Tạo nền tảng kiến thức vững về Machine Learning (ML) và các khái niệm quan trọng liên quan đến đề tài o Giải thích cách ML có thể được áp dụng trong lĩnh vực chẩn đoán bệnh ngoài da và ảnh hưởng của nó đối với sự tiến bộ trong y học
TỔNG QUAN VỀ MACHINE LEARNING
MACHINE LEARNING
1.1.1 KHÁI NIỆM MACHINE LEARNING Để khám phá sâu hơn về khái niệm Machine Learning (ML), chúng ta cần đặt nền tảng với những khái niệm cơ bản như Trí Tuệ Nhân Tạo (AI) và các khái niệm khác liên quan
Trí Tuệ Nhân Tạo (Artificial Intelligence - AI) là một lĩnh vực khoa học máy tính mang đến cho chúng ta khả năng tạo ra máy tính hoạt động một cách thông minh, giống như hoặc thậm chí vượt qua khả năng tư duy của con người [1] Ý nghĩa AI không chỉ là một công nghệ, mà còn là một khái niệm toàn diện, đại diện cho sự phát triển và tiến bộ của máy tính thông minh.
AI không chỉ học hỏi và thích ứng với môi trường, mà còn có khả năng đưa ra quyết định dựa trên dữ liệu và kinh nghiệm Nó là sự kết hợp của nhiều lĩnh vực như máy học (Machine Learning), xử lý ngôn ngữ tự nhiên (Natural Language Processing), thị giác máy tính (Computer Vision), và nhiều kỹ thuật khác nhau để tạo ra hệ thống có khả năng tự đào tạo và thực hiện nhiều nhiệm vụ Ứng dụng của AI ngày càng trở nên quan trọng trong nhiều lĩnh vực khác nhau Như trong y học, AI được sử dụng để chẩn đoán bệnh, dự đoán điều trị và thậm chí là phát triển các loại thuốc mới Trong sản xuất, hệ thống tự động thông minh có thể quản lý dòng sản xuất và tối ưu hóa quy trình Trong tài chính, AI hỗ trợ trong việc phân tích dữ liệu để dự đoán xu hướng thị trường và đưa ra quyết định đầu tư
Ngoài ra, AI còn góp phần quan trọng trong việc nâng cáo chất lượng cuộc sống hàng ngày của chúng ta, như các hệ thống trợ lý ảo như Siri và Google Assistant, đến các ứng dụng nhận diện khuôn mặt và giọng nói Ngày nay, các công ty lớn và tổ chức trên khắp thế giới đều đang đầu tư mạnh mẽ vào nghiên cứu và phát triển AI, tạo ra những ứng dụng mới và đưa ra những giải pháp sáng tạo trong mọi lĩnh vực AI không chỉ là công nghệ, mà còn là nhân tố quan trọng định hình tương lai của xã hội thông minh và kỷ nguyên công nghiệp 4.0
Machine Learning (ML), hay Học Máy, là một lĩnh vực quan trọng trong lĩnh vực Trí Tuệ Nhân Tạo (AI), mà mục tiêu chính là phát triển các thuật toán và mô hình máy tính có khả năng học hỏi và tự điều chỉnh dựa trên dữ liệu [2] Khác với các phương pháp truyền thống yêu cầu lập trình cụ thể, ML cho phép máy tính học từ kinh nghiệm và dữ liệu, giúp chúng thực hiện nhiều nhiệm vụ mà trước đây đòi hỏi sự can thiệp của con người
Trong lĩnh vực AI, Machine Learning đóng vai trò quan trọng, đưa ra giải pháp cho những vấn đề phức tạp mà các thuật toán truyền thống khó mà giải quyết được Nó là một cột mốc quan trọng trong việc biến ý tưởng về máy tính có khả năng học hỏi từ dữ liệu thành hiện thực
Machine Learning không chỉ đơn thuần là công cụ, mà là một quy trình liên tục Trong quá trình này, máy tính được trang bị các thuật toán để tự động phân loại, dự đoán, hoặc tìm ra mô hình từ dữ liệu Phương pháp này không chỉ giúp máy tính hiểu và áp dụng kiến thức, mà còn giúp chúng nâng cao hiệu suất theo thời gian khi có thêm dữ liệu mới
Nhờ vào khả năng học hỏi, ML đang mở ra nhiều cánh cửa cho sự đổi mới trong nhiều lĩnh vực, từ y học, tài chính, đến sản xuất và dịch vụ khách hàng Điều này không chỉ là sự tiến bộ về công nghệ mà còn là sự mở rộng cho khả năng sáng tạo và tiện ích trong cuộc sống hàng ngày, định hình một tương lai mà máy tính không chỉ thực hiện theo lệnh, mà còn có khả năng "tự suy nghĩ"
Deep Learning, hay Học sâu, là một nhánh quan trọng trong lĩnh vực Machine Learning (ML), và cũng là một yếu tố quan trọng trong sự phát triển của Trí Tuệ Nhân Tạo (AI) Deep Learning tập trung vào việc xây dựng và huấn luyện các mô hình có khả năng hiểu biểu diễn cấp cao của dữ liệu thông qua các lớp (layers) ẩn trong kiến trúc mạng neural [3]
Trong môi trường AI, Deep Learning chính là động lực mạnh mẽ đằng sau sự tiến bộ nhanh chóng của các ứng dụng thông minh Deep Learning giúp máy tính hiểu và rút trích đặc trưng tự động từ dữ liệu phức tạp, không cần sự can thiệp của con người trong quá trình lập trình
Deep Learning không chỉ là công nghệ mới mẻ mà còn là công nghệ chính cho sự đổi mới trong nhiều lĩnh vực Trong y học, Deep Learning được sử dụng để phân loại ảnh y tế và dự đoán bệnh tự nhiên Trong tự động hóa và robot học, Deep Learning giúp máy tính hiểu và tương tác với môi trường xung quanh một cách tự nhiên Các ứng dụng thực tế như xe tự lái và dịch ngôn ngữ cũng là kết quả của sự phát triển mạnh mẽ của Deep Learning Hình ảnh 1.1 dưới đây thể hiện mối quan hệ giữa AI, ML, và DL
Hình ảnh 1.1 Mối quan hệ giữa AI, ML, Deep learning
1.1.2 CÁC PHƯƠNG PHÁP ĐÀO TẠO MÔ HÌNH MACHINE LEARNING
Machine Learning (ML) là một lĩnh vực nghiên cứu quan trọng trong trí tuệ nhân tạo (AI) và đào tạo mô hình là một phần quan trọng của quá trình phát triển các hệ thống thông minh
Supervised Learning là một phương pháp mà mô hình được huấn luyện trên một tập dữ liệu mà mỗi mẫu đã được gán nhãn với đầu ra mong muốn tương ứng Mục tiêu của Supervised Learning là để mô hình có thể dự đoán đầu ra cho các dữ liệu mới mà nó chưa từng thấy trước đó [4] Dữ liệu huấn luyện trong Supervised Learning giống như việc học từ một giáo viên: mô hình được chỉ dẫn bằng cách so sánh đầu ra dự đoán với đầu ra thực tế và điều chỉnh các tham số để làm tăng độ chính xác
Mô hình trong Supervised Learning có khả năng học từ mối quan hệ giữa đầu vào và đầu ra, từ đó tạo ra một quy luật hoặc mô hình dự đoán Phương pháp này được sử dụng rộng rãi trong nhiều ứng dụng, từ dự đoán giá chứng khoán đến nhận diện vật thể trong hình ảnh.Ngoài ra, còn có phương pháp Unsupervised Learning, trong đó mô hình phải tự học từ dữ liệu mà không có thông tin về đầu ra mong muốn [5] Trong Unsupervised Learning, mô hình phải tự khám phá cấu trúc và đặc điểm của dữ liệu, giúp chúng tự động nhận diện các mẫu và quy luật mà không cần sự hướng dẫn cụ thể từ người lập trình Hình Hình ảnh dưới đây mô tả cách hai phương pháp được huấn luyện
Hình ảnh 1.2 Ví dụ về Supervised Learning và Unsupervised Learning [6]
Một phương pháp khác là Reinforcement Learning, trong đó mô hình được huấn luyện thông qua việc tương tác với môi trường và nhận phản hồi thông qua các tình huống thưởng hoặc phạt Mô hình học từ kinh nghiệm và cố gắng tối ưu hóa một hàm thưởng để đạt được mục tiêu cụ thể
Hình ảnh 1.3 Ví dụ về Reinforcement Learning [7]
ARTIFICIAL NEURAL NETWORK
1.2.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI ANN
● Perceptrons là một khái niệm cơ bản trong lĩnh vực Artificial Neural Network (ANN) Nó là một mô hình đơn giản của neural network, được thiết kế để mô phỏng cách các tế bào não hoạt động Mỗi perceptron nhận đầu vào, thực hiện một trọng số và tổng hợp chúng để tạo ra đầu ra [8] Ý tưởng cơ bản này tạo ra nền tảng cho việc xây dựng mạng neural phức tạp hơn
● Neural Network (Mạng Neural): là một tập hợp các perceptrons được kết nối với nhau để tạo ra một hệ thống có khả năng học và tự điều chỉnh Cấu trúc của mạng neural có thể được tổ chức thành các lớp, bao gồm lớp đầu vào, lớp ẩn và lớp đầu ra Mỗi kết nối giữa perceptrons có một trọng số, được điều chỉnh trong quá trình huấn luyện để tối ưu hóa hiệu suất của mô hình [9]
● Activation Function (Hàm Kích Hoạt): giúp định rõ cách mỗi perceptron sẽ phản ứng đối với đầu vào Nó quyết định xem perceptron nên "kích hoạt" hay "tắt" dựa trên giá trị đầu ra sau khi tính toán Các hàm kích hoạt phổ biến bao gồm sigmoid, tanh, và ReLU (Rectified Linear Unit) [10]
● Hidden Layers (Lớp Ẩn): là những lớp perceptrons giữa lớp đầu vào và lớp đầu ra trong mạng neural Những lớp này giúp mô hình học được các đặc trưng phức tạp và biểu diễn dữ liệu ở mức độ cao hơn
● Backpropagation: là một thuật toán quan trọng trong việc huấn luyện mạng neural Nó sử dụng phương pháp gradient descent [11] để điều chỉnh trọng số của các kết nối trong mạng dựa trên sai số giữa đầu ra thực tế và đầu ra dự đoán
Những khái niệm này tạo nên nền tảng cho việc hiểu về cách Artificial Neural Network hoạt động và làm thế nào chúng có khả năng học từ dữ liệu để thực hiện các nhiệm vụ phức tạp
1.2.2 GIỚI THIỆU VỀ KIẾN TRÚC MẠNG ANN
Mạng Neural (NN) là một hệ thống phức tạp được hình thành từ các tầng perceptron, còn được gọi là perceptron đa tầng (multilayer perceptron), nhằm mô phỏng cách tế bào não hoạt động Kiến trúc này bao gồm ba loại tầng chính: tầng vào (input layer), tầng ra (output layer), và tầng ẩn (hidden layer), như mô tả ở hình trên Mỗi loại tầng đóng vai trò quan trọng trong quá trình xử lý thông tin của mạng
● Tầng vào (Input Layer): o Là tầng bên trái cùng của mạng, đại diện cho các đầu vào của hệ thống o Nhận dữ liệu đầu vào dưới dạng vector, mỗi phần tử tương ứng với một thuộc tính của dữ liệu
● Tầng ra (Output Layer): o Là tầng bên phải cùng, thể hiện các đầu ra của mạng o Kết quả của một ANN là một vector có kích thước phụ thuộc vào bài toán cụ thể
● Tầng ẩn (Hidden Layer): o Nằm giữa tầng vào và tầng ra, thực hiện suy luận logic phức tạp o Mỗi nút trong tầng ẩn là một sigmoid neuron, có chức năng kích hoạt đặc biệt
Một mạng NN có thể chứa nhiều tầng ẩn, tùy thuộc vào độ phức tạp của bài toán Các kết nối giữa các nút tạo ra một mạng kết nối đầy đủ (fully-connected network), giúp mô hình học được mối liên kết phức tạp trong dữ liệu Loại mạng neural dựa trên số lượng tầng và nơ-ron:
● Mạng Perceptron Một Lớp (SLP): Chỉ có một layer duy nhất và các nơron là perceptron nhị phân
● Mạng Perceptron Nhiều Tầng (MLP): Có nhiều layer với các nơ-ron là perceptron nhị phân
● Mạng Neural Nông (Shallow ANN): Chỉ có tầng vào và tầng ra, không có tầng ẩn
● Mạng Neural Sâu (Deep Neural Network - DNN): Mạng phức tạp với nhiều tầng, mỗi tầng có nhiều sigmoid perceptron
Kiến trúc của mạng ANN dựa vào số lượng tầng và nơron, được thiết kế tùy thuộc vào bài toán cụ thể và cách giải quyết Hoạt động của mạng ANN thực hiện qua các bước như: đầu vào (input), trọng số liên kết (connection weights), hàm tổng (summation function), ngưỡng (bias), hàm chuyển đổi (transfer function), và kết quả đầu ra
Quá trình học của ANN thực hiện thông qua việc điều chỉnh trọng số liên kết dựa trên sai số giữa đầu ra dự đoán và đầu ra thực tế, thực hiện thông qua thuật toán backpropagation Điều này giúp mô hình ngày càng tối ưu hóa hiệu suất của nó trong quá trình học.
CONVOLUTIONAL NEURAL NETWORK
1.3.1 KHÁI NIỆM MẠNG NƠ-RON TÍCH CHẬP
Mạng Nơ-ron Tích Chập (CNN) là một dạng tiên tiến của Mạng Nơ-ron Nhân Tạo (ANN), được thiết kế đặc biệt để xử lý và nhận diện thông tin trong dữ liệu không gian, đặc biệt là ảnh [12] CNN thường được sử dụng cho các ứng dụng như nhận diện đối tượng trong hình ảnh, phân loại ảnh, hay nhận dạng khuôn mặt Cấu Trúc Cơ Bản của CNN:
● Input: Thường là ảnh với kích thước H x W x D (H: chiều cao, W: chiều rộng, D: độ dày, ví dụ: ảnh RGB có độ dày 3)
● Convolutional Layer: CNN sử dụng các bộ lọc (kernels) để quét qua ảnh và tạo ra các biểu diễn đặc trưng Mỗi bộ lọc tập trung vào việc nhận diện các đặc điểm như cạnh, góc, hay mẫu texture
● Pooling Layer: Sau mỗi tầng tích chập, tầng gộp thực hiện việc giảm kích thước của biểu diễn đặc trưng và giữ lại thông tin quan trọng nhất Phổ biến là tầng gộp theo max pooling, chọn giá trị lớn nhất từ các vùng nhỏ
● Fully Connected Layer: Các đặc trưng được học từ tầng tích chập và gộp được đưa vào các tầng đầy đủ kết nối để tạo ra dự đoán cuối cùng
● Parameter Sharing: Trong tầng tích chập, các bộ lọc chia sẻ tham số trên toàn bộ ảnh, giúp giảm lượng tham số cần học
Hình ảnh 1.4 Ví dụ mạng CNN – Convolutional Neural Network [12]
Tầng Tích Chập (Convolutional Layer) là một phần quan trọng trong kiến trúc của Mạng Nơ-ron Tích Chập (CNN) Chức năng chính của tầng này là trích xuất các đặc trưng và mối quan hệ không gian từ dữ liệu đầu vào, thường là ảnh Cách Hoạt Động
● Bộ Lọc (Kernel): o Convolutional Layer sử dụng các bộ lọc (kernels) để quét qua ảnh đầu vào o Mỗi kernel là một ma trận trọng số được áp dụng lên một vùng nhỏ của ảnh
● Convolutional Operation: o Bộ lọc di chuyển qua ảnh theo từng bước (bước nhảy hoặc stride) o Tại mỗi vị trí, tích chập giữa bộ lọc và phần tương ứng của ảnh được tính toán
● Tích Chập và Tạo Ra Đặc Trưng: o Quá trình tích chập tạo ra một ma trận kết quả, thường gọi là
"feature map" hoặc "convolved feature." o Đặc trưng này biểu diễn mối quan hệ không gian giữa các điểm ảnh và giúp mô hình nhận diện các đặc trưng cụ thể trong ảnh
● Hàm Kích Hoạt (Activation Function): o Sau khi tính toán, một hàm kích hoạt như ReLU (Rectified Linear Unit) thường được áp dụng để thêm tính phi tuyến tính vào đầu ra o ReLU chuyển đổi các giá trị âm thành 0, giúp mô hình học được các đặc trưng không tuyến tính
● Bộ Lọc và Đa Tầng: o Convolutional Layer thường có nhiều bộ lọc khác nhau, mỗi bộ lọc nhấn mạnh và trích xuất các đặc trưng khác nhau o Điều này giúp mô hình tự động học các đặc trưng đa dạng từ dữ liệu
Hình dưới đây là cách mà thuật toán convlutional thực hiện
TRANSFORMER
1.4.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI TRANSFORMER
● Transformer: là một kiến trúc mô hình học máy được giới thiệu bởi Vaswani et al vào năm 2017, đã đạt được sự thành công đặc biệt trong xử lý ngôn ngữ tự nhiên Điều đặc biệt của Transformer là khả năng chú ý (attention mechanism), cho phép mô hình tập trung vào các phần quan trọng của đầu vào [12]
● Attention Mechanism: Cơ chế chú ý (Attention Mechanism) là một phần quan trọng của Transformer Nó cho phép mô hình tập trung vào các phần khác nhau của đầu vào với trọng số khác nhau Các trọng số này được học trong quá trình huấn luyện và giúp mô hình hiểu rõ mối quan hệ không gian và ngữ cảnh trong dữ liệu
● Self-Attention: Trong Transformer, cơ chế chú ý tự (Self-Attention) cho phép mô hình tạo ra biểu diễn mới cho mỗi từ dựa trên các từ khác trong câu Điều này giúp mô hình xử lý các phụ thuộc dài hạn và tạo ra biểu diễn ngữ cảnh bogh linh hoạt và mạnh mẽ
● Multi-Head Attention: Một biến thể của cơ chế chú ý, Multi-Head Attention, cho phép mô hình học từ nhiều "điểm nhìn" khác nhau, cải thiện khả năng biểu diễn và khả năng tổng hợp thông tin
● Positional Encoding: Transformer không duy trì thông tin về vị trí tuyến tính của từ trong câu Để giải quyết vấn đề này, positional encoding được thêm vào biểu diễn của từng từ, giúp mô hình hiểu về thứ tự trong chuỗi
● Encoder và Decoder: Transformer được chia thành hai phần chính: Encoder (bộ mã hóa) và Decoder (bộ giải mã) Encoder chuyển đổi đầu vào thành biểu diễn có ý nghĩa, trong khi Decoder sử dụng biểu diễn đó để tạo ra đầu ra
● BERT (Bidirectional Encoder Representations from Transformers): là một mô hình ngôn ngữ dựa trên Transformer, được đào tạo trên một lượng lớn dữ liệu với mục tiêu hiểu biểu diễn ngôn ngữ tự nhiên và thậm chí có khả năng "hiểu" ngữ cảnh [14]
● GPT (Generative Pre-trained Transformer): là một dạng khác của Transformer, nổi tiếng với khả năng tạo ra văn bản tự nhiên Nó sử dụng cơ chế chú ý và quá trình tiền huấn luyện để học được biểu diễn ngôn ngữ phong phú và tự nhiên [15]
Những khái niệm này là những khái niệm phổ biến nhất khi nhắc tới mô hình Transformer, nó đã mang lại những đột phá quan trọng cho xử lý ngôn ngữ tự nhiên và thị giác máy tính Transformer không chỉ thay đổi cách chúng ta hiểu về cấu trúc mô hình học máy, mà còn mở rộng sự ảnh hưởng ra nhiều lĩnh vực khác Trong lĩnh vực thị giác máy tính, transformer đã chứng minh khả năng hiệu quả và đa dạng, làm nổi bật sự linh hoạt và sức mạnh đa tác vụ của nó trong cả những ứng dụng thực tế và nghiên cứu tiên tiến
1.4.2 TRANSFORMER ỨNG DỤNG TRONG THỊ GIÁC MÁY TÍNH
Transformer, xuất phát từ xử lý ngôn ngữ tự nhiên, đã chứng minh khả năng xuất sắc khi áp dụng vào lĩnh vực thị giác máy tính Dưới đây là cách Transformer hoạt động và được đào tạo trong ngữ cảnh thị giác máy tính [13] :
● Encoder-Decoder Architecture: Transformer thường được sử dụng với kiến trúc encoder-decoder Trong thị giác máy tính, encoder thường được áp dụng để rút trích đặc trưng từ ảnh
● Self-Attention trong Encoder: Cơ chế self-attention giúp encoder tập trung vào các vùng quan trọng của ảnh, tạo ra biểu diễn đặc trưng hiệu quả
● Multi-Head Attention: Để tăng khả năng biểu diễn, cơ chế multi-head attention được sử dụng, cho phép mô hình học từ nhiều "góc nhìn" khác nhau của ảnh
● Positional Encoding: Transformer không duy trì thông tin về vị trí tuyến tính của pixel trong ảnh, do đó, positional encoding được thêm vào biểu diễn để giữ thông tin về không gian
● Transfer Learning và Fine-Tuning: Đào tạo Transformer thị giác máy tính thường được thực hiện thông qua việc chuyển giao (transfer learning) từ mô hình đã được đào tạo trên bộ dữ liệu lớn như ImageNet Sau đó, mô hình có thể được điều chỉnh (fine-tuned) trên bộ dữ liệu cụ thể của nhiệm vụ mong muốn
● Ứng dụng trong Detection và Segmentation: Transformer thị giác máy tính thường được sử dụng trong các nhiệm vụ như object detection và segmentation, nơi khả năng hiểu biểu diễn không gian là quan trọng
CƠ SỞ LÝ THUYẾT PHÂN ĐOẠN HÌNH ẢNH
Nhiệm vụ phân đoạn ảnh là một trong những thách thức quan trọng nhất trong lĩnh vực thị giác máy tính, nơi mà mục tiêu chính là phân chia hình ảnh thành các vùng nhỏ hơn với mục đích nhận diện và hiểu biết nội dung Điều này không chỉ là một bước tiến quan trọng trong phân loại hình ảnh mà còn cung cấp thông tin chi tiết về vị trí và ranh giới của các đối tượng trong hình ảnh
1.5.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN ĐOẠN HÌNH ẢNH
Phân đoạn ảnh không chỉ đơn giản là việc gán một nhãn cho toàn bộ hình ảnh mà còn đặt ra thách thức là gán nhãn từng pixel riêng lẻ trong hình ảnh Mục tiêu là tạo ra một biểu đồ vị trí chi tiết của từng đối tượng, giúp máy tính hiểu rõ hơn về cấu trúc và mối quan hệ giữa các thành phần [18] Dưới đây là hình ảnh mô tả, các mô hình phân đoạn thực hiện
Hình ảnh 1.7 Ví dụ về phần đoạn hình ảnh [18] Ở mức độ ứng dụng, phân đoạn ảnh đóng vai trò quan trọng trong nhiều lĩnh vực như y học (phân đoạn cơ quan, tổn thương), tự động lái xe (nhận diện đường đi và vật cản), và thậm chí trong ngành công nghiệp với việc kiểm tra chất lượng sản phẩm
1.5.2 ỨNG DỤNG TRONG LĨNH VỰC Y HỌC
Trong lĩnh vực y học, phân đoạn ảnh chơi một vai trò lớn trong việc phân loại và theo dõi tổn thương và bệnh lý Việc này không chỉ giúp bác sĩ và chuyên gia y tế đưa ra chẩn đoán chính xác hơn mà còn tăng cường khả năng theo dõi và đánh giá hiệu quả của các phương pháp điều trị
Hình ảnh 1.8 Ví dụ về phần đoạn hình ảnh ứng dụng trong y tế [19]
Nhiệm vụ này đặt ra nhiều thách thức, từ việc xử lý đối tượng nhỏ đến việc xử lý đối tượng lớn và đa dạng Trong phần tiếp theo, chúng ta sẽ tổng quan về mô hình phân đoạn ảnh và tìm hiểu về cách mà SegFormer, một mô hình tiên tiến, giải quyết những thách thức này một cách hiệu quả
1.5.3 TỔNG QUAN VỀ MÔ HÌNH PHÂN ĐOẠN ẢNH
Nhiều thuật toán phân đoạn hình ảnh đã trải qua sự phát triển từ các phương pháp truyền thống như thresholding, histogram-based bundling, region growing, k-means clustering, watersheds, đến những thuật toán tiên tiến hơn như active contours, graph cuts, conditional và Markov random fields, và phương pháp sparsity-based [20] Tuy nhiên, trong những năm gần đây, mô hình học sâu (DL) đã đánh dấu một bước đột phá trong lĩnh vực phân đoạn hình ảnh, mang lại những cải tiến đáng kể về hiệu suất và độ chính xác, thường đạt được tỷ lệ cao trong các thử nghiệm phổ biến
Hình ảnh 1.9 Ví dụ về phần đoạn hình ảnh sử dụng phương pháp K-mean [21]
Một số kiến trúc học sâu đáng chú ý mà cộng đồng thị giác máy tính sử dụng bao gồm mạng nơ-ron tích chập (CNNs), mạng nơ-ron hồi quy (RNNs) và bộ nhớ ngắn hạn dài ngắn (LSTM), bộ mã hóa-giải mã, và mạng gan tạo Với sự phổ biến của học sâu, nhiều kiến trúc nơron khác nhau đã được đề xuất trong những năm gần đây, bao gồm transformers, capsule networks, gated recurrent units, spatial transformer networks
Hình ảnh 1.10 Kiến trúc mô hình SegNet [22]
Sự tiến bộ của mô hình học sâu đã mang lại những đột phá đáng kể trong việc xử lý hình ảnh và phân đoạn, làm thay đổi cách chúng ta hiểu và tiếp cận vấn đề phân đoạn ảnh Trong phần tiếp theo, chúng ta sẽ tìm hiểu về SegFormer, một trong những mô hình hàng đầu cho nhiệm vụ phân đoạn hình ảnh
1.5.4 METRICS ĐÁNH GIÁ CHO CÁC BÀI TOÁN PHÂN VÙNG ẢNH Để đánh giá mô hình phân đoạn, nhiều tiêu chí khác nhau cần được xem xét, bao gồm độ chính xác định lượng, tốc độ (thời gian suy luận) và yêu cầu lưu trữ (bộ nhớ) Tuy nhiên, trong nhiều nghiên cứu, sự tập trung chủ yếu là đánh giá độ chính xác của mô hình Dưới đây là tổng hợp các tiêu chí phổ biến nhất để đánh giá độ chính xác của các thuật toán phân đoạn
● Pixel Accuracy (PA): đơn giản là tỷ lệ giữa số pixel được phân loại đúng và tổng số pixel Đối với K + 1 lớp (K lớp đối tượng và lớp nền), pixel accuracy được định nghĩa như sau: (Trong đó p_ij là số lượng pixel thuộc lớp i được dự đoán là thuộc lớp j) Chi tiết công thực được thể hiện qua hình sau Công thức Pixel Accuracy [23]
● Mean Pixel Accuracy (MPA): MPA là phiên bản mở rộng của PA, trong đó tỷ lệ pixel đúng được tính theo từng lớp và sau đó được trung bình hóa trên tổng số lớp Chi tiết công thực được thể hiện qua hình sau Công thức Mean Pixel Accuracy [23]
● Intersection over Union (IoU): IoU hoặc Jaccard Index là một trong những tiêu chí phổ biến nhất trong phân đoạn ý nghĩa Nó được định nghĩa như diện tích giao giữa mặt phân đoạn được dự đoán và thực tế, chia cho diện tích hợp nhất giữa chúng: Trong đó A và B là mặt phân đoạn thực tế và Công thức Intersection over Union [24]
● Dice coefficient là một tiêu chí phổ biến khác, thường được sử dụng trong phân đoạn hình ảnh y tế Nó được định nghĩa như hai lần diện tích giao giữa mặt phân đoạn được dự đoán và thực tế, chia cho tổng số pixel trong cả hai hình ảnh Khi áp dụng vào dữ liệu boolean (ví dụ: bản đồ phân đoạn nhị phân), Dice coefficient định nghĩa giống hệt với F1 score Chi tiết công thực được thể hiện qua hình sau Công thức Dice [25]
1.6 CƠ SỞ LÝ THUYẾT PHÂN LOẠI HÌNH ẢNH
Bài toán phân loại hình ảnh (hay Image Classification) là một trong những bài toán quan trọng nhất trong lĩnh vực thị giác máy tính, nơi mà máy tính được dạy để hiểu và phân loại hình ảnh dựa trên nội dung chúng Dưới đây là một cái nhìn chi tiết về định nghĩa, ý nghĩa và ứng dụng rộng rãi của bài toán này
1.6.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN LOẠI HÌNH ẢNH
Bài toán phân loại hình ảnh đặt ra mục tiêu xác định loại của một hình ảnh cụ thể dựa trên nội dung của nó [26]
● Nó yêu cầu máy tính học cách nhận diện và phân loại hình ảnh dựa trên các đặc trưng và mẫu trong dữ liệu huấn luyện Mục đích cuối cùng là gán một nhãn hay phân loại cho hình ảnh đầu vào
TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU
KHẢO SÁT THỰC TRẠNG HIỆN TẠI
2.1.1 SỰ PHỔ BIẾN CỦA UNG THƯ DA TRÊN TOÀN CẦU
Theo thống kê từ Tổ chức Y tế Thế giới (WHO), hàng năm có khoảng 1,2 triệu trường hợp ung thư da không phải là ung thư biểu mô và 325.000 trường hợp ung thư biểu mô xảy ra trên toàn thế giới Điều này tạo nên một nhu cầu cấp bách cho các phương tiện phát hiện và can thiệp sớm [34] Với việc 2/3 dân số thế giới có sử dụng điện thoại di động, ứng dụng di động trở thành một phương tiện linh hoạt và tiềm năng để đối phó với các vấn đề về da Dưới đây là hình ảnh tóm tắt các thống kê về bệnh trên da ở Úc do Spotscreen thực hiện
Hình ảnh 2.1 Hình ảnh thống kê ung thư da ở Úc [35]
Khi công nghệ tiếp tục phát triển, sự tiện lợi của nó cũng ngày càng được mở rộng đến toàn cầu Năm 2013, chỉ có 56% người Mỹ sở hữu điện thoại thông minh, con số này đã tăng lên khoảng 90% vào thời điểm hiện tại [36] Theo một khảo sát gần đây, ít nhất 75% dân số sở hữu điện thoại thông minh ở hầu hết các quốc gia Trong lĩnh vực da liễu, một nghiên cứu năm 2017 đã phát hiện có đến 526 ứng dụng [37] , và mặc dù không có dữ liệu gần đây về số lượng ứng dụng về da liễu, nhưng chắc chắn đã có hàng trăm ứng dụng về chúng
2.1.2 ỨNG DỤNG CHĂM SÓC DA CHO BẢN THÂN VÀ DỊCH VỤ Y TẾ TỪ XA
Có nhiều tùy chọn dịch vụ chăm sóc da từ xa và nền tảng chăm sóc bản thân ngày càng gia tăng Các ứng dụng như SkinIO, Scanoma, Miiskin, FirstDerm, Direct Derm, iDoc24 và SkinVision đều hoạt động dựa trên cùng một nguyên lý: họ hứa hẹn cho bệnh nhân khả năng tự kiểm tra các triệu chứng và sau đó kết nối với bác sĩ da liễu trực tuyến để được tư vấn trong khoảng thời gian rất ngắn Thông thường, người dùng có thể tải ảnh của họ lên một nền tảng cụ thể, và thuật toán thông minh và/hoặc các bác sĩ da liễu sẽ đưa ra lời khuyên dựa trên chúng
SkinVision: Công ty đóng đặc trị tại Amsterdam đã phát triển một ứng dụng điện thoại thông minh để đánh giá dựa trên các yếu tố rủi ro của ung thư da và theo dõi các nốt da có vấn đề tiềm ẩn Ứng dụng này đã có 3,5 triệu request trên toàn cầu bởi gần 2 triệu người dùng Thuật toán thông minh kết hợp với chuyên môn của các bác sĩ da liễu đã phát hiện hơn 55.000 trường hợp ung thư da [37]
Hình ảnh 2.2 Ứng dụng SkinVision [38] iDoc24: Dịch vụ da liễu đoạt giải thưởng này có mặt ở hơn 160 quốc gia và có sẵn trong 7 ngôn ngữ Nền tảng này đã nhận được hơn 7.000 yêu cầu từ khắp nơi trên thế giới Họ cũng phát hiện rằng hầu hết các vấn đề đều không nguy hiểm: iDoc24 cho biết 70% trong số tất cả các trường hợp đã được xem xét có thể tự điều trị và họ khuyến nghị bệnh nhân thực hiện thêm xét nghiệm trong 30% trường hợp còn lại [37]
Hình ảnh 2.3 Ứng dụng iDoc24 [39]
First Derm: Đội ngũ phát triển của iDoc24 cũng phát triển và vận hành nền tảng First Derm, có tính năng tương tự như ứng dụng iDoc24 Nó được ra mắt vào năm 2014 dưới dạng ứng dụng iOS, có sẵn trong 6 ngôn ngữ và cung cấp một công cụ đánh giá da liễu trên đường đi như một bước hướng dẫn đầu tiên về các vấn đề chăm sóc da [39]
Hình ảnh 2.4 Ứng dụng First Derm [40]
Cureskin: Ứng dụng dựa trên trí tuệ nhân tạo này được phát triển bởi hai kỹ sư trước đây làm việc cho Google và nhằm đối mặt với tình trạng thiếu hụt bác sĩ da liễu tại Ấn Độ Nó có thể chẩn đoán sáu loại tình trạng da thông thường - mụn, mụn đỏ, sẹo, đốm đen, đốm nâu và quầng thâm Người dùng chụp ảnh, thuật toán phân tích vấn đề da, chatbot của ứng dụng đặt một số câu hỏi và, tùy thuộc vào các đầu vào, trí tuệ nhân tạo sẽ đề xuất một chế độ chăm sóc da trong vòng tám tuần [37]
Hình ảnh 2.5 Ứng dụng Cureskin [41]
NHỮNG THÁCH THỨC HIỆN TẠI
2.2.1 SỰ THIẾU ĐỒNG BỘ TRONG VIỆC THU THẬP DỮ LIỆU VỀ TỔN
Trong bài toán phân loại tổn thương da, một trong những thách thức chính là sự thiếu đồng bộ trong quá trình thu thập dữ liệu Dữ liệu về tổn thương da thường được thu thập từ nhiều nguồn thiết bị khác nhau, có thể đến từ các bệnh viện khác nhau, và được chụp từ các góc độ và vị trí tổn thương đa dạng
Sự đa dạng này không chỉ xuất phát từ sự khác biệt giữa các thiết bị y tế sử dụng mà còn bởi sự biến động trong cách thức thu thập hình ảnh Kích thước và độ phân giải của hình ảnh cũng có thể khác nhau tùy thuộc vào thiết bị, tạo ra một tập dữ liệu đa dạng về chất lượng và độ chi tiết của hình ảnh Hình ảnh dưới đây mô tả một vài mẫu dữ liệu không đồng nhất trong tập dữ liệu ISIC 2020
Hình ảnh 2.6 Một số hình ảnh từ tập dữ liệu ISIC 2020 [42]
Hơn nữa, các bác sĩ và nhân viên y tế thường thu thập dữ liệu trong điều kiện thực tế, khiến cho việc kiểm soát môi trường chụp hình trở nên khó khăn Điều này có thể dẫn đến việc có sự biến động trong ánh sáng, màu sắc, và cả độ tương phản giữa các hình ảnh
Thêm vào đó, sự đa dạng về thời gian thu thập dữ liệu cũng tạo ra một thách thức nữa Dữ liệu thường được thu thập trong một khoảng thời gian dài, có thể từ nhiều ngày đến nhiều tháng, dẫn đến sự biến động trong điều kiện và trạng thái của tổn thương da theo thời gian
Những biến động và thiếu đồng bộ trong dữ liệu thu thập này tạo ra một thách thức đối với việc phát triển mô hình chính xác và đáng tin cậy cho việc phân loại tổn thương da Đối mặt với những vấn đề này đòi hỏi sự chú ý đặc biệt đến quá trình tiền xử lý dữ liệu và đảm bảo tính đồng nhất trong tập dữ liệu
2.2.2 KHÓ KHĂN CHO VIỆC GIẢI QUYẾT 2 NHIỆM VỤ: PHÂN LOẠI VÀ
PHÂN ĐOẠN TỔN THƯƠNG DA TRÊN MỘT MÔ HÌNH
Trong bối cảnh nghiên cứu phân loại và phân đoạn tổn thương da, một trong những thách thức đáng kể là việc thực hiện cả hai nhiệm vụ này trên cùng một mô hình segmentation Việc đồng thời giải quyết cả nhiệm vụ phân loại và phân đoạn đòi hỏi sự chú ý đặc biệt đến thiết kế mô hình và xử lý dữ liệu
Một thách thức quan trọng là sự không cân xứng giữa khối lượng công việc của hai nhiệm vụ Trong khi phân loại tập trung vào việc gán nhãn cho tổn thương da với một loại cụ thể, phân đoạn yêu cầu mô hình phải hiểu rõ ranh giới chính xác của tổn thương trong hình ảnh Điều này có nghĩa là mô hình cần hiểu biên độ, hình dạng và đặc trưng chi tiết của từng tổn thương
Thêm vào đó, sự không đồng nhất trong dữ liệu đưa ra một thách thức lớn Vì dữ liệu được thu thập từ nhiều nguồn và thiết bị khác nhau, mô hình phải làm việc hiệu quả với sự biến động lớn về chất lượng và đặc điểm hình ảnh Điều này đặt ra yêu cầu về quá trình tiền xử lý và chuẩn hóa dữ liệu để đảm bảo tính đồng nhất
Mô hình segmentation cần phải có khả năng "nhìn thấu" lớp biểu đồ của ảnh để hiểu được các cấu trúc tổn thương và liên kết chúng với các nhãn phân loại Điều này yêu cầu kiến thức sâu sắc về cả hai nhiệm vụ và sự tinh tế trong quá trình huấn luyện để đảm bảo rằng mô hình có thể đồng thời đạt được hiệu suất cao cho cả phân loại và phân đoạn tổn thương da.
TẬP DỮ LIỆU VỀ DA
Luận văn đã tiến hành thử nghiệm để đánh giá hiệu quả của phương pháp trên hai bộ dữ liệu chính: ISIC 2020 [42] và ISIC 2018 [43] Hình ảnh dưới đây là chính web mô tả về tập dữ liệu ISIC
Hình ảnh 2.7 Thông tin về ISIC Challenge [44]
2.3.1 DỮ LIỆU CHO NHIỆM VỤ PHÂN ĐOẠN
Luận văn sử dụng bộ dữ liệu ISIC 2018 để huấn luyện mô hình phân đoạn Bộ dữ liệu này bao gồm ba phần chính: train, val và test với lần lượt 2.594, 100 và 1.000 hình ảnh Mỗi hình ảnh da được kèm theo một hình ảnh thang độ xám tương ứng, tượng trưng cho mặt nạ của vùng bị tổn thương Chi tiết thêm được mô tả trong hình ảnh sau
Hình ảnh 2.8 Thông tin về tập dữ liệu ISIC 2018 [43]
Hình ảnh dưới là hình ảnh về tập dữ liệu da tổn thương và mặt nạ của vùng tổn thương đi kèm trong tập dữ liệu ISIC 2018
Hình ảnh 2.9 ISIC2018_Task1-2_Test_Input [43]
Hình ảnh 2.10 ISIC2018_Task1_Test_GroundTruth [43]
2.3.2 DỮ LIỆU CHO NHIỆM VỤ PHÂN LOẠI
Bảng 1 Thông tin về tập dữ liệu ISIC 2020 [42] Đối với nhiệm vụ phân loại, luận văn sử dụng bộ dữ liệu ISIC 2020, chi tiết được mô tả trong bảng 1, chứa tổng cộng 33.126 hình ảnh về làn da Trong đó, có 32.542 hình ảnh làn da lành tính và 584 hình ảnh làn da ác tính Luận văn chia tập dữ liệu thành hai phần để huấn luyện và kiểm tra với tỷ lệ 80/20 Bộ huấn luyện bao gồm 26.033 hình ảnh của làn da lành tính và 467 hình ảnh của làn da ác tính Bộ kiểm tra bao gồm 6.509 hình ảnh của làn da lành tính và 117 hình ảnh của làn da ác tính Mô hình phân loại cuối cùng được đánh giá bằng cách sử dụng bộ kiểm tra này Hình ảnh câu trúc tập dữ liệu sau khi được xử lý
Hình ảnh 2.11 Tập dữ liệu ISIC2020 sau khi được cấu trúc
Một số hình ảnh trong tập dữ liệu ISIC 2020, có khi thước không đồng đều và độ sáng là khác nhau, được tổng hợp trong hình sau
Hình ảnh 2.12 Một số hình ảnh từ tập dữ liệu ISIC2020 [42]
MÔI TRƯỜNG VÀ TÀI NGUYÊN SỬ DỤNG
Luận văn đã triển khai môi trường phát triển và huấn luyện mô hình của mình trong một môi trường Python 3.8.18 trên Conda Điều này đảm bảo tính tương thích và ổn định với các thư viện và công cụ chính trong cộng đồng khoa học dữ liệu và máy học
Các tài nguyên phần cứng của luận văn bao gồm một GPU NVIDIA Quadro RTX
4000 với Driver Version 470.199.02 và CUDA Version 11.4 GPU này được sử dụng để tăng tốc quá trình huấn luyện mô hình, đặc biệt là trong các nhiệm vụ phức tạp như phân đoạn tổn thương da và phân loại hình ảnh
Thông tin chi tiết về GPU:
● Công Suất Sử Dụng/Tối Đa: 125W
● Bộ Nhớ Sử Dụng/Tối Đa: 7973MiB
Việc sử dụng GPU giúp tăng tốc quá trình huấn luyện và đảm bảo rằng mô hình của luận văn có thể xử lý hiệu quả các tập dữ liệu lớn và phức tạp trong lĩnh vực phân tích hình ảnh y tế Bảng sau mô tả tài nguyên của server để thực hiện bài luận văn
Bảng 2 Tài nguyên sử dụng trên server
Ngoài ra trong quá trình thực hiện nghiên cứu và triển khai mô hình, luận văn còn sử dụng một GPU Tesla V100-SXM2-16GB được cung cấp bởi Google Colab Dưới đây là một số thông tin chi tiết về GPU này: (Chi tiết xem tại bảng 3)
● Công suất/Pử sử/Công suất tối đa: 23W/300W
● Dung lượng bộ nhớ: 16GB
Bảng 3 Tài nguyên sử dụng trên colab
PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN CHẨN ĐOÁN BỆNH DA
ĐỀ XUẤT GIẢI PHÁP TỔNG THỂ 50 3.2 GIAI ĐOẠN 1: PHÂN ĐOẠN TỔN THƯƠNG DA BẰNG SEGFORMER 51
Trong phần này, luận văn giới thiệu một phương pháp tiếp cận toàn diện để nghiên cứu về tổn thương da từ ảnh y tế Bao gồm ba giai đoạn, giai đoạn 1 sử dụng phân đoạn SegFormer để phân đoạn và nhận biết các khu vực tổn thương trên ảnh y tế Giai đoạn
2 tiếp tục bằng cách tạo hình ảnh tổn thương cắt xén với đệm đường viền, nhằm tối ưu hóa độ chính xác và đồng đều của việc phát hiện và mô phỏng tổn thương
Trong giai đoạn 3, luận văn sử dụng backbone ConvNext để phân loại các hình ảnh tổn thương Điểm đặc biệt là mô hình phân loại ở giai đoạn 3 sẽ được xây dựng trên output của giai đoạn 2 Điều này mang lại lợi ích lớn về mặt hiệu suất, vì mô hình phân loại sẽ được cung cấp bằng dữ liệu được chuẩn bị và tối ưu hóa từ giai đoạn 2, giúp nâng cao khả năng phân loại cuối cùng Hình ảnh dưới đây mô tả chi tiết về Input và Output của 3 giai đoạn xử lý ảnh
Hình ảnh 3.1 Khung toàn diện để phân tích tổn thương da: Phân đoạn, trích xuất đường viền, cắt xén tổn thương và phân loại ảnh
Chi tiết của từng giai đoạn sẽ được trình bày sau đây, mang đến cái nhìn sâu rộng về cách luận văn áp dụng SegFormer, hình ảnh tổn thương cắt xén với đệm đường viền, và ConvNext để đạt được kết quả chính xác và đáng tin cậy trong quá trình đánh giá và phân loại tổn thương da
3.2 GIAI ĐOẠN 1: PHÂN ĐOẠN TỔN THƯƠNG DA BẰNG SEGFORMER
Trong giai đoạn này, đề tài sử dụng kiến trúc SegFormer để phân đoạn tổn thương da Mục tiêu chính là xác định chính xác ranh giới của các tổn thương da Phương pháp này sử dụng SegFormer để phân đoạn theo ngữ nghĩa, trong đó các pixel được phân loại thành các lớp nền và nền trước, tạo ra bản đồ phân đoạn không gian Đồng thời, tập trung vào việc trích xuất đường viền để nâng cao độ chính xác của việc phân định ranh giới tổn thương da Dưới đây là hình ảnh Input và Output của giai đoạn 1 phân đoạn tổn thương da bằng Segformer
Hình ảnh 3.2 Hình ảnh kết quả đạt được kết thúc giai đoạn 1 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020
3.3 GIAI ĐOẠN 2: TẠO HÌNH ẢNH TỔN THƯƠNG CẮT XÉN VỚI ĐỆM ĐƯỜNG VIỀN
Sau giai đoạn phân đoạn, tạo ra một cái nhìn toàn diện về các tổn thương da bằng cách sử dụng hình ảnh tổn thương cắt xén với đệm đường viền Điều này bao gồm việc cắt xén hình ảnh tổn thương để thiết lập vùng quan tâm (ROI) Việc xác định các đường viền đạt được bằng cách sử dụng cv2.findContours Để nắm bắt bối cảnh vùng da xung quanh một cách hiệu quả, hộp giới hạn được đệm bằng 20% kích thước hình ảnh
Hình ảnh 3.3 Hình ảnh kết quả đạt được kết thúc giai đoạn 2 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020
GIAI ĐOẠN 3: PHÂN LOẠI HÌNH ẢNH BẰNG CONVNEXT
Trong giai đoạn cuối cùng, khai thác backbone ConvNext để phân loại hình ảnh Phương pháp này bao gồm việc trích xuất các đặc điểm và mẫu có ý nghĩa từ hình ảnh tổn thương bằng cách sử dụng ConvNext V Giai đoạn này cho phép phân tích so sánh để đánh giá điểm mạnh và điểm yếu tương ứng của các cấu trúc này trong bối cảnh khung phân tích tổn thương da Hình ảnh dưới đây mô tả Input và Output của giai đoạn
3 phân loại tổn thương da
Hình ảnh 3.4 Hình ảnh kết quả đạt được kết thúc giai đoạn 3 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020
Sự kết hợp của ba bước phương pháp này tạo ra một khuôn khổ toàn diện để phân tích các tổn thương da, bao gồm phân đoạn, trích xuất đường viền, tạo hình ảnh đã cắt và phân loại Điều này giúp luận văn đạt được hiệu suất tối ưu trong việc đánh giá và xử lý tổn thương da từ ảnh y tế.
KIẾN TRÚC MÔ HÌNH SEGFORMER
Trong vài năm trở lại đây, transformers đã tạo nên cơn sốt trong thế giới học máy Hiệu suất của chúng vượt xa trạng trong các nhiệm vụ xử lý ngôn ngữ tự nhiên với cơ chế tự chú ý và thậm chí mở rộng sự ưu việt này sang lĩnh vực thị giác máy tính Điểm nổi bật của transformers là cơ chế tự chú ý, cho phép tận dụng các đặc trưng toàn cục của đầu vào
Vision Transformers đã chứng minh cách Transformers có thể được sử dụng trong thị giác máy tính với kết quả tương đương với các kiến trúc mạng nơ-ron tích chập (CNN) [16] Tuy nhiên, Vision Transformers không có khả năng mở rộng độ phân giải Độ phức tạp của cơ chế tự chú ý của chúng tăng theo hình vuông của kích thước ảnh, hạn chế hiệu suất trên ảnh có độ phân giải cao, đặc biệt là với các nhiệm vụ như phân đoạn ý nghĩa SegFormer là một thiết kế hiệu quả cho Phân Đoạn Ý Nghĩa với Transformers
Thiết kế này được giới thiệu lần đầu bởi Enxie và đồng nghiệp vào năm 2021 [45] với mục tiêu là có một khung nhìn phân đoạn ý nghĩa đơn giản, hiệu quả và mạnh mẽ với Transformers và một bộ giải mã MLP nhẹ Một số điểm quan trọng về SegFormer bao gồm:
● Không sử dụng mã hóa vị trí
● Efficient Self-Attention ý tưởng từ Pyramid Vision Transformers (PVT)
Kiến trúc mô hình Segformer được tác giả trình bày bằng hình ảnh sau đây
Hình ảnh 3.5 Kiến trúc mô hình SegFormer [45]
● SegFormer encoder tạo ra các bản đồ đặc trưng từ 4 quy mô khác nhau
● Mỗi quy mô tương ứng với kích thước ảnh gốc giảm đi k=4, 8, 16 và 32, tạo ra bốn bản đồ đặc trưng với kích thước (H/k, W/k, C), trong đó C là chiều nhúng
● Điều này là do Transformers, do cơ chế tự chú ý, thường học các đặc trưng cục bộ ở các tầng đầu và các đặc trưng toàn cục ở các tầng sau SegFormer sử dụng các đầu ra này để sử dụng thông tin cục bộ và toàn cục trong phân đoạn
Block of the SegFormer: Hình 4.2 mô tả thành phần và trình tự hoạt động trong Block của mô hình Segformer
● Mỗi khối của SegFormer là một chuỗi các khối nhỏ có:
● Một lớp tự chú ý hiệu quả
● Một mạng feedforward Mix-FFN
● Một lớp gộp đường path
Hình ảnh 3.6 Block of the SegFormer [45]
● Đây là chìa khóa để tránh tính toán đắt đỏ của Transformers trên dữ liệu ảnh
● SegFormer áp dụng "quy trình giảm dẫn trình tự" được đề xuất bởi Wang và cộng sự năm 2021
● SRA giảm độ phức tạp bằng cách chiếu K và V xuống chiều thấp hơn với tỷ lệ giảm dãn R
● Phức tạp thời gian giảm bớt bởi R lần Thành quả là phức tạp thời gian là O(N² / R)
● SegFormer loại bỏ mã hóa vị trí nhưng vẫn giữ thông tin vị trí bằng Mix- FFN
● Mix-FFN xem xét ảnh hưởng của việc đệm không và giữ thông tin vị trí
● Việc sử dụng các đường path chồng chéo giúp bảo tồn thông tin cục bộ xung quanh các miếng đó
● Điều này nâng cao lĩnh vực thu được của mô hình để có phân đoạn tốt hơn
Full-MLP Decoder: Ngược lại với các giải mã hình ảnh thông thường sử dụng CNNs, SegFormer chỉ sử dụng các lớp MLP để tránh tính toán đắt đỏ khi tạo ra bản đồ phân đoạn
3.5.4 LÝ DO CHỌN MÔ HÌNH SEGFORMER
Quyết định chọn mô hình SegFormer là dựa trên nhiều yếu tố quan trọng, đặc biệt là dựa trên các kết quả xuất sắc từ các nghiên cứu và thử nghiệm, như được mô tả trong bài báo của tác giả Theo paper, mô hình SegFormer đã được mở rộng từ SegFormer-B0 đến SegFormer-B5, đạt được hiệu suất và hiệu quả đáng kể hơn so với các mô hình trước đó Chẳng hạn, mô hình SegFormer-B4 đạt 50.3% mIoU trên bộ dữ liệu ADE20K với chỉ 64 triệu tham số, nhỏ gọn hơn 5 lần và cải thiện 2.2% so với phương pháp tốt nhất trước đó Mô hình tốt nhất của tác giả, SegFormer-B5, đạt 84.0% mIoU trên tập kiểm tra Cityscapes và thể hiện tính ổn định cao khi đối mặt với các tình huống "zero-shot" trên Cityscapes-C Bảng dưới đây mô tả chi tiết so sánh kết quả của mô hình Segformer và các mô hình khác, được cung cấp từ bài báo gốc của tác giả
Bảng 4 So sánh kết quả của mô hình SegFormer với các mô hình khác [45]
Lý do chọn mô hình SegFormer bao gồm:
● Hiệu suất xuất sắc: SegFormer đã chứng minh khả năng vượt trội trong việc đạt được một loạt các kết quả xuất sắc trên các tập dữ liệu đánh giá quan trọng như ADE20K và Cityscapes, với mIoU cao và hiệu suất tốt
● Hiệu quả tham số: Mặc dù có kích thước mô hình nhỏ gọn, SegFormer vẫn giữ được khả năng cạnh tranh với hiệu suất tốt hơn so với các đối thủ cùng kích thước hoặc thậm chí lớn hơn
● Khả năng đa nhiệm: Khả năng của SegFormer để đối mặt với các tình huống "zero-shot" và thích ứng với các tập dữ liệu mới, như Cityscapes-
C, là một lợi thế lớn, đặc biệt là trong các ứng dụng thực tế
● Hiệu quả về tài nguyên: SegFormer không chỉ đạt được hiệu suất cao mà còn giữ được tính hiệu quả về tài nguyên, giảm độ phức tạp tính toán và giúp tối ưu hóa quá trình huấn luyện và triển khai
Dựa trên những điểm mạnh này, quyết định chọn mô hình SegFormer là chọn lựa sáng tạo và phù hợp với nhu cầu cụ thể của dự án, hứa hẹn mang lại kết quả phân đoạn tổn thương da chất lượng và độ chính xác cao.
KIẾN TRÚC BACKBONE CONVNEXT
Trong thời gian gần đây, có một đổi mới lớn trong lĩnh vực thị giác máy tính, đó là ứng dụng của transformer (một ý tưởng được phát triển cho xử lý ngôn ngữ tự nhiên) vào ảnh và video Vision Transformers hoặc ViT đã trở nên rất nổi tiếng và vượt qua hầu hết các phương pháp dựa trên ConvNet, tiếp theo là sự tiến bộ với transformers như DieT và Swin Transformers [48] Tuy nhiên, vào năm 2022, nhóm nghiên cứu của Facebook đã tiến hành một cuộc nghiên cứu sâu rộng về ConvNets và, bằng cách loại bỏ tất cả các hạn chế có thể, họ đã vượt qua tất cả các mô hình đã được huấn luyện trước đây Bài báo mang tên "A ConvNet for the 2020s" [47] đã đưa ra cái nhìn sâu sắc về lý do ConvNets vẫn là "vương giả" trong thị giác máy tính
ConvNeXt là một ConvNet thuần túy, được xây dựng để vượt qua mô hình Swin Transformer trong việc phân loại ImageNet-1K ở mức tính toán cụ thể Nó được tạo ra hoàn toàn từ các module ConvNet tiêu chuẩn, giúp tạo ra một kiến trúc dễ hiểu và dễ triển khai ConvNeXt đạt được độ chính xác top-1 trên ImageNet là 87.8%, vượt qua Swin Transformers trên COCO detection [49] và ADE20K segmentation [50]
ConvNeXt thực hiện nhiều sự điều chỉnh và cải thiện đối với kiến trúc ResNet, với các yếu tố chính bao gồm [47] :
● Thay Đổi Tỷ Lệ Tính Toán Ở Các Giai Đoạn: Đối với mô hình ResNet-50, họ điều chỉnh số lượng khối ở mỗi giai đoạn từ (3, 4, 6, 3) thành (3, 3, 9, 3), tương ứng với thiết kế của Swin Transformers Điều này giúp cải thiện độ chính xác từ 78.8% lên 79.4%
● Thay Đổi Kernel Size và Số Lượng Khối Conv Trong Giai Đoạn: Họ thay đổi kích thước kernel và số lượng khối Conv trong mỗi giai đoạn để tối ưu hóa hiệu suất mô hình
● Thay Đổi Stem thành "Patchify": Thay vì sử dụng stem cell truyền thống, họ áp dụng chiến lược "Patchify" với convolution không chồng lấp, giúp cải thiện độ chính xác từ 79.4% lên 79.5%
ConvNeXt áp dụng convolution nhóm cho lớp Conv3x3 trong một khối bottleneck Điều này giúp giảm FLOPs và mở rộng chiều rộng của mạng để đối phó với mất mát dung lượng
Thiết Kế Inverted Bottleneck: Một thiết kế quan trọng trong mỗi khối Transformer là tạo ra một inverted bottleneck, với chiều ẩn của khối MLP rộng hơn bốn lần so với chiều vào Điều này giúp trong việc kiểm soát quá trình học và giảm FLOPs
Tăng Kích Thước Kernel: Sử dụng các convolution kernel lớn giúp mỗi lớp có một lĩnh vực thu thập toàn cầu, cải thiện hiệu suất của mô hình
3.6.4 LÝ DO CHỌN MÔ HÌNH CONVNEXT
Lý do chọn mô hình ConvNeXt là vì sự thuyết phục thông qua các cải tiến và điều chỉnh chi tiết trong kiến trúc và quá trình huấn luyện Những thay đổi này không chỉ cải thiện hiệu suất của mô hình trên ImageNet mà còn giúp ConvNeXt vượt trội hơn trên các tác vụ như COCO detection [49] và ADE20K segmentation [50] so với các mô hình khác như Swin Transformers Sự hiểu biết sâu sắc về cấu trúc và hoạt động của ConvNeXt đã làm cho nó trở thành một lựa chọn mạnh mẽ trong lĩnh vực thị giác máy tính.
THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ
HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN ĐOẠN TỔN THƯƠNG DA
4.1.1 TIỀN XỬ LÝ DỮ LIỆU
Trong quá trình xây dựng mô hình segmentation cho đề tài "Xây dựng mô hình machine learning dự đoán vùng tổn thương trên ảnh y tế" việc tiền xử lý dữ liệu đóng một vai trò quan trọng, đảm bảo rằng dữ liệu được chuẩn hóa và tối ưu hóa trước khi đưa vào quá trình huấn luyện mô hình Dưới đây là mô tả chi tiết về quá trình này Và như đã giới thiệu ở mục 2.3.1 tập dữ liệu được sử dụng cho phần này là từ tập ISIC
Kích thước của ảnh đầu vào là một yếu tố quan trọng để xác định độ phức tạp của mô hình và tốc độ huấn luyện Đối với quá trình huấn luyện, luận văn đã chọn kích thước ảnh 512x512 pixels để đảm bảo sự hiệu quả và hiệu suất của mô hình Hình ảnh dưới đây mô tả tập dữ liệu ISIC 2018 với ảnh da tổn thương và ảnh mặt nạ của vùng tổn thương
Hình ảnh 4.1 Một vài hình ảnh trong tập ISIC 2018 [43]
4.1.1.2 Biến đổi dữ liệu huấn luyện
Luận văn đã áp dụng một chuỗi các biến đổi dữ liệu cho quá trình huấn luyện, sử dụng thư viện Augmentor, đoạn mã thực hiện được mô tả trong ảnh 4.2 Các biến đổi này bao gồm:
● Resize: Ảnh được resize về kích thước 512x512
● Random Brightness/Contrast: Áp dụng biến đổi ngẫu nhiên về độ sáng và độ tương phản để làm giàu dữ liệu
● Sharpen: Làm sắc nét ảnh để tăng cường đặc trưng
● Normalize: Chuẩn hóa giá trị pixel về khoảng 0 đến 1 và chuẩn hóa theo giá trị trung bình và độ lệch chuẩn của ảnh theo ImageNet
● ToTensorV2: Chuyển đổi ảnh từ định dạng numpy.array sang torch.tensor để phù hợp với đầu vào của mô hình
Hình ảnh 4.2 Đoạn mã xử lý dữ liệu tập train
4.1.1.3 Biến đổi dữ liệu kiểm thử Đối với dữ liệu kiểm thử, luận văn áp dụng một quy trình tiền xử lý nhẹ để đảm bảo tính nhất quán, đoạn mã mô tả được trình bày trong ảnh 4.3 Quá trình này bao gồm:
● Resize: Ảnh được resize về kích thước 512x512
● Normalize: Chuẩn hóa giá trị pixel về khoảng 0 đến 1 và chuẩn hóa theo giá trị trung bình và độ lệch chuẩn của ảnh theo ImageNet
● ToTensorV2: Chuyển đổi ảnh từ định dạng numpy.array sang torch.tensor để phù hợp với đầu vào của mô hình
Hình ảnh 4.3 Đoạn mã xử lý dữ liệu tập test
Quá trình tiền xử lý dữ liệu này đảm bảo rằng mô hình của luận văn sẽ được huấn luyện trên dữ liệu đa dạng và chuẩn hóa, tối ưu hóa khả năng tổng quát hóa và dự đoán hiệu quả trên dữ liệu y tế
Trong phần này, luận văn sẽ đi vào chi tiết về các tham số và cấu hình quan trọng được sử dụng trong quá trình huấn luyện mô hình SegFormer Luận văn đã tỉ mỉ chọn lựa các tham số để đảm bảo mô hình không chỉ đáp ứng kỳ vọng về chất lượng dự đoán mà còn có khả năng hiệu quả trong quá trình huấn luyện Dưới đây là mô tả chi tiết:
● num_workers = 8: Số lượng tiến trình con được sử dụng để tải dữ liệu, được điều chỉnh kỹ lưỡng để tối ưu hóa hiệu suất tính toán và tải dữ liệu
● n_class = 2: tương ứng với đối tượng và nền, đặc trưng cho bài toán segmentation của luận văn
● batch_size = 8: Kích thước batch được chọn là 8 để đồng thời đảm bảo sự hiệu quả trong việc xử lý và học trên một lượng dữ liệu nhất định
● Pretrained model "segformer-b4-finetuned-ade-512-512": Mô hình SegFormer đã được tinh chỉnh trước đó trên bộ dữ liệu ADE20k với độ phân giải 512x512, đồng thời đảm bảo khả năng học được các đặc trưng phức tạp từ dữ liệu y tế cụ thể của luận văn
● n_eps = 50: Số lượng epoch là 50
4.1.3 HÀM MẤT MÁT VÀ THUẬT TOÁN TỐI ƯU
Trong quá trình huấn luyện mô hình SegFormer, luận văn sử dụng hàm mất mát CrossEntropyLoss Hàm này thường được sử dụng cho bài toán segmentation, nơi chúng ta có một số lớp cần dự đoán và mỗi pixel trong ảnh được gán một lớp tương ứng CrossEntropyLoss là lựa chọn phổ biến vì nó kết hợp giữa log-likelihood và entropy, đồng thời giúp mô hình tối ưu hóa dự đoán của mình Đoạn mã: “criterion = nn.CrossEntropyLoss()”
Hàm này sẽ tính toán mất mát giữa dự đoán và nhãn thực tế, tạo ra sự chênh lệch giữa chúng để mô hình học được phân loại chính xác
4.1.3.2 Thuật toán tối ưu Đối với quá trình tối ưu hóa trọng số của mô hình, luận văn áp dụng thuật toán Adam Adam là một phương pháp tối ưu hóa thường được sử dụng hiệu quả trong nhiều bài toán học máy Nó kết hợp giữa ý tưởng của hai thuật toán khác nhau là RMSprop và Momentum Đoạn mã: “optimizer = torch.optim.Adam(model.parameters(), lr-4)”
Trong đó, lr-4 là learning rate, một tham số quan trọng quyết định kích thước bước mà mô hình di chuyển trong không gian trọng số Việc điều chỉnh learning rate đôi khi cần thiết để đạt được sự cân bằng giữa tốc độ học và sự ổn định của quá trình tối ưu hóa
Cả hai yếu tố trên là quan trọng để đảm bảo rằng mô hình không chỉ học được từ dữ liệu mà còn đưa ra dự đoán chính xác và ổn định Quá trình tối ưu hóa sẽ được thực hiện thông qua việc điều chỉnh trọng số của mô hình dựa trên giá trị mất mát tính toán được từ hàm CrossEntropyLoss Điều này giúp tối ưu hóa hiệu suất của mô hình SegFormer trong việc dự đoán vùng tổn thương trên ảnh y tế của luận văn
Phần này mô tả quá trình huấn luyện của mô hình SegFormer và thực hiện so sánh giữa các kết quả trên tập huấn luyện và tập kiểm thử Mục đích chính là đánh giá hiệu suất của mô hình theo thời gian và xác định trạng thái tốt nhất của mô hình trên tập kiểm thử
4.1.4.1 Quá trình huấn luyện mô hình SegFormer
Hình ảnh dưới đây là đoạn mã thực hiện quá trình huấn luyện mô hình Segformer
Hình ảnh 4.4 Đoạn mã training mô hình SegFormer
Trong quá trình này, mỗi epoch bao gồm quá trình huấn luyện trên tập huấn luyện (trainloader) và kiểm thử trên tập kiểm thử (valloader) Các giá trị mất mát, IoU, và dice được tính toán để đánh giá hiệu suất Trạng thái tốt nhất của mô hình trên tập kiểm thử được lưu lại (modelSegFormer_best.pth), và trạng thái hiện tại được lưu (modelSegFormer_current.pth) Đồng thời, thời gian dự đoán của mỗi epoch cũng được in ra để theo dõi tiến trình huấn luyện Dưới đây là hình ảnh kết quả in trả trong quá trình huấn luyện
Hình ảnh 4.1 Hình ảnh kết quả được in ra trong quá trình huấn luyện mô hình
4.1.4.2 Kết quả mô hình SegFormer
HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA
Trong khuôn khổ của dự án luận án, luận văn đã lựa chọn mô hình phân loại ảnh sử dụng ConvNeXt_Small_in22ft1k [47] làm backbone Việc này được thực hiện với mục tiêu nâng cao hiệu suất phân loại ảnh, đồng thời giữ cho mô hình có tính duy trì tính linh hoạt và hiệu quả, hai yếu tố quan trọng trong nghiên cứu của luận văn
4.2.1 KIẾN TRÚC MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA
Trong đồ án của luận văn, luận văn đã xây dựng một mô hình phân loại ảnh trên da, được gọi là SkinClassifier, là một lớp con của nn.Module trong PyTorch Mô hình này sử dụng ConvNeXt_Small_in22ft1k làm backbone và được thiết kế để thực hiện tác vụ phân loại với số lớp được chỉ định trước (n_class) Ảnh 4.5 dưới đây là đoạn mã khai báo kiến trúc mô hình SkinClassifier
Hình ảnh 4.5 Đoạn mã khai báo kiến trúc mô hình SkinClassifier forward(x): Quá trình forward của mô hình bắt đầu bằng việc đưa ảnh đầu vào x qua ConvNeXt_Small_in22ft1k Đầu ra của backbone sau đó được đưa qua hai lớp Fully Connected với hàm kích hoạt ReLU Kết quả cuối cùng là đầu ra của mô hình, biểu diễn xác suất của mỗi lớp phân loại
4.2.2 TIỀN XỬ LÝ DỮ LIỆU
Như đã đề cập trong phần 2.3.2 về dữ liệu cho nhiệm vụ phân loại, luận văn đã chọn sử dụng tập dữ liệu ISIC 2020 Tuy nhiên, để phù hợp với mục tiêu luận văn, luận văn quyết định không sử dụng meta data đi kèm với ảnh Thay vào đó, luận văn tiến hành đánh giá hiệu suất của mô hình trên hai tập dữ liệu khác nhau sau quá trình tiền xử lý Đầu tiên, luận văn thực hiện việc cắt gọn ảnh bằng phương pháp segmentation để xác định đường viền của đối tượng, sau đó thêm một khoảng padding để tạo ra bức ảnh đã được xử lý, tập dữ liệu này sẽ được gọi là “Crop Lesion Image” Cùng lúc đó, luận văn giữ lại tập dữ liệu gốc gọi là “Original Image” để so sánh hiệu suất với tập dữ liệu đã được xử lý Hình ảnh 4.6 dưới đây mô tả sự khác biệt giữa hai tập dữ liệu
"Original Image" và "Crop Lesion Image"
Hình ảnh 4.6 Hình ảnh về hai tập dữ liệu
Cả hai tập dữ liệu, sau khi đã được chuẩn bị, sẽ được chia thành các tập train và test theo tỷ lệ tương đồng Quá trình tiền xử lý dữ liệu được thực hiện đồng nhất giữa cả hai tập, và mô hình sẽ được huấn luyện trên cùng các tham số để đảm bảo tính công bằng và so sánh có ý nghĩa
Qua quá trình này, luận văn hy vọng tìm ra sự ảnh hưởng của việc sử dụng phương pháp segmentation và thêm padding đối với hiệu suất của mô hình, cung cấp những thông tin quan trọng để đưa ra quyết định về việc xử lý dữ liệu trong bối cảnh nhiệm vụ phân loại ảnh da
Trong quá trình chuẩn bị dữ liệu cho mô hình phân loại da, một thách thức quan trọng mà luận văn phải đối mặt là sự mất cân bằng giữa các lớp, đặc biệt là giữa tập dữ liệu benign skin và malignant skin Với 26033 hình ảnh của benign skin và chỉ có 467 hình ảnh của malignant skin, sự mất cân bằng này có thể ảnh hưởng đến khả năng của mô hình phân loại Để giải quyết vấn đề này, luận văn đã áp dụng kỹ thuật augmentation (tăng cường) dữ liệu cho tập dữ liệu malignant skin Hình 4.7 dưới đây là mã nguồn Python sử dụng thư viện Albumentations để thực hiện augmentation:
Hình ảnh 4.7 Đoạn mã dùng để augment image
4.2.2.2 Chi tiết các bước argument images
● Áp Dụng Augmentation: Luận văn đã sử dụng thư viện Albumentations để tạo ra một loạt các biến đổi ảnh, bao gồm việc quay, lật theo chiều dọc và chiều ngang, điều chỉnh độ sáng, độ tương phản, thậm chí thêm nhiễu
● Lặp Qua Ảnh Malignant: Dùng vòng lặp để duyệt qua tất cả các hình ảnh trong tập dữ liệu malignant skin
● Tạo Ảnh Mới: Đối với mỗi ảnh malignant, luận văn tạo ra một số lượng ảnh mới dựa trên tỷ lệ đã định (ratio generate) và các biến đổi đã được xác định trước
● Lưu Trữ Ảnh Mới và Gốc: Tất cả ảnh mới được tạo ra sẽ được lưu trữ trong thư mục được chỉ định (path new malignant skin) Ngoài ra, luận văn lưu trữ cả ảnh gốc để giữ nguyên bản và so sánh với ảnh đã được augment
● Kỹ thuật augmentation này không chỉ giúp giảm thiểu vấn đề mất cân bằng trong tập dữ liệu mà còn làm tăng tính đa dạng và khả năng tổng quát hóa của mô hình
4.2.2.3 Chi tiết các kỹ thuật Augmentation
● Transpose: Áp dụng phép chuyển vị cho ảnh với xác suất 0.5, giúp tăng cường đa dạng bằng cách xoay ảnh
● VerticalFlip và HorizontalFlip: Lật ảnh theo chiều dọc và chiều ngang với xác suất 0.5 Tạo ra biến thể của ảnh để mô hình có thể học được từ các góc độ khác nhau
● RandomBrightness và RandomContrast: Ngẫu nhiên điều chỉnh độ sáng và độ tương phản của ảnh để mô phỏng điều kiện ánh sáng khác nhau trong thực tế
● OneOf1: Một trong các biến đổi trong nhóm sau sẽ được chọn ngẫu nhiên với xác suất 0.7: o Áp dụng các loại làm mờ khác nhau để làm tăng cường sự mịn màng hoặc chuyển động của ảnh
▪ GaussianBlur o GaussNoise: Thêm nhiễu Gauss vào ảnh để làm tăng cường tính ngẫu nhiên
● OneOf2: Một trong các biến đổi trong nhóm sau sẽ được chọn ngẫu nhiên với xác suất 0.7: Các biến đổi này tạo ra các biến dạng, uốn cong, hoặc biến đổi không gian của ảnh o OpticalDistortion o GridDistortion o ElasticTransform
● CLAHE (Contrast Limited Adaptive Histogram Equalization): Áp dụng CLAHE với giới hạn độ tương phản là 4.0 để cải thiện sự hiển thị chi tiết trong vùng tối sáng và tối
● HueSaturationValue:Điều chỉnh mức độ màu sắc, độ bão hòa và giá trị chiếu sáng với xác suất 0.5 để làm tăng cường màu sắc
● ShiftScaleRotate:Thực hiện phép dịch, co giãn, và xoay ảnh với xác suất 0.85 để tăng cường tính chất dịch chuyển và biến đổi của ảnh
Hình ảnh 4.8 Các hình ảnh mới được tạo ra sau khi qua các phép biến đổi
Ý NGHĨA ĐẠT ĐƯỢC
2 NHỮNG HẠN CHẾ CỦA ĐỀ TÀI
KẾ HOẠCH THỰC HIỆN ĐỀ TÀI
STT Thời gian Công việc Ghi chú
Hệ thống các kiến thức đã học và các khái niệm liên quan
- Nắm vững các khái niệm cơ bản và nâng cao về Deep Learning
- Tìm hiểu về các mô hình Deep Learning phổ biến và ứng dụng thực tế của chúng
- Hiểu rõ về các thuật toán tối ưu và các thách thức trong quá trình huấn luyện mô hình
2 Từ 28/09/2023 Đến 27/10/2023 Nghiên cứu và áp dụng thuật toán phân vùng ảnh trong mô hình Deep Learning
- Nghiên cứu các thuật toán phân vùng ảnh (Image
- Áp dụng thuật toán phù hợp vào bài toán cụ thể và đánh giá hiệu suất
- Chuẩn bị tập dữ liệu và xây dựng môi trường thí nghiệm
3 Từ 28/10/2023 Đến 24/11/2023 Tiếp tục nghiên cứu và thực hiện phân loại ảnh sử dụng các mô hình Deep Learning
- Nghiên cứu các mô hình Deep Learning cho phân loại ảnh
- Tiếp tục xử lý dữ liệu và chuẩn bị cho quá trình huấn luyện
- Huấn luyện mô hình, đánh giá và điều chỉnh siêu tham số
4 Từ 25/11/2023 Đến 15/12/2023 Tiến hành huấn luyện và đánh giá mô hình học sâu
- Thực hiện quá trình đánh giá kết quả của mô hình trên tập dữ liệu thử nghiệm
- Đề xuất cải tiến và làm rõ hướng phát triển cho công trình
Tổng nghiên cứu, viết báo cáo khóa luận, thiết kế Powerpoint
- Viết báo cáo khóa luận với cấu trúc logic và chặt chẽ
- Thiết kế bài trình bày trên PowerPoint với đồ họa và biểu đồ mô tả kết quả Ý kiến giảng viên hướng dẫn: ………
Ngày tháng năm 2023 Ngày tháng năm 2023
(ký & ghi rõ họ tên) Người viết đề cương
PGS.TS Hoàng Văn Dũng Lê Hải Dương
DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT 8
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 10
3 MỤC TIÊU CỦA ĐỀ TÀI 11
CHƯƠNG 1: TỔNG QUAN VỀ MACHINE LEARNING 13
1.1.2 CÁC PHƯƠNG PHÁP ĐÀO TẠO MÔ HÌNH MACHINE LEARNING… 16
1.2.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI ANN 18
1.2.2 GIỚI THIỆU VỀ KIẾN TRÚC MẠNG ANN 19
1.3.1 KHÁI NIỆM MẠNG NƠ-RON TÍCH CHẬP 21
1.4.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI TRANSFORMER 23
1.4.2 TRANSFORMER ỨNG DỤNG TRONG THỊ GIÁC MÁY TÍNH 24
1.5 CƠ SỞ LÝ THUYẾT PHÂN ĐOẠN HÌNH ẢNH 26
1.5.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN ĐOẠN HÌNH ẢNH 26
1.5.2 ỨNG DỤNG TRONG LĨNH VỰC Y HỌC 26
1.5.3 TỔNG QUAN VỀ MÔ HÌNH PHÂN ĐOẠN ẢNH 27
1.5.4 METRICS ĐÁNH GIÁ CHO CÁC BÀI TOÁN PHÂN VÙNG ẢNH 29 1.6 CƠ SỞ LÝ THUYẾT PHÂN LOẠI HÌNH ẢNH 30
1.6.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN LOẠI HÌNH ẢNH 30
1.6.2 ỨNG DỤNG TRONG LĨNH VỰC Y HỌC 32
1.6.3 TỔNG QUAN VỀ CÁC MÔ HÌNH LOẠI ẢNH 33
1.6.4 METRICS ĐÁNH GIÁ CHO CÁC BÀI TOÁN LOẠI VÙNG ẢNH 35
CHƯƠNG 2: TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU 37
2.1 KHẢO SÁT THỰC TRẠNG HIỆN TẠI 37
2.1.1 SỰ PHỔ BIẾN CỦA UNG THƯ DA TRÊN TOÀN CẦU 37
2.1.2 ỨNG DỤNG CHĂM SÓC DA CHO BẢN THÂN VÀ DỊCH VỤ Y TẾ TỪ XA… 38
2.2 NHỮNG THÁCH THỨC HIỆN TẠI 41
2.2.1 SỰ THIẾU ĐỒNG BỘ TRONG VIỆC THU THẬP DỮ LIỆU VỀ TỔN THƯƠNG DA 41
2.2.2 KHÓ KHĂN CHO VIỆC GIẢI QUYẾT 2 NHIỆM VỤ: PHÂN LOẠI VÀ PHÂN ĐOẠN TỔN THƯƠNG DA TRÊN MỘT MÔ HÌNH
2.3 TẬP DỮ LIỆU VỀ DA 43
2.3.1 DỮ LIỆU CHO NHIỆM VỤ PHÂN ĐOẠN 44
2.3.2 DỮ LIỆU CHO NHIỆM VỤ PHÂN LOẠI 46
2.4 MÔI TRƯỜNG VÀ TÀI NGUYÊN SỬ DỤNG 47
CHƯƠNG 3: PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN CHẨN ĐOÁN BỆNH DA……… 50
3.1 ĐỀ XUẤT GIẢI PHÁP TỔNG THỂ 503.2 GIAI ĐOẠN 1: PHÂN ĐOẠN TỔN THƯƠNG DA BẰNG SEGFORMER 51
3.3 GIAI ĐOẠN 2: TẠO HÌNH ẢNH TỔN THƯƠNG CẮT XÉN VỚI ĐỆM ĐƯỜNG VIỀN 52
3.4 GIAI ĐOẠN 3: PHÂN LOẠI HÌNH ẢNH BẰNG CONVNEXT 52
3.5 KIẾN TRÚC MÔ HÌNH SEGFORMER 53
3.5.4 LÝ DO CHỌN MÔ HÌNH SEGFORMER 56
3.6.4 LÝ DO CHỌN MÔ HÌNH CONVNEXT 59
CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 60
4.1 HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN ĐOẠN TỔN THƯƠNG DA…… 60
4.1.1 TIỀN XỬ LÝ DỮ LIỆU 60
4.1.3 HÀM MẤT MÁT VÀ THUẬT TOÁN TỐI ƯU 63
4.1.5 KẾT QUẢ HUẤN LUYỆN MÔ HÌNH PHÂN ĐOẠN TỔN THƯƠNG DA………… 68
4.2 HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA…… 70
4.2.1 KIẾN TRÚC MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA 70
4.2.2 TIỀN XỬ LÝ DỮ LIỆU 70
4.2.4 HÀM MẤT MÁT VÀ THUẬT TOÁN TỐI ƯU 75
4.2.5 KẾT QUẢ HUẤN LUYỆN MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA……… 76
4.3 PHÂN TÍCH KẾT QUẢ ĐẠT ĐƯỢC QUA QUÁ TRÌNH THỰC NGHIỆM……… 79
4.3.2 PHÂN TÍCH TRƯỜNG HỢP DA ÁC TÍNH BỊ ĐOÁN NHẦM THÀNH
4.3.3 KẾT QUẢ TÔNG QUAN PHƯƠNG PHÁP 83
2 HẠN CHẾ CỦA ĐỀ TÀI 85
Hình ảnh 1.1 Mối quan hệ giữa AI, ML, Deep learning 15
Hình ảnh 1.2 Ví dụ về Supervised Learning và Unsupervised Learning [6] 17
Hình ảnh 1.3 Ví dụ về Reinforcement Learning [7] 18
Hình ảnh 1.4 Ví dụ mạng CNN – Convolutional Neural Network [12] 21
Hình ảnh 1.6 Vision Transformer (ViT) [16] 25
Hình ảnh 1.7 Ví dụ về phần đoạn hình ảnh [18] 26
Hình ảnh 1.8 Ví dụ về phần đoạn hình ảnh ứng dụng trong y tế [19] 27
Hình ảnh 1.9 Ví dụ về phần đoạn hình ảnh sử dụng phương pháp K-mean [21] 28
Hình ảnh 1.10 Kiến trúc mô hình SegNet [22] 28
Hình ảnh 1.15 Ví dụ về bài toán phân loại ảnh 31
Hình ảnh 1.16 Hình ảnh phân loại bệnh phổi thông qua ảnh CT [27] 33
Hình ảnh 1.17 Kiến trúc mô hình VGG-16 [28] 34
Hình ảnh 2.1 Hình ảnh thống kê ung thư da ở Úc [35] 37
Hình ảnh 2.2 Ứng dụng SkinVision [38] 38
Hình ảnh 2.3 Ứng dụng iDoc24 [39] 39
Hình ảnh 2.4 Ứng dụng First Derm [40] 40
Hình ảnh 2.5 Ứng dụng Cureskin [41] 41
Hình ảnh 2.6 Một số hình ảnh từ tập dữ liệu ISIC 2020 [42] 42
Hình ảnh 2.7 Thông tin về ISIC Challenge [44] 44
Hình ảnh 2.8 Thông tin về tập dữ liệu ISIC 2018 [43] 44
Hình ảnh 2.9 ISIC2018_Task1-2_Test_Input [43] 45
Hình ảnh 2.10 ISIC2018_Task1_Test_GroundTruth [43] 45
Hình ảnh 2.11 Tập dữ liệu ISIC2020 sau khi được cấu trúc 46
Hình ảnh 2.12 Một số hình ảnh từ tập dữ liệu ISIC2020 [42] 47
Hình ảnh 3.1 Khung toàn diện để phân tích tổn thương da: Phân đoạn, trích xuất đường viền, cắt xén tổn thương và phân loại ảnh 50
Hình ảnh 3.2 Hình ảnh kết quả đạt được kết thúc giai đoạn 1 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 52
Hình ảnh 3.3 Hình ảnh kết quả đạt được kết thúc giai đoạn 2 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 52
Hình ảnh 3.4 Hình ảnh kết quả đạt được kết thúc giai đoạn 3 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 53
Hình ảnh 3.5 Kiến trúc mô hình SegFormer [45] 54
Hình ảnh 3.6 Block of the SegFormer [45] 55
Hình ảnh 4.1 Hình ảnh kết quả được in ra trong quá trình huấn luyện mô hình SegFormer 66
Hình ảnh 4.2 Kết quả quá trình training được đo trên tập train 67
Hình ảnh 4.3 Kết quả quá trình training được đo trên tập validation 68
Hình ảnh 4.4 Kết quả đánh giá mô hình trên tập test 68
Hình ảnh 4.5 Đoạn mã khai báo kiến trúc mô hình SkinClassifier 70
Hình ảnh 4.6 Hình ảnh về hai tập dữ liệu 71
Hình ảnh 4.7 Đoạn mã dùng để augment image 72
Hình ảnh 4.8 Các hình ảnh mới được tạo ra sau khi qua các phép biến đổi 74
Hình ảnh 4.9 Kết quả đánh giá tập test khi huấn luyện trên tập Crop Lesion Image 76
Hình ảnh 4.10 Kết quả đánh giá tập test khi huấn luyện trên tập Original Image 77
Hình ảnh 4.11 So sánh Accuracy trong quá trình training hai bộ dữ liệu Crop Lesion
Hình ảnh 4.12 So sánh Precision trong quá trình training hai bộ dữ liệu Crop Lesion
Hình ảnh 4.13 So sánh Recall trong quá trình training hai bộ dữ liệu Crop Lesion Image và Original Image 78
Hình ảnh 4.14 So sánh khoảng chênh lệch Accuracy / Precision / Recall trong quá trình training hai bộ dữ liệu Crop Lesion Image và Original Image 79
Hình ảnh 4.15 Hình ảnh một vài mẫu mà 2 phương pháp dự đoán sai 80
Hình ảnh 4.16 Hình ảnh dự đoán sai da ác tính thành lành tính của phương pháp truyền thống 82
Hình ảnh 4.17 Hình ảnh dự đoán sai da ác tính thành lành tính của phương pháp đề xuất 83
Bảng 1 Thông tin về tập dữ liệu ISIC 2020 [42] 46
Bảng 2 Tài nguyên sử dụng trên server 48
Bảng 3 Tài nguyên sử dụng trên colab 49
Bảng 4 So sánh kết quả của mô hình SegFormer với các mô hình khác [45] 57
Bảng 5 Bảng ISIC 2018 Leaderboards nhiệm vụ 1 Lesion Boundary Segmentation [46] 69
Bảng 6 Kết quả mô hình phân loại ảnh trên hai tập dữ liệu 76
Bảng 7 Tổng hợp kết quả training mô hình phân đoạn và phân loại tổn thương da 80
DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT
Thuật ngữ Tên đầy đủ Nghĩa tiếng Việt
AI Artificial Intelligence Trí tuệ nhân tạo
ML Machine Learning Học máy
CV Computer Vision Thị giác máy tính
CNN Convolutional Neural Networks Mạng nơ-ron tích chập
ANN Artificial Neural Network Mạng nơ-ron nhân tạo
DL Deep Learning Học sâu
DNN Deep Neural Network Mạng nơ-ron sâu
Hợp tác hình ảnh da quốc tế
ReLU Rectified Linear Unit Đơn vị tuyến tính chỉnh lưu
BERT Bidirectional Encoder Representations from Transformers
Biểu diễn từ Transformer với bộ mã hóa hai chiều
LSTM Long Short-Term Memory Bộ nhớ Ngắn hạn Dài
ViT Vision Transformer Transformer dành cho thị giác
IoU Intersection over Union Giao nhau trên Liên hiệp
Luận văn này tập trung vào việc xây dựng mô hình Machine Learning để dự đoán vùng tổn thương trên ảnh y tế, bằng cách áp dụng các kiến thức chuyên sâu về lĩnh vực này Trong quá trình nghiên cứu, chúng tôi đã áp dụng SegFormer để thực hiện phân vùng tổn thương da và kết hợp với ConvNeXt để phân loại ảnh da lành tính và da ác tính Ứng dụng thực tế của mô hình này hướng tới việc hỗ trợ đội ngũ y bác sĩ trong quá trình chẩn đoán và điều trị các trường hợp liên quan tới bệnh về da Điều này mang lại lợi ích đáng kể trong việc nâng cao chất lượng chăm sóc sức khỏe, từ đó cải thiện đời sống và kết quả điều trị cho bệnh nhân
Kết quả thu được là tích cực, với mô hình phân vùng tổn thương da vượt qua top
1 trên ISIC 2018 Leaderboards Mô hình phân loại da, áp dụng phương pháp cắt ảnh, đã đạt hiệu suất vượt trội so với phương pháp truyền thống Đặc biệt, việc giải quyết vấn đề không đồng nhất của dữ liệu tổn thương da đã được thực hiện hiệu quả, với mô hình phân loại sử dụng phương pháp cắt vùng ảnh dựa trên kết quả mô hình phân đoạn tổn thương da, đem lại hiệu suất vượt trội Luận văn mở ra một hướng tiếp cận mới trong lĩnh vực phân loại ảnh y tế
Trong báo cáo này, chúng tôi duy trì nguyên văn tiếng Anh cho một số thuật ngữ nhằm bảo toàn ý nghĩa và nguyên tắc chính xác Điều này giúp đảm bảo sự rõ ràng và mạch lạc trong việc truyền đạt thông tin
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI Đề tài “xây dựng mô hình machine learning dự đoán vùng tổn thương trên ảnh y tế” không chỉ là một nhiệm vụ nghiên cứu mà còn là một sứ mệnh cấp thiết trong lĩnh vực sức khỏe toàn cầu Bệnh ngoài da, với ảnh hưởng lớn đến hàng triệu người trên khắp thế giới, không chỉ tạo ra vấn đề về thể chất mà còn tác động mạnh mẽ đến tâm lý của bệnh nhân Quan trọng hơn, nếu không được chẩn đoán và điều trị kịp thời, những bệnh lý này có thể phát triển thành những vấn đề nghiêm trọng, trong đó có cả nguy cơ mắc ung thư da
Hiện nay, phương pháp chẩn đoán truyền thống do chuyên gia y tế thực hiện vẫn đang được ưa chuộng, tuy nhiên, đây là quá trình tốn kém và chủ quan Để đáp ứng nhu cầu ngày càng tăng về sự chính xác và tốc độ trong chẩn đoán bệnh da, việc áp dụng các mô hình Machine Learning tự động trở nên cực kỳ quan trọng
Tuy nhiên, chúng ta đối mặt với thách thức lớn về khan hiếm dữ liệu, đặc biệt là trong lĩnh vực dữ liệu hình ảnh ung thư Sự không nhất quán và hiếm hoi của dữ liệu tạo ra những thách thức đặc biệt trong việc phát triển và đánh giá mô hình học máy Luận văn đã giải quyết vấn đề này bằng cách đề xuất một phương pháp độc đáo xử lý dữ liệu không nhất quán và tận dụng tối đa hiệu suất của mô hình
Những nỗ lực nghiên cứu của luận văn không chỉ nhằm mục đích cung cấp giải pháp đột phá cho vấn đề chẩn đoán ung thư da mà còn mong muốn đóng góp vào sự phát triển của các công cụ hỗ trợ quyết định và phương pháp chẩn đoán chính xác cho hình ảnh y tế Hy vọng rằng kết quả của đề tài sẽ mở ra những tiềm năng mới, đưa ra những thay đổi tích cực trong lĩnh vực y tế và đem lại lợi ích toàn diện cho cộng đồng y học và bệnh nhân
Trong khuôn khổ của một khóa luận tốt nghiệp, phạm vi của đề tài được hạn chế bởi thời lượng nghiên cứu và tài nguyên, đồng thời những giới hạn sau cũng giúp định hình rõ ràng phạm vi và mục tiêu của công trình
● Thứ nhất: Trong phạm vi của đề tài này, luận văn tập trung đi sâu vào các thuật toán liên quan đến việc dự đoán vùng tổn thương và phân loại bệnh trên ảnh y tế
Sự chú trọng này giúp tập trung nghiên cứu và phát triển mô hình Machine Learning để giải quyết một khía cạnh cụ thể của vấn đề lớn hơn về bệnh ngoài da
● Thứ hai: Các thuật toán được tìm hiểu, tham khảo và khái quát lại trong đề tài đều xuất phát từ các công trình nghiên cứu đã được công bố trên các tạp chí quốc tế về thị giác máy tính Điều này đảm bảo tính chất tiên tiến và đáng tin cậy của các phương pháp được áp dụng trong nghiên cứu
● Thứ ba: Các thông số và kết quả được trình bày trong nghiên cứu chỉ mang tính chất tham khảo do giới hạn về dữ liệu và tài nguyên phần cứng để huấn luyện các mạng học sâu Điều này là để thể hiện sự minh bạch và rõ ràng về các giả định và hạn chế trong quá trình nghiên cứu
● Thứ tư: Dữ liệu sử dụng trong nghiên cứu này được lựa chọn từ ISIC Challenge
Dataset, giúp đảm bảo tính đa dạng và độ chân thực của thông tin y tế hình ảnh Tuy nhiên, nhận thức rằng sự hạn chế của bộ dữ liệu này cũng có thể ảnh hưởng đến khả năng tổng quát hóa của mô hình trong một số trường hợp
3 MỤC TIÊU CỦA ĐỀ TÀI Để đảm bảo sự thành công và ứng dụng thực tế của đề tài "xây dựng mô hình machine learning dự đoán vùng tổn thương trên ảnh y tế ", luận văn đã đặt ra các mục tiêu nghiên cứu chi tiết như sau:
● Trình bày khái quát về machine learning và các khái niệm cơ bản: o Tạo nền tảng kiến thức vững về Machine Learning (ML) và các khái niệm quan trọng liên quan đến đề tài o Giải thích cách ML có thể được áp dụng trong lĩnh vực chẩn đoán bệnh ngoài da và ảnh hưởng của nó đối với sự tiến bộ trong y học
HƯỚNG PHÁT TRIỂN
KẾ HOẠCH THỰC HIỆN ĐỀ TÀI
STT Thời gian Công việc Ghi chú
Hệ thống các kiến thức đã học và các khái niệm liên quan
- Nắm vững các khái niệm cơ bản và nâng cao về Deep Learning
- Tìm hiểu về các mô hình Deep Learning phổ biến và ứng dụng thực tế của chúng
- Hiểu rõ về các thuật toán tối ưu và các thách thức trong quá trình huấn luyện mô hình
2 Từ 28/09/2023 Đến 27/10/2023 Nghiên cứu và áp dụng thuật toán phân vùng ảnh trong mô hình Deep Learning
- Nghiên cứu các thuật toán phân vùng ảnh (Image
- Áp dụng thuật toán phù hợp vào bài toán cụ thể và đánh giá hiệu suất
- Chuẩn bị tập dữ liệu và xây dựng môi trường thí nghiệm
3 Từ 28/10/2023 Đến 24/11/2023 Tiếp tục nghiên cứu và thực hiện phân loại ảnh sử dụng các mô hình Deep Learning
- Nghiên cứu các mô hình Deep Learning cho phân loại ảnh
- Tiếp tục xử lý dữ liệu và chuẩn bị cho quá trình huấn luyện
- Huấn luyện mô hình, đánh giá và điều chỉnh siêu tham số
4 Từ 25/11/2023 Đến 15/12/2023 Tiến hành huấn luyện và đánh giá mô hình học sâu
- Thực hiện quá trình đánh giá kết quả của mô hình trên tập dữ liệu thử nghiệm
- Đề xuất cải tiến và làm rõ hướng phát triển cho công trình
Tổng nghiên cứu, viết báo cáo khóa luận, thiết kế Powerpoint
- Viết báo cáo khóa luận với cấu trúc logic và chặt chẽ
- Thiết kế bài trình bày trên PowerPoint với đồ họa và biểu đồ mô tả kết quả Ý kiến giảng viên hướng dẫn: ………
Ngày tháng năm 2023 Ngày tháng năm 2023
(ký & ghi rõ họ tên) Người viết đề cương
PGS.TS Hoàng Văn Dũng Lê Hải Dương
DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT 8
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 10
3 MỤC TIÊU CỦA ĐỀ TÀI 11
CHƯƠNG 1: TỔNG QUAN VỀ MACHINE LEARNING 13
1.1.2 CÁC PHƯƠNG PHÁP ĐÀO TẠO MÔ HÌNH MACHINE LEARNING… 16
1.2.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI ANN 18
1.2.2 GIỚI THIỆU VỀ KIẾN TRÚC MẠNG ANN 19
1.3.1 KHÁI NIỆM MẠNG NƠ-RON TÍCH CHẬP 21
1.4.1 CÁC KHÁI NIỆM CƠ BẢN LIÊN QUAN TỚI TRANSFORMER 23
1.4.2 TRANSFORMER ỨNG DỤNG TRONG THỊ GIÁC MÁY TÍNH 24
1.5 CƠ SỞ LÝ THUYẾT PHÂN ĐOẠN HÌNH ẢNH 26
1.5.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN ĐOẠN HÌNH ẢNH 26
1.5.2 ỨNG DỤNG TRONG LĨNH VỰC Y HỌC 26
1.5.3 TỔNG QUAN VỀ MÔ HÌNH PHÂN ĐOẠN ẢNH 27
1.5.4 METRICS ĐÁNH GIÁ CHO CÁC BÀI TOÁN PHÂN VÙNG ẢNH 29 1.6 CƠ SỞ LÝ THUYẾT PHÂN LOẠI HÌNH ẢNH 30
1.6.1 ĐỊNH NGHĨA VÀ Ý NGHĨA PHÂN LOẠI HÌNH ẢNH 30
1.6.2 ỨNG DỤNG TRONG LĨNH VỰC Y HỌC 32
1.6.3 TỔNG QUAN VỀ CÁC MÔ HÌNH LOẠI ẢNH 33
1.6.4 METRICS ĐÁNH GIÁ CHO CÁC BÀI TOÁN LOẠI VÙNG ẢNH 35
CHƯƠNG 2: TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU 37
2.1 KHẢO SÁT THỰC TRẠNG HIỆN TẠI 37
2.1.1 SỰ PHỔ BIẾN CỦA UNG THƯ DA TRÊN TOÀN CẦU 37
2.1.2 ỨNG DỤNG CHĂM SÓC DA CHO BẢN THÂN VÀ DỊCH VỤ Y TẾ TỪ XA… 38
2.2 NHỮNG THÁCH THỨC HIỆN TẠI 41
2.2.1 SỰ THIẾU ĐỒNG BỘ TRONG VIỆC THU THẬP DỮ LIỆU VỀ TỔN THƯƠNG DA 41
2.2.2 KHÓ KHĂN CHO VIỆC GIẢI QUYẾT 2 NHIỆM VỤ: PHÂN LOẠI VÀ PHÂN ĐOẠN TỔN THƯƠNG DA TRÊN MỘT MÔ HÌNH
2.3 TẬP DỮ LIỆU VỀ DA 43
2.3.1 DỮ LIỆU CHO NHIỆM VỤ PHÂN ĐOẠN 44
2.3.2 DỮ LIỆU CHO NHIỆM VỤ PHÂN LOẠI 46
2.4 MÔI TRƯỜNG VÀ TÀI NGUYÊN SỬ DỤNG 47
CHƯƠNG 3: PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN CHẨN ĐOÁN BỆNH DA……… 50
3.1 ĐỀ XUẤT GIẢI PHÁP TỔNG THỂ 503.2 GIAI ĐOẠN 1: PHÂN ĐOẠN TỔN THƯƠNG DA BẰNG SEGFORMER 51
3.3 GIAI ĐOẠN 2: TẠO HÌNH ẢNH TỔN THƯƠNG CẮT XÉN VỚI ĐỆM ĐƯỜNG VIỀN 52
3.4 GIAI ĐOẠN 3: PHÂN LOẠI HÌNH ẢNH BẰNG CONVNEXT 52
3.5 KIẾN TRÚC MÔ HÌNH SEGFORMER 53
3.5.4 LÝ DO CHỌN MÔ HÌNH SEGFORMER 56
3.6.4 LÝ DO CHỌN MÔ HÌNH CONVNEXT 59
CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 60
4.1 HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN ĐOẠN TỔN THƯƠNG DA…… 60
4.1.1 TIỀN XỬ LÝ DỮ LIỆU 60
4.1.3 HÀM MẤT MÁT VÀ THUẬT TOÁN TỐI ƯU 63
4.1.5 KẾT QUẢ HUẤN LUYỆN MÔ HÌNH PHÂN ĐOẠN TỔN THƯƠNG DA………… 68
4.2 HUẤN LUYỆN VÀ ĐÁNH GIÁ MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA…… 70
4.2.1 KIẾN TRÚC MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA 70
4.2.2 TIỀN XỬ LÝ DỮ LIỆU 70
4.2.4 HÀM MẤT MÁT VÀ THUẬT TOÁN TỐI ƯU 75
4.2.5 KẾT QUẢ HUẤN LUYỆN MÔ HÌNH PHÂN LOẠI TỔN THƯƠNG DA……… 76
4.3 PHÂN TÍCH KẾT QUẢ ĐẠT ĐƯỢC QUA QUÁ TRÌNH THỰC NGHIỆM……… 79
4.3.2 PHÂN TÍCH TRƯỜNG HỢP DA ÁC TÍNH BỊ ĐOÁN NHẦM THÀNH
4.3.3 KẾT QUẢ TÔNG QUAN PHƯƠNG PHÁP 83
2 HẠN CHẾ CỦA ĐỀ TÀI 85
Hình ảnh 1.1 Mối quan hệ giữa AI, ML, Deep learning 15
Hình ảnh 1.2 Ví dụ về Supervised Learning và Unsupervised Learning [6] 17
Hình ảnh 1.3 Ví dụ về Reinforcement Learning [7] 18
Hình ảnh 1.4 Ví dụ mạng CNN – Convolutional Neural Network [12] 21
Hình ảnh 1.6 Vision Transformer (ViT) [16] 25
Hình ảnh 1.7 Ví dụ về phần đoạn hình ảnh [18] 26
Hình ảnh 1.8 Ví dụ về phần đoạn hình ảnh ứng dụng trong y tế [19] 27
Hình ảnh 1.9 Ví dụ về phần đoạn hình ảnh sử dụng phương pháp K-mean [21] 28
Hình ảnh 1.10 Kiến trúc mô hình SegNet [22] 28
Hình ảnh 1.15 Ví dụ về bài toán phân loại ảnh 31
Hình ảnh 1.16 Hình ảnh phân loại bệnh phổi thông qua ảnh CT [27] 33
Hình ảnh 1.17 Kiến trúc mô hình VGG-16 [28] 34
Hình ảnh 2.1 Hình ảnh thống kê ung thư da ở Úc [35] 37
Hình ảnh 2.2 Ứng dụng SkinVision [38] 38
Hình ảnh 2.3 Ứng dụng iDoc24 [39] 39
Hình ảnh 2.4 Ứng dụng First Derm [40] 40
Hình ảnh 2.5 Ứng dụng Cureskin [41] 41
Hình ảnh 2.6 Một số hình ảnh từ tập dữ liệu ISIC 2020 [42] 42
Hình ảnh 2.7 Thông tin về ISIC Challenge [44] 44
Hình ảnh 2.8 Thông tin về tập dữ liệu ISIC 2018 [43] 44
Hình ảnh 2.9 ISIC2018_Task1-2_Test_Input [43] 45
Hình ảnh 2.10 ISIC2018_Task1_Test_GroundTruth [43] 45
Hình ảnh 2.11 Tập dữ liệu ISIC2020 sau khi được cấu trúc 46
Hình ảnh 2.12 Một số hình ảnh từ tập dữ liệu ISIC2020 [42] 47
Hình ảnh 3.1 Khung toàn diện để phân tích tổn thương da: Phân đoạn, trích xuất đường viền, cắt xén tổn thương và phân loại ảnh 50
Hình ảnh 3.2 Hình ảnh kết quả đạt được kết thúc giai đoạn 1 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 52
Hình ảnh 3.3 Hình ảnh kết quả đạt được kết thúc giai đoạn 2 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 52
Hình ảnh 3.4 Hình ảnh kết quả đạt được kết thúc giai đoạn 3 - hình ảnh về da lấy từ tập dữ liệu ISIC 2020 53
Hình ảnh 3.5 Kiến trúc mô hình SegFormer [45] 54
Hình ảnh 3.6 Block of the SegFormer [45] 55
Hình ảnh 4.1 Hình ảnh kết quả được in ra trong quá trình huấn luyện mô hình SegFormer 66
Hình ảnh 4.2 Kết quả quá trình training được đo trên tập train 67
Hình ảnh 4.3 Kết quả quá trình training được đo trên tập validation 68
Hình ảnh 4.4 Kết quả đánh giá mô hình trên tập test 68
Hình ảnh 4.5 Đoạn mã khai báo kiến trúc mô hình SkinClassifier 70
Hình ảnh 4.6 Hình ảnh về hai tập dữ liệu 71
Hình ảnh 4.7 Đoạn mã dùng để augment image 72
Hình ảnh 4.8 Các hình ảnh mới được tạo ra sau khi qua các phép biến đổi 74
Hình ảnh 4.9 Kết quả đánh giá tập test khi huấn luyện trên tập Crop Lesion Image 76
Hình ảnh 4.10 Kết quả đánh giá tập test khi huấn luyện trên tập Original Image 77
Hình ảnh 4.11 So sánh Accuracy trong quá trình training hai bộ dữ liệu Crop Lesion
Hình ảnh 4.12 So sánh Precision trong quá trình training hai bộ dữ liệu Crop Lesion
Hình ảnh 4.13 So sánh Recall trong quá trình training hai bộ dữ liệu Crop Lesion Image và Original Image 78
Hình ảnh 4.14 So sánh khoảng chênh lệch Accuracy / Precision / Recall trong quá trình training hai bộ dữ liệu Crop Lesion Image và Original Image 79
Hình ảnh 4.15 Hình ảnh một vài mẫu mà 2 phương pháp dự đoán sai 80
Hình ảnh 4.16 Hình ảnh dự đoán sai da ác tính thành lành tính của phương pháp truyền thống 82
Hình ảnh 4.17 Hình ảnh dự đoán sai da ác tính thành lành tính của phương pháp đề xuất 83
Bảng 1 Thông tin về tập dữ liệu ISIC 2020 [42] 46
Bảng 2 Tài nguyên sử dụng trên server 48
Bảng 3 Tài nguyên sử dụng trên colab 49
Bảng 4 So sánh kết quả của mô hình SegFormer với các mô hình khác [45] 57
Bảng 5 Bảng ISIC 2018 Leaderboards nhiệm vụ 1 Lesion Boundary Segmentation [46] 69
Bảng 6 Kết quả mô hình phân loại ảnh trên hai tập dữ liệu 76
Bảng 7 Tổng hợp kết quả training mô hình phân đoạn và phân loại tổn thương da 80
DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT
Thuật ngữ Tên đầy đủ Nghĩa tiếng Việt
AI Artificial Intelligence Trí tuệ nhân tạo
ML Machine Learning Học máy
CV Computer Vision Thị giác máy tính
CNN Convolutional Neural Networks Mạng nơ-ron tích chập
ANN Artificial Neural Network Mạng nơ-ron nhân tạo
DL Deep Learning Học sâu
DNN Deep Neural Network Mạng nơ-ron sâu
Hợp tác hình ảnh da quốc tế
ReLU Rectified Linear Unit Đơn vị tuyến tính chỉnh lưu
BERT Bidirectional Encoder Representations from Transformers
Biểu diễn từ Transformer với bộ mã hóa hai chiều
LSTM Long Short-Term Memory Bộ nhớ Ngắn hạn Dài
ViT Vision Transformer Transformer dành cho thị giác
IoU Intersection over Union Giao nhau trên Liên hiệp
Luận văn này tập trung vào việc xây dựng mô hình Machine Learning để dự đoán vùng tổn thương trên ảnh y tế, bằng cách áp dụng các kiến thức chuyên sâu về lĩnh vực này Trong quá trình nghiên cứu, chúng tôi đã áp dụng SegFormer để thực hiện phân vùng tổn thương da và kết hợp với ConvNeXt để phân loại ảnh da lành tính và da ác tính Ứng dụng thực tế của mô hình này hướng tới việc hỗ trợ đội ngũ y bác sĩ trong quá trình chẩn đoán và điều trị các trường hợp liên quan tới bệnh về da Điều này mang lại lợi ích đáng kể trong việc nâng cao chất lượng chăm sóc sức khỏe, từ đó cải thiện đời sống và kết quả điều trị cho bệnh nhân
Kết quả thu được là tích cực, với mô hình phân vùng tổn thương da vượt qua top
1 trên ISIC 2018 Leaderboards Mô hình phân loại da, áp dụng phương pháp cắt ảnh, đã đạt hiệu suất vượt trội so với phương pháp truyền thống Đặc biệt, việc giải quyết vấn đề không đồng nhất của dữ liệu tổn thương da đã được thực hiện hiệu quả, với mô hình phân loại sử dụng phương pháp cắt vùng ảnh dựa trên kết quả mô hình phân đoạn tổn thương da, đem lại hiệu suất vượt trội Luận văn mở ra một hướng tiếp cận mới trong lĩnh vực phân loại ảnh y tế
Trong báo cáo này, chúng tôi duy trì nguyên văn tiếng Anh cho một số thuật ngữ nhằm bảo toàn ý nghĩa và nguyên tắc chính xác Điều này giúp đảm bảo sự rõ ràng và mạch lạc trong việc truyền đạt thông tin
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI Đề tài “xây dựng mô hình machine learning dự đoán vùng tổn thương trên ảnh y tế” không chỉ là một nhiệm vụ nghiên cứu mà còn là một sứ mệnh cấp thiết trong lĩnh vực sức khỏe toàn cầu Bệnh ngoài da, với ảnh hưởng lớn đến hàng triệu người trên khắp thế giới, không chỉ tạo ra vấn đề về thể chất mà còn tác động mạnh mẽ đến tâm lý của bệnh nhân Quan trọng hơn, nếu không được chẩn đoán và điều trị kịp thời, những bệnh lý này có thể phát triển thành những vấn đề nghiêm trọng, trong đó có cả nguy cơ mắc ung thư da
Hiện nay, phương pháp chẩn đoán truyền thống do chuyên gia y tế thực hiện vẫn đang được ưa chuộng, tuy nhiên, đây là quá trình tốn kém và chủ quan Để đáp ứng nhu cầu ngày càng tăng về sự chính xác và tốc độ trong chẩn đoán bệnh da, việc áp dụng các mô hình Machine Learning tự động trở nên cực kỳ quan trọng
Tuy nhiên, chúng ta đối mặt với thách thức lớn về khan hiếm dữ liệu, đặc biệt là trong lĩnh vực dữ liệu hình ảnh ung thư Sự không nhất quán và hiếm hoi của dữ liệu tạo ra những thách thức đặc biệt trong việc phát triển và đánh giá mô hình học máy Luận văn đã giải quyết vấn đề này bằng cách đề xuất một phương pháp độc đáo xử lý dữ liệu không nhất quán và tận dụng tối đa hiệu suất của mô hình
Những nỗ lực nghiên cứu của luận văn không chỉ nhằm mục đích cung cấp giải pháp đột phá cho vấn đề chẩn đoán ung thư da mà còn mong muốn đóng góp vào sự phát triển của các công cụ hỗ trợ quyết định và phương pháp chẩn đoán chính xác cho hình ảnh y tế Hy vọng rằng kết quả của đề tài sẽ mở ra những tiềm năng mới, đưa ra những thay đổi tích cực trong lĩnh vực y tế và đem lại lợi ích toàn diện cho cộng đồng y học và bệnh nhân
Trong khuôn khổ của một khóa luận tốt nghiệp, phạm vi của đề tài được hạn chế bởi thời lượng nghiên cứu và tài nguyên, đồng thời những giới hạn sau cũng giúp định hình rõ ràng phạm vi và mục tiêu của công trình
● Thứ nhất: Trong phạm vi của đề tài này, luận văn tập trung đi sâu vào các thuật toán liên quan đến việc dự đoán vùng tổn thương và phân loại bệnh trên ảnh y tế
Sự chú trọng này giúp tập trung nghiên cứu và phát triển mô hình Machine Learning để giải quyết một khía cạnh cụ thể của vấn đề lớn hơn về bệnh ngoài da
● Thứ hai: Các thuật toán được tìm hiểu, tham khảo và khái quát lại trong đề tài đều xuất phát từ các công trình nghiên cứu đã được công bố trên các tạp chí quốc tế về thị giác máy tính Điều này đảm bảo tính chất tiên tiến và đáng tin cậy của các phương pháp được áp dụng trong nghiên cứu
● Thứ ba: Các thông số và kết quả được trình bày trong nghiên cứu chỉ mang tính chất tham khảo do giới hạn về dữ liệu và tài nguyên phần cứng để huấn luyện các mạng học sâu Điều này là để thể hiện sự minh bạch và rõ ràng về các giả định và hạn chế trong quá trình nghiên cứu
● Thứ tư: Dữ liệu sử dụng trong nghiên cứu này được lựa chọn từ ISIC Challenge
Dataset, giúp đảm bảo tính đa dạng và độ chân thực của thông tin y tế hình ảnh Tuy nhiên, nhận thức rằng sự hạn chế của bộ dữ liệu này cũng có thể ảnh hưởng đến khả năng tổng quát hóa của mô hình trong một số trường hợp
3 MỤC TIÊU CỦA ĐỀ TÀI Để đảm bảo sự thành công và ứng dụng thực tế của đề tài "xây dựng mô hình machine learning dự đoán vùng tổn thương trên ảnh y tế ", luận văn đã đặt ra các mục tiêu nghiên cứu chi tiết như sau:
● Trình bày khái quát về machine learning và các khái niệm cơ bản: o Tạo nền tảng kiến thức vững về Machine Learning (ML) và các khái niệm quan trọng liên quan đến đề tài o Giải thích cách ML có thể được áp dụng trong lĩnh vực chẩn đoán bệnh ngoài da và ảnh hưởng của nó đối với sự tiến bộ trong y học