Hỗ trợ chẩn đoán tự động tổn thương xuất huyết, tụ máu dựa vào ảnh CT não
Trang 1TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ TRI THỨC
Ngụy Đức Thuận
HỖ TRỢ CHẨN ĐOÁN TỰ ĐỘNG TỔN THƯƠNG XUẤT HUYẾT/TỤ MÁU DỰA VÀO ẢNH CT NÃO
KHOÁ LUẬN CỬ NHÂN TIN HỌC
Trang 2TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ TRI THỨC
Ngụy Đức Thuận – 0112283
HỖ TRỢ CHẨN ĐOÁN TỰ ĐỘNG TỔN THƯƠNG XUẤT HUYẾT/TỤ MÁU DỰA VÀO ẢNH CT NÃO
KHÓA LUẬN CỬ NHÂN TIN HỌC
GIÁO VIÊN HƯỚNG DẪN TIẾN SĨ LÊ HOÀI BẮC
NIÊN KHÓA 2001-2005
Trang 3Lời cảm ơn
Em xin gửi lời biết ơn chân thành nhất đến thầy Lê Hoài Bắc, người đã tận tình dạy dỗ em trong suốt quá trình học, cho em nhiều lời động viên cũng như những chỉ dẫn quý báu để em có thể thực hiện tốt được đề tài này
Bên cạnh đó, em xin chân thành cảm ơn các thầy cô trong khoa Công Nghệ Thông Tin đã hết lòng trong công tác giảng dạy, tận tình cung cấp nhiều kiến thức cần thiết trong suốt những năm học tại trường
Em cũng gửi lời cảm ơn sâu sắc đến bác sỹ Nguyễn Ngọc Diệp và các cán bộ phòng Chẩn đoán hình ảnh bệnh viện Đa Khoa Đồng Tháp, đến anh Lục Thành Vũ, cán bộ phòng Chẩn đoán hình ảnh bệnh viện Nguyễn Trãi thành phố Hồ Chí Minh đã cung cấp cho em những kiến thức y khoa và dữ liệu hình ảnh cần thiết để em thực hiện đề tài này
Trong quá trình thực hiện đề tài, không thể không kể đến sự giúp đỡ, đóng góp ý kiến và những lời động viên hết mình của bạn bè xung quanh, điều này thật sự đã giúp cho tôi rất nhiều Xin chân thành cám ơn các bạn
Và cuối cùng, con xin gửi đến ba mẹ và em trai của anh lòng biết ơn vô bờ bến Công lao dưỡng dục của ba mẹ, niềm tin mãnh liệt vào con và những đêm thức trắng nơi quê nhà vì lo lắng cho con của ba mẹ đã giúp con vượt qua được những giờ phút khó khăn nhất, khắc phục được những trở ngại lớn lao nhất để hoàn thành đề tài này
Thành phố Hồ Chí Minh, ngày 13 tháng 7 năm 2005 Ngụy Đức Thuận
Trang 4Mở đầu
Theo [13], chấn thương là nguyên nhân tử vong hàng đầu ở trẻ em và người trẻ (dưới 44 tuổi), trong đó chấn thương vùng đầu chiếm trên 50% các ca tử vong, với di chứng nặng nề và chi phí y tế rất lớn
Để chẩn đoán, theo dõi, tiên lượng chấn thương đầu thật nhanh chóng và chính xác thì hình ảnh học ( gồm X quang, CT, MRI…) là dữ kiện cơ bản
và quan trọng Trong số đó, CT là khảo sát hình ảnh được lựa chọn đầu tiên
và rất có giá trị trong đánh giá chấn thương sọ não, đặc biệt là chấn thương sọ não cấp [13]
Việc đọc phim CT hiện nay chủ yếu là do các bác sĩ chuyên khoa chẩn đoán hình ảnh thực hiện, với số ca mỗi ngày khá lớn Với mỗi ca chấn thương đầu, số lượng ảnh phải chụp tối thiểu là 20, và bác sĩ phải quan sát qua tất cả các ảnh để tìm ra nhiều biểu hiện bất thường khác nhau Từ những lý do đó, nhận thấy nhu cầu cho một công cụ trợ giúp chẩn đoán tự động, hỗ trợ các bác sĩ đưa ra những chẩn đoán chính xác và ít sai sót hơn Điều này cũng phù hợp với xu thế hiện này là áp dụng công nghệ thông tin vào mọi lĩnh vực của đời sống, trong đó có lĩnh vực y khoa Tuy vậy, cũng phải nhìn nhận rằng đây là một vấn đề không hề dễ dàng, bởi vì bản thân các bác sĩ chuyên khoa cũng gặp nhiều khó khăn khi phân tích hình ảnh của các ca bệnh phức tạp Vì vậy, mục tiêu của đề tài này chỉ mới dừng lại ở giai đoạn khai phá, tìm hiểu và thử nghiệm xây dựng hệ thống cho một số loại tổn thương tương đối đơn giản, cụ thể hơn là loại tổn thương xuất huyết và tụ máu Báo cáo gồm có 4 chương và 3 phụ lục:
• Chương 1: Giới thiệu chung – kiến thức tổng quan
Giới thiệu chung về đề tài
• Chương 2: Cơ sở lý thuyết
Trình bày các vấn đề lý thuyết quan trọng
• Chương 3: Xây dựng hệ thống
Trang 5Mô tả cách xây dựng hệ thống và các cách áp dụng các vấn đề lý thuyết đã nêu
• Chương 4: Cài đặt, kết quả thử nghiệm
Cài đặt chương trình, sơ lược về cách sử dụng, các kết quả thử nghiệm
• Phụ lục C: Giải phẫu CT đơn giản
Giải phẫu các bộ phận của não dựa vào ảnh CT (ở mức độ đơn giản)
Trang 61.4.4 Tỉ lệ vùng bình thường được phân lớp đúng 19
Chương 2 : Cơ sở lý thuyết 20
2.1 Phân đoạn ảnh 20
2.2.1 Lọc ngưỡng 21
2.2.2 Phương pháp dựa vào biên 23
2.2.3 Phương pháp dựa trên vùng 24
2.2.4 Phương pháp thống kê và Bayes 26
2.2.5 Phương pháp mạng nơ ron và logic mờ 26
2.3 Làm mảnh biên 27
2.4 Biểu diễn đường biên 29
2.4.1 Biểu diễn bằng chain -code 29
2.4.2 Biểu diễn bằng dòng quét (scanline) 31
2.5 Các đặc trưng mô tả vùng (đường kính, chu vi, diện tích…) 32
2.5.1 Diện tích và chu vi 32
2.5.2 Khoảng cách xuyên tâm (radial distance) 33
2.5.3 Chiều dài trục chính và phụ 34
2.6 Cây quyết định 35
2.6.1 Giới thiệu về cây quyết định 35
2.6.2 Thuật toán ID3 38
2.7 Thông tin tương hỗ 43
Trang 72.8 Học dựa vào sự trình diễn 44
Chương 3 : Xây dựng hệ thống 46
3.1 Phân đoạn đơn giản 46
3.2 Học dựa vào sự trình diễn 47
4.2.1 Độ hiệu quả của giai đoạn phân lớp 60
4.2.2 Đánh giá công việc 61
4.2.3 Hướng phát triển trong tương lai 62
Tài liệu tham khảo 63
Phụ lục 65
A Bệnh học 65
A.1 Tụ máu dưới màng cứng (Subdural Hematoma/SDH) 65
A.2 Tụ máu ngoài màng cứng (Epidural Hematoma/EDH) 66
A.3 Xuất huyết khoang dưới nhện (subarachnoid hemorrhage) 68
A.4 Xuất huyết trong não thất (intraventricular hemorrhage) 69
A.5 Tụ máu trong não (intracerebral hematoma) 69
B Dữ liệu DICOM 71
B.1 Giới thiệu 71
B.2 Cấu trúc chung của tập tin DICOM 71
B.3 Một số thông tin cần thiết khi xử ảnh DICOM 72
C Giải phẫu CT đơn giản vùng trên lều 76
Trang 8Hình 2-3: Mặt nạ của toán tử Laplace 23
Hình 2-4: Ví dụ về thuật toán Region Growing 26
Hình 2-5: Lân cận 8 của điểm p1 28
Hình 2-6: Chain code 4 hướng và 8 hướng 30
Hình 2-7: Ví dụ về biễu diễn đường biên bằng chain code lân cận 8 30
Hình 2-8: Đường biên của một vùng và biểu diễn dòng quét của nó 31
Hình 2-9: Một số đặc trưng dùng để mô tả vùng 32
Hình 2-10: Trục chính và trục phụ hình ellipse .35
Hình 2-11: Minh họa phương pháp của Hunt 37
Hình 2-12: Một cây quyết định chọn nhiệt độ làm gốc 40
Hình 3-1: Ảnh CT qua bộ lọc thứ nhất, trong đó màu đỏ biểu diễn cho vùng bệnh48 Hình 3-2: Minh họa lát cắt đầu tiên vùng trên lều 53
Hình 3-3: Minh họa cách phân vùng các lát cắt giữa 53
Hình 3-4: Hình minh họa lát cắt trên cùng (thùy đỉnh) 54
Hình 3-5: Ảnh phân vùng não với các tiêu chuẩn dừng khác nhau 56
Hình 4-1: Giao diện chính 57
Hình 4-2: Màn hình học dựa vào sự trình diễn 58
Hình 4-3: Chọn bệnh nhân 59
Hình 4-4: Dữ liệu về bệnh nhân đã được hiển thị .59
Hình 4-5: Sau khi dò tìm vùng tổn thương 60
Hình A-1: Tụ máu dưới màng cứng 66
Hình A-2: Tụ máu ngoài màng cứng .67
Hình A-3: Xuất huyết khoang dưới nhện 68
Hình A-4: Xuất huyết trong não thất 69
Hình A-5: Tụ máu trong não 70
Hình C-1:Giải phẫu CT não đơn giản 76
Hình C-2: Giải phẫu CT não đơn giản 77
Hình C-3: Giải phẫu CT não đơn giản 78
Hình C-4: Giải phẫu CT não đơn giản 79
Hình C-5: Giải phẫu CT não đơn giản 80
Hình C-6: Giải phẫu CT não đơn giản 81
Hình C-7: Giải phẫu CT não đơn giản 82
Trang 9Danh mục bảng biểu
Bảng 1-1: Trị số đậm độ của các cấu trúc nội sọ 11
Bảng 2-1: Dữ liệu minh họa cho cây quyết định 37
Bảng 2-2: Thông tin phân bố thuộc tính quang cảnh 38
Bảng 2-3: Thông tin phân bố lớp của thuộc tính Độ ẩm 39
Trang 10Bảng kí hiệu các chữ viết tắt
DICOM Digital Imaging and Communications in Medicine
kNN k nearest neighbour
Trang 11Chương 1 : Giới thiệu – kiến thức tổng quan 1.1 Xác định vấn đề và động cơ thúc đẩy
Năm 1972 G.N Hounsfield giới thiệu phương pháp chụp cắt lớp điện toán (Computed Tomography Scanner – CT) Đây là kỹ thuật không xâm lấn cho phép đánh giá tốt về bệnh lý hệ thần kinh trung ươn Sự ra đời của CT được xem là cuộc cách mạng trong chuẩn đoán hình ảnh Đặc biệt, trong bệnh lý chấn thương sọ não, CT chẩn đoán tốt các tổn thương nội sọ (tụ máu, dập não, phù não…), chi tiết xương, khảo sát được các trường hợp bệnh nhân cấp cứu (không nằm yên, mang trợ cụ hô hấp, tuần hoàn…) và có giá thành rẻ CT giúp đánh giá, theo dõi, tiên lượng, lập kế hoạch điều trị thích hợp cho từng bệnh nhân
Theo [13], có một số đặc điểm đáng lưu ý về chấn thương sọ não như sau:
i Chấn thương là nguyên nhân tử vong hàng đầu ở trẻ em và người trẻ (dưới 44 tuổi), trong đó chấn thương vùng đầu chiếm trên 50% các ca tử vong
và quan trọng Trong số đó, CT là khảo sát hình ảnh được lựa chọn đầu tiên
và rất có giá trị trong đánh giá chấn thương sọ não, đặc biệt là chấn thương sọ não cấp [13]
Việc đọc phim CT hiện nay chủ yếu là do các bác sĩ chuyên khoa chẩn đoán hình ảnh thực hiện, với số ca mỗi ngày khá lớn Với mỗi ca chấn thương đầu, số lượng ảnh phải chụp tối thiểu là 20, và bác sĩ phải quan sát qua tất cả các ảnh để tìm ra nhiều biểu hiện bất thường khác nhau Từ những
Trang 12lý do đó, nhận thấy nhu cầu cho một công cụ trợ giúp chẩn đoán tự động, hỗ trợ các bác sĩ đưa ra những chẩn đoán chính xác và ít sai sót hơn
1.2 Một số kiến thức cơ bản 1.2.1 Nguyên lý tạo hình
CT dùng một chùm tia X với độ dày nhất định, quét qua lát cắt ngang của vật thể, theo nhiều huớng khác nhau Lượng tia X sau khi đi qua vật thể được đo bằng các đầu dò (detectors) Dữ liệu thu nhận từ các đầu dò này sẽ được máy tính xử lý và tạo hình
1.2.2 Tạo hình
Các lát cắt ngang qua vùng cơ thể khảo sát, được phân thành nhiều khối (block) nhỏ Các khối riêng lẽ này gọi là các phần tử thể tích (voxel) Thành phần độ dày của phần tử thể tích cùng với tính chất chùm tia X sẽ xác định mức độ hấp thu tia X của các phần tử thể tích này (hình 1-1)
Các dữ liệu số về sự hấp thu tia X của các phần tử thể tích được máy tính chuyển thành các độ xám khác nhau của các phần tử hình hay điểm ảnh (pixel) tương ứng trên hình CT
Hình 1-1: Phần tử thể tích (voxel)
Trang 131.2.3 Trị số đậm độ
Mỗi phần tử thể tích có trị số tương ứng với mức độ hấp thu tia của mô và được biẻu thị bằng các độ xám khác nhau trên hình.Trị số mức độ hấp thu tia X biểu thị bằng đơn vị Hounsfield (HU)
Theo qui ước của máy, các đậm độ cơ bản là: Đậm độ của nước: 0 HU Đậm độ của khí: -1000 HU Đậm độ của xương: +1000 HU Đậm độ của mỡ: -1000 HU
Các trị số đậm độ của các mô, dịch khác trong cơ thể sẽ được tính theo tương ứng với các trị số trên
Các cấu trúc vật chất hấp thụ tia X càng nhiều thì có độ Hounsfield càng cao, trên hình có màu càng trắng và ngược lại Ví dụ: xương, máu tụ có màu trắng do hấp thụ tia X nhiều; ngược lại khí, mỡ, dịch não tuỷ có màu đen Điều này giống như các đậm độ trên hình X quang thông thường
Cấu trúc Trí số giới hạn(HU)
Bảng 1-1: Trị số đậm độ của các cấu trúc nội sọ
Trang 141.2.4 Thay đổi đậm độ
Thay đổi đậm độ biểu hiện sự khác biệt tương đối về đậm độ của vùng chúng ta lưu ý với cấu trúc bình thường Các từ diễn tả đậm độ khi mô tả:
- Giảm đậm độ (Hypodense) - Đồng đậm độ (Isodense) - Tăng đậm độ (Hyperdense)
Các từ giảm, đồng và tăng đậm độ sẽ tương ứng với các vùng có màu đen hơn, ngang bằng và trắng hơn so với vùng được so sánh
Ví dụ:
- Xuất huyết trong não có đậm độ cao - Vùng phù có đậm độ thấp
- Tụ máu dưới màng cứng bán cấp đồng đậm độ với chất xám…
Các hình tăng đậm độ trên CT sọ não có thể là các đóng vôi bình thường (như màng cứng,tuyến tùng,đám rối mạch mạc…) hoặc các đóng vôi bất thường (trong u, tổn thương cũ…), xuất huyết, các cấu trúc protein cao, hoặc mật độ tế bào cao (một số u não)
Các hình giảm đậm độ thường gặp trên CT sọ não bình thường (như dịch não tuỷ, mỡ hốc mắt, khí trong xoang) hoặc bất thường (như phù não, dịch trong các nang, mỡ trong u, khí nội sọ trong chấn thương)
Cũng cần lưu ý rằng khối máu tụ cấp tính ở bệnh nhân chấn thương sọ não thuờng có đậm độ cao hơn nhu mô não Đậm độ khối máu tụ liên quan với nồng độ hemoglobin, hematocrit, protein máu, tình trạng đông máu Trong một số trường hợp, do có sự thay đổi các yếu tố trên (hematocrit, protein thấp…), khối máu tụ cấp có thể có đậm độ ngang với nhu mô não
Theo thời gian, khối máu não sẽ giảm đậm độ dần, trung bình 1.5HU/ngày Do đó, máu tụ bán cấp hay mãn tính sẽ đồng hay giảm đậm độ so với nhu mô não
Trang 151.2.5 Đặt cửa sổ (Window setting)
Trị số đậm độ của các mô khác nhau trong cơ thể thay đổi từ 1000HU đến +1000HU, các trị số này được biểu hiện trên hình bằng các độ xám khác nhau Tuy nhiên mắt thường của chúng ta không thể phân biệt được khác biệt tất cả các độ xám này, để phân biệt, phải thay đổi cửa sổ, nhằm tạo tương phản giúp mắt thường nhận biết được Có hai thông số đặt cửa sổ là độ rộng cửa sổ(window width) và trung tâm cửa sổ (window level/centre).Viết tắt trên phim là:W/L hay W/C
-Độ rộng cửa sổ: là khoảng độ Hounsfield mà ta muốn xem Các cấu trúc có độ đậm phía trên giới hạn này sẽ có màu trắng, dưới giới hạn này sẽ có màu đen
Trung tâm cửa sổ: Là điểm giữa của độ rộng cửa sổ, có độ Hounsfield thường gần bằng với cấu trúc mà ta quan sát
Ví dụ: Để khảo sát sọ não chúng ta có thể đặt 2 cửa sổ:
1.Cửa sổ nhu mô: Độ rộng cửa sổ 140 HU (từ -200 HU đến +110HU), trung tâm cửa sổ 40HU, giúp ta phân biệt được cấu trúc nội sọ như chất xám, chất trắng, dịch não tuỷ, mạch máu
2.Cửa sổ xương: Độ rộng cửa sổ 1200HU (từ -200 HU đến +1000 HU), trung tâm cửa sồ là +400HU Với cửa sổ này,ta không phân biệt đựoc chất trắng chất xám hay dịch não tuỷ mà chỉ phân biệt được giữa xương, khí, mô mềm
Chúng ta có thể thay đổi cửa sổ hẹp hoặc rộng hơn để phân biệt rõ các khác biệt đậm độ Ví dụ khi khảo sát tụ máu dưới màng cứng lớp mỏng, sát bản sọ, đồng đậm độ vỏ nảo…
1.2.6 Độ dày lát cắt và khoảng cách lát cắt
Độ dày lát cắt: là độ dày của lát cắt khảo sát (tương ứng với độ mở của bộ chuẩn trực/colimator ở đầu đèn)
Trang 16Khoảng cách lát cắt: Là khoảng cách giữa các lát cắt (tương ứng với khoảng di chuyển của bàn bệnh nhân)
Độ dày lát cắt thường được thể hiện trực tiếp ở các thông số trên hình Còn khoảng cách các lát cắt cũng được thể hiện trên hình
Từ hai khái niệm này, kỹ thuật khảo sát CT sẽ có các kiểu cắt như sau: - Cắt liên tục (continuity) khi độ dày lát cắt bằng khoảng cách lát cắt
- Cắt chồng (overlap) khi độ dày lát cắt lớn hơn khoảng cách lát cắt
- Cắt hở (gap) khi độ dày lát cắt nhỏ hơn khoảng cách lát cắt Trong bệnh lý chấn thương sọ não, thường khảo sát bằng các lát cắt liên tục, từ lỗ chẩm lên đến vòm sọ
1.2.7 Hình định vị
Hình định vị (topogram, scout view) [hình 1-1] là hình dùng để xác định các vị trí lát cắt Ở hình định vị có các đường được đánh số và đặt chồng lên vùng cơ thể khảo sát Các số được đánh dấu cúa các đường này sẽ tương ứng với các số của các hình hay lát cắt trình bày trên phim CT
Ta có thể dùng hình định vị để quan sát nhanh các lát cắt nào cần xem trên phim CT Hoặc ngược lại, xác định bất thường trên lát cắt CT nằm ở vị trí nào trên hình định vị
Ví dụ: Ta chỉ muốn quan sát tổn thương ở vùng đỉnh Ta thấy trên hình định vị, ở vùng đỉnh, có các đường số đánh số 10,11,12; như vậy, ta chỉ cần xem các hình 10,11,12 trên phim CT
Trang 17Hình 1-1: Hình định vị (topogram) 1.3 Hệ thống
Trước hết, phải nhận xét rằng phân tích các chấn thương sọ não cấp trong ảnh CT một cách tự động là một vấn đề không hề dễ dàng Hầu hết các nghiên cứu trong lĩnh vực này tập trung phần lớn vào việc phân đoạn ảnh để phục vụ cho bài toán xây dựng mô hình 3-D của não Qua tìm kiếm trên các tạp chí chuyên về khoa học máy tính, em không tìm được một mô hình khả dĩ cho vấn đề này Chính vì vậy, mục tiêu xác định cho đề tài này chỉ nằm ở mức xây dựng thử nghiệm một hệ thống dùng để chẩn đoán những chấn thương dễ phát hiện, với những giới hạn sau:
i Chỉ khảo sát ở những ảnh chụp nằm ở vùng trên lều (do các lát cắt ở vùng dưới lều có thành phần khá phức tạp)
ii Khảo sát tổn thương nội sọ, chủ yếu tập trung vào tổn thương xuất huyết, tụ máu
iii Chọn lựa những hình ảnh đạt chất lượng tốt (không bị xảo ảnh)
Các kết quả được nhắm tới gồm có:
Trang 18i Phát hiện chính xác vùng tổn thương (không sót, không phát hiện lầm)
ii Xác định các thông số định lượng về vùng tổn thương đó iii Xác định vị trí vùng tổn thương trong não (ví dụ như thuộc
vùng đỉnh, chẩm, thái dương…)
iv Kết quả: đưa ra mô tả hình ảnh về vùng tổn thương
Với dữ liệu đầu vào là ảnh CT lưu dưới định dạng DICOM, mô hình hệ thống như sau:
Hình 1-2: Mô hình hệ thống
Giai đoạn tiền xử lý bao gồm các công việc như: đọc thông tin về bệnh nhân, thông tin về các lát cắt được chụp (độ dày, kích thước, vị trí…), lọc ra biên của sọ dùng làm mốc định vị cho các module sau, chuyển dữ liệu ảnh Hounsfield (xem phụ lục) thành ảnh độ xám…
Trang 19Sau khi rút ra được các thông tin cần thiết, ta sẽ tiến hành bước khảo sát, phân tích ảnh Trước tiên, các lát cắt sẽ được cho qua bộ lọc đơn giản Nhiệm vụ của bộ lọc này là tìm ra những vùng có độ đo Hounsfield nằm trong ngưỡng của tổn thương đang được dò tìm (các ngưỡng này được xác định dựa vào tri thức của các chuyên gia, vốn được nêu ra trong tất cả các tài liệu về chẩn đoán hình ảnh CT) Mục tiêu ưu tiên của bước này là không sót, tức là có thể có nhiều vùng bị xác định nhầm Như ta sẽ thấy, do bị ảnh hưởng của hiệu ứng thể tích từng phần, những vùng như vậy là khá nhiều
Nhiệm vụ của module tiếp theo chính là để loại ra những vùng bị phát
hiện nhầm đó Ở đây ta sử dụng thuật toán k-người láng giềng gần nhất để
tạo bộ phân lớp Vấn đề quan trọng nhất để xây dựng bộ phân lớp là phải có dữ liệu học, mà hiện nay chưa có một bộ dữ liệu học nào được tạo ra cho mục đích này (hầu hết các nghiên cứu đều sử dụng dữ liệu tự tạo, với kích thước khá nhỏ hoặc dùng các bộ giả lập để tạo dữ liệu ảo) Hơn nữa, dữ liệu học có sẵn thường thiếu những thông tin cần thiết trong khi lại thừa những thông tin không cần thiết Để giải quyết vấn đề này, ta sẽ sử dụng phương pháp học bằng sự trình diễn: xây dựng một công cụ giao tiếp trực tiếp với chuyên gia để tạo dữ liệu học Kết quả của bộ lọc thứ nhất sẽ được hiển thị, và các chuyên gia (bác sĩ chẩn đoán hình ảnh), bằng tri thức và kinh nghiệm của mình, sẽ quyết định xem vùng nào sẽ bị loại bỏ và vùng nào sẽ được giữ lại Thông tin về các vùng đó sẽ được lưu lại để làm dữ liệu học cho bộ phân lớp Có thể xem đây là một áp dụng của phương pháp học dựa vào sự trình diễn vào lĩnh vực xử lý ảnh
Sau khi loại bỏ các vùng bị nhận dạng nhầm, ta sẽ tiến hành đo các thông tin định tính về vùng đó, sau đó sử dụng hệ luật để định vị vùng tổn thương đó trong não Do vấn đề thời gian nghiên cứu, hệ luật này chỉ mới được xây dựng ở mức độ đơn giản, dựa vào các quan sát trên hình ảnh và tiêu bản não Bên cạnh đó, ý tưởng về một hệ thống xây dựng dữ liệu học chi tiết hơn cho vấn đề định vị cũng được đề xuất
Trang 20Cuối cùng, dựa vào các thông tin trên, hệ thống sẽ tổng hợp, đưa ra mô tả hình ảnh về tổn thương (vị trí, kích thước, biểu hiện hình ảnh…) và kết luận bệnh
1.4 Tiêu chuẩn đánh giá độ chính xác
Ta sẽ dùng một số tiêu chuẩn để đánh giá độ chính xác của giai đoạn phát hiện vùng bệnh, cụ thể hơn là ở bộ phân lớp dùng thuật toán k-người láng giềng gần nhất Đối với bước định vị vùng tổn thương, do không có những độ đo định lượng thích hợp nên ta sẽ chỉ đưa ra một số nhận xét chung Gọi:
TP là số vùng bệnh được phân lớp đúng
FP là số vùng bình thường bị xác định sai là có bệnh TN là số vùng bình thường được phân lớp đúng FN là số vùng bệnh bị xác định sai là không có bệnh Ta xét các độ đo sau:
1.4.1 Độ nhạy (sensitivity)
Độ nhạy cho ta biết xác suất phát hiện đúng vùng bị tổn thương thật sự:
FNTPTPySensitivit
Trang 211.4.4 Tỉ lệ vùng bình thường được phân lớp đúng
Đại lượng này cho ta biết tỉ lệ vùng không bị tổn thương thật sự trong số những vùng đã được bộ phân lớp kNN loại bỏ
%
Trang 22Chương 2 : Cơ sở lý thuyết
2.1 Phân đoạn ảnh
Theo [4, 14], phân đoạn thường là công đoạn đầu tiên được thực hiện trong xử lý ảnh Mục đích của phân đoạn là để dò ra và xác định những vùng nào của ảnh cần được nhóm chung với nhau theo một tiêu chuẩn nào đó Ảnh sau khi phân đoạn cần thỏa mãn yêu cầu sau: các phân đoạn rời nhau, mỗi vùng mang tính đồng nhất (theo tiêu chuẩn phân đoạn) và hợp của bất kì 2 phân đoạn liền kề nhau nào cũng sẽ phá vỡ tính đồng nhất của chúng Mức độ phân đoạn phụ thuộc vào vấn đề đang giải quyết, và thường kết thúc khi đối tượng cần quan tâm đã được cô lập Nói chung, phân đoạn ảnh một cách tự động là một trong những công việc khó khăn nhất trong xử lý ảnh, quyết định đến sự thành công hay thất bại của toàn bộ công việc phân tích ảnh Cách tiếp cận thường thấy nhất là lựa chọn một bộ lọc sao cho có thể làm nổi bật lên các đối tượng cần quan tâm đồng thời loại bỏ những thành phần không liên quan
Cho đến nay, mặc cho rất nhiều thuật toán đã được đề xuất nhưng phân đoạn vẫn còn là một vấn đề thu hút nhiều qua tâm nghiên cứu Nhiều khảo sát trước đây đã cho thấy rằng không có một phương pháp nào có thể hoạt động tốt cho mọi ứng dụng Vì đối tượng được quan tâm ở đây là ảnh CT nên chúng tôi sẽ hạn chế tìm hiểu, trình bày những phương pháp phân đoạn đã được phát triển cho riêng ảnh độ xám Fu và Mui [4] đã phân các thuật toán này thành 3 nhóm:
1 Các phương pháp dựa trên ngưỡng (threshold-based) 2 Các phương pháp dựa trên biên (edge-based)
3 Các phương pháp dựa trên vùng (region-based) thêm vào đó là 2 phương pháp khác cũng thường được sử dụng:
4 Phương pháp thống kê và Bayes
5 Phương pháp dựa trên mạng nơ ron và logic mờ
Trang 232.2.1 Lọc ngưỡng
Lọc ngưỡng là một trong những cách tiếp cận đơn giản, quen thuộc và quan trọng nhất trong việc phân đoạn ảnh Phương pháp này có thể được thực hiện dựa vào những thông tin toàn cục như histogram hoặc thông tin cục bộ như ma trận đồng hiện Nếu một giá trị ngưỡng được áp dụng cho toàn bộ tấm ảnh thì ngưỡng đó được gọi là ngưỡng toàn cục Ngược lại, trong trường hợp giá trị ngưỡng được xác định riêng cho mỗi vùng con, ta có ngưỡng cục bộ (hay ngưỡng thích nghi) Các phương pháp lọc ngưỡng còn có thể được phân thành 2 nhóm: nhóm đơn ngưỡng và nhóm đa ngưỡng Phương pháp đơn ngưỡng có tác dụng phân chia bức ảnh thành 2 vùng: đối tượng cần quan tâm và nền (background) Cũng vì lí do này mà phương pháp đơn ngưỡng có thể được xem là một dạng của phương pháp phân lớp 2 lớp
Cơ sở của phương pháp phân đoạn dựa trên ngưỡng như sau: khi một ảnh độ xám bao gồm nhiều vùng phân biệt, histogram của nó thường sẽ có nhiều đỉnh phân biệt nhau, mỗi đỉnh ứng với một vùng và giữa 2 đỉnh liền kề nhau thường là một “thung lũng” sâu Đáy của thung lũng này có thể được chọn để làm ngưỡng phân biệt giữa 2 vùng kề nó
Xét ảnh có histogram như trong hình 2.1, trong đó ta kí hiệu f(x,y) là độ xám của điểm (x,y) Có thể hình dung (a) là ảnh gồm một đối tượng sáng trên nền tối, và do đó histogram sẽ bao gồm 2 đỉnh rõ rệt Rõ ràng là ta có thể tách đối tượng ra khỏi nền bằng cách chọn một ngưỡng T sao cho chia cách được 2 đỉnh này Khi đó, mọi điểm f(x,y) nhỏ hơn T sẽ được xem là nền, trong khi những điểm có độ xám lớn hơn T sẽ được cho là thuộc về đối tượng Hình 2-1(b) cho ta một trường hợp phức tạp hơn: histogram gồm có 3 đỉnh (chẳng hạn như 2 đối tượng sáng trên một nền màu tối) Tương tự như trên, ta có thể chọn 2 ngưỡng T1 và T2 để phân biệt 2 đối tượng trên và nền Mặc dù vậy, phương pháp đa ngưỡng này kém tin cậy hơn so với trường hợp đơn ngưỡng Lí do là vì ta rất khó xác lập được nhiều ngưỡng sao cho chúng
Trang 24có thể cô lập thật hiệu quả tất cả các vùng cần quan tâm, đặc biệt là khi số lượng các đỉnh trong histogram tương ứng khá nhiều
Hình 2-1: Ảnh độ xám với: (a) 1 ngưỡng phân đoạn và (b) 2 ngưỡng phân đoạn
Về mặt hình thức, phép lọc ngưỡng có thể được xem như là một phép thử của hàm T có dạng:
T = T[x, y, p(x,y), f(x,y)]
trong đó f(x,y) là độ xám của điểm (x,y), p(x,y) tượng trưng cho một đặc điểm cục bộ nào đó của điểm (x,y), ví dụ như trung bình độ xám của 4 điểm xung quanh (x,y) (lân cận 4 của (x,y)) Kết quả của phép lọc ngưỡng là một ảnh g(x,y) thỏa:
trong đó 1 tượng trưng cho một giá trị độ xám nào đó mà ta muốn gán cho đối tượng, và 0 ứng với độ xám gán cho nền
Khi T chỉ phụ thuộc vào f(x,y), ta có ngưỡng toàn cục (hình 2-1 (a)) Nếu T phụ thuộc vào cả f(x,y) và p(x,y), ta có ngưỡng cục bộ Thêm nữa, nếu T phụ thuộc vào tọa độ của x và y, ta có ngưỡng động
Trang 252.2.2 Phương pháp dựa vào biên
Phương pháp phân đoạn dựa vào biên giả định rằng tại các biên vùng sẽ xảy ra sự thay đổi đột ngột của độ xám Nhiều phương pháp đã được đề xuất nhằm tìm ra các biên trong ảnh Một trong những phương pháp quen thuộc nhất là sử dụng toán tử gradient (tương ứng với mặt nạ Sobel như trong hình 2-2), hoặc toán tử Laplace (tương ứng với mặt nạ trong hình 2-3)
Hình 2-2: Mặt nạ Sobel
Hình 2-3: Mặt nạ của toán tử Laplace
Kĩ thuật phân đoạn dựa vào biên không cho được kết quả tốt như mong đợi, lý do là vì thao tác tìm biên thường liên quan đến các phép toán vi phân (như 2 toán tử Gradient và Laplace đã nói ở trên), vốn rất nhạy cảm đối với nhiễu Như vậy, cách tiếp cận dựa trên đường biên không phải sự lựa chọn tốt cho bài toán phân đoạn ảnh
Trang 262.2.3 Phương pháp dựa trên vùng
Phương pháp phân đoạn dựa trên vùng sử dụng các thuật toán growing để thực hiện phân đoạn ảnh Thuật toán region-growing bắt đầu từ một hoặc nhiều điểm hạt giống (seed point) và sau đó lan rộng ra bằng cách kết hợp với các điểm lân cận nó theo một tiêu chuẩn tương tự nào đó Nếu các điểm liền kề nhau là tương tự so với điểm hạt giống, nó sẽ được đánh dấu thuộc về vùng có điểm hạt giống đó Quá trình tiếp diễn cho đến khi mọi điểm ảnh đều được gán vào một vùng nào đó Nhiều thuật toán đã được đề xuất cho cách tiếp cận này, trong đó có thể kể đến phương pháp của Chang
region-và Li [3] Phương pháp của hai ông có tên gọi là phân đoạn thích nghi nhanh
Thuật toán chia ảnh thành nhiều vùng nhỏ vốn có một điểm tương đồng nào đó Các vùng nhỏ này sẽ được kiểm tra theo tiêu chuẩn tương tự Nếu tiêu chuẩn này thỏa, các vùng này sẽ được nối lại để hình thành vùng lớn hơn Quá trình cứ tiếp tục cho đến khi không thể thực hiện được nữa
Rõ ràng trong hướng tiếp cận này, có thể thấy việc chọn lựa điểm hạt giống là rất quan trọng, và có thể được thực hiện thủ công hoặc tự động Một ví dụ cho trường hợp chọn điểm hạt giống một cách tự động là dựa vào các đỉnh của histogram
Xét ví dụ minh họa sau (hình 2-4a: một ảnh kích thước 6*6, trong đó con số trong mỗi ô chỉ độ xám của ô đó Với điểm hạt giống bắt đầu là điểm có tọa độ (3,3) cùng tiêu chí “trị tuyệt đối của độ xám 2 điểm kề nhau không vượt quá 3” Đầu tiên, điểm hạt giống được đưa vào vùng Tiếp theo đó, nó kiểm tra tất cả các điểm lân cận với điều kiện đã nêu, và đưa những điểm thỏa vào vùng (hình 2-4b) Những điểm vừa được bổ sung sẽ trở thành điểm hạt giống mới, và quá trình tiếp tục cho đến khi không còn có thêm điểm nào được thêm vào nữa (hình 2-4c)
Trang 27(a)
(b)
Trang 28Hình 2-4: Ví dụ về thuật toán Region Growing
(a) ảnh ban đầu, (b) sau khi qua bước lan vùng thứ 1, (c) kết quả cuối cùng 2.2.4 Phương pháp thống kê và Bayes
Phương pháp thống kê và Bayes sử dụng “không gian đặc trưng” để phân đoạn ảnh Phương pháp này chuyển thông tin điểm ảnh thành không gian đặc trưng và tiến hành phân đoạn bằng cách sử dụng các tính chất xác suất của chúng Phương pháp xác suất thu hút nhiều quan tâm của các nhà nghiên cứu vì chúng cho phép thực hiện các phân tích toán học cho bài toán phân đoạn thay cho những phương pháp sử dụng heuristic đã trình bày phía trên
Khuyết điểm lớn nhất của cách tiếp cận dựa trên thống kê và Bayes là độ phức tạp tính toán của chúng khá lớn Một khó khăn khác nữa là chúng đòi hỏi một mô hình ảnh ngẫu nhiên (stochastic image model) tốt, vốn rất khó đạt được
2.2.5 Phương pháp mạng nơ ron và logic mờ
Mọi hệ thống thị giác đều cần có tốc độ nhanh, mạnh mẽ, ít nhạy cảm với nhiễu cũng như những sai sót khác ở một mức độ hợp lí Đó chính là
Trang 29mục tiêu chính của phương pháp phân đoạn dùng mạng nơ ron và lý thuyết tập mờ Nhiều nghiên cứu đã dùng mạng nơ ron vào công việc phân đoạn ảnh, chẳng hạn trong [4] Ông đã sử dụng mạng nơ ron 3 lớp, trong đó số nút ở lớp nhập được xác định theo số đặc trưng được rút ra cho mỗi pixel, số nút xuất ứng với số phân vùng của ảnh Mạng nơ ron nhiều lớp cũng đã được dùng để phân đoạn ảnh nhiễu Các trọng số được cập nhật sao cho chúng có
thể làm giảm được độ mờ của hệ thống Như vậy, cách tiếp cận này nhằm
mục đích kết hợp các ưu điểm của tập mờ (suy luận dựa trên tính không chính xác/không hoàn chỉnh của tri thức) và ưu điểm của mạng nơ ron
2.3 Làm mảnh biên
Làm mảnh biên là một bước quan trọng và cần thiết trong nhiều bài toán Chẳng hạn, trong vấn đề mà ta đang xem xét, có một yêu cầu đặt ra là tìm ra đường biên (và chỉ cần đường biên mà thôi) của sọ để làm mốc và tạo thuận lợi cho việc định vị những vùng khác trong não Nói chung, các thuật toán làm mảnh sẽ liên tục xóa những điểm ở biên trong vùng đang quan tâm theo 3 ràng buộc sau đây:
i Không xóa những điểm cuối
ii Không làm mất tính liên tục của vùng iii Không làm vùng đang xét bị rỗng quá mức
Sau đây là một thuật toán quen thuộc dùng để làm mảnh Không mất tính tổng quát, có thể giả sử rằng các điểm thuộc đối tượng đang xét có giá
trị bằng 1 và các điểm nền có độ xám bằng 0 Ta gọi một điểm là điểm biên
(contour point) nếu điểm đó có giá trị 1 và một trong 8 điểm lân cận của nó có giá trị bằng 0 (hình 2-4) Quá trình thực hiện gồm 2 bước, bước 1 như sau:
(a) 2≤N(p1)≤6
(b) S(p1) = 1 (c) p2 * p4 * p6 = 0 (d) p4 * p6 * p8 = 0
Trang 30trong đó N(p1) là tổng số điểm lân cận khác 0 của p1: N(p1) = p2 + p3 + … + p8 + p9
Hình 2-5 :Lân cận 8 của điểm p1
Và S(p1) là số lần chuyển từ 0 sang 1 trong chuỗi (theo đúng thứ tự) p2, p3, …, p7, p8, p2
Ở bước 2, ta giữ nguyên 2 điều kiện (a) và (b), nhưng thay (c) và (d) bằng (c’) và (d’) sau:
(c’) p2 * p4 * p8 = 0 (d’) p2 * p6 * p8 = 0
Bước 1 được áp dụng cho tất cả mọi điểm biên trong vùng đang xét Nếu có ít nhất 1 trong 4 điều kiện (a) – (d) bị vi phạm, ta giữ nguyên giá trị điểm ảnh đó Ngược lại, ta đánh dấu điểm ảnh đó và sau này nó sẽ bị xóa Lưu ý rằng ta chỉ xóa điểm ảnh khi tất cả các điểm biên đã được duyệt qua, nhờ vậy dữ liệu không bị thay đổi trong quá trình xử lý Sau khi thực hiện xong bước 1, ta xóa tất cả các điểm đã đánh dấu và thực hiện tiếp bước 2 giống như đã thực hiện cho bước 1 Như vậy, quá trình thực hiện là một vòng lặp liên tục gồm các giai đoạn sau:
i Áp dụng bước 1 để đánh dấu điểm cần xóa ii Xóa các điểm đã đánh dấu
iii Áp dụng bước 2 để đánh dấu điểm iv Xóa các điểm đã được đánh dấu
Thuật toán dừng khi không còn điểm nào được xóa nữa
Điều kiện (a) bị vi phạm khi điểm biên p1 có 1 hoặc 7 điểm lân cận có
Trang 31do đó không thể xóa được Tương tự, trong trường hợp p1 có 7 điểm lân cận, nếu ta xóa nó sẽ gây ra lỗ hổng trong vùng đang xét Điều kiện (b) không thỏa khi điểm đang xét nằm trên vùng biên có độ dày bằng 1, và do đó nếu xóa nó sẽ làm mất tính liên tục của đối tượng
2.4 Biểu diễn đường biên
Cách lưu trữ ảnh thô thường thấy nhất là lưu trữ theo dạng ma trận Đây là lưu trữ chứa đựng được nhiều thông tin nhất (dù thông tin đó ở dạng tiềm ẩn hoặc tường minh) Tuy vậy, trong trường hợp cần biểu diễn đường biên của một đối tượng, phương pháp trên sẽ có những bất tiện như tốn nhiều bộ nhớ và không thuận lợi cho xử lý Trong phần dưới đây, ta sẽ tìm hiểu 2 phương pháp lưu trữ đường biên khá hiệu quả và có sử dụng trong chương trình
2.4.1 Biểu diễn bằng chain -code
Cách biểu diễn này dựa trên lân cận 4 và lân cận 8 của một điểm Tùy theo vị trí tương đối của một điểm so với điểm hiện tại mà hướng của nó sẽ được mã hóa bằng 1 con số tương ứng như trong hình 2-5 Để xây dựng chain code của một đường biên, trước hết ta cần chọn 1 điểm khởi đầu, ví dụ như điểm ở góc trái trên của ảnh Sau đó, ta duyệt lần lượt qua tất cả các điểm theo chiều ngược chiều kim đồng hồ, gán mã cho nó theo một trong 2 kiểu trong hình 2-5 Lấy ví dụ như trong hình 2-6, chain code tương ứng của nó là 5-6-5-5-6-7-0-0-0-1-7-1-2-1-3-3-4-4-3
Trang 32Hình 2-6: Mã tương ứng với hướng của (a) chain code 4 hướng và (b) chain code 8 hướng
Hình 2-7: Ví dụ về chain code của đường biên, ở đây ta dùng chain code lân cận 8
Chain code tỏ ra rất hữu dụng khi dùng để xác định hướng của đường biên tại một điểm, hoặc dùng để tính chu vi của vùng (xem 2.5.1) Tuy vậy, nếu xét trong vấn đề mà chúng ta đang bàn, cách biểu diễn này không phù hợp Lí do là vì với cách biểu diễn này, thật khó có thể rút ra được các thông tin cần thiết cho quá trình xử lý, chẳng hạn như khoảng cách từ một điểm đến đường biên
Trang 332.4.2 Biểu diễn bằng dòng quét (scanline)
Nguyên tắc tắc rất đơn giản: xem mỗi đối tượng là một tập hợp các dòng, và thay vì lưu tất cả các điểm trong mỗi dòng, ta chỉ cần lưu chỉ số của dòng đó, cùng với điểm bắt đầu và kết thúc tương ứng trong dòng
Ví dụ: Xét ảnh trong hình 2-7, biểu diễn đường biên của nó theo dòng quét của nó là:
1 5,6 2 4,7 3 3,8 4 3,9
5 4,7 7,9 6 4,6 8,8 7 5,5
Hình 2-8: Vùng và biểu diễn dòng quét của nó
Trang 34Nhận thấy rằng cách biểu diễn này đã khắc phục những bất lợi của phương pháp chain code, và đem đến cho ta những thuận lợi trong các phép xử lý sau (vốn được sử dụng thường xuyên trong bài):
i Tính diện tích vùng
ii Xác định một điểm là nằm trong hay ngoài vùng iii Dễ dàng duyệt qua toàn bộ các điểm trong vùng
2.5 Các đặc trưng mô tả vùng (đường kính, chu vi, diện tích…)
Trong phần này ta tìm hiểu về một số đặc trưng thường được dùng để mô tả vùng Các đặc trưng này rất hữu dụng cho việc phân lớp vùng và cung cấp nhiều thông tin quan trọng để so sánh và phân lớp vùng trong ảnh nhị phân Hình 2-8 mô tả một vùng ảnh nhị phân điển hình
Hình 2-9: Một số đặc trưng dùng để mô tả vùng 2.5.1 Diện tích và chu vi
Diện tích và chu vi là 2 trong số những đặc trưng được sử dụng nhiều nhất cho những bài toán phân lớp trong ảnh nhị phân Diện tích của một vùng tương ứng với tổng số điểm ảnh thuộc vùng đó Tương tự, chu vi của vùng nhị phân bằng tổng số điểm ảnh nằm trên đường biên của vùng Đối
Trang 35trên biên, đếm tất cả các điểm dọc theo đường biên cho đến khi trở về điểm ban đầu Tuy vậy, vấn đề sẽ phát sinh nếu đường biên được tạo xác định bằng lân cận 8 Khi đó, khoảng cách giữa 2 điểm kề nhau không phải lúc nào cũng bằng 1 nữa, mà sẽ là 2 Khi đó, ta có thể sử dụng cách mô tả đường biên bằng chain code Gọi Ne và No lần lượt là tổng số số chẵn và lẻ có trong chuỗi (theo phần 2.4.1, số chẵn ứng với trường hợp 2 điểm liên tiếp cùng cột hoặc cùng dòng, còn số lẻ ứng với trường hợp 2 điểm nằm theo đường chéo), ta ước lượng chu vi theo công thức sau:
Chu vi = Ne + No 2
2.5.2 Khoảng cách xuyên tâm (radial distance)
Khoảng cách xuyên tâm là khoảng cách Euclide giữa tâm khối lượng của vùng và tâm của hợp tất cả các vùng trong ảnh Cách đơn giản nhất để ước lượng tâm vùng là dùng giá trị trung bình của tọa độ các điểm của vùng đó Đối với ảnh nhị phân, ta có thể tính tâm khối lượng bằng cách dùng moment Moment (i,j) của vùng R được định nghĩa như sau:
Khoảng cách xuyên tâm có thể được tính bằng cách sử dụng khoảng cách Euclide de giữa tâm khối lượng của hợp tất cả các vùng và của vùng đang xét theo công thức sau:
),
Trang 36Bên cạnh đó, ta có thể sử dụng khoảng cách xuyên tâm chuẩn hóa
Rurd ( , )
, trong đó Ru là bán kính của vùng tổng hợp Vì μ là diện tích của 00vùng, suy ra Ru có thể được xấp xỉ theo công thức
2.5.3 Chiều dài trục chính và phụ
Chiều dài trục chính và phụ là những đặc trưng rất quan trọng và có thể được ước lượng bằng cách sử dụng các giá trị riêng Trước hết, một vùng sẽ được biểu diễn như là một tập các điểm {(x1, y1), (x2, y2), (x3, y3), , (xn, yn)} và giả sử rằng các điểm này được biểu diễn bởi một vector ngẫu nhiên S = [x, y] Gọi C là ma trận hiệp phương sai của vector đó:
x )()(
với x và y là tâm của vùng đang tính Vector riêng của ma trận hiệp phương sai cho ta hướng của 2 trục chính và phụ Chiều dài của các trục bằng với căn bậc hai của các giá trị riêng của ma trận hiệp phương sai
Trang 37Hình 2-10: Trục chính và trục phụ hình ellipse 2 vector e1 và e2 là 2 vector riêng của ma trận hiệp phương sai 2.6 Cây quyết định
2.6.1 Giới thiệu về cây quyết định
Cây quyết định là một cây đồ thị trong đó mỗi nút bên trong đại diện cho một điểm quyết định và mỗi nút lá tương ứng với một nhãn (lớp) sẽ được gán cho mỗi bộ dữ liệu nhập Mỗi nút của cây là một phép thử (so sánh) của một thuộc tính nào đó, và nhánh trổ xuống từ nút đó đại diện cho những giá trị có thể có của thuộc tính này Để xây dựng được cây quyết định, ta cần có một tập dữ liệu được phân lớp trước (dữ liệu học) Việc xây dựng các cây quyết định chính là quá trình phát hiện ra các luật phân chia tập dữ liệu đã cho thành các lớp đã được định nghĩa trước
Việc sinh cây quyết định bao gồm hai giai đoạn: i Xây dựng cây:
• Tại thời điểm khởi đầu, tất cả các ca ( case ) dữ liệu học đều nằm tại gốc
• Các ca dữ liệu được phân chia đệ qui trên cơ sở các thuộc tính được chọn
Trang 38- Trường hợp 1: T chứa một hoặc nhiều ca, tất cả đều thuộc về một lớp đơn C1: Cây quyết định T là một lá định dạng lớp C1
- Trường hợp 2: T không chứa ca nào: Cây quyết định cho T là một lá, nhưng lớp được gắn với lá này phải được xác định từ các thuộc tính không thuộc T
- Trường hợp 3: T chứa các ca thuộc về một hỗn hợp các lớp: Một phép thử được lựa chọn dựa vào một thuộc tính đơn có một hoặc nhiều kết quả ( giá trị ) loại trừ lẫn nhau {O1,O2,….On} T được phân chia thành các tập con T1, T2, ….Tn trong đó T1 chứa tất cả các ca trong T có kết quả O1 của phép thử đã chọn Cây quyết định cho T gồm một đỉnh quyết định định danh cho phép thử, và một nhánh cho mỗi kết quả có thể có Cơ chế xây dựng cây này được áp dụng đệ qui cho từng tập con của các ca học
Bảng 2-1 là một tập dữ liệu học của một ví dụ về thi đấu tennis với năm
thuộc tính và hai lớp ( thuộc tính Ngày được sử dụng làm định danh cho các
ca ) Hình 2-10 chỉ ra cách làm việc của thuật toán Hunt, một phép thử dựa trên thuộc tính đơn được chọn để khai triển đỉnh hiện hành
Trang 39Ngày Quang cảnh Nhiệt độ
Độ ẩm ( %) Gió to Kết quả
N3 Nắng 30 85 Không Không thi đấu N4 Nắng 22 95 Không Không thi đấu
N7 Nhiều mây 28 75 Không Thi đấu
N9 Nhiều mây 28 75 Không Thi đấu
Bảng 2-1: Dữ liệu minh họa cho cây quyết định
Hình 2-11: Minh họa phương pháp của Hunt
Trang 402.6.2 Thuật toán ID3
Thuật toán ID3 ( Quinlan86 ) là một trong những thuật toán xây dựng cây quyết định sử dụng information gain để lựa chọn thuộc tính phân lớp đối tượng Nó xây dựng cây theo cách từ trên xuống, bắt đầu từ một tập các đối tượng và đặc tả của các thuộc tính Tại mỗi đỉnh của cây, một thuộc tính có information gain lớn nhất sẽ được chọn để phân chia tập đối tượng Quá trình này được thực hiện một cách đệ qui cho đến khi một tập đối tượng tại một cây con đã cho trở nên thuần nhất, tức là nó chỉ chứa các đối tượng thuộc về cùng một lớp Lớp này sẽ trở thành một lá của cây
Việc lựa chọn một thuộc tính nào cho phép thử là rất quan trọng Nếu chọn không thích hợp, chúng ta có thể có một cây rất phức tạp Ví dụ, nếu ta
chọn thuộc tính Nhiệt độ làm gốc cây thì cây quyết định sẽ có hình dạng như trong hình 2-11 Nhưng nếu chọn thuộc tính Quang cảnh làm gốc thì ta lại
có một cây quyết định tất đơn giản như đã chọn trong hình 2-10 Vậy nên chọn thuộc tính nào là tốt nhất?
Thông thường việc chọn thuộc tính đều dựa vào một độ đo gọi là
Entropy Gains hay còn gọi là Information Gains của các thuộc tính
Entropy của một thuộc tính được tính toán từ các thuộc tính phân lớp Đối với thuộc tính rời rạc, cần phải có các thông tin phân lớp của từng giá trị thuộc tính