- Răng mọc ngầm đƣợc đánh số 2 - Sâu răng đƣợc đánh số 3
- Thiếu răng đƣợc đánh số 4
- Tiêu xương quanh răng đƣợc đánh số 5
Trong ví dụ đã nêu, giá trị Label là 1 tức là ảnh này thuộc nhóm bệnh gãy răng. Cơ sở dữ liệu càng lớn thì mức độ chính xác khi suy diễn càng cao. Hiện tại trong cơ sở dữ liệu mới có một số lƣợng hạn chế dữ liệu và cần phải liên tục cập nhật. Cơ sở dữ liệu sẽ đƣợc cập nhật bằng việc lấy ý kiến chuyên gia về bệnh trong ảnh nha khoa, sau đó ảnh cũng sẽ đƣợc thực hiện các bƣớc trích chọn đặc trƣng, cuối cùng các đặc trƣng và giá trị số đại diện cho bệnh đƣợc cập nhật vào cơ sở dữ liệu. Chƣơng 4 đã đề cập đến chức năng cập nhật cho cơ sở dữ liệu trong phần mềm hỗ trợ chuẩn đoán bệnh nha khoa.
2.4. Xây dựng cơ sở luật
Để xây dựng luật, ta có một số phƣơng pháp cơ bản. Thông thƣờng, cách đơn giản nhất là sử dụng phƣơng pháp chia đoạn, với tâm cụm nằm giữa đoạn đó, giá trị của thuộc tính gần tâm cụm nào thì sẽ mang nhãn đó. Phƣơng pháp này tỏ ra hiệu quả đối với những bộ dữ liệu có giá trị đƣợc rải đều trong giới hạn min-max của mỗi thuộc tính. Trong nghiên cứu này, với bộ dữ liệu không đƣợc trải đều, phƣơng pháp phân cụm FCM tỏ ra hiệu quả hơn.
Đê hình thành luật, ta sử dụng bộ dữ liệu training. Các thuộc tính chính là 5 đặc trƣng Entropy – Edge – Intensity (EEI), LBP, RGB, Gradient, và Patch lần lƣợt đƣợc phân cụm bởi thuật toán FCM. Các thuộc tính trên đƣợc chia thành 3 cụm với các biến ngôn ngữ sau: “High”, “Medium”, “Low” (C=3_. Biến đầu ra gồm có 5 bệnh đƣợc gán 5 nhẵn là “Cracked”, “Hidden”, “Cavities”, “Missing”, và “Periodontitis” (C=5) với 5 bệnh tƣơng ứng là “Gãy răng”, “Răng mọc ngầm”, “Sâu răng”, “Thiếu răng”, “Tiêu xƣơng quanh răng”. Sau khi sử dụng thuật toán FCM, ta thu đƣợc một tập luật.
- 42 -
Độ mạnh của luật đƣợc tính dựa trên hàm Gauss, sau khi đƣa giá trị của từng thuộc tính trong 1 bản ghi vào hàm Gauss, ta tính đƣợc các giá trị độ thuộc, giá trị nhỏ nhất chính là độ mạnh của luật. Trong số các luật trùng lặp và mâu thuẫn, chỉ có luật có độ mạnh nhất đƣợc giữ lại, những luật yếu hơn sẽ bị loại bỏ. Những luật yếu có giá trị nhỏ hơn 0.5 cũng bị loại bỏ để tối ƣu tập luật. Kết quả cuối cùng đƣợc thể hiện trong bảng 2.1. Nhƣ vậy, 5 đặc trƣng đã đƣợc mờ hóa thành 3 biến ngôn ngữ. Các biến ngôn ngữ này “High”, “Medium”, “Low” đƣợc đánh số lần lƣợt từ 1 đến 3. Riêng nhãn sẽ đƣợc đánh số từ 1 đến 5 tƣơng ứng với các bệnh “Cracked”, “Hidden”, “Cavities”, “Missing”, và “Periodontitis”. Nhãn từ 1 đến 5 đƣợc sử dụng làm tham số giải mờ cho quá trình suy diễn.
Hàm Gauss đƣợc biễu diễn bởi công thức sau.
(2.18)
Hàm trên phụ thuộc vào 2 tham số σ và c với c là tâm cụm đƣợc tính bởi FCM trƣớc đó còn σ đƣợc tính bởi công thức.
(2.19)
Với d là khoảng cách Euclidean giữa hai tâm cụm của một đặc trƣng đã đƣợc chia cụm. Hình 8 là ví dụ về hàm Gauss đối với các đặc trƣng.
- 43 -
Hình 2.3 - Hàm Gauss áp dụng với các đặc trƣng
Theo bảng 2.1, ta có thể diễn giải luật đầu tiên nhƣ sau:
“IF EEI is Medium AND LBP is High AND RGB is Medium AND Gradient is HighAND Patch is LowTHEN Label is Cracked”.
Với các luật còn lại ta có thể dựa vào bảng 2.1 để diễn giải tƣơng tự.
Rule No. EEI LBP RGB Gradient Patch Label
1 Medium High Medium Medium Low Cracked 2 Medium Medium Medium High Low Cracked
- 44 -
4 Medium Low Medium High Low Cracked 5 High Medium High Medium Low Hidden
6 Low Low Low High Medium Hidden
7 Low High Low Medium Medium Hidden 8 Medium Medium Medium High Medium Cavities 9 Medium Low Medium High Medium Cavities 10 High Low High High Medium Missing 11 High Medium High High Medium Missing 12 Medium High Medium Medium Medium Missing 13 Medium Medium Medium Low Medium Missing 14 Low Medium Low High High Periodontitis 15 Low High Low Medium High Periodontitis 16 High Low High High High Periodontitis 17 Medium Low Medium High High Periodontitis 18 Low Medium Medium High High Periodontitis 19 Medium Medium Medium High High Periodontitis 20 High Medium High High High Periodontitis 21 Medium High Medium Medium High Periodontitis
Bảng 2.1 – Kết quả sinh luật
2.5. Mô hình suy diễn mờ
Trƣớc khi thực hiện quá trình suy diễn, ta chia bộ dữ liệu thành 2 phần là training và testing. Dữ liệu training đƣợc sử dụng cho quá trình xây dựng mô hình suy diễn (trong đó có quá trình hình thành luật), còn bộ testing đƣợc sử dụng để kiểm tra tính hiệu quả của mô hình suy diễn đó. Cũng trong phần trƣớc, ta đã đề cập
- 45 -
đến 3 mô hình suy diễn. Trong nghiên cứu này, mô hình suy diễn Sugeno đƣợc áp dụng. Để xây dựng mô hình suy diễn Sugeno một cách tối ƣu, ta kết hợp với mạng ANFIS để tối ƣu tham số khử mờ và tham số cho hàm thuộc. Quá trình tối ƣu tham số (đƣợc đề cập ở bƣớc 4 trong hình 2.1 trƣớc đó) đƣợc mô tả cụ thể theo hình 2.4.
Hình 2.4 – Mô hình tối ƣu tham số
Tại bƣớc 1, ta đƣa dữ liệu training vào hệ suy diễn. Từng bản ghi của dữ liệu sẽ đƣợc so sánh với mỗi luật. Với từng thuộc tính trong mỗi bản ghi (trong trƣờng hợp này là giá trị các đặc trƣng nha khoa) đƣợc đƣa vào hàm thuộc của luật, ta tính đƣợc độ thuộc của từng thuộc tính. Từ độ thuộc này, ta lấy giá trị nhỏ nhất làm độ mạnh của mỗi luật trong từng bản ghi. Kết hợp độ mạnh với tham số hậu nghiệm, ta tính đƣợc đầu ra của một bản ghi. Các bản ghi còn lại cũng sẽ đƣợc tính tƣơng tự.
Và tại bƣớc 2, ta thu đƣợc kết quả cuối cùng là tập hợp đầu ra của tất cả các bản ghi. Bƣớc 3, ta so sánh kết quả suy diễn với nhãn tại dữ liệu training. Kết quả ở bƣớc suy diễn trên đƣợc hệ thống đánh giá sai số bằng cách so sánh với nhãn của tập training. Dữ liệu training Dữ liệu training Kết quả (nhãn) suy diễn Kết quả (nhãn) suy diễn 1 1 Tập luật
Tập luật Hàm thuộcHàm thuộc
Mờ hóa Mờ hóa Giải mờ Giải mờ 2 2 3 3 4 4
- 46 -
Sau đó tại bƣớc 4, hệ thống sẽ quay lại để thay đổi tham số khử mờ và tiếp tục thực hiện lại bƣớc 1 với việc đƣa tập training vào suy diễn. Sau khi qua bƣớc 2, ta tiếp tục so sánh ở bƣớc 3 và lại tiếp tục thực hiện bƣớc 4 là thay đổi tham số. Quá trình so sánh ở bƣớc 3 đƣợc thực hiện đến khi kết quả đầu ra không thể tối ƣu hơn đƣợc nữa thì dừng.
Hình 2.5 – Kết quả sau khi tối ƣu tham số khử mờ
Trong hình 2.5, trục tung mô tả chỉ số MSE và trục hoành thể hiện số lần lặp để tối ƣu tham số mờ. Kết quả chỉ rõ, sau 100 lần lặp, tham số khử mờ ngày càng đƣợc tối ƣu thì chỉ số MSE ngày càng giảm (chỉ số MSE càng nhỏ càng tốt, chi tiết về chỉ số MSE sẽ đƣợc đề cập rõ hơn ở mục 3.2.1).
Tiếp tục áp dụng quá trình học để tối ƣu tham số hàm thuộc (trong trƣờng hợp này là hàm Gaussian), các bƣớc thực hiện giống nhƣ đã làm với tham số khử mờ, các bƣớc học để thay đổi tham số đƣợc lặp lại liên tục, quá trình thay đổi tham số hàm thuộc đƣợc tiếp tục cho đến khi kết quả đầu ra đạt tối ƣu nhất.
- 47 -
Hình 2.6 – Kết quả sau khi tối ƣu các tham số hàm thuộc
Trong hình 2.6, trục tung tiếp tục mô tả chỉ số MSE và trục hoành thể hiện số lần lặp để tối ƣu tham số mờ. Theo hình trên, sau khi tham số tối ƣu các tham số của hàm thuộc Gaussian thì chỉ số MSE giảm hẳn. Nhƣ vậy kết quả cuối cùng đạt đƣợc sẽ là tối ƣu nhất. Trong chƣơng tiếp theo sẽ nêu rõ kết quả thực nghiệm.
Nhƣ vậy, qua hai quá trình học sử dụng mạng ANFIS để tối ƣu tham số khử mờ và tối ƣu tham số hàm thuộc, ta đã có đƣợc những tham số tốt nhất cho mô hình suy diễn Sugeno.
Sau khi có đƣợc mô hình tốt nhất, ta thực hiện việc kiểm tra tính hiệu quả của mô hình suy diễn với bộ testing. Thực hiện tƣơng tự các bƣớc giống nhƣ đã làm với bộ training nhƣng lần này ta không cần sử dụng mạng ANFIS để tối ƣu tham số nữa. Quá trình suy diễn Sugeno sẽ nhanh chóng đƣa ra kết quả cuối cùng.
- 48 -
2.6. Tổng kết chƣơng
Chƣơng 2 đã mô tả khá chi tiết về hƣớng xây dựng nên một hệ tƣ vấn trong chuẩn đoán bệnh nha khoa từ kho dữ liệu ảnh bắt đầu từ bƣớc tiền xử lý hệ thống ảnh cho đến bƣớc suy diễn để ra đƣợc kết quả cuối cùng. Trong chƣơng này, tác giả cũng đã đề cập đến việc hình thành cơ sở dữ liệu từ việc trích chọn đặc trƣng ảnh, một bƣớc vô cùng quan trọng và ảnh hƣởng lớn đến quá trình suy diễn. Đồng thời bƣớc sinh luật và kết quả sinh luật cũng đã đƣợc trình bày.
Trong chƣơng sau, tác giả sẽ cụ thể hóa lý thuyết bằng thực nghiệm và xây dựng một ứng dụng chuẩn đoán bệnh dựa trên ảnh nha khoa.
- 49 -
CHƢƠNG 3 - KẾT QUẢ THỰC NGHIỆM VÀ MÔ PHỎNG
3.1. Mô tả dữ liệu thực nghiệm
Bộ dữ liệu gồm có 56 ảnh nha khoa X-Quang đƣợc lấy từ trƣờng Đại học Y Hà Nội trong đó chủ yếu là ảnh panorama. Hình 3.1 là một vài ảnh trong bộ 56 ảnh.
- 50 -
Bộ ảnh bao gồm 5 nhóm bệnh. Nhóm sâu răng, gãy chân răng, thiếu răng mỗi loại có 10 ảnh và nhóm răng mọc ngầm với nhóm tiêu xƣơng quanh răng mỗi loại có 13 ảnh. Các ảnh về bản chất là ảnh xám, tuy nhiên đƣợc lƣu trữ dƣới định dạng ảnh màu BMP. Do yêu cầu về trích chọn đặc trƣng, các ảnh sẽ đƣợc chuyển sang định dạng JPEG để xử lý.
Bộ ảnh đƣợc chia làm 2 nhóm là training và testing. Nhóm training đƣợc sử dụng để sinh luật và tạo bộ suy diễn mờ. Nhóm testing dùng để kiểm tra kết quả suy diễn.
3.2. Tiêu chí đánh giá
3.2.1. Mean Squared Error (MSE)
Giá trị MSE đƣợc tính theo công thức nhƣ sau [8]:
(3.1)
Với là tập hợp các giá trị kết quả của quá trình suy diễn, là tập hợp các giá trị nhãn đầu ra của bộ testing. MSE là giá trị bình phƣơng trung bình của sai số. Giá trị MSE càng nhỏ thì kết quả càng chính xác.
3.2.2. Mean Absolute Error (MAE)
Giá trị MAE đo độ sai số của kết quả dự đoán với kết quả thực tế. Công thức của MAE nhƣ sau [5]:
(3.2)
Với là giá trị dự đoán và là giá trị thực. Giống với MSE, giá trị MAE càng nhỏ thì kết quả càng chính xác.
3.2.3. Accuracy
Giá trị Accuracy [5] đƣợc tính một cách đơn giản, với việc tính tỉ lệ dự đoán đúng so với tổng số lần dự đoán. Công thức tính Accuracy nhƣ sau.
- 51 -
(3.3) Trong đó:
- a là kết quả dự đoán true positive, - b là kết quả dự đoán false positive, - c là kết quả dự đoán false negative, - d là kết quả dự đoán true negative,
Giá trị Accuracy càng cao thì kết quả dự đoán càng chính xác. 3.3. Kết quả thực nghiệm
Quá trình thực nghiệm đƣợc triển khai trên Matlab 2014 với máy Laptop VAIO Core i3. Sau khi sử dụng bộ training để có đƣợc kết quả luật và bộ suy diễn, ta sẽ đƣa dữ liệu không có nhãn vào để hệ thống tự suy diễn. Thực nghiệm đƣợc tiến hành trên chính bộ training và bộ testing.
Để tăng độ tin cậy của quá trình thực nghiệm, hai phƣơng pháp chia bộ dữ liệu đƣợc sử dụng là Hold-out và 4-fold, kết quả cuối cùng đƣợc tính bằng trung bình các kết quả cho các lần thử. Phƣơng pháp Hold-out chia bộ training và testing theo tỷ lệ 2/3 và 1/3 trong khi 4-fold, ta sẽ chia thành 4 trƣờng hợp với các dữ liệu đƣợc lựa chọn khác nhau, với mỗi trƣờng hợp thì bộ training và testing sẽ đƣợc chia theo tỉ lệ 3/4 và 1/4. Kết quả đƣợc thể hiện ở 2 bảng 3.1 và 3.2.
Bảng 3.1 thể hiện kết quả suy diễn đối với mỗi nhóm dữ liệu theo từng độ đo. Với phƣơng pháp Hold-out, tỉ lệ chính xác (Accuracy) của hệ thống suy diễn cho bộ Training là 94%, độ chính xác này cũng là lớn nhất so với các trƣờng hợp khi chia 4-fold. Tuy nhiên độ sai số MAE với MSE thì chƣa phải là nhỏ nhất, nhƣng về cơ bản là tốt vì chỉ kém so với 1 trong 4 trƣờng hợp ở cách chia 4-fold. Trong khi đó các kết quả suy diễn của 4-fold cho bộ Training đều không bằng Hold-out nhƣng cũng khá tốt với tỉ lệ thƣờng rơi vào khoảng 90%. Và sai số cũng không phải lớn so với Hold-out, nhƣ vậy hiệu suất suy diễn cũng đạt mức tốt.
- 52 -
Cũng tại bảng 3.1, khi sử dụng bộ Testing để suy diễn thì kết quả của bộ Hold-out lại cho ra độ chính xác kém nhất với chỉ 68%. Tuy nhiên sai số thì lại không phải quá nhiều nếu so MAE và MSE với các trƣờng hợp 4-fold. Trong các trƣờng hợp chia dữ liệu kiểu 4-fold, có trƣờng hợp độ chính xác (Accuracy) lớn lên đến 78% nhƣng MSE lại hơn 1, sai số lớn nhất trong số các trƣờng hợp thử. Nhƣ vậy ở những trƣờng hợp suy diễn sai thì suy diễn ra kết quả sai khá lớn. Tuy vậy, về tổng thể trƣờng hợp bộ Testing chia theo 4-fold cho ra kết quả chính xác hơn.
Cuối cùng, khi lấy kết quả trung bình (Mean Result) thì kết quả thu đƣợc với bộ Training đạt độ chính xác là 90% và bộ Testing đƣợc 75%. Với bộ dữ liệu làm cơ sở tri thức cho máy suy diễn chƣa thật sự lớn, kết quả nhƣ vậy cũng là khá tốt.
Training Testing
Accuracy MAE MSE Accuracy MAE MSE
Hold-out 0.9189 0.1351 0.2973 0.6842 0.3684 0.4737 4-fold 0.9048 0.1429 0.2857 0.7143 0.3571 0.5000 0.9048 0.0952 0.0952 0.7857 0.4286 1.2857 0.9048 0.1429 0.2857 0.7857 0.2857 0.4286 0.8810 0.1667 0.3095 0.7857 0.2143 0.2143 Mean result 0.9029 0.1366 0.2547 0.7511 0.3308 0.5805
Bảng 3.1 - Kết quả của hệ thống suy diễn
FIS FKNN
Dataset Training Testing Training Testing
MSE 0.2547 0.5804 - 2.8947
MAE 0.1366 0.3308 - 1.3157
Accuracy 0.9029 0.7511 - 0.5263
- 53 -
Trong bảng 3.2, ta so sánh hệ thống suy diễn (FIS) với FKNN. Trong thuật toán FKNN, ta cũng chia dữ liệu thành hai phần. Phần chiếm 2/3 dữ liệu ta cũng đặt tên là training và 1/3 còn lại đặt là testing. Với FKNN ta sẽ sử dụng bộ testing và tính toán ra kết quả dựa vào bộ training. Kết quả cuối cùng cũng cho thấy FIS cho kết quả tốt hơn hẳn FKNN. Đối với thuật toán FKNN, ta không đo với bộ training, do đặc thù của thuật toán FKNN là so sánh láng giềng gần nhất, ta không so sánh bộ kết quả đầu ra từ bộ trainning với chính nó. Độ chính xác của FKNN với bộ testing chỉ xấp xỉ đạt 52% và kém xa so với 75% khi dùng phƣơng pháp FIS. Với 2 độ đo MAE và MSE, tất cả giá trị của FIS đều tốt hơn FKNN (với MAE và MSE, các giá trị càng nhỏ càng tốt). Tác giả cũng thử thay đổi dữ liệu ngẫu nhiên giữa training và testing cho FKNN nhƣng vẫn giữ nguyên tỉ lệ, sau đó thử lại với FKNN thì kết quả