Về bản chất, mỗi nhãn trong phân loại đa nhãn là một bài toán nhị phân độc lập nên các mô hình khi được huấn luyện phải có khảnăng nam bắt được tập nhãn của điểm dữ liệu với độ chính xác
Trang 1ĐẠI HỌC QUOC GIA TP HO CHÍ MINHTRUONG DAI HOC CONG NGHE THONG TIN
KHOA HE THONG THONG TIN
NGUYEN TUONG MINH QUANG
TRAN TRONG KIEN
KHOA LUAN TOT NGHIEP
UNG DUNG MO HINH HỌC SAU CHO BÀI TOÁN PHAN LOẠI CAC BAT
THUONG TREN ANH CHUP X-QUANG VUNG NGUC
APPLYING DEEP LEARNING FOR CHEST X-RAY MULTIPLE
ABNORMALITIES CLASSIFICATION
CU NHÂN NGANH THUONG MẠI ĐIỆN TỬ
GIẢNG VIÊN HƯỚNG DẪNTHS NGUYEN THI KIM PHUNG
TP HO CHÍ MINH, 2023
Trang 2Chương 1: MO DAU oecescecsccsscssessessesecsessesscssesscsssessesssssesssessessssessessessessesessesseeseenees 4
1.1 DOng lực nghiên CỨu - 5 2S 323132119 119111111 ng Hy re 4 1.2 Thách thức 7s 2 LSnk ST vn HT HT TT TH HH Hi ch 4 1.3 Mục tiêu và phương pháp thực hiỆn - c5 2S S321 *sveseeereeeeres 6
L.B.1 0ä 6 1.3.2 Phương pháp thực hiỆn - 5 22c 222113331113 EEEEseerrseeree 6
1.4 Cấu trúc khoá luận : ccxcrtrrrrterrrrrtrrrrrrrrrrrrrrrrrrrrk 7Chương 2: TONG QUAN ¿-2¿- 2-52-5222 EEE32E19E1523121521121127111711211 2111 EE1TEcxe 8
2.1 Cac bệnh lý được quan tÂm -.- 5 2s E23 191119111 9v kg rưy 8
2.1.1 Nodule/Mass (nốt phối hoặc khối u ở phôi) - 2-2 s2 5255: 8
2.1.2 Pleural effusion (tràn dich màng PhOi) 0 cc.ccecesseeseeseeseeseeseeseeseeseesees 92.1.3 Pulmonary fibrosis (xơ PhOi) c.ccccscessesssesssesseessecsesssecssesseessecsesseesseens 92.1.4 Cardiomegaly (chứng tim {O) - + + E3 EseeEeseeeeeeeeerreree 102.1.5 Lung opacity (phổi có vết mờ) -¿- 2: 5+ £+£+£++EE+EEtEEzEerrxrrrrred 112.1.6 Pleural thickening (day dính mang phổi) -5: 5552552552 112.1.7 Aortic enlargement (phinh động mạch chủ) - +++-+++x>++ 13 2.2 Các nghiên cứu da CÓ - 5< LH TH nh rưệt 13
2.3 Một số van đề còn tom tại :c tt EEEEEEEEEEEEEEEEEEEEEErkrkrrrerrer 142.4 Hướng giải QUyẾT 2-52 E222 2 EE127121211211211211 11111 ee 14
Chương 3: CƠ SỞ LÝ THUYÊT 2-2¿- +¿©2++2+22E++EE+2EE+2EEtEEEeExezrxerkrerxeee 16
3.1 KY thuật học sâu Ă Gv 16 3.2 ion na 16
3.2.1 Kiến trúc mạng tích chập - 2 ¿+ +x+E++E£+E££EeEE+EEeEzErrerxeree 17
Trang 33.2.1.1 _ Trích xuất đặc trưng :- + 2+Ee+kckeEeEEErErkerkerkee 173.2.1.2 Phân loạI - LH TH HH ng 18 3.2.2 Các lớp trong mạng tích chập - «- «+ +++k++vEeeeeeeeserseeeerrke 18
3.5.1 Dropout đ⁄⁄⁄ fcc À Ò Q.2 31 3.5.2 Global Average Pooling 2ÌÏÖ - -s+ss kg nghiệt 32 3.5.3 Focal Loss ÏUnCtION - G9 HH ngư, 33Chương 4: PHƯƠNG PHÁP THỰC NGHIỆM - 22 2 5z+xe2zeccsze 35
4.1 Bộ dữ liệu sử dụng .-Ặ LH nghiệt 35
4.1.1 Phân bố bệnh lý trong bộ dữ liệu VinDr-CXR - «+<s «+55 354.1.2 Các trường hợp đa nhãn trong bộ dữ liệu - -+++s<++ss++ss+ 37 4.2 Phương pháp thực nghiỆm - 5 5+ + SE gnrnrret 40
4.2.1 Tiền xử lý bộ dữ liệu -2- + ©5¿2S£+E+EE2EEEEECEEEExerxerkerrerkerree 404.2.2 Tăng cường dữ lIỆU .- - sp 42
4.2.2.1 Lat ảnh (flIp) -ẶSc SH LH HH TH He, 434.2.2.2 _ Điều chỉnh thuộc tính của MAU SAC -s- ss+sszs+setxzzzxz 434.3 Phương pháp đánh giá được sử dụng trong đề tài -s:-: 44
4.3.1 Precision, Recall, Fl-score và ACCUTACY - ĂSSĂ Si, 45 4.3.2, ROC curve và AƯUROCC - s5 ng ng ng ng 464.4 _ Tổ chức dữ liệu -c:c2ccvtttEtrttrrrtttrrrrtirrrrrirrrrrirriei 494.5 Cấu hình thực nghiệm (Configuration) - «+ ss++se+ssexseesss 50
Trang 44.6 Quá trình huấn luyện mô hình - 2-2 + x+x£E£+E++z+zxerxrxezreee 51
4.6.1 Cấu trúc của lớp phân loại Classifier trong các mô hình 51
4.6.2 Vấn dé freeze layers trong hướng tiếp cận Fine-tuning 524.6.3 Kịch ban thực nghiỆm - G5 32313321113 1119 11191 1 ng ng re 524.6.4 Thứ tự tiêu chí đánh gia để đưa ra nhận Xét - ¿2 + x+serx+zecxz 53
47 Kết quả thực nghiệm va nhận xét trên tap Validation - ‹ 53
4.7.1 Tổng hop kết qua thực nghiệm của Nhóm 1 (Nhóm I/N1) 534.7.2 Tống hợp kết quả thực nghiệm của Nhóm 3 (Nhóm 3/N3) 564.7.3 Nhận xét kết quả thực nghiệm đạt được -s¿-ss++cs++- 58
4.8 _ Kết quả đánh giá và nhận xét trên tập Test 2-2 scsecx+se+z 59Chương 5: TONG KKẾT - 2 2 SE+SE9EE‡EEEEEE2EE9E1EE1E71211211211711717121 21.1 xe 63
5.1 Kết quả đạt ẨƯỢC E919 HH HH HH Hư, 63
5.1.1 Về bộ dữ liệu VinDr-CXR s¿©2255£+E+2xvEESEEerkeerxrrreerkee 63
5.1.2 Về các mô hình mạng tích chập -. -¿- s2 ++-xz+z++:x++zx+zsse¿ 635.1.3 Một số kết quả khác - ¿+ +5 2£E2E£EESEEEEEEEEEEEEEEEEEEErErkerkrree 645.2 _ Các hạn chế và hướng đi trong tương lai - 2-2-2 sz+ss+zs+cseẻ 65TÀI LIEU THAM KHẢO 2c E212 EEE1512E9EE121215511151511111112121111151E 1xx cxeE 67
Trang 5DANH MỤC HÌNH VE
Hình 1.1: So sánh sự khác nhau giữa phân loại đa lớp và phân loại đa nhãn 5
Hình 2.1: Phim chụp X-quang lồng ngực có xuất hiện các nốt phôi - 8
Hình 2.2: Phim chụp X-quang lồng ngực bị tràn dich màng phổi 9
Hình 2.3: Phim chụp X-quang lồng ngực có tôn thương xơ phôi -. 10
Hình 2.4: Phim chụp X-quang vực ngực có cơ tim phi đại «<s«<++ 10 Hình 2.5: Phim chụp X-quang lồng ngực có xuất hiện vết mờ - - 11
Hình 2.6: Phim chụp X-quang lồng ngực có tôn thương dày dính màng phôi 12
Hình 2.7: Phim chụp X-quang lồng ngực có phình động mach chủ 13
Hình 3.1: Sơ đồ kiến trúc mạng tích chập cơ bản -: -5:- 17 Hình 3.2: Mô tả phép toán tích chập 525 +21 strrrrrererrrrrrreree 18 Hình 3.3: Hình minh hoạ phép tinh giá trị lớn nhất và giá tri trung bình 20
Hình 3.4: Hình minh hoạ lớp Fully-connected với 2 tang ẩn - 21
Hình 3.5: 2 filter 3x3 liên tiếp nhau có receptive field như một filter có kích thước ¬" ẽốẽẼẽ cv 7e th 23
Hình 3.6: Huấn luyện error (bên trái) và Test error (bên phải) cao hơn sau khi tăng độ sâu mô hình từ 20 lớp lên 56 TỚp «¿2 2£ E*3**EE#EEEeEerersesskrskerkrre 24 Hình 3.7: Một block trong mạng ResNet với skip connectfion 25
Hình 3.8: Kiến trúc mạng VGG-19 (bên trái) và kiến trúc mạng ResNet-152 bên 00 ÔỐ ADI ARRAY 26 Hình 3.9: Một dense block trong mô hình DenseNet với 5 lớp convolution 28
Hình 3.10: Hình minh hoạ DenseNet với 3 dense bloeck <<: 28 Hình 3.16: Mô hình học chuyên tiếp trên mạng tích chập -. - 30
Hình 3.11: Hình minh hoa mô hình mạng có và không áp dụng kỹ thuật dropout 32 Hình 3.12: So sánh giữa Fully connected layer và Global Average Pooling 2D 33
Hình 4.1: Tỷ lệ xuất hiện của các nhãn trong VinDr-CXR 2- 2-5-5552 36 Hình 4.2: Biểu đồ thống kê các trường hợp một phim chụp X-quang được gán nhiều ¡i0 01 38
Hình 4.3: Hai phim chụp X-quang lồng ngực được gan nhiều nhãn cùng một lúc 39
Hình 4.4: Bảng thống kê số lượng và tỷ lệ của từng nhãn sau khi tiến hành chọn lọc AEE ISU Ả 42
Hình 4.5: phim chụp X-quang lồng ngực minh hoa cho phương pháp lật ảnh 43
Hình 4.6: phim chụp X-quang lồng ngực minh hoạ cho phương pháp điều chỉnh độ 10190117 43
Trang 6Hình 4.8: phim chụp X-quang lồng ngực minh hoạ cho phương pháp điều chỉnh độ
"1051509710000 ỐƠƯƯ 44
Hình 4.9: Đồ thị biểu diễn ROC curve và AUROC -5- ¿5x22 +x+EzEvErxsrereee 48 Hình 4.10: Biéu đồ cột biéu diễn kết quả đánh giá mơ hình trên nhĩm 1 54
Hình 4.11: Learning Curve của mơ hình VGG-16 FT_N1 trên tập Validation 54
Hình 4.12: Biéu đồ cột biểu diễn kết qua đánh giá mơ hình trên nhĩm 3 56
Hình 4.13: Learning Curve của mơ hình VGG-1I6_FT_N3 trên tap Validation 57 Hình 4.14: Biéu đồ biểu diễn Weighted F1 va Marco F1 trước và sau khi áp dung kỹ thuật Optimal ThreshoÏding - . - - - +12 1321135113511 E 1E EErrrkrrrkrrrerreerke 60 Hình 4.15: Biéu đồ cột biểu diễn kết quả trước và sau khi áp dụng kỹ thuật Optimal Thresholding của từng nhãn - 6 6 + 1n HT TH HH ng nh 61
Trang 7DANH MỤC BANG
Bang 3.1: Một số phép tích chập đặc biệt - 2-52 ©522522EE+£Ee£EezEzErrreerxees 19
Bang 3.2: Kiến trac VGGNet với các độ sâu khác nau esseseeseeseeseeeeeee 24
Bang 3.3: Kiến trúc mạng ResNet vối các độ sâu khác nhau - 27
Bang 3.4: Kiến trúc mạng DenseNet - 2-52 2 SteEEeEE2EE2EE2EEEEEeEEerkrrkrrex 29 Bảng 4.1: Bảng thống kê số lượng và tỷ lệ của từng nhãn trong bộ dit liệu VinDr-CAR 1 —— 37
Bảng 4.2: Bảng thống kê số lượng và tỷ lệ của từng nhãn sau khi tiến hành chọn lọc Att ISU 0 8ÐỎÓúA 4A 42
Bang 4.3: Bang tóm tắt các độ đo đánh giá hiệu quả của mô hình 46
Bảng 4.4: Bảng giới thiệu chi tiết các độ đo TPR, TNR, FPR, ENR 47
Bảng 4.5: Bang thống kê số lượng ảnh của tập Train, Validation va Test 50
Bảng 4.6: Danh sách các siêu tham số được dùng chung trong toàn bộ quá trình thre NQhiGM 0011017177 3.5 50
Bảng 4.7: Các kịch bản thực nghiệm dé huấn luyện mô hình -. - 52
Bang 4.8: Bang tong hợp các kết quả đạt được khi huấn luyện nhóm I 54
Bang 4.9: Kết quả kiểm thử mô hình VGG-16_FT_NI trên tập Validation 55
Bang 4.10: Bang tong hợp các kết quả đạt được khi huấn luyện nhóm 3 56
Bảng 4.11: Kết quả kiểm thử mô hình VGG-16_FT_ N3 trên tap Validation 57
Bang 4.12: Bảng kết quả Fl-score trước và sau khi áp dung kỹ thuật Optimal W0 0000000150 ///‹+4 61
Trang 8DANH MỤC TỪ VIẾT TẮT
BN Batch Normalization
CAD Computer-aided Detection/Diagnosis
CNN Convolutional Neural Network
Conv Convolutional layer
FPR False Positive Rate
GAP2D Global Average Pooling 2D
ILD Interstitial lung disease
ILSVRC ImageNet Large Scale Visual Recognition Competition
MRI Magnetic resonance imaging
TN True Negative
TNR True Negative Rate
TP True Positive
TPN True Positive Rate
VGG Visual Geometry Group
Trang 9LỜI CÁM ƠN
Trước hết, nhóm tác giả xin chân thành cảm ơn quý cô Nguyễn Thị Kim Phụng
đã hướng dẫn và truyền đạt cho nhóm tác giả các kiến thức, kinh nghiệm quý giá và
những kỹ năng thiết thực trong quá trình thực hiện đề tài khoá luận tốt nghiệp Cô đãđộng viên nhóm vượt qua những chướng ngại, thách thức đồng thời đưa ra những ýtưởng, gợi ý mở đề nhóm có thé tự tìm hướng giải quyết và tiến về đích đến
Nhóm tác giả cũng xin gửi lời cảm ơn sâu sắc đến các quý thầy cô trong Khoa
Hệ thống thông tin - trường Đại học Công Nghệ Thông Tin đã giảng dạy các kiếnthức, kỹ năng cần thiết không chỉ trong quá trình thực hiện khoá luận nói riêng màcòn trong suốt khoảng thời gian được học tập tại trường nói chung
Trong suốt quá trình thực hiện khoá luận, nhóm tác giả đã cố gắng khôngngừng học hỏi, sử dụng các kiến thức đã học cùng với những kỹ thuật mới dé áp dụng
vào đề tài khoá luận này Tuy đã rất có gang không ngừng nhưng nhóm tác giả cũng
không thể tránh khỏi những thiếu sót và hạn chế do kinh nghiệm lẫn kiến thức còn ít
ỏi Do đó, nhóm tác giả rat mong có thé nhận được những góp ý va lời khuyên quýgiá từ các quý thầy cô Khoa Hệ thống thông tin để nhóm tác giả tiếp tục nỗ lực khắcphục những khuyết điểm đang có và làm tốt hơn trong những dự án thực tế hoặc các
đề tài nghiên cứu khoa học trong tương lai
Xin chân thành cảm ơn.
Hồ Chi Minh, ngày 15 tháng 6 năm 2023
Nhóm tác giả
Nguyễn Tường Minh Quang Trần Trọng Kiên
Trang 10TÓM TẮT KHOÁ LUẬN
Trong khoá luận này, nhóm tác giả đã tìm hiểu và nghiên cứu phương pháp xử lýbài toán phân loại đa nhãn (Multi-Label classification) trên phim chụp X-Quang lồngngực Các bệnh được quan tâm trong khoá luận này bao gồm 8 (trong số 15) bệnh lý
trong bộ dit liệu VinDr-CXR: nodule/mass (nốt phối hoặc khối u ở phối), pleural
effusion (tràn dịch mang phối), pulmonary fibrosis (xơ phổi), cardiomegaly (chứngtim to), lung opacity (phổi có vết mờ), pleural thickening (dày dính màng phổi), aorticenlargement (phình động mach chủ), other lession (các triệu chứng khác) và nhữngphim chụp X-quang không có dấu hiệu bất thường Bài toán phân loại đa nhãn trong
khoá luận này có dữ liệu đầu (input) vào là ảnh X-quang lồng ngực và giá tri đầu ra
(output) là xác suất bệnh nhân mắc các bệnh trong 8 bệnh được liệt kê ở trên
Bộ dt liệu được dùng dé huấn luyện mô hình trong khoá luận nay là VinDr-CXR,được VinBigData công bồ trong bài báo “VinDr-CXR: An open dataset of chest X-
rays with radiologist’s annotations” vào năm 2020 Vào thời điểm công bố,
VinDr-CXR được coi là bộ dữ liệu phim chụp X-quang vùng ngực lớn nhất tại Việt Nam với
số lượng 15.000 ảnh được gán với 15 nhãn khác nhau tương ứng với từng bệnh lý ở
phổi VinBigData thu thập bộ dit liệu này dé xử lý bài toán phát hiện dau hiệu bat
thường (object detection) Tuy nhiên bộ dữ liệu vẫn có thé được sử dụng cho các bài
toán phân loại đa nhãn, đặc biệt là khi bộ dữ liệu này có sự chênh lệch lớn ở sỐ lượng
của các nhãn.
Trong phạm vi nghiên cứu của khoá luận này, nhóm tác giả đã tìm hiểu phương
pháp được giới thiệu trong bai bao “Targeted transfer learning to improve performance in small medical physics datasets” được thực hiện bởi nhóm tác gia
Miguel Romero và công bố vào năm 2020 Tại thời điểm công bó, đây là phương
pháp cho kết quả tốt khi giải quyết bài toán xử ly ảnh y khoa trên những bộ dit liệu
có số lượng khiêm tốn Bằng phương pháp sử dụng kỹ thuật học chuyên tiếp (transfer
learning), Miguel Romero cùng các đồng sự đã có thé cải thiện hiệu suất của 2 mô
hình DenseNet121 và ResNet50 Do đó, khoá luận sẽ tập trung tìm hiểu kỹ thuật học
GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 11chuyên tiếp ứng dụng trên bộ dữ liệu VinDr-CXR với mô hình DenseNet và tìm hiểuthêm những mô hình học sâu khác như VGGNet và ResNet dé giải quyết bai toán.
Mục tiêu của khoá luận được đề ra là tìm hiểu ứng dụng kỹ thuật học chuyên tiếp
để giải quyết van đề mat cân bằng trên bộ dữ liệu VinDr-CXR, nhận xét và đánh giá
kết quả thực nghiệm Kết quả thực nghiệm được đánh giá bằng nhiều độ đo như
precision, recall, f1-score và AUROC đê so sánh hiệu suât giữa các mô hình.
GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 12Chương 1: MỞ ĐẦU
1.1 Động lực nghiên cứu
Phân loại bệnh lý trên phim chụp X-quang lồng ngực là dạng bài toán phân lớp(phim chụp X-quang có dấu hiệu bệnh lý được đề cập hay là không) Các bệnh lýtrong bộ đữ liệu VinDr-CXR [1] bao gồm: nodule/mass (nốt phổi hoặc khối u ở phổi),pleural effusion (tràn dich màng phổi), pulmonary fibrosis (xơ phối), cardiomegaly
(chứng tim to), lung opacity (phổi có vết mờ), pleural thickening (day dính màng
phổi), aortic enlargement (phình động mach chủ), other lesion (các triệu chứng khác)
Bài toán có giá trị đầu vào là phim chụp X-quang lồng ngực và đầu ra là giá trị
xác suất của các nhãn được đánh giá là có khả năng xuất hiện Nhằm thực thi bai toán,
nhóm tác giả tiền hành huấn luyện các mô hình mạng tích chập trên bộ dit liệu
VinDr-CXR dựa trên 2 hướng tiếp cận phô biến của học chuyên tiếp (Transfer learning) Kỹ
thuật này giúp giúp mô hình học nhanh hơn, tiết kiệm thời gian và tài nguyên tính
toán Mục đích cuối cùng của đề tài là so sánh hướng tiếp cận nào phù hợp với bộ dữ
liệu được nghiên cứu.
1.2 Thách thức
Trong thực té, phôi của một bệnh nhân có thé có nhiều tổn thương xuất hiện cùng
một lúc Thế nên các bác sĩ cần phải có khả năng đọc được nhiều nhất có thê các dấu
hiệu tốn thương được chụp trên ảnh X-quang Điều này cũng là điều kiện bắt buộckhi huấn luyện các mô hình trí tuệ nhân tạo chân đoán ảnh y khoa Do đó, thách thứcđược đặt ra là cần phải tìm hiểu và ứng dụng lý thuyết bài toán phân loại đa nhãn
(multi-label classification) để huấn luyện các mô hình học sâu Ví dụ như một bức
ảnh X-quang vùng ngực có thê chứa đồng thời nhiều dấu hiệu bệnh khác nhau nhưtran dich màng phổi, phình động mach chủ, xơ phối,
Đối với các bài toán phân loại đa nhãn, yêu cầu được đặt ra khi huấn luyện là môhình phải có khả năng dự đoán nhiều nhãn cùng một lúc mà không loại trừ nhữngnhãn khác như các bai toán phân loại đơn nhãn hay đa lớp Hình 1.1 minh hoạ sự khác biệt giữa bài toán phân loại đa lớp và phân loại đa nhãn.
4
GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 13Samples Samples
wy Á œ (
( Labels (t) Labels (t)
@ [O1] [100] [010] [01] [010] [111]
Hình 1.1: So sánh sự khác nhau giữa phân loại đa lớp và phân loại đa nhãn!
Trong hình 1.1, mô hình khi được huấn luyện dé xử lý các bài toán đa lớp thì chi
có thé dự đoán duy nhất một trong các nhãn của dữ liệu và các nhãn này được xem là
một lớp độc nhất Trong khi đó, mô hình được huấn luyện dé xử lý bài toán đa nhãn
có thể dự đoán cùng lúc nhiều nhãn Về bản chất, mỗi nhãn trong phân loại đa nhãn
là một bài toán nhị phân độc lập nên các mô hình khi được huấn luyện phải có khảnăng nam bắt được tập nhãn của điểm dữ liệu với độ chính xác cao nhất có thể Tuy
nhiên, các nhãn này vẫn sẽ có sự liên quan với nhau Thách thức đặt ra cho những mô
hình xử ly bài toán đa nhãn chính là các đặc trưng của mỗi nhãn có thé năm lẫn lộnvới nhau dẫn đến khó nhận diện đặc trưng cho từng nhãn
Trong bộ dữ liệu ảnh X-quang, một số ảnh có nhiều dấu hiệu bất thường của
nhiều bệnh lý xuất hiện chồng chéo lên nhau làm tăng độ phức tạp cho thuật toán,điều này khiến mô hình gặp nhiều khó khăn để học được đặc trưng của từng nhãntrên cùng một ảnh Phần này sẽ được trình bày trong phần 4.1.2: Những trường hợp
đa nhãn trong bộ dữ liệu
Một thách thức khác nhóm tác giả gặp phải trong bài nghiên cứu này là sự giớihạn về số lượng ảnh đặc trưng cho từng bệnh lý Số lượng phim chụp X-quang đượcthu thập từ bộ đữ liệu VinDr-CXR là hạn chế và không đồng đều giữa các nhãn nênkhiến cho các mô hình học sâu dễ học tủ (overfitting) Đối với những bộ dữ liệu bị
! Ảnh được lấy từ Internet: https://datainsider.tistory.com/92
5
GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 14mat cân bằng như thé này thì việc áp dụng thêm phương pháp tăng cường dữ liệucũng như thiết kế các hàm tính độ lỗi và mat mát phù hợp góp phan hạn chế van đềnày.
1.3 Mục tiêu và phương pháp thực hiện
1.3.1 Mục tiêu
Với tính chat mat cân bằng nghiêm trọng và số lượng ảnh dùng dé huấn luyện
khiêm tốn của bộ đữ liệu, khoá luận sẽ tìm hiểu phương pháp được công bé trong
bài báo [2] của nhóm tác giả Miguel Romero và các đồng sự đến từ đại học
Stanford Cụ thê hơn, phương pháp được trình bày trong bài báo là sử dụng kỹ thuậthọc chuyền tiếp dé huấn luyện mô hình DenseNet và ResNet trên bộ dữ liệu NIH
ChestXray 14 Đây cũng là bộ dữ liệu về ảnh X-quang vùng ngực bị mat cân bằng
giữa số lượng của các nhãn Thêm vào đó, khoá luận cũng sẽ tìm hiểu và ứng dụng
thêm mô hình VGGNet [3] dé tìm ra mô hình mang lại hiệu suất tốt nhất
Nhằm thực thi mục tiêu đã đề ra, nhóm tác giả chia thành ba mục tiêu nhỏ sau:
- Tim hiểu về bộ dữ liệu VinDr-CXR
- Tim hiểu kiến thức về mạng tích chập (Convolutional Neural Network) đã
được đề cập
- Tim hiểu về kỹ thuật học chuyền tiếp
- _ Tiến hành huấn luyện các mạng học sâu trên bộ dữ liệu VinDr-CXR để thực
thi bài toán.
1.3.2 Phương pháp thực hiện
Phương pháp tìm hiểu bộ dữ liệu:
© Đọc bài báo [1] để hiểu thông tin cơ bản về bộ dữ liệu: nguồn gốc, các loại bệnh
được gán nhãn.
e Thống kê những thông tin cơ bản về dit liệu, quan sát những bức anh đại diện cho
mỗi nhãn cũng như những bức ảnh được phân loại nhiều nhãn và đưa ra nhận xétriêng.
e_ Tiến hành tiền xử lý dữ liệu
GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 15Phương pháp tìm hiểu các kiến trúc của mô hình mạng tích chập:
Tìm hiểu, đọc nghiên cứu và những bài báo giới thiệu, trình bày về kiến trúc mạng
tích chập phô biến trong bài toán phân loại ảnh, đặc biệt là ảnh y khoa
Ứng dụng các mô hình mạng tích chập vào quá trình huấn luyện và kiểm thử trên
bộ dt liệu.
Phương pháp tìm hiểu kỹ thuật học chuyển tiếp:
Đọc các bài báo khoa học trình bày ý tưởng kỹ thuật học chuyên tiếp để huấnluyện các mô hình mạng tích chập xử lý ảnh y khoa.
Ap dụng kỹ thuật học chuyền tiếp dé tăng hiệu suất của các mô hình đã được huấn
luyện.
Kỹ thuật học chuyền tiếp gồm có 2 hướng tiếp cận phô biến: feature extraction(trích xuất đặc trưng) và fine-tuning (tinh chỉnh) Nhóm tác giả sẽ ứng dụng cả haihướng tiép cận trên đê huân luyện các mô hình mạng tích chập Sau đó so sánh và nhận xét sự hiệu quả của từng hướng tiêp cận dén mô hình.
Thực nghiệm
Tiến hành thực nghiệm để cả hai hướng tiếp cận trên ba mô hình: VGG-16,
ResNet-152v2 và DenseNet-20 dựa theo ba kịch bản thực nghiệm:
Huấn luyện trên tập dữ liệu ban đầu
Áp dụng phương pháp tăng cường đữ liệu
Áp dụng phương pháp tăng cường dữ liệu và có gang tăng độ chính xác trên tập
kiểm định (validation set) cao nhất có thê
1.4 Cấu trúc khoá luận
Những chương sau của bài luận có bô cục như sau:
Chương 2: Tổng quan
Chương 3: Cơ sở lý thuyết
Chương 4: Phương pháp thực nghiệm
Chương 5: Tổng kết
GVHD: ; SVTH:
ThS.Nguyén Thị Kim Phụng Trân Trọng Kiên — 19521720
Trang 16Chương 2: TONG QUAN
Trong chương 2, nhóm tác gia sẽ trình bày tong quan dé tài, cụ thé là dấu hiệu nhận
biết các loại bệnh ly được quan tâm trong khoá luận, các nghiên cứu khoa học liênquan, những vấn đề mà nhóm nghiên cứu đề tìm ra phương pháp giải quyết
2.1 Các bệnh lý được quan tâm
Các bệnh lý hoặc tốn thương ở bên trong phôi rất khó dé phát hiện mà không
thông qua các phương pháp chụp phim X-quang hoặc MRI Trong phạm vi nghiên cứu của khoá luận này, nhóm tác giả dành sự quan tâm cho 8 nhãn sau:
2.1.1 Nodule/Mass (nốt phối hoặc khối u ở phối)
Hình 2.1: Phim chụp X-quang lồng ngực có xuất hiện các nót phổi
Dấu hiệu bất thường: trên phim chụp X-quang xuất hiện hình mờ có dạng hình
tròn giới hạn rõ và kích thước có thé thay đổi từ vài mi-li-mét đến nhiều xen-ti-mét
và khả năng xuất hiện một hoặc nhiều khối u ở cả 2 bên phối Dau hiệu nhận biết tonthương dang nốt phối hay u phối:
- _ Nốt phổi: ton thương dạng mô đặc có đường kính nhỏ hơn 3cm
- U phổi: tôn thương dạng mô đặc có đường kính lớn hơn 3cm
GVHD: l SVTH:
ThS.Nguyễn Thị Kim Phụng _ Trân Trọng Kiên — 19521720
Trang 172.1.2 Pleural effusion (tràn dịch màng phổi)
Hình 2.2: Phim chụp X-quang lồng ngực bị tràn dịch màng phổi
Dấu hiệu bat thường: trong khoang màng phổi có nước hoặc lượng dịch nhiều
hon mức sinh lý bình thường và được nhận biết khi cục phối có hình mờ đồng nhất
Có hai loại tran dich màng phối pho biến:
- Tran dịch màng phổi lượng nhiều: hình mờ đồng nhất đây những mô xung
quanh về khoang phối đối diện
- Tran dịch màng phôi lượng ít: hình mờ đồng nhất xuất hiện ở đáy phôi làm mat
góc ở sườn hoành và có giới hạn trên là đường cong Damoiseau.
2.1.3 Pulmonary fibrosis (xơ phổi)
GVHD: l SVTH:
ThS.Nguyễn Thị Kim Phụng _ Trân Trọng Kiên — 19521720
Trang 18Hình 2.3: Phim chụp X-quang lồng ngực có ton thương xơ phổi
Dấu hiệu nhận biết: các mô bên trong khoang phôi bị ton thương mãn tính khiến
cho các mô phổi dày lên và cứng hơn, gây ra sẹo ở phôi, từ đó xuất hiện hình anhbóng mờ Bóng mờ có thé do tích tụ dịch hoặc viêm:
- Dich: khoảng kẽ rộng ra.
- _ Viêm: làm xơ hoá kẽ trong thời gian nhất định và bóng mờ có dạng hình nốt
lưới.
2.1.4 Cardiomegaly (chứng tim to)
Hình 2.4: Phim chụp X-quang vực ngực có cơ tim phì đại
10
GVHD: l SVTH:
ThS.Nguyễn Thị Kim Phụng _ Trân Trọng Kiên — 19521720
Trang 19Dấu hiệu nhận biết: cơ của tâm thất dày lên bất thường hoặc cũng có thê là váchngăn giữa hai tâm thất rộng hơn khiến cho kích thước của tim ngày càng to ra.Tim cóthê phình to theo 2 trường hợp:
e Giãn nhỏ: thành tim mỏng đi, căng giãn và yếu hơn
e Phi đại: thành tim dày hon và độ đàn hồi của tim giảm
2.1.5 Lung opacity (phối có vết mò)
Hình 2.5: Phim chụp X-quang lồng ngực có xuất hiện vết mờ
Dấu hiệu nhận biết: những vùng tồn thương không có giới hạn rõ rệt dạng đám
bông đám mây mờ ảo.
- _ Vết mờ lành tính:
e_ Nốt mờ hình tròn với đường kính bé hơn 3em
e Các nốt mờ có bờ đều
- Vét mờ ác tính:
e Các nốt mờ với đường kính lớn hơn 3cm
e Bờ của các not mờ không đêu.
2.1.6 Pleural thickening (dày dính màng phổi)
11 GVHD: l SVTH:
ThS.Nguyễn Thị Kim Phụng _ Trân Trọng Kiên — 19521720
Trang 20Hình 2.6: Phim chụp X-quang lồng ngực có tôn thương dày dính màng phổi
Dấu hiệu nhận biết: trên phim chụp X-quang vùng ngực có xuất hiện đám mờ
và dễ nhận biết
- Day dính màng phổi: xuất hiện đám mờ thuần nhất hoặc tương đối thuần nhất
và có thê thấy ranh giới một cách rõ ràng Các cơ quan như vòm hoành, khoang
gian sườn hoặc trung thất có liên quan đến phôi có thé bị gây co hoặc kéo cơ
- Day dính toàn bộ một bên phé mạc: xuất hiện hình mờ thuần nhất toàn bộ một
bên phổi gây hiệu ứng co kéo mạnh và kéo trung thất về phía ton thương, có
hiện tượng co hẹp trong khoang gian sườn bị tôn thương
12 GVHD: l SVTH:
ThS.Nguyễn Thị Kim Phụng _ Trân Trọng Kiên — 19521720
Trang 212.2 Cac nghiên cứu đã có
Năm 2020, Miguel Romero và các đồng sự đã công bố nghiên cứu [2], trong đónhóm tác giả tiến hành thực nghiệm hai mô hình mạng tích chập: DenseNet121 vàResNet50 trên bộ dữ liệu X-quang lồng ngực NIH ChestX-rayl4, có ứng dụng kỹ
thuật học chuyên tiếp dé xử ly van dé mat cân bằng dữ liệu và số lượng dit liệu huấn
luyện khiêm tốn Sau nhiều kịch bản thực nghiệm với nhiều hướng tiếp cận của học
chuyền tiếp, chỉ với số lượng 1600 ảnh X-quang, mô hình DenseNet-121 đã có thé
cho ra kêt quả có thê châp nhận được Nghiên cứu cũng chỉ ra răng, việc tái sử dụng
13 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 22các mô hình đã được huấn luyện sẵn với bộ dữ liệu ImageNet cũng cho kết quả khảquan khi huấn luyện trên những tập dit liệu khiêm tốn.
Vào năm 2021, trên tạp chí điện tử ICEEM, Azza EI-Fiky và các đồng sự đã công
bố nghiên cứu [4] Nghiên cứu của nhóm đã chứng minh răng mô hình Resnet-50 khiđược ứng dụng kỹ thuật học chuyền tiếp trên một bộ dữ liệu phim chụp X-quang được
gán 14 nhãn bệnh lý khác nhau cho kết quả tốt hơn với các nghiên cứu liên quan trước
đó (độ đo AUC: 0,911 và fl-score: 0,66).
2.3 Một số van đề còn tồn tại
Tuy đã có nhiều nghiên cứu huấn luyện các mô hình mạng tích chập chân đoán
ảnh y khoa thế nhưng hầu hết các bộ dữ liệu đều được thu thập ở các nước ngoài Việt
Nam VinDr-CXR là bộ dữ liệu phim chụp X-quang ngực được công bồ đầu tiên tại
Việt Nam với các ảnh được thu thập tại hai bệnh viện lớn tại Việt Nam là bệnh viện
108 và bệnh viện Đại học Y Hà Nội Đặc thù của bộ dữ liệu này là:
e B6 dữ liệu phục vụ cho bài toán phát hiện các dấu hiệu bất thường trên phim
chụp X-quang lồng ngực (object detection) nhưng vẫn có thé được dùng dé
nghiên cứu cho các bài toán phân loại đa nhãn (multi-label classification).
e_ Bộ dé liệu bị mat cân bằng nghiêm trọng về sO lượng giữa các nhãn Một
số nhãn có sô lượng ảnh huấn luyện rất thấp
e Chưa có nghiên cứu chứng thực hướng tiếp cận nào của kỹ thuật học chuyển
tiếp có thể phù hợp với bộ dit liệu và bài toán
2.4 Hướng giải quyết
Các vấn đề sẽ được tập trung nghiên cứu trong khoá luận này:
e Huấn luyện mô hình phân loại đa nhãn phim chụp X-quang lồng ngực
e Ứng dụng kỹ thuật học chuyến tiếp để cải thiện hiệu suất mô hình mang
tích chập.
e Tim hiểu các phương pháp, kỹ thuật giải quyết van dé mat cân bằng nghiêm
trọng của bộ dữ liệu.
14 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 23e_ Phát triển một ứng dụng web đơn giản có chức năng nhận ảnh và dự đoán
phim chụp X-quang lồng ngực có dấu hiệu của bệnh lý hay không
15 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 24Chương 3: CƠ SỞ LÝ THUYET
Trong chương 3, nhóm tác giả sẽ trình bày các kiến thức nền tảng được vận dụng
dé xây dựng khoá luận, bao gồm lý thuyết được sử dụng trong lĩnh vực Học sâu,
mạng tích chập, học chuyển tiếp và thuật toán được dùng dé huấn luyện mô hình
3.1 Ky thuật học sâu
Kỹ thuật học sâu (Deep Learning) là nhánh con của các phương pháp học máy
và được sử dụng rộng rãi trong lĩnh vực trí tuệ nhân tạo Y tưởng cua kỹ thuật hoc
sâu là mô phỏng hệ thống mang neuron nhân tạo dé xử lý những bài toán có mức độ
phức tạp cao như xử lý hình ảnh, văn bản hoặc âm thanh Hình 3.1 mô tả vi trí của kỹ thuật Deep Learning trong nhóm các thuật toán AI.
Artifical Intelligence
“3
“6 Machine `
“, Learning /
Ý tưởng mạng neuron nhiều tầng - Convolutional Neural Network đã được Yann
LeCun lần đầu giới thiệu vào năm 1995 [4] với tên gọi LeNet, nhằm giải quyết bài
toán nhận diện ký tự Tiếp theo đó là sự xuất hiện của nhiều kiến trúc mạng tích chập
dựa trên ý tưởng LeNet như AlexNet, VGG [5], ResNet [6] hay DenseNet [7] Chính
2 Ảnh được lấy từ Internet: https://www.v7labs.com/blog/deep-learning-guide
16 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 25điều này đã thúc đây sự phát triển nhanh chóng và ứng dụng rộng rãi của mạng tíchchập trong lĩnh vực thị giác máy tính.
3.2.1 Kiến trúc mạng tích chập
Kiến trúc mạng tích chập bao gồm các tang (layer) xếp chồng lên nhau Các tang
mạng này sẽ thực hiện nhiệm vụ trích xuất đặc trưng và tiến hành phân loại dữ liệu,
với input vào là một ma trận 4 € RTM*" vào các lớp (class) tương ứng với yêu cau bài
toán dựa trên xác suất đã qua tính toán
Kiến trúc huấn luyện của các mạng tích chập có 2 quá trình chính:
- _ Trích xuất đặc trưng (feature extraction) bao gồm dữ liệu đầu vào (input), lớp
tích chập (convolution layer), lớp giảm mẫu (pooling layer).
- Phan loại (classification) bao gồm lớp kết nối day đủ (fully-connected layer và
xác suất dé phân loại (output)
Feature Extraction Classification
Hình 3.1: Sơ đồ kiến trúc mạng tích chập cơ ban 3
3.2.1.1 Trích xuất đặc trưng
Đối với những bài toán phân loại hình ảnh, một mạng tích chập là tốt khi có thê
rút trích được các đặc trưng hữu ích và có thể sử dụng để phân loại được các loại lớp
riêng biệt Từ đó, mô hình học được khả năng phân loại các vật thé khác nhau Do
đó, khi đánh giá mạng tích chập có tốt hay không thì việc kiểm tra liệu mạng tích
chập có rút trích được những đặc trưng có ích hay không là cực kỳ quan trọng.
3 Ảnh được lay từ bai báo [20]
17 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 26Một trong những điểm mạnh của mạng tích chập là có khả năng học và rút trích
đặc trưng một cách tự động thông qua các phép toán tích chập ảnh và các thuật toán
tối ưu dé mô hình càng học càng nhận biết đặc trưng chính xác hơn
3.2.1.2 Phân loại
Sau khi đã trích xuất được đặc trưng từ bộ dữ liệu huấn luyện, mô hình sẽ tiến
hành tính xác suất dé phân vào lớp thích hợp, hay nói cách khác là quá trình phân loại
sẽ quyết định xem đặc trưng sau khi được trích xuất sẽ thuộc về lớp nào
3.2.2 Các lớp trong mạng tích chập
3.2.2.1 Lớp tích chập
Trong kiến trúc của mạng tích chập, các lớp tích chập mang nhiệm vụ rút tríchđặc trưng của đữ liệu được huấn luyện
Lớp tích chập này bao gồm nhiều bộ loc (filter) di chuyển trên ma trận của ảnh
theo theo từ trái sang phải và từ trên xuống dưới Các bộ lọc này thường có kích thước
là 1 x 1,3 x3, 5 x 5 với các giá trị ban đầu đều được khởi tạo một cách ngẫu nhiên.
Phép toán tích chập được thể hiện ở hình 3.4
- Input data: ma trận đầu vào có kích thước (M¡, Nị)
4 Ảnh được lấy từ internet: https://blog.roboflow.com/what-is-a-convolutional-neural-network/
18 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 27- Kernel: bộ lọc có kích thước k x I.
- Convoluted feature: ma trận kết quả của phép tích chập (Mẹ, Nc)
Bảng 3.1 trình bày một số phép tích chập đặc biệt và kết quả sau khi thực hiện tích
chập:
Phép tính Bộ lọc Đặc trưng
0 0 0 |Identity 0 10
Mỗi bộ lọc với thông số khác nhau sẽ rút trích ra những loại đặc trưng khác
nhau Các mạng tích chập có thê tự điều chỉnh giá trị của bộ lọc trong quá trình học
cho đến khi kết qua phân lớp gan sát với kết quả thực tế nhất
19 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 283.2.2.2 Lớp lấy mẫu
Lớp lấy mẫu được xếp sau các tầng tích chập với vai trò lựa chọn những đặc
trưng thu được từ lớp tích chập theo một tiêu chí cụ thé (lấy theo giá trị lớn nhất hoặc
lay theo giá trị trung bình trên một vùng cục bộ), nhằm giữ lại những đặc trưng quan
trong và giảm nhiều chi phi tính toán của mô hình mạng tích chap
Phép lay mau sẽ cho kết quả như minh hoa theo hình 3.5, những đặc trưng saukhi trải qua quá trình lay mẫu chỉ được giữ lại những giá trị quan trọng nhất Điều
này giúp giảm chiều dit liệu, kích thước của đặc trưng và giảm đi lượng lớn chi phí
tính toán.
EFI
Hình 3.3: Hình minh hoạ phép tính giá tri lớn nhất và giá trị trung bình 5
3.2.2.3 Lớp Kết nối đầy đủ - Fully connected (FC)
Fully-connected layers bao gồm nhiều tầng neuron mà neuron ở tầng này được
kết nỗi với tất cả neuron ở tầng liền kề phía trước Các neuron kết nối với nhau bằng
một giá trị gọi là trọng số (weight) Cau trúc của một lớp Fully connected:
- Tang đầu tiên của FC là tang dit liệu đầu vào (input), là giá trị của vector đặc
trưng sau khi đi qua tất cả lớp conv phía trước và được làm phăng
- _ Các tang ở giữa là tang ân (hidden layer)
- Tang cuối cùng của FC là tang giá trị đầu ra (output)
5 Ảnh được lấy từ [22]
20 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 29Các tầng neuron trong FC có thể có số lượng neuron hoàn toàn khác nhau.
Cách chọn số lượng neuron cho các tầng FC cũng phụ thuộc vào tính chất bài toán
Như đã đề cập, các neuron trong FC layers được kết nối với nhau bởi trọng số (weight)
và các neuron ở các tang phía sau sẽ có tổng trọng số (weight sum) của các trọng số
trong tầng neuron phía trước Tổng trọng số ở tầng cuối cùng sẽ được truyền vào hàmphi tuyến tính
Cu thê, giá trị của neuron được tinh bang kết quả của hàm phi tuyến tính ReLU,
tầng cuối cùng của FC sử dụng hàm sigmoid thay cho ReLU và có số neuron tương
ứng với số nhãn phân loại của bài toán Mỗi neuron này sẽ có giá trị là xác suất của
5 Anh được lấy từ Internet:
https://indiantechwarrior.com/fully-connected-layers-in-convolutional-neural-networks/
21 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 30Trong khoá luận này, nhóm tác giả sẽ tìm hiểu ba mô hình mạng tích chập phô
biến là VGG-16, ResNet-152v2 va DenseNet-201 dé giải quyết bài toán phân loại đa
nhãn phim chụp X-quang vùng ngực trên bộ dữ liệu VinDr-CXR.
3.3.1 VGGNet
VGGNet được công bồ trong bài bao “Very Deep Convolutional Networks for
Large-Scale Image Recognition” [3], được đơn vi VGG (Visual Geometry Group)
dén tir dai hoc Oxford phat triển Mạng VGG được thiết kế để tăng độ sâu của mạng
tích chập từ 11 đến 19 lớp khi so với mang AlexNet trước đó chi với 8 lớp Cũng vithé mà trong cuộc thi ILSVRC’14, mạng VGG có độ lỗi chỉ là 7.3% - thấp hơn gap
đôi khi so với mạng AlexNet trong ILSVRC’ 12 - độ lỗi là 16.4%.
Ý tưởng
Dé tăng độ sâu của mạng tích chập, nhóm tác giả đến từ Visual Geometry Group
đã sử dụng các filter có kích thước nhỏ chỉ 3x3 và bước nhảy (stride) cho các bộ lọc
(filter) được thiết lập ở mức 1 Điều này giúp tăng đáng ké độ sâu của mô hình va
giảm đi lượng tham số cần dùng dé huấn luyện
Sự khác biệt ở việc dùng các filters có kích thước nhỏ 3x3 thay vì 5x5 như trong
AlexNet là ở việc các filter kích thước nhỏ sẽ lấy được nhiều chỉ tiết hơn khi thựchiện phép toán tích chập Nhiều filter kích thước nhỏ khi được xếp chồng liên tiếpnhau cũng sẽ tạo receptive field filter có kích thước lớn Ví dụ, với filter 3x3 liên tiếp
nhau sẽ có receptive filed có kích thước 5x5 như hình Hình 3.6 Nếu là ba filter 3x3
liên tiếp sẽ tạo ra receptive field 7x7
GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 31Hình 3.5: 2 filter 3x3 liên tiếp nhau có receptive field như một filter có kích thước 5x5 7
Sử dụng nhiều filter có kích thước nhỏ như vậy nhưng vẫn đảm bảo tạo rareceptive field tương tự như khi sử dụng một filter có kích thước lớn, không những
giúp lấy được nhiều chỉ tiết của ảnh hơn trong những lớp tích chập đầu mà còn giảm
số lượng tham số rat đáng ké khi huấn luyện Ví dụ, khi sử dụng ba filter 3x3 thì sẽ
cần 3(32C) = 27C tham số, trong khi đó một filter 7x7 sẽ yêu cầu lượng tham số lên
đến 7?C = 49C € là số chiều của input nhân với số chiều của output tại lớp thựchiện phép tích chập.
Kiến trúc mạng
Khi được công bố, kiến trúc mạng của VGG có 3 độ sâu khác nhau, từ I1 lớp
đến 19 lớp Thế nhưng phiên bản với độ sâu 16 lớp thê hiện tốt nhất với top-5 error
với kích thước ảnh là 256x256 chi là 8.8% khi so với phiên bản có độ sâu 11 lớp với
top-5 error là 10.4%, còn với phiên bản 19 lớp thì top-5 error là 9% Lý do có thể giải
thích vì sao tăng thêm độ sâu từ 16 lên 19 lớp mà độ lỗi tăng là vì hiện tượng vanishing
gradient descent (biến mất đạo hàm) Khi mô hình mạng tích chập càng sâu thi trong
quá trình lan truyền ngược (back propagation), đạo hàm sẽ càng về gần về 0, khiến
sự hội tụ trở nên chậm chap nên làm cho hiệu suât của mô hình bi xuông cap.
ConvNet Configuration
conv3-128
conv3-128
conv3-256 | conv3-256 | conv3- 256 conv3-256 | conv3-256
conv3-256 | conv3-256 | conv3-256 | conv3-256 | conv3-256
conv1-256 | conv3-256
conv3-512 | conv3-512 | conv3- Sid | oe conv3-512 | conv3-512
conv3-512 | conv3-512 | conv3-512 | conv3-512 | conv3-512 | conv3-512
conv1-S12 | conv3-S12 | conv3-512
Trang 32Bang 3.2: Kiến trúc VGGNet với các độ sâu khác nhauŠ
3.3.2 ResNet
Được tập đoàn Microsoft lên ý tưởng và phát trién, mô hình ResNet được công
bố trong bài báo “Deep residual learning for image recognition” [6] đã gây tiếng vang
với chiến thắng tại cuộc thi ILSVRC năm 2015 Kỹ thuật skip connection của ResNet
đã giúp giải quyết van đề biến mat đạo hàm — vanishing gradient descent giúp tăng
độ sâu của mô hình lên hàng trăm lớp và giảm bớt đáng kê lượng tham số so với môhình mạng VGGNet.
Ý tưởng chính
Van dé vanishing gradient descent đã cản trở tăng chiều sâu của mô hình đã
được dé cập trong phan giới thiệu mô hình VGGNet Mô hình càng sâu, càng nhiều
lớp không những không tăng độ chính xác mà chỉ bão hoà hoặc thậm chí còn giảm Trong bài báo “Deep residual learning for image recognition” đã mô tả thí nghiệm trên bộ dir liệu CIFAR-10 giữa hai mô hình có 20 lớp và 56 lớp (hình 3.8) Ta nhận
thấy rằng cả huấn luyện error và test error đều giảm và nguyên nhân không phải do
mô hình bị overfitting mà chính là hiện tượng biến mất đạo hàm như đã đề cập
iter (le4) iter (1e4)
Hình 3.6: Huan luyện error (bên trai) và Test error (bên phải) cao hon sau khi tăng độ sâu
mô hình từ 20 lớp lên 56 lớp °
Š Bang được lấy từ bài báo [5]
® Ảnh được lấy từ bài báo [6]
24 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 33Các nhà phát triển ResNet đã đề xuất một ý tưởng mới dé khắc phục van dé
nay là skip connection Y tưởng chính của skip connection được giải thích như sau:
Dữ liệu đầu vào: x (input) sẽ đi qua hai lớp: weight layer có hàm phi tuyến tính ReLU
ở giữa thì đầu ra (output) là Cộng hàm số F(x) với input x thành t6 hợp F(x) + x
sẽ tiếp tục đi qua hàm ReLU để trở thành input cho block tiếp theo Hình 3.8 minh
hoạ kiến trúc residual block trong mô hình ResNet
weight layer
x
identity
Hình 3.7: Một block trong mang ResNet với skip connection !°
Day được gọi là kỹ thuật su dụng kết nối tat (shortcut connection hoặc skipconnection) Mục đích của nó là lưu giữ va tránh làm mat mát thông tin khi truyền dữ
liệu đi từ các tầng phía trước tới tang phía sau bằng cách bỏ qua một vài tang trung
gian Kỹ thuật này góp phần giảm bớt tình trạng đạo hàm tiến dần về 0 khi mô hình
có nhiêu lớp và sô lượng tham sô lớn.
Kiến trúc mạng
Vì ResNet được xây dựng trên ý tưởng của mô hình VGGNet nhưng được thêm
vào các skip connection Trong bài khoá luận, nhóm tác giả quyết định dùng 152v2 với 152 lớp, vì đây là phiên bản cho độ chính xác cao nhất trong tất cả các
ResNet-phiên bản của ResNet.
Đầu tiên, khi xây dựng một mô hình ResNet có 152 lớp, nhóm tác giả cũng xâydựng một mô hình VGG với các lớp tích chập có kích thước 3x3 liên tiếp nhau với
độ sâu 152 lớp Sau đó, thêm vào các skip connection thì sẽ có được kiến trúc mạng
'0 Ảnh được lay từ bài báo [6]
25 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 34Residual Giống với ý tưởng của mạng ResNet, các skip connection sẽ được thêm
trực tiếp khi số chiều của giá trị đầu vào (input) bằng với số chiều giá trị đầu ra
(output) Hình 3.9 minh hoa kiến trúc mạng ResNet 152
Nếu như số chiều của output lớn hơn so với với số chiều của input, sẽ có 2 giải pháp
khắc phục:
- Cac giá trị trong skip connection giữ nguyên và sẽ thêm vào các phan tử có giá
trị bang 0 dé tăng số chiều input
- Thực hiện phép convolution 1x1 ngay trên skip connection để tăng số chiều
input Những vi tri skip connection.
Hình 3.8: Kiến trúc mang VGG-19 (bên trái) và kiến trúc mạng ResNet-152 bên phải !!
Kiến trúc ResNet được thiết kế với các độ sâu khác nhau lần lượt là 18, 34, 50, 101,
152 Kiến trúc cụ thể của từng độ sâu khác nhau sẽ được mô tả trong bảng 3.3:
!! Ảnh được lay từ bài báo [23]
26 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 35trong bài báo “Densely Connected Convolutional Networks” [7] như là một biến thé
mở rộng của ResNet Sự khác biệt ở đây là DenseNet sử dụng phép concatenation thay vì phép cộng đê kết nôi các layer với nhau Điêu này thực sự tạo ra một sô ưu
layer name | output size 18-layer 34-layer 50-layer 101-layer 152-layer
Tiếp nối sự thành công của ResNet, vào năm 2017, DenseNet được giới thiệu
thế cho DenseNet so với các mạng tích chập đã được công bố trước đó
Ý tưởng chính
nhau dé hạn chế tình trang vanishing gradient descent nhưng thay vì sử dụng phép
cộng input x và output F(x) thi DenseNet lại sử dụng phép concatenation dé thực
hiện việc đó Cac feature map của lớp nằm trước sẽ trở thành input của lớp đang xét,
feature map của lớp đang xét sẽ tiếp tục trở thành input của lớp tiếp theo Mô hình
Như đã đề cập, DenseNet cũng sử dụng ý tưởng kết nối trực tiếp các lớp với
mạng DenseNet được mô tả trong hình 3.10.
!2 Bang được lay từ bai báo [7]
Trang 36Hình 3.9: Một dense block trong mô hình DenseNet với 5 lớp convolution !°
Trong hình này, đối với lớp màu vàng (lớp thứ tư):
- Input của lớp màu vàng là các feature map của 3 lớp trước đỏ (lớp màu đỏ, lớp
màu xanh lục và lớp màu tím).
- Output — feature map - của lớp màu vàng sẽ trở thành input của lớp tiếp theo
(lớp màu cam).
Thế nhưng, nếu cứ ghép các feature map như cách ở trên sẽ không khả khi
feature map sẽ có kích thước khác nhau khi đi qua các lớp khác nhau Do đó, để đảm
bảo kích thước feature map ở mỗi layer có cùng kích thước thì mỗi denseblocks sẽ
được kết nối với nhau qua các transition layer (Hình 3.11) Transition layer bao gồm
Batch Normalization, 1 x 1 convolution, 2 x 2 average pooling.
Input
Prediction Dense Block 1 Dense Block 2
!3 Ảnh được lay từ bài báo [7]
'* Ảnh được lay từ bai báo [7]
28 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 37Lớp giữa 2 block liền kề là transition layer, dùng dé thay đôi kích thước feature
map thông qua phép tích chập và giảm mẫu.
Kiến trúc mạng
Một kiến trúc mạng DenseNet sẽ có các denseblocks được liên kết với nhau
qua các transition layer Trong bài báo [16] đã giới thiệu 4 phiên bản DenseNet với
những độ sâu khác nhau Nhưng trong bài luận này, nhóm tác giải quyết định chọn
DenseNet — 201 lớp vì phiên bản này cho độ chính xác cao nhất trong 4 phiên bản
Layers | Output Size | DenseNet-121 | DenseNet-169 | DenseNet-201 | DenseNet-264
Convolution 112 x 112 7 x 7 cony, stride 2 Pooling 56 x 56 3 x 3 max pool, stride 2
Dense Block 1 x 1 conv 1 x I conv 1 x I conv 1 x | conv
56 x 56 6 6 6 6
q) * HS * 3x 3conv | ” | [;⁄: mm | * 3 x 3conv | *
Transition Layer 56 x 56 1 x l conv
() 28 x 28 2 x 2 average pool, stride 2
Dense Block 1 x 1 conv 1x I conv | 1 x L conv 1 x 1 conv
2
(2) 28 xi 3x3conv | 02 3 x 3 conv “oe | stom | x12 3 x 3 conv x12
Transition Layer 28 x 28 ig 1 x 1 conv
(2) _14x 14 2 x 2 average pool, stride 2
Dense Block 1 x 1 conv 1 x 1 conv 1 x | conv 1 x 1 conv
14x 14 x 24 32 48 64
(3) , aah 3x 3conv | * [mm | * 3x3conv | *
Transition Layer | 14 x 14 1 x 1 conv
(3) 7x7 2 x 2 average pool, stride 2
Dense Block 1 x Lconv ] | | 1x 1 conv 1 x L conv | f 1x 1eonv
Tx7 x 16 32 32 x 48
(4) Ì | 3 x 3 conv | | 3x3 conv x | | 3 x 3conv | * 3 x 3 conv
Classification IxI1 7 x 7 global average pool
Layer 1000D fully-connected, softmax
Bang 3.4: Kiến trúc mang DenseNet !Š
3.4 Học chuyến tiếp trong bài toán phân loại anh y khoa
Một “điều kiện cần” của kỹ thuật Deep Learning là bộ dữ liệu phải đủ lớn dé cókhả năng đạt được kết quả khả quan nhất Thế nhưng, không phải lúc nào bộ dữ liệu
và tài nguyên cũng đủ dé đáp ứng được “điều kiện cần” này Một biện pháp khả thi
cho tình trạng này hiện nay chính là kỹ thuật học chuyền tiếp - Transfer Learning
'S Bang được lay từ bai báo [7]
29 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720
Trang 38Hình 3.11: Mô hình học chuyên tiếp trên mạng tích chập !5
Nếu một mô hình đã được huấn luyện trước trên một bộ dữ liệu có kích thước
rất lớn và có khả năng khái quát hoá được lĩnh vực đang nghiên cứu, vậy thì những
trọng số của mô hình đó có thé được tái sử dụng để huấn luyện trên một bộ dữ liệu
khác có kích thước nhỏ hơn nhằm giải quyết một bài toán tương đồng Các mô hình
được huấn luyện trước này có tên gọi là pre-trained model
Kỹ thuật học chuyền tiếp có hai tiếp cận chính:
- Feature Extraction (trích xuất đặc trưng): tận dụng các trọng số và kiến trúc của
một pre-huan luyén model dé tiép tuc huan luyện trên bộ dữ liệu mới có kíchthước nhỏ hơn nhằm giải quyết bài toán tương đồng
- Fine-tuning (tinh chỉnh): khác với hướng tiếp cận thứ nhất, fine-tuning cho
phép tinh chỉnh trọng số trong các lớp tích chập, lớp phân loại dé tối ưu với bàitoán đang giải quyết hơn
So sánh giữa bộ dit liệu mới có kích thước nhỏ hơn và bộ dữ liệu gốc được dùng dé
tạo ra pre-trained model đó có kích thước lớn hơn (thường là bộ dữ liệu ImageNet)
dé tái huấn luyện pre-trained model trên bộ dữ liệu mới:
e Bo dữ liệu mới có kích thước nhỏ và giông với bộ dữ liệu gôc:
!5 Ảnh được lấy từ bài báo [23]
30 GVHD: ; SVTH:
ThS.Nguyén Thi Kim Phung _ _ Tran Trọng Kién — 19521720