TÓM TẮT LUẬN VĂN ỨNG DỤNG MẠNG NƠ-RON XÁC ĐỊNH KHẢ NĂNG UNG THƯ DA DỰA VÀO HÌNH ẢNH Học viên: Huỳnh Chỉnh Chuyên ngành: Kỹ thuật điện tử Mã số: 60.52.02.03 Khóa: 35 Trường Đại học Bác
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA -
HUỲNH CHỈNH
ỨNG DỤNG MẠNG NƠ-RON XÁC ĐỊNH KHẢ NĂNG UNG
THƯ DA DỰA VÀO HÌNH ẢNH
Chuyên ngành: Kỹ thuật Điện tử
Trang 2CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
LỜI CAM ĐOAN
Kính gửi: Hội đồng bảo vệ luận văn tốt nghiệp Khoa Điện Tử - Viễn Thông, Trường Đại Học Bách Khoa – Đại Học Đà Nẵng
Tôi tên là: Huỳnh Chỉnh
Hiện là học viên lớp Cao học Kỹ thuật điện tử - Khoá 35 - Khoa Điện Tử - Viễn Thông, Trường Đại Học Bách Khoa – Đại Học Đà Nẵng Tôi xin cam đoan nội dung của luận văn này không phải là bản sao chép của bất cứ luận văn hoặc công trình nào
đã có từ trước Nếu vi phạm tôi xin chịu hoàn toàn trách nhiệm
Học viên
Huỳnh Chỉnh
Trang 3MỤC LỤC
LỜI CAM ĐOAN i
MỤC LỤC ii
TÓM TẮT LUẬN VĂN v
DANH MỤC CÁC TỪ VIẾT TẮT vi
DANH MỤC CÁC HÌNH vii
DANH MỤC CÁC BẢNG ……… ……… ix
MỞ ĐẦU 1
CHƯƠNG 1.TỔNG QUAN VỀ BỆNH UNG THƯ DA 4
1.1 Giới thiệu chương 4
1.2 Lý thuyết cấu tạo giải phẫu, sinh lý của da 4
1.3 Đặc điểm của bệnh ung thư da 5
1.3.1 Ung thư da không phải khối u ác tính 6
1.3.2 Ung thư hắc tố ác tính 7
1.4 Dấu hiệu nhận biết ung thư da 9
1.4.1 Tính bất đối xứng 10
1.4.2 Đường viền 10
1.4.3 Màu sắc 10
1.4.4 Đường kính 11
1.4.5 Quy mô phát triển 11
1.5 Phương pháp chẩn đoán ung thư da 12
1.5.1 Phương pháp soi da 12
1.5.2 Phương pháp xử lý hình ảnh da bị tổn thương 12
1.6 Kết luận chương 12
CHƯƠNG 2.TỔNG QUAN VỀ MẠNG NƠ-RON TÍCH CHẬP 13
2.1 Giới thiệu chương 13
2.2 Mạng Nơ-ron nhân tạo 13
2.2.1 Cấu trúc một Nơ-ron sinh học 13
Trang 42.2.2 Cấu trúc một Perceptron 14
2.3 Multi-layers Perceptron (MLP) 15
2.4 Mạng Nơ-ron tích chập (Convolutional Neural Network – CNN) 16
2.4.1 Vùng tiếp nhận cục bộ 17
2.4.2 Trọng số dùng chung 19
2.4.3 Pooling 22
2.4.4 Lớp ReLU 23
2.4.5 Lớp Dropout 24
2.4.6 Hàm tổn hao 25
2.5 Một số mạng nơ-ron tích chập phổ biến 26
2.5.1 Mạng LeNet-5 26
2.5.2 Mạng AlexNet 27
2.5.3 Mạng GoogleNet/Inception 27
2.5.4 Mô hình mạng VGG 28
2.6 Kết luận chương 30
CHƯƠNG 3.XÂY DỰNG HỆ THỐNG CHẨN ĐOÁN KHẢ NĂNG UNG THƯ DA DỰA VÀO HÌNH ẢNH 31
3.1 Giới thiệu chương 31
3.2 Tổng quan hệ thống chẩn đoán khả năng ung thư da dựa vào hình ảnh 31 3.3 Chuẩn hóa dữ liệu 32
3.4 Khối phân vùng 32
3.4.1 Giới thiệu 32
3.4.2 Mô hình mạng Unet 33
3.5 Khối phân loại 35
3.5.1 Giới thiệu 35
3.5.2 Xây dựng hệ thống phân loại 35
3.5.3 Mô hình mạng VGG16 36
3.6 Kết luận chương 37
CHƯƠNG 4. KẾT QUẢ VÀ ĐÁNH GIÁ 38
Trang 54.1 Giới thiệu chương 38
4.2 Cơ sở dữ liệu ISIC-2018 38
4.3 Tiêu chí đánh giá 39
4.3.1 Độ chính xác (accuracy) 39
4.3.2 Confusion matrix 39
4.3.3 Precision và Recall 40
4.4 Kịch bản huấn luyện và kiểm tra của hệ thống 41
4.4.1 Huấn luyện và kiểm tra mô hình phân vùng 41
4.4.2 Huấn luyện và kiểm tra mô hình phân loại 42
4.5 Kết quả huấn luyện và kiểm tra mô hình phân vùng 43
4.6 Kết quả huấn luyện và kiểm tra mô hình phân loại 44
4.7 Các yếu tố tác động đến hiệu suất nhận dạng của mô hình 46
4.7.1 Ảnh hưởng của tiền xử lý dữ liệu 46
4.7.2 Learning Rate 47
4.7.3 Vai trò của Dropout 48
4.8 Nhận xét đánh giá hiệu suất của hệ thống phân loại 50
4.9 Kết luận chương 50
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 51
Trang 6TÓM TẮT LUẬN VĂN
ỨNG DỤNG MẠNG NƠ-RON XÁC ĐỊNH KHẢ NĂNG UNG THƯ DA DỰA
VÀO HÌNH ẢNH
Học viên: Huỳnh Chỉnh Chuyên ngành: Kỹ thuật điện tử
Mã số: 60.52.02.03 Khóa: 35 Trường Đại học Bách khoa - ĐHĐN
Tóm tắt – Gần đây, kỹ thuật học sâu (Deep Learning) đã tạo ra những bước tiến đáng kể
trong việc giải quyết các bài toán phân tích hình ảnh, đặc biệt trong phân tích hình ảnh y tế đã cho phép phát triển các hệ thống chẩn đoán bệnh dựa trên hình ảnh có thể hỗ trợ các bác sĩ đưa ra quyết định tốt hơn về sức khỏe của bệnh nhân Chẩn đoán bệnh dựa trên hình ảnh da người là một lĩnh vực mà các phương pháp mới này có thể được áp dụng với tỉ lệ thành công cao
Luận văn này tập trung vào vấn đề dựa vào hình ảnh trích xuất vùng da bị tổn thương và thực hiện phân loại để xác định khả năng bị bệnh ung thư da Luận văn sử dụng kiến trúc mạng nơ- ron Unet để thực hiện việc phân vùng trích xuất vùng da bị tổn thương và loại bỏ các thành phần không cần thiết trong hình ảnh trích xuất Tiếp theo, luận văn sử dụng mô hình mạng nơ- ron VGG để thực hiện phân loại ảnh trích xuất để phát hiện bệnh lành tính hay ác tính Cuối cùng, luận văn thực hiện đánh giá toàn bộ hệ thống khi kết hợp hai mô hình phân vùng – phân loại so với hệ thống chỉ sử dụng một mô hình phân loại Kết quả thử nghiệm trên bộ dữ liệu ISIC-2018 cho thấy hệ thống đạt được độ chính xác khá cao, có thể mở ra một hướng nghiên cứu và ứng dụng đầy hứa hẹn của kỹ thuật học sâu trong xử lý hình ảnh y tế để hỗ trợ chẩn đoán bệnh dựa vào hình ảnh
Từ khóa – deep learning, skin-cancer, convolutional neural networks
APPLICATION OF NEURAL NETWORKS TO DETERMINE SKIN CANCER
ABILITIES FROM DERMOSCOPIC IMAGES
Abstract – Recently, deep learning techniques have made significant progress in image
analysis problems, especially in medical image analysis Image-based disease analysis can assist doctors to make better decisions about a patient's health and treatment Human skin- based disease diagnosis is one research area where these new methods can be applied with high success rates
This thesis focuses on determination of skin cancer possibility based on dermoscopic images extracted from damaged skin The thesis uses Unet neural network architecture to perform segmentation for extracting the damaged skin region from the dermoscopic image Next, the thesis uses VGG neural network model to make classification to detect benign or malignant diseases Finally, we evaluate the entire system when combining segmentation-and- classification, compared with systems using only one classification model The test results on the ISIC-2018 data set show that the system achieves a high level of accuracy, which can open a promising research direction in research and application of deep learning techniques in medical image processing
Trang 7DANH MỤC CÁC TỪ VIẾT TẮT
ANN Artificial Neural Network Mạng lưới thần kinh nhân tạo CNN Convolutional Neural Network Mạng lưới thần kinh tích chập
NMSC Non-Melanoma Skin Cancer Ung thư da không phải khối u
ác tính MLP Multi-layers Perceptron Nhiều lớp perceptron
ReLU Rectified Linear Units Đơn vị tuyến tính chỉnh lưu GPU Graphics Processing Unit Đơn vị xử lý đồ họa BCC Basal cell carcinoma Ung thư biểu mô tế bào đáy SCC Squamous cell carcinoma Ung thư biểu mô tế bào vảy
Trang 8DANH MỤC CÁC HÌNH
Hình 1.1 Cấu tạo của da người[1] 4
Hình 1.2 Ung thư biểu mô tế bào đáy 6
Hình 1.3 Ung thư biểu mô tế bào vảy 7
Hình 1.4 Ung thư hắc tố lan trên bề mặt (Superficial spreading melanoma) 8
Hình 1.5 Ung thư hắc tố lentigo (Lentigo maligna) 8
Hình 1.6 Ung thư hắc tố Acral lentiginous melanoma 9
Hình 1.7 Ung thư hắc tố dạng nốt (Nodular melanoma) 9
Hình 1.8 Tính đối xứng và bất đối xứng của nốt ruồi lành tính và ác tính 10
Hình 1.9 Đường viền của nốt ruồi lành tính và ác tính 10
Hình 1.10 Màu sắc của nốt ruồi lành tính và ác tính 11
Hình 1.11 Đường kính của nốt ruồi lành tính và ác tính 11
Hình 1.12 Sự phát triển của nốt ruồi ác tính 11
Hình 2.1 Tế bào nơ-ron thần kinh của con người [17] 13
Hình 2.2 Cấu trúc của một Perceptron đơn giản 14
Hình 2.3 Một mô hình mạng MLP gồm các lớp Full Connection 15
Hình 2.4 Cấu trúc mạng đa lớp MLP 16
Hình 2.5 Ảnh ngõ vào với kích thước 8 x 8 17
Hình 2.6 Vùng cục bộ - vùng màu xanh có gạch chéo 18
Hình 2.7 Quá trình dịch của các cửa sổ bộ lọc 18
Hình 2.8 Sự dịch chuyển theo chiều ngang và dọc của bộ lọc 19
Hình 2.9 Minh họa việc áp dụng một filter lấy tích chập lên ảnh ngõ vào 20
Hình 2.10 Các bản đồ đặc tính được tạo thành tương ứng với các bộ lọc 20
Hình 2.11 Kích thước bị thu nhỏ sau quá trình lấy tích chập 21
Hình 2.12 Chèn padding được thực hiện trước khi lấy tích chập 22
Hình 2.13 Lấy mẫu xuống giúp giảm kích thước dữ liệu 23
Hình 2.14 Hàm kích hoạt ReLU, chuyển các giá trị âm về 0 23
Trang 9Hình 2.15 Mạng Nơ-ron trước và sau quá trình Dropout, các node gạch chéo là
các node đã bị loại bỏ[15] 24
Hình 2.16 Kiến trúc mô hình mạng LeNet-5[27] 26
Hình 2.17 Kiến trúc mô hình mạng AlexNet[27] 27
Hình 2.18 Kiến trúc mô hình mạng GoogleNet/Inception[27] 28
Hình 2.19 Cấu trúc cơ bản của các loại mạng VGG [23] 29
Hình 2.20 Kiến trúc mô hình mạng VGG16 [23] 30
Hình 3.1 Sơ đồ tổng quát của hệ thống 31
Hình 3.2 Ảnh trước và sau khi được chuẩn hóa cho khối phân vùng 32
Hình 3.3 Ảnh trước và sau khi được chuẩn hóa cho khối phân loại 32
Hình 3.4 Sơ đồ tổng quát của khối phân vùng 33
Hình 3.5 Mô hình mạng Unet cho bài toán phân vùng [22] 34
Hình 3.6 Kết quả của mẫu trước và sau khi qua khối phân vùng 34
Hình 3.7 Liệu bi mới được thêm vào sẽ thuộc vào lớp bi xanh hay bi đỏ? 35
Hình 3.8 Sơ đồ tổng quát của hệ thống phân loại 36
Hình 3.9 Mô hình mạng VGG16 cho bài toán phân loại 37
Hình 4.1 Một số hình ảnh trong bộ dữ liệu ISIC-2018 [24] 38
Hình 4.2 Minh họa unnormalized confusion matrix và normalized confusion matrix 40
Hình 4.3 Minh họa cách tính Precision và Recall 40
Hình 4.4 Hình (a) mẫu ảnh gốc, hình (b) mẫu ảnh phân vùng gốc 43
Hình 4.5 Hình (a) mẫu ảnh gốc, hình(b) mẫu ảnh phân vùng qua mô hình 43
Hình 4.6 Biểu đồ thể hiện hiệu suất của mô hình phân vùng ở dữ liệu huấn luyện và kiểm tra 43
Hình 4.7 Kết quả kiểm tra mô hình trên tập dữ liệu không qua khối phân vùng 44 Hình 4.8 Kết quả kiểm tra mô hình trên tập dữ liệu đã phân vùng từ CSDL 45
Hình 4.9 Kết quả kiểm tra mô hình trên tập dữ liệu đã qua khối phân vùng được xây dựng ở mục 4.4.1 46
Hình 4.10 Kết quả kiểm tra mô hình trên tập dữ liệu vào không qua tiền xử lý 47 Hình 4.11 Tác động của Learning rate lên mô hình phân loại 48
Trang 10Hình 4.12 Tỉ lệ nhận dạng lỗi của mô hình phân loại trong trường hợp có lớp Dropout 49 Hình 4.13 Tỉ lệ nhận dạng lỗi của mô hình phân loại trong trường hợp không có lớp Dropout 49
DANH MỤC CÁC BẢNG
Bảng 4.1 Ví dụ đơn giản về confusion matrix 39 Bảng 4.2 Kịch bản huấn luyện và kiểm tra cho trường hợp 1 của mô hình phân loại 42 Bảng 4.3 Kịch bản huấn luyện và kiểm tra cho trường hợp 2 của mô hình phân loại 42 Bảng 4.4 Kịch bản huấn luyện và kiểm tra cho trường hợp 3 của mô hình phân loại 42 Bảng 4.5 Thống kê kết quả thu được của 3 trường hợp cho bài toán phân loại 50 Bảng 4.6 Thống kê kết quả thu được 3 trường hợp cho bài toán phân loại của tác giả Adri`a Romero L´opez 50
Trang 11MỞ ĐẦU
1 Tính cấp thiết của đề tài
Bệnh ngoài da phổ biến là một vấn đề y tế cộng đồng nghiêm trọng ở hầu hết các nước trên thế giới, đặc biệt là ở các nước đang phát triển Nó là một trong những nguyên nhân gây gánh nặng bệnh tật toàn cầu, ảnh hưởng đến hàng triệu người trên toàn thế giới Các yếu tố lão hóa, môi trường, di truyền và chấn thương có thể dẫn đến
sự phát triển của một loạt các bệnh ngoài da [7]
Chẩn đoán bệnh ngoài da là một lĩnh vực y tế phát triễn mạnh mẽ bằng cách sử dụng các kỹ thuật trí tuệ nhân tạo Các bệnh được sàng lọc trực quan và nhiều chẩn đoán bệnh được thực hiện nghiêm ngặt với khám nghiệm trực quan tại phòng khám Một nhiệm vụ khó khăn là phát hiện tổn thương da giữa ung thư da (u ác tính, ung thư biểu mô) và tổn thương lành tính (nevi, keratosis seborrheic) Với 5,4 triệu trường hợp ung thư da được chẩn đoán mỗi năm chỉ riêng ở Hoa Kỳ( khảo sát năm 2015) cho thấy nhu cầu sàng lọc lâm sàng nhanh chóng và hiệu quả đang gia tăng [8] Bệnh nhân với ung thư da có xu hướng bị ảnh hưởng với nhiều nguyên nhân khác nhau, và vì vậy một trong những thách thức trong khám sàng lọc ung thư da là xác định chúng trong vô số tổn thương lành tính Một yếu tố quan trọng khác của những chẩn đoán này dựa trên việc kiểm tra thời gian thay đổi tổn thương, tổn thương thay đổi nhanh có nhiều khả năng gây ác tính Như vậy, bệnh nhân và bệnh viện cần các công cụ để hỗ trợ quy mô này
Những tiến bộ gần đây trong phát hiện và theo dõi bệnh ngoài da sử dụng các mô hình machine learning như mạng neural tích chập CNN có tiềm năng tăng cường khả năng chăm sóc sức khỏe bằng phát hiện các điểm ác tính, và phát hiện các tổn thương tương ứng trên các hình ảnh, cho phép chúng được theo dõi tạm thời
Luận văn này tập trung vào việc tìm hiểu bệnh ngoài da, áp dụng các thuật toán tối ưu để huấn luyện hệ thống chẩn đoán tổn thương da có khả năng bị ung thư da Phương pháp soi da là một trong những phương thức hình ảnh chính được sử dụng trong chẩn đoán da các tổn thương như u ác tính và các tổn thương sắc tố khác Nhưng trong luận văn này, để giảm thiểu các lỗi chẩn đoán do kết quả soi da khó khăn và tính chủ quan của việc giải thích trực quan, luận văn sẽ phát triển các giải thuật phân tích hình ảnh dựa trên database có sẵn đã thu thập được
2 Mục tiêu nghiên cứu
Giải quyết bài toán nhận dạng hình ảnh bằng mô hình mạng nơ-ron
Xây dựng được hệ thống mạng nơ-ron phát hiện khả năng ung thư da dựa vào hình ảnh
Trang 12Kế thừa được ưu điểm của các kiến trúc trong mạng nơ-ron
Nghiên cứu, đánh giá hệ thống mạng nơ-ron dựa trên cơ sở dữ liệu ISIC-2018 Trong quá trình thực hiện luận văn, tôi cũng học hỏi và rèn luyện được một số kiến thức và kỹ năng sau:
- Ứng dụng nội dung được học trong quá trình đào tạo vào thực tiễn
- Tăng cường kiến thức về nhận dạng hình ảnh, cụ thể về mạng Nơ-ron truyền thống, Nơ-ron network, mạng Nơ-ron sâu tạo nền tảng cơ bản cho quá trình nghiên cứu sau này
- Nâng cao kỹ năng thực hành với ngôn ngữ lập trình python, các framework tensorflow, thư viện keras
- Tạo thói quen và rèn luyện kĩ năng đọc tài liệu khoa học, đặc biệt là tài liệu tiếng anh
3 Đối tượng và phạm vi nghiên cứu
a Đối tượng nghiên cứu
- Mô hình mạng nơ-ron tích chập Unet dùng cho bài toán phân vùng
- Mô hình mạng nơ-ron VGG dùng cho bài toán phân loại bệnh lành tính hay
ác tính
- Đánh giá hiệu suất của hai mô hình
- Cơ sở dữ liệu ISIC-2018 – dùng trong khảo sát và đánh giá hệ thống
4 Phương pháp nghiên cứu
Luận văn này tập trung vào vấn đề tự động phát hiện tổn thương da và đưa ra chẩn đoán ác tính hay lành tính
Áp dụng thuật toán phân vùng và phân loại từ hình ảnh da liễu bằng cách sử dụng mạng nơ-ron nhân tạo
Đối với vấn đề đầu tiên là xây dựng một mạng nơ-ron để xác định trích xuất ra vùng da bị tổn thương
Đối với vấn đề thứ hai là xây dựng một mạng nơ-ron với vai trò là phân loại là vùng da bị tổn thương đó thuộc loại bệnh lành tính hay ác tính
Hệ thống được tiến hành đánh giá dựa trên bộ cơ sở dữ liệu chính là ISIC-2018
Trang 13Phương pháp nghiên cứu xuyên suốt của luận văn là kết hợp nghiên cứu lý thuyết, và đánh giá thông qua mô phỏng thực nghiệm Quá trình thực hiện bao gồm các bước: xây dựng mô hình, huấn luyện, đánh giá khả năng chẩn đoán bị ung thư da
5 Bố cục đề tài
Trong luận văn “ỨNG DỤNG MẠNG NƠ-RON XÁC ĐỊNH KHẢ NĂNG UNG
THƯ DA DỰA VÀO HÌNH ẢNH”, tôi tập trung vào việc nghiên cứu, xây dựng và khảo
sát hiệu quả của hệ thống để giải quyết bài toán áp dụng mạng nơ-ron tạo ra chương trình xác định khả năng ung thư da dựa vào hình ảnh Nội dung của luận văn gồm 4 chương:
Chương 1: Tổng quan về bệnh ung thư da
Chương 2: Tổng quan về mạng Nơ-ron tích chập
Chương 3: Xây dựng hệ thống chẩn đoán khả năng ung thư da dựa vào hình ảnh Chương 4: Kết quả thực nghiệm và đánh giá
Trang 14CHƯƠNG 1 TỔNG QUAN VỀ BỆNH UNG THƯ DA
1.1 Giới thiệu chương
Trong các bệnh ung thư, ung thư da là căn bệnh khá phổ biến và biểu hiện bệnh qua các khối u ở da Như chúng ta đã biết, da là bộ phận lớn nhất trên cơ thể người, thường xuyên tiếp xúc với ánh sáng mặt trời và các loại virus Hai yếu tố trên khiến da
có nguy cơ mắc ung thư cao Chương 1 sẽ giới thiệu tổng quan về cấu tạo của da và các loại bệnh ung thư da ảnh hưởng đến sức khỏe của con người
1.2 Lý thuyết cấu tạo giải phẫu, sinh lý của da
Da là cơ quan của hệ bài tiết, có nhiệm vụ: bao bọc cơ thể, bảo vệ cơ thể khỏi bức xạ có hại của ánh sáng, ngăn không cho vi khuẩn và các sinh vật có hại xâm nhập
cơ thể Da người có cấu tạo gồm 3 lớp: Lớp biểu bì, lớp bì và lớp mỡ dưới da (xem Hình 1.1)
Hình 1.1 Cấu tạo của da người [1]
Ở lớp biểu bì có tầng sừng và tầng tế bào sống Tầng sừng gồm có các tế bào đã chết, xếp sít nhau, rất dễ bong ra Tầng tế bào sống gồm các tế bào có khả năng phân chia tạo thành tế bào mới, chứa các hạt sắc tố tạo nên màu da, một số tế bào sống phân hóa thành tế bào sinh lông và tế bào sinh móng
Lớp bì được cấu tạo từ các sợi mô liên kết bền chặt, gồm các thụ quan, tuyến nhờn, tuyến mồ hôi, lông và bao lông, cơ co chân lông, mạch máu Cơ quan cảm giác
Trang 15có mặt ở lớp bì bao gồm các tận cùng thần kinh nhạy cảm Sự phân bố và mật độ của các cơ quan cảm giác rất thay đổi, chúng tập trung nhiều nhất ở môi và đầu ngón tay Lớp mỡ dưới da có các thành phần như: mô mỡ giúp bảo vệ da khỏi những tác động cơ học, cách nhiệt và lớp mỡ dưới da còn chứa dây thần kinh giúp da nhận biết được những kích thích từ môi trường [1]
Chất sừng: Là một chất đạm trong đó có axit amin kết hợp với lưu huỳnh Sừng
là một chất kém bền vững, có phần nào dễ co dãn, dựa vào tính chất này người ta có thể dùng những chất hóa học làm thay đổi cấu trúc của nó Vì thế trong môi trường sống hiện nay đang bị ô nhiễm, các làng nghề, chất hóa học trong công nghiệp chưa xử
lý thải ra môi trường ngày càng nhiều Cường độ lao động của người dân càng cao, làm cho lớp sừng trên da bị thay đổi, kém bền vững, chân tay sõy xỏt là điều kiện thuận lợi cho vi trùng, ký sinh trùng, các bệnh dị ứng phát triển mạnh [1]
Da có nhiệm vụ che chở cho cơ thể, bảo vệ cơ thể chống lại sự xâm nhập của vi trùng, ký sinh trùng, các tác nhân cơ giới, lý, hóa học có hại cho da Do cấu trúc và sự biến hóa không ngừng của các lớp tế bào thượng bì, những vi khuẩn ký sinh trên da luôn luôn bị đẩy lùi, đào thải cùng tế bào sừng
Lớp ngoài cùng của da có màng sáp gồm: Ion, Cl -, Na+, axit amin, đường, Ure, Cholin, mỡ, ngăn nước và các chất hóa học thấm qua da, mùa hè mồ hôi tiết nhiều, để lâu biến thành Amoniac, da trở nên kiềm pH, 6,5 - 7 vi khuẩn, nấm có điều kiện phát triển Vì thế mà bệnh ngoài da hay xuất hiện vào mùa hè, ở nông thôn, công nhân lao động trong hoàn cảnh nóng, ẩm, thường xuyên dầm nước Da có màng sáp bảo vệ những thuốc tan trong nước, không bốc hơi sẽ không thấm được qua da Những kim loại nặng như chì, Asen có thể phá vỡ màng sỏp gõy nhiễm độc da Ngoài ra da cũng
có chức năng bài tiết chất bã chống thấm nước làm da mềm mại, kháng vi khuẩn và nấm[1]
Qua cấu tạo, đặc điểm sinh hóa, sinh lý da ta thấy tầm quan trọng của da trong việc bảo vệ cơ thể chống lại sự xâm nhập của vi trùng, ký sinh trùng, hóa chất độc hại đối với cơ thể Da cũng tham gia phản ứng miễn dịch, điều hoà thân nhiệt giúp cho cơ thể hoạt động tốt
1.3 Đặc điểm của bệnh ung thư da
Ung thư da là một trong những bệnh ảnh hướng lớn đến sức khỏe của con người
Nó được gây ra bởi sự phát triển của các tế bào ung thư trên bất kỳ lớp da nào và xảy
ra khi các tế bào trong một bộ phận cơ thể bắt đầu phát triển ngoài tầm kiểm soát và lan sang các cơ quan và mô khác Có hai loại ung thư da chính là ung thư hắc tố ác tính (MM) và ung thư da không phải khối u ác tính (NMSC) Quá trình hình thành u lành và u ác có nhiều điểm giống nhau Mỗi tế bào có một chu kỳ phát triển và chết đi
Trang 16nhất định Khi tế bào già chết đi, và một tế bào non ra đời kế tiếp vị trí, chức năng của
tế bào cũ Trong một số trường hợp, đột biến gen làm cho tế bào già không chết đi, những tế bào mới vẫn sinh ra không ngừng, dẫn tới sự tích tụ, gọi là một khối u
1.3.1 Ung thư da không phải khối u ác tính
Ung thư da không phải khối u ác tính bao gồm ung thư biểu mô tế bào đáy (BCC) và ung thư biểu mô tế bào vảy (SCC)
Ung thư biểu mô tế bào đáy (BCC) (xem hình 1.2) là ung thư da phổ biến nhất, tuy nhiên ít nguy hiểm nhất nếu được phát hiện sớm Ung thư này bắt đầu trong các tế bào đáy Các tế bào cơ bản bình thường xếp lớp biểu bì Chúng là những tế bào da thay thế tế bào cũ bằng những tế bào mới Ung thư của các tế bào cơ bản dẫn đến các khối u xuất hiện trên bề mặt da Những khối u này thường trông giống như vết loét, tăng trưởng, vết sưng, vết sẹo hoặc các mảng màu đỏ, thường là ở các bộ phận của cơ thể tiếp xúc với ánh nắng mặt trời như mặt, đầu, cổ, tai, vai và lưng, tuy nhiên xảy ra thường xuyên nhất ở mặt, điều này loại hiếm khi gây di căn [3 - 6]
Hình 1.2 Ung thư biểu mô tế bào đáy
Trong khi BCC hầu như không bao giờ lan đến những nơi khác trong cơ thể (di căn),
nó vẫn có thể dẫn đến sự biến dạng Trong trường hợp hiếm hoi, nó có thể lan sang các
bộ phận khác của cơ thể Nếu có, nó có thể trở thành mối đe dọa tính mạng Hầu như tất cả BCC phát triển trên các bộ phận của cơ thể thường xuyên tiếp xúc với ánh nắng mặt trời Các khối u có thể phát triển trên mặt, tai, vai, cổ, da đầu và cánh tay Trong trường hợp rất hiếm, các khối u phát triển trên những vùng không thường xuyên tiếp xúc với ánh sáng mặt trời
Trang 17Ung thư biểu mô tế bào vảy (SCC) (xem hình 1.3) là sự tăng trưởng mất kiểm soát của các tế bào bất thường, phát sinh trong các tế bào vảy, là các tế bào hình thành các lớp trên của da (biểu bì) Bệnh thường trông giống các mảng đỏ có vảy, vết thương
hở, các khối u có phần trung tâm lõm xuống hoặc mụn cóc Chúng có thể tróc vảy hoặc chảy máu Chúng có thể gây mất thẩm mỹ và đôi khi gây tử vong nếu để phát triển
Hình 1.3 Ung thư biểu mô tế bào vảy
Loại ung thư này thường xuất hiện trên khu vực tiếp xúc tia cực tím trong ánh nắng mặt trời của cơ thể như mặt, tai, cổ, môi, và lưng bàn tay Ung thư biểu mô tế bào vảy cũng có thể phát triển trong những vết sẹo hay các vết loét da mãn tính ở những vùng khác của da trong cơ thể Ung thư tế bào vảy có nhiều khả năng để phát triển thành các lớp sâu hơn của da và lây lan đến các bộ phận khác trong cơ thể so với ung thư tế bào đáy
1.3.2 Ung thư hắc tố ác tính
Ung thư hắc tố là dạng ung thư da nguy hiểm nhất Tế bào ung thư phát triển khi các tổn thương Axit đêoxiribonucleic (ADN) không được chữa trị gây tổn hại tới tế bào da, nguyên nhân thường do bức xạ tia cực tím từ ánh nắng mặt trời và việc nhuộm
da kích thích đột biến làm cho tế bào da nhân lên nhanh chóng hình thành các khối u
ác tính Những khối u này bắt nguồn từ các tế bào melanocyte sản sinh sắc tố ở lớp đáy biểu bì U hắc tố thường giống nốt ruồi, một số phát triển từ nốt ruồi Phần lớn các
u hắc tố có màu đen hoặc nâu, nhưng cũng có thể là màu da, hồng, đỏ, tím, xanh hoặc trắng
Nếu ung thư hắc tố được phát hiện sớm, bệnh có thể chữa trị Ngược lại, nếu bệnh đã tiến triển tới giai đoạn muộn và di căn sang các phần khác của cơ thể, việc
Trang 18điều trị rất khó và tỉ lệ tử vong cao Dù bệnh này không phải là dạng phổ biến nhất trong các dạng ung thư da nhưng nó gây ra hầu hết các trường hợp tử vong Trong năm
2016, ước tính có khoảng 76.380 trường hợp có khối u ác tính xâm lấn, với khoảng 46.870 ca bệnh ở nam giới và 29.510 ca bệnh ở nữ giới [9]
Ung thư hắc tố có 4 dạng cơ bản bao gồm 3 dạng bắt đầu tại chỗ (in situ) - có nghĩa là khối u chỉ nằm ở các lớp trên cùng của da - và đôi khi xâm lấn; dạng thứ tư ngay từ khi hình thành đã bắt đầu xâm lấn Khối u hắc tố xâm lấn nguy hiểm hơn, một khi chúng đã thâm nhập sâu hơn vào da, chúng có thể lan ra các khu vực khác của cơ thể [10]
Dạng phổ biến nhất là ung thư hắc tố lan trên bề mặt (Superficial spreading melanoma) (xem hình 1.4) Trong một khoảng thời gian khá dài, khối u phát triển tại các lớp da trên cùng trước khi thâm nhập sâu hơn Dấu hiệu đầu tiên là sự xuất hiện của một mảng da phẳng hoặc hơi lồi có màu thay đổi và có viền bất bình thường Đây
là loại u ác tính có thể hình thành từ một nốt ruồi lành tính
Hình 1.4 Ung thư hắc tố lan trên bề mặt (Superficial spreading melanoma) [11]
Ung thư hắc tố lentigo (Lentigo maligna) (hình 1.5) tương tự như ung thư hắc tố lan trên bề mặt vì nó cũng xuất hiện gần với bề mặt da trong một khoảng thời gian Đây là dạng ung thư hắc tố tại chỗ thường thấy nhất ở người già, phát sinh sau thời gian dài tiếp xúc với ánh nắng, da bị hư hỏng trên mặt, tai, tay và thân trên
Trang 19Hình 1.5 Ung thư hắc tố lentigo (Lentigo maligna) [11]
Dạng 3 ung thư hắc tố Acral lentiginousmelanoma (hình 1.6) cũng xuất hiện trên
bề mặt trước khi thâm nhập sâu hơn Dấu hiệu gồm có sự đổi màu đen hoặc nâu dưới móng tay hoặc lòng bàn tay, bàn chân Bệnh thường tiến nhanh hơn so với hai dạng bệnh đầu Đây là loại khối u hắc tố thường gặp nhất ở người Mỹ gốc Phi và người châu Á, đôi khi được tìm thấy ở người da đen và ít gặp ở người da trắng [11]
Hình 1.6 Ung thư hắc tố Acral lentiginous melanoma [11]
Dạng 4 Ung thư hắc tố dạng nốt (Nodular melanoma) (hình 1.7) thường đã di căn tại thời điểm chẩn đoán Các khối u có dạng vết sưng màu đen, màu xanh, xám, trắng, nâu, nâu, đỏ hoặc màu da U xuất hiện ở thân, chân và cánh tay, chủ yếu là ở người cao tuổi và nó cũng có thể có da đầu ở nam giới Đây là dạng phức tạp nhất và được tìm thấy trong 10 đến 15% các trường hợp [11]
Hình 1.7 Ung thư hắc tố dạng nốt (Nodular melanoma) [11]
Các giai đoạn tiến triển bệnh: Ung thư hắc tố giai đoạn đầu (giai đoạn 0 và I) khu trú tại phạm vi nhất định; giai đoạn 0, khối u không xâm lấn và không xâm nhập vào bên dưới bề mặt da, trong khi các khối u ở giai đoạn I đã xâm chiếm một phần da nhỏ
và phân bào chậm để phát triển Giai đoạn II khối u lớn hơn và/ hoặc có thể bị loét;
Trang 20đây được coi là giai đoạn trung gian Ung thư hắc tố giai đoạn cuối (giai đoạn III và IV) di căn tới các bộ phận khác của cơ thể
1.4 Dấu hiệu nhận biết ung thư da
Nốt ruồi, đốm nâu trên da thường vô hại Tuy nhiên những ai có hơn 100 nốt ruồi trên cơ thể có nguy cơ mắc ung thư hắc tố cao hơn bình thường Những dấu hiệu bệnh đầu tiên có thể xuất hiện ở một hoặc nhiều nốt ruồi không điển hình Đó là lý do tại sao việc nhận ra các thay đổi của nốt ruồi là vô cùng quan trọng
1.4.1 Tính bất đối xứng
Nốt ruồi lành tính có dạng đối xứng Nếu vẽ một đường qua tâm nó sẽ chia khối
u thành hai phần bằng nhau Nếu vẽ một đường thẳng qua một khối u bất thường hai nửa sẽ không đối xứng – chính là một dấu hiệu cảnh báo cho khối u ác tính (hình 1.8)
Hình 1.8 Tính đối xứng và bất đối xứng của nốt ruồi lành tính và ác tính [11]
1.4.2 Đường viền
Một nốt ruồi lành tính có bề mặt và viền nhẵn Trong khi đó, viền của một khối u hắc tố ác tính ở giai đoạn đầu có xu hướng không đồng đều, thường có dạng vỏ sò hoặc có các khe hình chữ V (hình 1.9)
Hình 1.9 Đường viền của nốt ruồi lành tính và ác tính [11]
1.4.3 Màu sắc
Hầu hết các nốt ruồi lành tính có màu đồng đều - thường là màu nâu Nốt ruồi nhiều màu là một tín hiệu cảnh báo Một số sắc thái khác nhau của màu nâu,
Trang 21chàm hoặc đen có thể xuất hiện Khối u hắc tố cũng có thể chuyển thành màu
đỏ, trắng hoặc màu xanh (hình 1.10)
Hình 1.10 Màu sắc của nốt ruồi lành tính và ác tính [11]
1.4.4 Đường kính
Nốt ruồi lành tính thường có đường kính nhỏ hơn so với những khối u ác tính Đường kính u hắc tố thường lớn khoảng ¼ inch hoặc 6mm, nhưng đôi khi chúng trông nhỏ hơn khi phát hiện sớm (hình 1.11)
Hình 1.11 Đường kính của nốt ruồi lành tính và ác tính [11]
1.4.5 Quy mô phát triển
Thông thường, nốt ruồi lành tính không biến đổi theo thời gian Hãy cảnh giác khi một nốt ruồi bắt đầu phát triển hoặc thay đổi theo bất kỳ cách nào Những thay đổi về kích thước, hình dạng, màu sắc, độ cao, hoặc các triệu chứng như chảy máu, ngứa hoặc đóng vảy đều là những dấu hiệu nguy hiểm (hình 1.12)
Hình 1.12 Sự phát triển của nốt ruồi ác tính [11]
Trang 221.5 Phương pháp chẩn đoán ung thư da
Hiện tại căn bệnh này đại diện cho một vấn đề sức khỏe nghiêm trọng, việc tìm kiếm những phương pháp chẩn đoán lâm sàng chính xác là mối quan tâm thường trực của các bác sĩ da liễu
1.5.1 Phương pháp soi da
Phương pháp soi da đã được biết đến từ thế kỷ 17 Nhưng chỉ được tập trung nghiên cứu trong vòng 40 năm trở lại đây chủ yếu tại Graz (Cộng hòa Áo) và được ứng dụng để tăng độ chính xác của chuẩn đóan ung thư da bằng cách phân loại cấu trúc nốt ruồi [12] So sánh kết quả của kiểm tra sinh thiết và phương pháp soi da, thấy rằng phương pháp soi da có thể áp dụng để nhận dạng khối u ác tính Vì vậy, chúng ta
có thể hoàn toàn tin tưởng phương pháp này, bởi vì nó đã trải qua một quá trình nghiên cứu khoa học nghiêm ngặc trên nhiều trường hợp bệnh
1.6 Kết luận chương
Chương 1 đưa ra tầm nhìn tổng quan về bệnh ung thư da Đặc điểm các loại bệnh ung thư lành tính và ác tính Mối nguy hiểm của ung thư da đến tính mạng của con người Khảo sát các phương pháp chẩn đoán ung thư da và đưa ra bài toán chẩn đoán ung thư da dựa vào hình ảnh Chương 2 và chương 3 sẽ trình bày rõ ràng và chi tiết hơn về bài toán này
Trang 23CHƯƠNG 2 TỔNG QUAN V
2.1 Giới thiệu chương
Chương 1 đã tìm hiểu v
thống chẩn đoán ung thư da d
quan về mạng nơ-ron, đi vào chi ti
áp dụng vào bài toán chẩn đoán
2.2 Mạng Nơ-ron nhân t
2.2.1 Cấu trúc một Nơ-ron
Bộ não chúng ta sử d
thông tin Ở não người trưở
với khoảng 100 ngàn tế bào
đưa qua mạng Nơ-ron này và tr
học, tín hiệu đầu ra này có th
hôi Cấu trúc cơ bản của mộ
Hình 2.1
Trong đó:
- Dendrites là các dây dẫn d
(dưới dạng xung điện thế
- Nucleus là nhân của tế bào, chúng ti
tổng hợp và xử lý các tín hi
- Axon là một loại dây dẫn d
các xung điện thế, dẫn tín hi
Axon nối với Dendrites
Synapse Khi điện thế của các m
, đi vào chi tiết về các khái niệm cơ bản và các mô hình m
n đoán phát hiện bệnh ung thư da dựa vào hình
u ra này có thể là kích thích co cơ hay báo hiệu tuyến mồ
ột nơ-ron sinh học được mô tả như hình 2.1:
1 Tế bào nơ-ron thần kinh của con người [17]
n dữ liệu mảnh, dài, gắn liền với các nơ-ronế) đến cho nơ-ron
bào, chúng tiếp nhận các tín hiệu được truy
lý các tín hiệu nhận được
n dữ liệu nhưng khác với Dendrites, Axon có kh
n tín hiệu từ Nucleus đi nơi khác
Dendrites của các nơ-ron khác bằng các mối nối đ
a các mối nối này tăng lên do xung phát ra từ
c (neurotransmitters), các chất này sẽ mở cử
n qua, làm thay đổi điện thế trên Dendrites Nơ-ron tính t
ợc và phát đi một xung khác nếu giá trị cộng đư
n thế đầu vào được
i với bộ não sinh
Trang 24một ngưỡng nhất định Tín hi
Bouton này có thể được nối v
là cách các nơ-ron thần kinh c
2.2.2 Cấu trúc một Perceptron
Mô hình nơ-ron nhân t
ron này được gọi là các Perceptron
những năm 1960 dựa trên nh
Như hình trên, Perceptron
với n đầu vào dữ liệu Rosenblatt đ
ngõ ra, cụ thể, ông đưa ra giá tr
Bằng cách thay đổi giá tr
được nhiều mô hình quyết đ
nh Tín hiệu sẽ tiếp tục được truyền qua các Axon đ
i với hàng ngàn các nơ-ron khác thông qua các
n kinh của chúng ta hoạt động
Perceptron
nhân tạo được xây dựng dựa trên các nơ-ron sinh h
Perceptron, được công bố bởi Frank Rosenblatt vào đ
a trên những nghiên cứu ban đầu của Warren McCulloch và
Perceptron được mô tả trong hình
2.2 Cấu trúc của một Perceptron đơn giản
ủa Perceptron, dựa trên phương pháp sử dụng các trngõ ra Nguyên lý này khá đơn giản và có thể
Perceptron có nhiều ngõ vào (input) xi (x1, x2, x3…Rosenblatt đã đưa ra một quy luật đơn giản để tính toán giá tr
, ông đưa ra giá trị trọng số (weight) wi Trọng số là các s
liệu ngõ vào, có tác động quyết định đến giá trlàm tăng hoặc giảm vai trò của ngõ vào thông qua tích
là các số thực thể hiện
n giá trị ngõ ra Giá
a ngõ vào thông qua tích xi wi Hàm
các ngõ vào của nơ-ron
ng số bé hơn hay
(2.1)
nh, chúng ta có
Trang 25Trên thực tế, để đơn giản hoá cách mô tả Perceptron người ta thay thế ∑ =
∙ , với w và x tương ứng là các vector chứa trọng số và giá trị ngõ vào Thay đổi thứ hai là chuyển tham số ngưỡng threshold sang vế trái và định nghĩa tham số b (bias)
để thay thế cho ngưỡng quyết định threshold
khó để nhận được giá trị là 1
2.3 Multi-layers Perceptron (MLP)
Việc ra đời Perceptron vào những năm 1960 đã đánh dầu bước đầu cho sự phát triển của mạng Neuron nhân tạo Tuy nhiên nó chỉ là bước khởi đầu và vẫn còn nhiều hạn chế, đơn cử là mạng Perceptron chỉ giải quyết được một số bài toán AND, NAND… tuy nhiên lại không thể giải quyết được bài toán XOR [1] Đến năm 1986, David Rumelhart và James McClelland đã giới thiệu mạng đa lớp Multi-Layer hay Multi-Layer Perceptron (MLP) Thực tế, mạng MLP được cấu thành từ các Sigmoid neuron chứ không phải các Perceptron
Về cơ bản, cấu trúc mạng MLP có chứa ít nhất 3 lớp neuron, bao gồm:
Hình 2.3 Một mô hình mạng MLP gồm các lớp Full Connection
Từ trái sang phải, lớp đầu tiên được gọi là lớp ngõ vào (input layer), các neuron bên trong lớp này được gọi là neuron ngõ vào (input neuron) Các neuron ngõ vào cung cấp dữ liệu từ ngoài vào mạng, hay đơn giản là chuyển thông tin đến các lớp tiếp theo
Trang 26Lớp cuối cùng hay còn g
(output neuron), trong trường h
ngõ ra có nhiệm vụ thực hiệ
Hình
Lớp ở giữa được gọi là l
này không kết nối đến thông tin
nhận thông tin từ các lớp phía trư
sau Như hình trên, thì mạng ch
vào sẽ được đưa đến tất cả
được đưa đến tất cả các nơ
lớn, thì hệ thống sẽ trở nên c
vọt sau mỗi lớp ẩn Ngoài ra, quá trình này còn t
Nơ-ron sâu (Deep Neural Network)
Thứ hai, trong quá trình x
MLP nhận dữ liệu đầu vào là m
Mỗi lớp nơ-ron ẩn này được t
mỗi nơ-ron được kết nối trự
nơ-ron trong cùng một lớp hoàn toàn đ
nào Với cấu trúc như vậy,
có cấu trúc không gian, ví d
i cùng hay còn gọi là lớp ngõ ra (output layer) chứa các neuron ngõ ra
ng hợp trên, lớp ngõ ra chỉ có 1 neuron ngõ ra Các
ện tính toán và truyền thông tin ra bên ngoài
Hình 2.4 Cấu trúc mạng đa lớp MLP
i là lớp ẩn (hidden layer) nhằm để chỉ các neuron trong l
n thông tin ở ngõ vào cũng như ngõ ra Các neuron này th
p phía trước, tính toán và chuyển thông tin đế
ng chỉ có một lớp ẩn, trong một số trường hợ
ng 4 lớp như hình 2.8, có đến 2 lớp ẩn
tích chập (Convolutional Neural Network – CNN)
n văn đã trình bày về mạng Nơ-ron với các mô hình c
và MLP Tuy nhiên, việc ứng dụng mô hình mạng k) vào giải quyết bài toán phân loại ảnh lại cần đượ
i với việc sử dụng các lớp Full connection, m các node của lớp ẩn thứ nhất, và giá trị sau đó lnơ-ron của lớp ẩn thứ hai Nhận thấy, với kích thưnên cồng kềnh, gây hao tổn bộ nhớ và số lượng phép tính tăng Ngoài ra, quá trình này còn tạo thành hạn chế khi tri
sâu (Deep Neural Network) do bị hạn chế về số lượng các lớp ẩn
trong quá trình xử lý dữ liệu, mạng Nơ-ron thông thư
u vào là một vector và truyền dữ liệu qua tập các l
c tạo thành từ một số lượng nhất định các nơ
ực tiếp với toàn bộ các nơ-ron lớp trước đó Tuy nhiên, các
p hoàn toàn độc lập với nhau và không có bấ
y, mạng Nơ-ron cũ không thể áp dụng tốt cho các d
u trúc không gian, ví dụ: dữ liệu vào là hình ảnh
a các neuron ngõ ra
có 1 neuron ngõ ra Các neuron
n thông tin ra bên ngoài
i kích thước dữ liệu
ng phép tính tăng khi triển khai mạng
n
thông thường hay mạng
p các lớp nơ-ron ẩn nơ-ron, trong đó,
c đó Tuy nhiên, các
ất kì mối liên hệ
t cho các dữ liệu vào
Trang 27Trong nội dung phần này,
chập (Convolutional Neural Network
trúc này giúp quá trình huấ
được sâu hơn với các mạng nhi
Ngày nay các mạng tích ch
Nơ-ron dùng cho việc phân lo
Receptive Field (vùng tiếp nh
Pooling (lấy mẫu) [13] Để
vào chi tiết các phần sau
2.4.1 Vùng tiếp nhận cục b
Trong các mạng kết n
được mô tả là một hàng các
mặt phẳng chứa các nơ-ron, tương
thước ảnh vào là 8 x 8 pixel (đi
tiếp nhận cục bộ (local receptive fie
n này, luận văn sẽ trình bày sơ lược về mạConvolutional Neural Network - CNN) Khác với các mạng
ng CNN sử dụng một cấu trúc đặc biết giúp x gian, ví dụ như dữ liệu hình ảnh, phân bố
a mô hình này là mỗi nơ-ron ở lớp này sẽ chỉ k
p trước (thay vì toàn bộ) Do đó hệ thống giảm đư
n các phép tính toán và giảm được dung lượng bộ nhớ Nhờ có c
t thích hợp cho quá trình phân loại và nhận dạng ảnh S
ấn luyện trong mạng được cải thiện về tốc đ
ng nhiều lớp, hoạt động tốt với tác vụ phân loạ
ng tích chập được ứng dụng rộng rãi trọng hầu h
c phân loại ảnh Mạng CNN sử dụng 3 ý tưởng cơ b
p nhận cục bộ), Shared Weight And Bias (trọng s làm rõ hơn về nguyên lý hoạt động của CNN, chúng ta đi
c bộ
t nối hoàn toàn đã được giới thiệu ở phần trướ
t hàng các nơ-ron Ở mạng tích chập, ngõ vào được mô t
, tương ứng với mật độ điểm ảnh ở ngõ vào Ví dpixel (điểm ảnh), có thể hình dung lớp nơ-ron ngõ vào nh
Hình 2.5 Ảnh ngõ vào với kích thước 8 x 8
ng MLP các nơ-ron của lớp này được kết nối đến toàn b
c và phía sau Thay vào đó, Ở CNN, các nơ-roncủa ảnh đầu vào
i nơ-ron ở lớp ẩn thứ nhất sẽ chỉ kết nối đến , một vùng 3 x 3 sẽ đảm nhận trách nhiệm tiếTrong hình 2.6, vùng có kích thước 3 x 3 tại ngõ vào đư(local receptive field) của nơ-ron ẩn Được định nghĩa l
n toàn bộ các nơ-ron ron được kết nối
n một vùng nhỏ
ếp nhận 9 điểm được gọi là vùng
ĩa là một cửa sổ
Trang 28nhỏ, áp lên các điểm ảnh ngõ vào M
trọng số tương ứng, bên cạnh đó nơ
Hình 2.6
Nhiệm vụ của mỗi nơ
trách Quá trình này được th
toàn miền ảnh ở ngõ vào Và v
Stride = 2, bước dịch chuyể
với việc tính toán giá trị và đưa đ
nh ngõ vào Mỗi kết nối sẽ học một trọng số thông qua ma tr
nh đó nơ-ron ẩn cũng học thêm một trọng số
6 Vùng cục bộ - vùng màu xanh có gạch chéo
nơ-ron ẩn là học cách phân tích các vùng cục b
c thực hiện bằng cách dịch chuyển cửa sổ và
Và với mỗi vùng tiếp nhận cục bộ khác nhau, skhác nhau Sự dịch chuyển của cửa sổ được thực hiện từ
u từ góc trên cùng-bên trái sau khi tính toán đư
t bên phải 1 điểm ảnh và tiếp tục thực hiện quá trình tính toán
Hình 2.7 Quá trình dịch của các cửa sổ bộ lọc
với kích thước đã chọn này dọc theo 2 chiều cbên phải, ta có được một tập nơ-ron lớp ẩn
ng cách dịch chuyển của cửa sổ được gọi là Stride
t nối cục bộ di chuyển dọc theo ảnh Nếu ta ch
ết nối cục bộ sẽ dịch qua một pixel mỗi lần di chuy
ển sẽ là 2 pixel Quá trình dịch chuyển được th
và đưa đến một nơ-ron tương ứng (hình 2.8)
thông qua ma trận
bias b
c bộ do nó phụ
và tính toán trên khác nhau, sẽ nơ-ron ẩn sẽ
ừ trái sang phải,
bên trái sau khi tính toán được nơ-ron ẩn
Trang 29Hình 2.8 Sự dịch chuyển theo chiều nga
Thông thường, stride đư
mỗi nơ-ron Nhưng ở mạng CNN, các
được dùng chung một tập các giá tr
được gọi là shared weights và shared bias
Việc sử dụng các tập giá tr
giúp giảm được một lượng l
kết nối hoàn toàn như cũ T
một filter (bộ lọc)
Như đã đề cập ở ví dụ
giá trị trọng số liên kết tương
số này được dùng chung và
Trong ví dụ đã nêu vớ
tính dựa theo công thức:
=
ự dịch chuyển theo chiều ngang và dọc của bộ lọc.
stride được chọn sao cho số các vùng được ch
c ngõ ra Output size = S x S được xác định với:
nh vào có kích thước N x N và kích thước cửa sổ áp lên ả
ng stride bằng 1 cho ví dụ ảnh 8 x 8 pixel ở
nh, ta thu được lớp nơ-ron ẩn mới có kích thước
6 là số lần mà cửa sổ có thể dịch chuyển theo chi
ến góc dưới-bên phải của hình)
chung
ữa của mạng CNN đối với mạng Nơ-ron cũ l
ng Nơ-ron cũ, các giá trị tham số được chọn khác nhau cho
ng CNN, các nơ-ron trong cùng một tập nơ
p các giá trị trọng số Các giá trị trọng số dùng chung này
i là shared weights và shared bias
p giá trị trọng số chung là một ưu điểm lớn c
ng lớn các tham số tính toán trong mạng tích chTập các giá trị trọng số dùng chung này thườ
ụ phần trước, mỗi nơ-ron ẩn sẽ có 1 giá trị
t tương ứng với vùng kết nối cục bộ của nó Và các giá tr
và áp dụng cho toàn bộ 6 x 6 nơ-ron ở lớp ẩn
ới filter kích thước 3 x 3, giá trị ngõ ra của nơ
ọc của bộ lọc
c chọn là một số
(2.7) ảnh ngõ vào có
Trang 30Trong đó, là hàm kích ho
chứa giá trị trọng số chung, và
Điều này có nghĩa là v
trên toàn ảnh, ta sẽ thu đượ
đường thẳng, đường cong,
Hình 2.9 Minh họa việc áp dụng một filter
Việc cho phép xử lý dữ liệu theo phân vùng không gian
so với mạng Nơ-ron cũ, giúp cho m
ứng dụng về xử lí hình ảnh, video
Hình 2.10 Các bản đồ đặc tính đ
àm kích hoạt Sigmoid, b là giá trị bias chung, ,
chung, và xj,k là giá trị ngõ vào tại vị trí j, k
là với mỗi filter áp dụng cho các vùng cục bộ cùng kích thư
ợc một lớp các nơ-ron ẩn tương ứng sử dụng chung m
ng chung các bộ lọc để xác định các đặc tính khác nhau ctrí khác nhau trong ảnh khi ta di chuyển vùng k
i là bản đồ đặc tính (feature map) [11]
ẩn thường sử dụng nhiều bản đồ đặc tính khác nhau đ
nh, ví dụ như thành phần tần số thấp, tần số
ng cong,
ọa việc áp dụng một filter lấy tích chập lên ảnh ng
t cách đơn giản hơn, nếu ta muốn nhận diện được đ
p giá trị trọng số tương ứng C Để tìm kiếm đ
ng cùng tập giá trị trọng số C cho mỗi nơ-ron
y, vật thể A có thể nằm ở những vị trí khác nhau trong m
ng CNN vẫn có khả năng nhận dạng đúng nếu tìm đư
u theo phân vùng không gian tạo ưu thế lớn c
úp cho mạng thể hiện được những kết quả
được đặc tính B
n cho mạng CNN tốt đối với các
ứng với các bộ lọc
Trang 31Ngoài việc chọn kích thước cho local receptive field và số lượng bản đồ đặc tính mong muốn, có hai thông số ta có thể chọn để tác động đến việc tính toán của lớp tích chập, đó là stride và padding Stride đã được nêu ở phần trên, sau đây chúng ta sẽ làm
rõ về Padding
Lấy ví dụ, cho một ảnh có kích thước đầu vào 8x8 pixel và chọn bộ lọc có kích thước 3 x 3 Việc di chuyển bộ lọc trên toàn bộ ảnh và lấy tích chập sẽ hình thành được một bản đồ đặc tính Tuy nhiên, nhận thấy rằng, kích thước dữ liệu sau khi lấy tích chập sẽ bị rút gọn lại, minh họa hình 2.15
Hình 2.11 Kích thước bị thu nhỏ sau quá trình lấy tích chập
Như vậy, nếu tiếp tục cho dữ liệu qua nhiều lớp tích chập với kích thước bộ lọc
là 3 x 3 ở ví dụ trên, đầu ra ở lớp tiếp theo sẽ có kích thước 4 x 4 và tiếp tục giảm chỉ còn 2 x 2 ở lớp sau đó Điều này dẫn đến hai vấn đề, thứ nhất số lượng lớp ẩn sẽ bị hạn chế, trong khi để khai thác được thêm đặc tính cơ bản của dữ liệu, chúng ta lại cần nhiều lớp ẩn hơn Thứ hai, thông tin sẽ bị mất mát dần sau khi qua bộ lọc tích chập
Do đó, nhu cầu đặt ra là kích thước lớp ẩn không thay đổi sau mỗi lần lấy tích chập
Ví dụ, ta muốn xây dựng thêm một lớp tích chập, nhưng lại muốn kích cỡ dữ liệu lớp tiếp theo giữ nguyên kích thước 8 x 8
Điều này có thể thực hiện điều này bằng cách thêm zero padding Zero padding thêm vào dữ liệu lớp trước các node có giá trị bằng 0 bao quanh đường biên dữ liệu
Cụ thể với ví dụ trên, kích thước zero padding cần thêm vào lớp trước là 1 Nếu ta sử dụng zero padding kích cỡ 1, ta sẽ có kết quả là dữ liệu vào kích thước 8 x 8
Conv
Trang 32Hình 2.12 Chèn padding được thực hiện trước khi lấy tích chập
2.4.3 Pooling
Mạng CNN thể hiện tính ưu việt khi xử lý với các dữ liệu nhiều chiều Nó giúp giới hạn số lượng các trọng số bằng cách sử dụng các giá trị trọng số chia sẻ, giúp việc huấn luyện mạng dễ dàng hơn Tuy nhiên, nếu xem xét một cách cẩn thận thì sau quá trình lấy tích chập lớp đầu tiên, khối lượng dữ liệu sẽ tăng tùy vào số thuộc tính được trích xuất Pooling là một yếu tố then chốt để giải quyết vấn đề này
Mục đích chính của các lớp Pooling là để giảm kích thước dữ liệu, từ đó giảm số lượng các thông số và tính toán trong mạng, đồng thời hạn chế overfitting – vấn đề này xảy ra khi mạng bám quá sát vào bộ dữ liệu huấn luyện [18] Pooling có thể xem như
là phép lấy mẫu xuống và giữ nguyên chiều sâu của dữ liệu Minh họa quá trình được trình bày trong hình 2.17 Có thể mô tả lớp Pooling như sau:
Kích thước dữ liệu ngõ vào × ×
Các tham số tham gia:
Trang 33Trong hầu hết các mô hình m
Units Layers) được thêm vào vì nh
hoạt phi tuyến Mục đích c
Các lớp ReLU được thêm vào vì nh
quả Lớp này áp dụng hàm
Hình 2.14 Hàm kích ho
Về cơ bản, lớp này ch
trị của hàm số tiến tới 0 và +
tránh xa khỏi ngưỡng (threshold), s
3 Lấy mẫu xuống giúp giảm kích thước dữ liệu
có 2 loại pooling thường được dùng: Một là với l
ọi là Overlapping pooling), và một loại phổ Các pooling với kích thước lớn hơn không đưmát thông tin quá lớn
t các mô hình mạng CNN hiện nay, các lớp ReLU (Rectified Linear
c thêm vào vì những ưu điểm của nó và đóng vai tr
ng Nơ-ron truyền thống Trước đây, các hàm tr
c sử dụng Tuy nhiên, với những công trình nh
ã thể hiện được những ưu điểm của mình trong nhi các hàm truyền cũ
ng hàm ReLU (Rectified Linear Units Layers) để
c đích của lớp này là để thêm thành phần phi tuyế
c thêm vào vì những ưu điểm dễ thiết lập, tính toán nhanh và hi
( ) = max(0, ) cho toàn bộ các giá trị đầu vào
Hàm kích hoạt ReLU, chuyển các giá trị âm về 0.
p này chỉ chuyển đổi các giá trị âm về bằng 0 ReL
i 0 và +∞ nhanh hơn, hay nói cách khác giúp cho giá tr
ng (threshold), sẽ gần với 2 nhãn 0 và 1 hơn
8
4
i lớp pooling có biến hơn là với
n hơn không được sử dụng vì
(Rectified Linear
a nó và đóng vai trò tương đương
c đây, các hàm truyền như tanh
ạt ReLU, chuyển các giá trị âm về 0
ReLU giúp cho giá
ơn, hay nói cách khác giúp cho giá trị tiên đoán
Trang 34Đối với hàm Sigmoid
ra xấp xỉ 0 hoặc 1 (giá trị bão hòa), vì khi
giảm khả năng xuất hiện vấ
ra khi đạo hàm quá nhỏ và g
hàm luôn là 1 với x>0
Đồng thời, việc tăng các giá tr
ra hiện tượng bão hòa, và do đó không làm ch
trong số nhiều ưu điểm thể hi
2.4.5 Lớp Dropout
Overfitting là một vấn đ
Nơ-ron Đây là hiện tượng mô hình m
khi thay thế tập dữ liệu huấn luy
không tốt như áp dụng trên b
vừa huấn luyện được quá ph
thực tiễn không cao
Trong huấn luyện mạng, k
đích thu thập được lượng thông tin l
lượng đơn vị tại các lớp …
hiện Có một kĩ thuật dành riêng cho
Dropout là một kĩ thuậ
là xoá bỏ ngẫu nhiên một số
suất p cho trước [12] Dropout đư
dụng nhiều Dropout khác nhau cho nh
có 1 Dropout)
Hình 2.15 Mạng Nơ-ron trư
Tại quá trình huấn luy
trên lớp, tại mỗi unit ta “gieo xúc x
hay tanh, quá trình cập nhật sẽ không thể thbão hòa), vì khi đó đạo hàm bằng 0 Các lớ
ấn đề triệt tiêu Gradient (Vanishing Gradient Problem
và gần như bằng 0), việc sử dụng ReLU cho phép giá tr
c tăng các giá trị trọng số cho ReLU làm cho hàm này
do đó không làm chậm tốc độ huấn luyện Trên đây là hai hiện tính ưu việt của ReLU so với tanh hoặc
n đề lớn đối với Machine Learning, đặc biệt là trong
ng mô hình mạng bám quá sát vào tập dữ liệu hu
n luyện này bằng một tập dữ liệu mới thì kết qu
ng trên bộ dữ liệu huấn luyện Điều này cho thấy r
c quá phụ thuộc vào dữ liệu huấn luyện và làm cho m
ng, khi muốn cho mô hình trở nên phức tạp hơn nh
ng thông tin lớn hơn, ta thực hiện tăng khối lượng tính toán, s
p … Nhưng khi mô hình phức tạp hơn, overfitting b
t dành riêng cho mạng Nơ-ron và khá đơn giản, đó l
ật để chống lại vấn đề overfitting Cách Dropout th
ố nơ-ron trong các bước huấn luyện ứng với mDropout được áp dụng với một xác suất p cho trư
u Dropout khác nhau cho những layer khác nhau, nhưng trên 1 layer s
trước và sau quá trình Dropout, các node gạch chéo l
đã bị loại bỏ [15]
n luyện, tại lớp sử dụng Dropout, thay vì tính toán t
i unit ta “gieo xúc xắc” xem nó có được tính hay không d
thực hiện khi đầu
ớp ReLU sẽ làm Vanishing Gradient Problem – xảy
ng ReLU cho phép giá trị đạo
hàm này không xảy Trên đây là hai
i một giá trị xác
t p cho trước (ta có thể sử
ng layer khác nhau, nhưng trên 1 layer sẽ chỉ
ạch chéo là các node
ng Dropout, thay vì tính toán tất cả unit có
c tính hay không dựa trên xác
Trang 35suất p Với những unit được tính, ta tính toán bình thường còn với những unit không được tính giá trị tại unit đó = 0
Việc loại bỏ ngẫu nhiên một số nơ-ron dẫn đến quá trình quyết định của mạng sẽ khuyết thiếu thông tin từ các nơ-ron đó Do vậy, quá trình huấn luyện mạng sẽ ít phụ thuộc vào bộ dữ liệu sử dụng hơn
2.4.6 Hàm tổn hao
Với mỗi bài toán nhận dạng hình ảnh, kết quả cuối cùng chính là xác định xem đối tượng trong ảnh thuộc nhóm nào trong số các nhóm phân loại đã biết Để huấn luyện mạng thực hiện phân loại có giám sát ta cần định nghĩa một hàm tổn hao (loss function) Hàm tổn hao là thành phần cốt lõi của việc đánh giá phân loại trong mạng
Loss function là một hàm số thực không âm có dạng ( ( ), ), và đặc biệt là phải dễ lấy đạo hàm Cụ thể, trong công thức thường gặp:
Trong đó, N là số đầu vào (và N nhãn tương ứng), ( , ) là hàm tổn hao khi so sánh giá trị đầu ra của mạng y với giá trị thật sự (nhãn) c Ta có = ( ) với là vector đầu vào, là hàm thể hiện quá trình biến đổi của mạng Nơ-ron, và được thể hiện thông qua các trọng số của mạng
Về cơ bản, hàm tổn hao trả về giá trị thể hiện sự chênh lệch giữa hai đại lượng: y, nhãn được dự đoán (đầu ra của mạng) và c, nhãn đúng (ground truth) Hàm có giá trị
bé nếu kết quả dự đoán trùng với nhãn và ngược lại
Quá trình huấn luyện mạng chính là quá trình đi tìm các trọng số của mạng để tối
thiểu hóa hàm tổn hao này Trong trường hợp lý tưởng y = c, hàm tổn hao sẽ trả về giá trị cực tiểu bằng 0, có nghĩa là mô hình đạt tối ưu và xác định chắc chắn giá trị nhãn c chính là giá trị của ảnh ngõ vào x
a Hàm sai số phân loại
Hàm này cho giá trị là 0 nếu là phần tử có giá trị lớn nhất trong vector y,
ngược lại nó sẽ có giá trị là 1
b Hàm hinge-loss
Nếu càng nhỏ hơn 1 thì hàm tổn hao càng lớn
Trang 36c Hàm log loss
Trong trường hợp này, vector y xem như chứa các giá trị xác suất hậu nghiệm (posterior probability), tức là ≥ 0, ∑ = 1, trong đó C là số lượng lớp Ta có hàm tổn hao như sau:
Chú ý rằng nếu càng nhỏ thì hàm tổn hao (hay sai số) càng lớn và ngược lại Tuy nhiên, hàm trên sẽ không xác định nếu = 0 Để tránh trường hợp trên, ta định nghĩa hàm Softmax log-loss như sau
d Softmax log-loss
( , ) = −
Trong đó, là vector đầu ra, là nhãn đã biết
Hàm Softmax tạo ra sự canh tranh giữa các phần tử ứng với các lớp khác nhau
Rõ ràng, hàm tổn hao này sẽ có giá trị càng lớn nếu xác suất phân loại của lớp đúng thấp (≈ 0), và ngược lại, có giá trị thấp nếu xác suất phân loại của lớp đúng cao (≈ 1) Trong luận văn này, hàm tổn hao Softmax đặt ở lớp cuối trong mạng nhằm thực hiện giám sát quá trình huấn luyện mạng Nơ-ron Hàm tổn hao sẽ so sánh kết quả dự đoán của mạng với nhãn thực sự đã có để đưa ra kết quả phân loại ảnh bị ung thư hay không Quá trình huấn luyện nhằm cập nhật các trọng số để tối thiểu hóa hàm tổn hao
2.5 Một số mạng nơ-ron tích chập phổ biến
2.5.1 Mạng LeNet-5
LeNet-5 là một mạng tích chập 7-cấp đầu tiên của LeCun và cộng sự vào năm 1998[27] Với khả năng phân loại các chữ số, mạng được một số ngân hàng áp dụng
để nhận ra các số viết tay trên các hình ảnh đầu có kích thước 32x32 pixel Khả năng
xử lý hình ảnh có độ phân giải cao hơn đòi hỏi các lớp tích chập lớn hơn và nhiều hơn,
do đó kỹ thuật này bị hạn chế bởi tính sẵn có của tài nguyên máy tính Hình Biểu diễn cấu trúc mạng LeNet-5
Hình 2.16 Kiến trúc mô hình mạng LeNet-5[27]
Trang 372.5.2 Mạng AlexNet
Năm 2012, AlexNet vượt trội đáng kể so với tất cả các đối thủ trước đó và chiến thắng thử thách bằng cách giảm lỗi nằm trong top 5 từ 26% xuống 15.3% Tỉ lệ lỗi đứng thứ 2 trong top 5 không phải là biến thể của CNN là khoảng 26.2% [27]
Hình 2.17 Kiến trúc mô hình mạng AlexNet[27]
Mạng có kiến trúc rất giống với LeNet-5 của Yann LeCun nhưng sâu hơn, với nhiều bộ lọc hơn trên mỗi lớp và với các lớp chập xếp chồng lên nhau (hình) Nó bao gồm các bộ lọc có kích thước 11x11, 5x5, 3x3, các lớp convolutions, maxpooling, dropout, data augmentation, ReLU activations Nó đính kèm ReLU activations sau mỗi lớp tích chập và được kết nối fully-connected layer AlexNet được huấn luyện hết sáu ngày trên hai GPU Nvidia Geforce GTX 580 AlexNet được thiết kể bởi nhóm SuperVision, bao gồm Alex Krizhevsky, Geoffrey Hinton và Ilya Sutskever [27]