CHƯƠNG II: THIẾT KẾ MẠNG NEURON HỖ TRỢ CHẨN ĐOÁN BỆNH RỐI LOẠN NHỊP TIM SỬ DỤNG CÔNG CỤ NEURON NETWORK TOOLBOX
2.2. Xây dựng cơ sở dữ liệu đáp ứng nhu cầu thiết kế mạng neuron
2.2.1. Chọn cơ sở dữ liệu thích hợp
Để đào tạo mạng neuron hỗ trợ chẩn đoán bệnh rối loạn nhịp tim, cần có dữ liệu
mô tả tình trạng lâm sàng của bệnh nhân đúng cách. Dữ liệu thông tin không cần thiết hoặc không chính xác của bệnh nhân không nên sử dụng đối với chẩn đoán. Quá trình lựa chọn dữ liệu đặc trưng phù hợp là nhiệm vụ của bác sĩ. Thông thường những dữ liệu này là thông tin cơ bản về tình trạng sức khỏe của bệnh nhân, kết quả của phân tích sinh hóa, kết quả phân tích tín hiệu điện sinh học, triệu chứng và các thông tin khác giúp xác định chẩn đoán chính xác. Tất cả các những dữ liệu này của bệnh nhân đƣợc thu thập và đánh giá đại diện cho mô hình đầu vào của mạng thần kinh. Khả năng khái quát hóa mỗi quan hệ giữa các triệu chứng và chẩn đoán phụ thuộc nhiều vào các mẫu đầu vào đƣợc sử dụng trong quá trình đào tạo. Do đó cơ sở dữ liệu cần chứa đủ số lƣợng các mẫu đáng tin cậy mô tả chẩn đoán bệnh lý. Điều này sẽ cho phép trong quá trình đào tạo của mạng thần kinh ƣớc tính sự phụ thuộc ẩn trong tập dữ liệu
và sử dụng kiến thức này để khái quát hóa cho các trường hợp chẩn đoán của bệnh nhân, ngay cả đối với những trường hợp không có trong dữ liệu đào tạo. Cấu trúc cơ
sở dữ liệu có dạng bảng hoặc ma trận chứa thông tin về sức khỏe tình trạng bệnh nhân
và kết quả chẩn đoán của họ.
Chính vì thế để chọn dữ liệu thích hợp, chúng ta sử dụng cơ sở dữ liệu của bệnh rối loạn nhịp tim Arrhythmia_dataset gồm 2 ma trận ArrhythmiaInputs và ArrhythmiaTargets lấy từ kho cơ sở dữ liệu trực tuyến của Đại học Wisconsin, do các tác giả Altay Guvenir [6], Burak Acar và Haldun Muderrisoglu thuộc trường đại học Bilkent ở Thổ Nhĩ Kỳ tạo ra vào năm 1997.
“Tại sao bộ dữ liệu Arrhythmia_dataset lại được sử dụng?”, dưới đây là một số
lý do chính:
- Đây là một bộ dữ liệu phản ánh đầy đủ nhất những yếu tố đặc trƣng – triệu chứng của bệnh.
- Hiện nay ở Việt Nam chƣa có những bộ dữ liệu phục vụ chẩn đoán nhƣ vậy
Chính vì những lý do trên bộ dữ liệu Arrhythmia_dataset sẽ đƣợc sử dụng trong
đồ án này.
15
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Cơ sở dữ liệu này chứa các bản ghi điện tâm đồ thu đƣợc từ 452 bệnh nhân và
279thông số đặc trƣng (thuộc tính đầu vào) đƣợc liên kết với 16 loại bệnh lý tim
mạch chẩn đoán (đầu ra). Trước khi dùng để luyện mạng neuron , cơ sở dữ liệu này
cần đƣợc xử lý sơ bộ. Do một số bệnh lý chỉ xuất hiện trong một vài mẫu bản ghi nên
chúng đƣợc loại trừ giảm số lƣợng bệnh chẩn đoán còn lại là 10 (bảng 2.1)
Mã lớp
01 Bình thường
02 Ischemic changes (Bệnh động mạch vành)
03 Old Anterior Myocardial Infarction(Nhồi máu
cơ tim cấp thành trước)
04 Old Inferior Myocardial Infarction (Nhồi máu cơ
tim cấp thành dưới)
05 Sinus tachycardy (Nhịp nhanh xoang)
06 Sinus bradycardy (Nhịp chậm xoang)
07 Left bundle branch block ( Block tim nhanh trái)
08 Right bundle branch block (Block tim nhanh
phải)
09 Atrial Fibrillation or Flutter (Rung nhĩ hoặc
Cuồng nhĩ)
10 Các loại bệnh khác
Bảng 2.1: Các loại bệnh tim mạch được chẩn đoán
Các thuộc tính (TT) bao gồm 5 nhóm:
Nhóm 1 từ TT1 –> TT4: Các đặc trƣng chung cơ thể (Tuổi, Giới tính, Chiều cao,
Cân nặng)
Nhóm 2 từ TT5 –> TT15: Các đặc trƣng chung về hoạt động của tim ( Độ dài
phức hợp QRS, Khoảng cách giữa các sóng P và Q, Khoảng cách giữa khởi điểm sóng
Q và kết thúc song T, Độ dài sóng T,…….,Nhịp đập tim )
Các nhóm còn lại đƣợc trình bày trong (Bảng 2.2)
chi
16
GVHD: PGS.TS Huỳnh Lương Nghĩa
V2 V3 V4 V5 V6
Bảng 2.2: Bảng tóm tắt các đạo trình 2.2.2. Chuẩn hóa cơ sơ dữ liệu
Trước khi dùng để luyện mạng neuron, ngoài việc cần được xử lý sơ bộ, cơ sở
dữ liệu phải đƣợc chuẩn hóa sao cho các giá trị của nó nằm trong đoạn [0,1] và những thuộc tính không xác định thì bị loại bỏ. Nhƣ vậy sau khi xử lý, cơ sở dữ liệu dùng để luyện mạng gồm 2 ma trận: ma trận ArrhythmiaInputs có kích thước là 262x433 ứng với 262 thuộc tính và 433 mẫu-bản ghi, và ma trận ArrhythmiaTargets với kích thước 10x433 ứng với 10 loại bệnh đƣợc chẩn đoán và 433 mẫu-bản ghi.
Quá trình xử lý dữ liệu bao gồm các bước sau đây:
- Ma trận cơ sở dữ liệu (CSDL) gốc của bệnh rối loạn nhịp tim có kích thước CSDL= 452x280; đƣợc đƣa về ma trận chuyển vị là DL = 280x452 để phù với mô hình ma trận luyện mạng có số thuộc tính là hàng và số trường hợp bệnh nhân là cột của ma trận:
DL=CSDL’;
- Một số bệnh chỉ có một vài mẫu nên đƣợc loại giảm số mẫu bệnh nhân đƣợc chẩn đoán xuống 433. Suy ra ta có ma trận dữ liệu mới có dạng là B = 280x433:
B=DL;
B(:,[a,b,c,..])=[]
Trong đó :a,b c là số các trường hợp bị loại bỏ.
Ma trận dữ liệu B có 280 hàng thuộc tính những trong đó từ hàng 1 - 279 là thuộc tính đầu vào, hàng 280 là thuộc tính đầu ra đặc trƣng cho bệnh lý đƣợc chẩn đoán .
- Lấy ma trận đầu vào ArrhythmiaInputs từ ma trận B là ma trận C=279x433:
C = abs(B([1:279],:));
- Sau đó chuẩn hóa ma trận đầu vào (ArrhythmiaInputs) bằng cách chia các giá trị trong mỗi hàng của ma trận đầu vào với giá trị lớn nhất của hàng đó ta thu đƣợc ma trận ArrhythmiaInputs mới là IP=279x433:
17
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
IP =[C(1,:)./max(C(1,:));
C(2,:)./max(C(2,:));
C(3,:)./max(C(3,:));
C(4,:)./max(C(4,:));
C(5,:)./max(C(5,:));
. . . C( 275,:)./max( C( 275,:));
C(276,:)./max( C(276,:));
C(277,:)./max( C(277,:));
C(278,:)./max( C(278,:));
C(279,:)./max( C(279,:));];
- Những thuộc tính không xác định bị loại bỏ nên cuối cùng ma trận
ArrhythmiaInputs thu đƣợc có dạng là IP1= 262x433
IP1 =IP
IP1([20,68,70,84,132,133,140,142,144,146,152,157,158,165,205,265,275],:)=[];
- Lấy ma trận đầu ra (ArrhythmiaTargets) từ ma trận B là ma trận
OP=1x433:
OP = B(280,:);
- Sau đó chuẩn hóa ma trận ArrhythmiaTargetst theo mã các loại bệnh lý chẩn đoán; cuối cùng ma trận ArrhythmiaTargetst thu đƣợc có dạng là: OP1=10x433.