3.4.1. Đánh giá Model DC-Gan.
Kết quả đạt đƣợc của mô hình DC-Gan sau 5 epochs cho ra kết quả mô hình Generator đạt 91%, Discriminator đạt 71%.
50
3.4.2. Đánh giá mô hình phân loại.
51
3.5. Xây dựng ứng dụng
Sơ đồ hệ thống ứng dụng
Quy trình nghiệp vụ
Hình 3. 6. Activity Diagram của bài toán. Giao diện ứng dụng.
52 Hình 3. 7. Giao diện trang chủ.
53 Hình 3. 8. Giao diện phân loại dự đoán bệnh.
Hình 3. 9. Hình ảnh chuẩn đoán khoanh vùng bệnh. Cơ sở dữ liệu lƣu trữ.
- Dữ liệu đƣợc lƣu trong local máy tính cá nhân. Các thuật toán ứng dụng vào bài toán.
- Thuật toán DC-Gan dùng để cải thiện hiệu suất phân lớp. - Thuật toán phân loại với kiến trúc DenseNet của mạng CNN.
54 Các chức năng hệ thống
Phân loại theo loại có bệnh và không có bệnh.
55
CHƢƠNG 4. THỰC NGHIỆM VÀ ỨNG DỤNG
4.1. Môi trƣờng cài đặt
- Ứng dụng minh họa cho thuật toán đƣợc nhóm thực hiện trên phần mềm Pycharm.
- Ứng dụng đƣợc viết bằng ngôn ngữ lập trình Python.
4.2. Bộ dữ liệu mẫu ảnh X-quang ngực 4.2.1. Nguồn bộ dữ liệu 4.2.1. Nguồn bộ dữ liệu
Bộ dữ liệu X-quang ngực (NIH) hay Bộ dữ liệu X-quang ngực của Viện Y tế Quốc gia, nguồn của bộ dữ liệu đƣợc lấy từ Kaggle.
Bộ dữ liệu X-quang ngực NIH này bao gồm 112.120 hình ảnh X-quang với nhãn bệnh từ 30.805 bệnh nhân.
4.2.2. Đặc điểm dữ liệu
Có tổng cộng 12 tệp zip và có kích thƣớc từ ~ 2 gb đến 4 gb. Ngoài ra, đã lấy mẫu ngẫu nhiên 5% các hình ảnh này và tạo ra một bộ dữ liệu nhỏ hơn để sử dụng trong Kernels. Mẫu ngẫu nhiên chứa 5606 hình ảnh X-quang và nhãn lớp.
Định dạng hình ảnh: Tổng số 112.120 hình ảnh với kích thƣớc 1024 x 1024 images_001.zip: Chứa 4999 hình ảnh images_002.zip: Chứa 10.000 hình ảnh images_003.zip: Chứa 10.000 hình ảnh images_004.zip: Chứa 10.000 hình ảnh images_005.zip: Chứa 10.000 hình ảnh images_006.zip: Chứa 10.000 hình ảnh images_007.zip: Chứa 10.000 hình ảnh images_008.zip: Chứa 10.000 hình ảnh images_009.zip: Chứa 10.000 hình ảnh images_010.zip: Chứa 10.000 hình ảnh images_011.zip: Chứa 10.000 hình ảnh images_012.zip: Chứa 7.121 hình ảnh
56 README_ChestXray.pdf: Tệp README gốc
Bbox_List_2017.csv: Tọa độ hộp giới hạn. Lƣu ý Chỉ mục Hình ảnh, Tìm Nhãn, [x y] là
tọa độ của góc trên cùng của mỗi hộp. [w h] đại diện cho chiều rộng và chiều cao của mỗi hộp.
Image Index: File name
Finding Label: Loại bệnh (Nhãn lớp) Bbox x
Bbox y Bbox w Bbox h
Data_Entry_2017.csv: Nhãn lớp và dữ liệu bệnh nhân cho toàn bộ bộ dữ liệu.
Image Index: Tên mục ảnh
Finding Labels: Loại bệnh (Nhãn lóp) Follow-up: Theo dõi
Patient ID: ID bệnh nhân Patient Age: Tuổi bệnh nhân
Patient Gender: Giới tính bệnh nhân
View Position: X-ray orientation (vị trí xem hƣớng X - quang) OriginalImageWidth
OriginalImageHeight
OriginalImagePixelSpacing_x OriginalImagePixelSpacing_y
Có 15 lớp (14 bệnh và một lớp cho "Không có phát hiện"). Hình ảnh có thể đƣợc phân
loại là "Không có phát hiện" hoặc một hoặc nhiều loại bệnh: No Finding: Không tìm thấy (60361)
Atelectasis: Xẹp phổi (4215) Consolidation: Hợp nhất (1310) Infiltration: Sự xâm nhập (9547) Pneumothorax: Tràn khí màng phổi (2194) Edema: Phù phổi (628) Emphysema: Khí phổi thủng (892) Fibrosis: Xơ hóa (727)
57 Effusion: Nỗ lực (3955)
Pneumonia: Viêm phổi (322)
Pleural_thickening: Dày màng phổi (1126) Cardiomegaly: Tim to (1093)
Nodule Mass: Tổn thƣơng (2139) Hernia: Thoát vị (100)
58
4.2.3. Quá trình xử lý dữ liệu (Trực quan hóa dữ liệu).
- Biểu diễn số lƣợng bệnh nhân dựa theo tuổi và giới tính.
Hình 4. 3. Hình vẽ biểu đồ factorplot Hình 4. 2. Biểu đồ hình tròn cho thấy tỷ lệ hình ảnh có nhiều nhãn trong mỗi loại trong số 8 loại bệnh lý và số liệu thống kê về tỷ lệ
59 - Biểu diễn số lƣợng bệnh nhân dựa theo tuổi và giới tính của từng loại bệnh.
Hình 4. 4. . Hình vẽ biểu đồ countplot - Biểu diễn giới tính và độ tuổi.
60 - Biểu diễn số lƣợng bệnh mà trong đó có 2 bệnh nhân trở lên.
Hình 4. 6. Hình vẽ biểu đồ Pie.
-Biểu diễn số bệnh nhân bị viêm phổi và không bị viêm phổi dựa trên độ tuổi.
61 -Biểu diễn so sánh giữa một bệnh và nhiều bệnh.
Hình 4. 8. Hình vẽ biểu đồ countplot
- Biễu diễn 8 loại bệnh phổ biến theo số lƣợng khi không có bệnh.
62 - Thể hiện sự tƣơng quan của dữ liệu.
Hình 4. 10. Hình vẽ biểu đồ Matrix plot.
- Hình vẽ biểu diễn mật độ lô va phân tán của dữ liệu
63
4.3. Phƣơng thức đánh giá
Cách đơn giản và hay đƣợc sử dụng nhất là accuracy (độ chính xác). Cách đánh giá này đơn giản tính tỉ lệ giữa số mẫu dự đoán đúng và tổng số mẫu trong tập dữ liệu. Công thức:
Giả sử độ accuracy = 90% có nghĩa là trong số 100 mẫu thì có 90 mẫu đƣợc phân loại chính xác. Tuy nhiên đối với tập dữ liệu kiểm thử không cân bằng (nghĩa là số positive lớn hơn rất nhiêu so với negative) thì đánh giá có thể gây hiểm nhầm.
Quay lại với ví dụ phân loại email spam. Xem xét trên 100 email nhận đƣợc, có 90 email trong số là spam. Trong trƣờng hợp này, mô hình chỉ có thể phân loại ra một kết quả duy nhất là spam thì cũng có thể đạt accuracy là 90%.
Tƣơng tự, trong trƣờng hợp phát hiện giao dịch gian lận, chỉ một phần rất nhỏ các giao dịch là gian lận. Nếu mô hình phân loại dự đoán toàn bộ là không gian lận thì việc đánh giá mô hình vẫn có độ chính xác gần nhƣ 100%.
4.4. Kết quả thực nghiệm 4.4.1. Kết quả sinh ảnh 4.4.1. Kết quả sinh ảnh
Kết quả sinh ảnh trên tập các lớp dùng để huấn luyện đƣợc trình bày ở Hình . Qua đó mô hình DC-GAN có thể tạo ra ảnh giống ảnh thật và có sự biến đổi đa dạng dựa vào thông tin từ một ảnh điều kiện. Quan sát trực quan cho thấy, mô hình DC-GAN có thể sinh dữ liệu đa dạng bởi vì mô hình trong nghiên cứu này đề xuất chỉ sử dụng thông tin riêng biệt giữa các lớp trên từng ảnh để tạo ra dữ liệu mới một cách ngẫu nhiên nhƣng vẫn giữ đƣợc những đặc trƣng của từng bệnh lý.
64 Hình 4. 12. Ảnh đƣợc sinh ra sau mỗi lần train.
65
4.4.2. Kết quả phân loại
Đã tăng cƣờng dữu liệu: Khi đƣa vào một ảnh thì ta sẽ thu đƣợc tỷ lệ phần trăm xuất hiện của từng lớp bệnh đối với ảnh đƣợc đƣa vào.
Hình 4. 13. Kết quả phân loại sau khi đã tăng cƣờng dữ liệu.
66 Hình 4. 15. Độ chính sát của từng lớp.
4.5. Kết quả ứng dụng
Ứng dụng hiện tại đã có thể đáp ứng tốt đƣợc chức năng cơ bản của ngƣời sử dụng trong việc nhận dạng đƣợc các lớp bệnh từ những hình ảnh đƣợc truyền vào.
Giao diện ứng dụng thân thiện và dễ sử dụng. Nhóm đã đƣa ra thiết kế sau khi tham khảo trên nhiều ứng dụng khác nhau, vì vậy ứng dụng sẽ phù hợp với thói quen của ngƣời sử dụng. Nhờ bộ dữ liệu và thuật toán áp dụng vào mà sau khi ngƣời dùng nhập hình ảnh vào để chuẩn đoán bệnh và đƣa ra kết quả với độ chính xác cao, phân loại đƣợc 14 loại bệnh phổ biến về phổi và một lớp chƣa loại chƣa phát hiện. Từ đó giúp ngƣời bác sĩ có thể mau chóng phát hiện bệnh và có cách khắc phục nhanh chóng, tránh đƣợc nhiều rủi ro cho bệnh nhân.
67
4.6. Tổng kết và hƣớng phát triển
Nghiên cứu này đã đề xuất mô hình Deep Convolutional X-ray GAN bằng cách sử dụng đặc trƣng phân biệt đƣợc trích xuất từ một bộ trích xuất độ đo để thực hiện ánh xạ dựa trên một ảnh điều kiện. Mô hình có thể sinh ra nhiều ảnh mới với biến thể đa dạng và mang đặc trƣng tƣơng tự với ảnh điều kiện. Ngoài ra, mô hình DC-GAN có thể sinh ảnh mới cho tập dữ liệu thuộc những lớp không đƣợc quan sát. Các thực nghiệm đƣợc tiến hành cho thấy khả năng tổng hợp dữ liệu ảnh X-quang lồng ngực đa dạng và giống ảnh thật, đồng thời cải thiện hiệu suất cho bài toán phân loại ảnh Xquang lồng ngực từ mô hình đề xuất so với các mô hình khác.
Công việc tƣơng lai của nhóm là tiếp tục nghiên cứu cải tiến các mô hình hiện có và mô hình đã đề xuất nhằm tăng hiệu suất phân loại bệnh lý dựa trên ảnh X-quang lồng ngực tốt hơn.
68
PHỤ LỤC
- ChestX-ray8: Cơ sở dữ liệu X-quang ngực quy mô bệnh viện và các điểm chuẩn về phân loại đƣợc giám sát yếu và xác định vị trí của các bệnh thƣờng gặp ở lồng ngực.
69
TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] Trần Hoàng Phát, Phạm Mạnh Cƣờng, Trần Đình Toàn, Hoàng Tùng, Lê Minh Hƣng, Tăng cƣờng dữ liệu ảnh cho bộ dữ liệu X-Quang phổi sử dụng Mạng sinh đối nghịch, Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XIII về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR), 8-9/10/2020.
Tiếng Anh
[2] Antoniou, Antreas, Amos Storkey, Harrison Edwards, "Data augmentation generative adversarial networks", arXiv preprint arXiv:1711.04340, 2017.
[3] Clouâtre, Louis, Marc Demers, "FIGR: Few-shot image generation with reptile", arXiv preprint arXiv:1901.02199, 2019.
[4] Xiaosong Wang, Yifan Peng, Le Lu, Zhiyong Lu, Mohammadhadi Bagheri, Ronald Summers,ChestX-ray8: Hospital-scale Chest X-ray Database and Benchmarks on Weakly-Supervised Classification and Localization of Common Thorax Diseases, IEEE CVPR, pp. 3462-3471, 2017
[5] Hoo-chang Shin, Kirk Roberts, Le Lu, Dina Demner-Fushman, Jianhua Yao,
Ronald M.
Summers, Learning to Read Chest X-Rays: Recurrent Neural Cascade Model for Automated