ĐẠI HỌC QUỐC GIA HÀ NỘITRƯỜNG ĐẠI HỌC CÔNG NGHỆBÙI XUÂN TRỌNG MỘT CÁCH TIẾP CẬN TRONG KHAI PHÁ DỮ LIỆU ĐỂ CHẨN ĐOÁN BỆNH TIM CHO BỆNH NHÂN NGOẠI TRÚ Ngành: Công Nghệ Thông TinChuyên ngàn
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘITRƯỜNG ĐẠI HỌC CÔNG NGHỆ
BÙI XUÂN TRỌNG
MỘT CÁCH TIẾP CẬN TRONG KHAI PHÁ DỮ LIỆU
ĐỂ CHẨN ĐOÁN BỆNH TIM CHO BỆNH NHÂN NGOẠI TRÚ
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
HÀ NỘI, NĂM 2015
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘITRƯỜNG ĐẠI HỌC CÔNG NGHỆ
BÙI XUÂN TRỌNG
MỘT CÁCH TIẾP CẬN TRONG KHAI PHÁ DỮ LIỆU
ĐỂ CHẨN ĐOÁN BỆNH TIM CHO BỆNH NHÂN NGOẠI TRÚ
Ngành: Công Nghệ Thông TinChuyên ngành: Hệ Thống Thông Tin
Mã số: 60480104
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TIẾN SĨ VŨ THỊ HỒNG NHẠN
HÀ NỘI, NĂM 2015
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này là công trình nghiên cứu của tôi, dưới sự hướng dẫncủa Tiến sĩ Vũ Thị Hồng Nhạn Luận văn này không sao chép từ của ai hay từ bất kỳluận văn nào khác Nếu sai tôi xin hoàn toàn chịu trách nhiệm trước nhà trường và phápluật
BÙI XUÂN TRỌNG
Trang 4LỜI CẢM ƠN
Tôi xin bày tỏ lòng biết ơn sâu sắc tới TS Vũ Thị Hồng Nhạn, cô đãhướng dẫn, chỉ dạy tận tình để tôi có thể hoàn thành luận văn này Tôicũng xin chân thành cảm ơn các thầy, cô giáo khoa Công nghệ thông tin -Trường Đại học công nghệ - Đại học Quốc gia Hà nội đã truyền thụ kiếnthức cho tôi trong suốt quá trình học tập
Tôi cũng muốn bày tỏ lòng biết ơn của mình tới gia đình, người thân vàđồng nghiệp đã động viên, khích lệ, giúp đỡ, tạo mọi điều kiện để tôihoàn thành khóa học và luận văn này
Trang 5TÓM TẮT
Bệnh tim mạch là một trong những nguyên nhân gây tử vong cao nhấthiện nay Với sự phát triển của Công nghệ, người ta có thể sử dụng cácthiết bị không dây, thiết bị cảm ứng tích hợp trên cơ người để thu thậpliên tục dữ liệu về tình trạng sức khỏe của bệnh nhân nội trú cũng nhưngoại trú Trong luận văn này, chúng tôi nghiên cứu một cách tiếp cậntrong khai phá dữ liệu để chẩn đoán bệnh tim cho bệnh nhân ngoại trú.Quá trình chẩn đoán được thực hiện qua hai bước Trong bước thứ nhất,bệnh nhân được chẩn đoán về nguy cơ mắc bệnh dựa vào luật kết hợp.Luật kết hợp được tìm ra dựa vào dữ liệu lâm sàng Dữ liệu lâm sàng củabệnh nhân được tiền xử lý và sau đó được khai phá để tìm luật kết hợpdựa trên thuật toán Apriori Sau bước này, dựa trên kết quả chẩn đoán,bác sĩ sẽ quyết định những bệnh nhân nào có nguy cơ bị bệnh tim mạchcao sẽ tiếp tục được chẩn đoán thêm ở bước sau Ở bước chẩn đoán thứhai này sẽ áp dụng thuật toán GNG trên tập dữ liệu về sự thay đổi nhịptim Dữ liệu điện tâm đồ biểu diễn sự thay đổi nhịp tim của bệnh nhânđược thu trong các hoạt động hằng ngày Tín hiệu điện tâm đồ được tiền
xử lý dựa trên kỹ thuật Poincaré để chuyển sang định dạng của véc tơ đầuvào Thuật toán GNG được áp dụng để khai phá dữ liệu đã được tiền xử
lý Thuật toán này đáp ứng được yêu cầu của việc học liên tục và GNG
có khả năng huấn luyện với dữ liệu mới nhưng không quên những mẫu
đã được huấn luyện từ trước Một số thực nghiệm được thực hiện để đánhgiá độ chính xác của phương pháp chẩn đoán Từ kết quả thu được, ta cóthể thấy rằng, phương pháp này có thể áp dụng trong hệ một hệ thống
y tế để hỗ trợ việc chẩn đoán sớm những trường hợp tim mạch bất bìnhthường, phòng tránh các hậu quả nghiêm trọng, đặc biệt có thể theo dõibệnh nhân ngoại trú và ứng cứu kịp thời trong trường hợp cần thiết
Trang 6Mục lục
1.1 Động cơ nghiên cứu 1
1.2 Đóng góp của luận văn 2
2 Cơ sở lý thuyết 5 2.1 Giới thiệu về bệnh tim mạch 5
2.2 Các hệ thống chuẩn đoán bệnh Tim 7
2.2.1 Các Hệ thống chẩn đoán dựa vào chỉ số nguy cơ mắc bệnh tim 7 2.2.2 Hệ thống hỗ trợ chuẩn đoán bệnh Tim mạch sử dụng kỹ thuật khai phá dữ liệu 9
2.3 Một số thuật toán khai phá dữ liệu 10
2.3.1 K-means 10
2.3.2 Cây quyết định 12
2.3.3 Thuật toán Mạng Perceptron nhiều lớp 14
2.3.3.1 Mạng Perceptron một lớp 14
2.3.3.2 Mạng Perceptron lan truyền thẳng nhiều lớp 16
2.3.4 SOM 19
3 Quá trình chẩn đoán bệnh tim dựa trên kỹ thuật khai phá dữ liệu 24 3.1 Tổng quan quá trình chẩn đoán 24
3.2 Chẩn đoán bệnh Tim mạch dựa trên các thông tin lâm sàng 25
3.2.1 Tiền xử lý Dữ liệu 26
Trang 73.2.2 Các khái niệm và định nghĩa 26
3.2.3 Thuật toán Apriori 30
3.3 Chẩn đoán bệnh tim dựa vào sự thay đổi nhịp tim 31
3.3.1 Tiền xử lý dữ liệu 32
3.3.2 Thuật toán GNG 35
3.3.2.1 Nguyên lý cơ bản và mô hình mạng 35
3.3.2.2 Thuật toán GNG 36
4 Thực nghiệm và Đánh giá 44 4.1 Môi trường thực nghiệm và dữ liệu 44
4.1.1 Môi trường thực nghiệm cho bước chẩn đoán dựa vào các thông tin lâm sàng 44
4.1.2 Môi trường thực nghiệm cho bước chẩn đoán dựa vào sự thay đổi nhịp tim 45
4.2 Kết quả thực nghiệm 49
4.2.1 Kết quả và đánh giá hiệu quả của thuật toán Apriori 49
4.2.1.1 Đánh giá sự thay đổi số lượng các tập mục phổ biến theo sự thay đổi của độ hỗ trợ minsup 49
4.2.1.2 Đánh giá số lượng các luật sinh ra theo sự thay đổi của độ hỗ trợ minsup 50
4.2.1.3 Đánh giá số lượng các luật tạo ra khi độ tin cậy minconf thay đổi 51
4.2.2 Kết quả và đánh giá hiệu quả của thuật toán GNG 53
4.2.2.1 Đánh giá lỗi phân lớp trên tập dữ liệu D(O) 53
4.2.2.2 Đánh giá số lượng nút và cạnh của thuật toán GNG trên tập dữ liệu D(O) 54
4.2.2.3 Đánh giá lỗi bình phương trung bình MSE trên D(O) 55 4.2.2.4 So sánh GNG với SOM 56
Trang 8Danh sách hình vẽ
2.1 Bệnh Tim mạch vành 5
2.2 Đặc điểm của các hệ thống ước tính nguy cơ bệnh Tim mạch 9
2.3 Cụm dữ liệu khai phá bởi K-mean 11
2.4 Bảng dữ liệu 12
2.5 Cây quyết định 12
2.6 Mạng Perceptron một lớp 15
2.7 Lan truyền tín hiệu trong quá trình huấn luyện theo phương pháp lan truyền ngược sai số 18
2.8 Mô hình SOM 19
2.9 Ma trận trọng số 20
2.10 Các lân cận 20
2.11 Nút khớp nhất 22
2.12 Hàm lân cận cơ bản 23
3.1 Tổng quan hệ thống quá trình chẩn đoán bệnh tim 25
3.2 Chẩn đoán bệnh tim dựa vào thông tin lâm sàng của bệnh nhân 26
3.3 Kỹ thuật Poincaré 34
3.4 Đồ thị RR 34
4.1 Tập dữ liệu đầu vào của thuật toán Apriori 45
4.2 Sự thay đổi itemset theo minsup 50
4.3 Số lượng luật theo minsup 51
4.4 Số lượng luật theo minconf 52
4.5 Tập luật sinh ra với minsup=0.1 và minconf=0.97 52
4.6 Giá trị lỗi phân lớp của GNG trên tập dữ liệu D(O) 53
4.7 Số nút và cạnh của GNG trên tập dữ liệu với O=0% 54
4.8 Số nút và cạnh của GNG trên tập dữ liệu với O=1% 55
Trang 94.9 Số nút và cạnh của GNG trên tập dữ liệu với O=2% 55
4.10 MSE và Mức độ giao giữa các lớp 56
4.11 GNG và SOM trên tập dữ liệu D(0%) 56
4.12 GNG và SOM tập dữ liệu D(1%) 57
4.13 GNG và SOM tập dữ liệu D(2%) 57
Trang 10Danh sách bảng
3.1 Bảng thuộc tính của mẫu dữ liệu cho bệnh tim 27
3.2 Quy tắc chuyển đổi dữ liệu 43
4.1 Tổng hợp các tham số sử dụng để sinh ra tín hiệu điện tâm đồ 46
4.2 Tham số sử dụng để sinh ra tập dữ liệu (BT-Bình thường, BBT- Bất bình thường) 47
4.3 Tổng hợp các tham số sử dụng trong GNG 48
4.4 Sự thay đổi số lượng tập mục phổ biến theo độ hỗ trợ 50
4.5 Sự thay đổi số lượng luật sinh ra theo độ hỗ trợ 51
4.6 Sự thay đổi số lượng luật sinh ra theo độ tin cây 51
Trang 11Chương 1
Giới thiệu
Theo tổ chức y tế thế giới WHO, bệnh tim mạch đang là nguyên nhân tử vong hàngđầu ở người trên thế giới và chiếm nhiều nhất ở các nước đang phát triển [37] Mỗinăm, người chết do bệnh tim và đột quỵ nhiều hơn cả ung thư, lao, sốt rét và HIVcộng lại Còn tại Việt Nam, thống kê của Hội tim mạch cho thấy, cứ 3 người ViệtNam trưởng thành thì có một người có nguy cơ mắc bệnh tim mạch, chủ yếu là bệnhtim mạch vành [36] Bệnh tim mạch có thể chẩn đoán dựa trên các nguy cơ gây bệnh
và triệu chứng Nhưng, một số trường hợp người bệnh không có những biểu hiện triệuchứng hay dấu hiệu có thể nhận biết Đây gọi là bệnh tim mạch vành yên lặng Nhữngtrường hợp này, người bệnh chỉ có thể phát hiện được triệu chứng khi đã ở giai đoạnnguy hiểm, tức là có dấu hiệu của hiện tượng suy tim, hay đột quỵ Người bệnh có thể
bị chết nếu không được cấp cứu kịp thời Tuy nhiên, khó có thể xác định được bệnhnhân có bị mắc bệnh hay không khi chỉ thông qua một xét nghiệm Do đó, chúng tacần có một hệ thống hay phương pháp chẩn đoán và phát hiện sớm nguy cơ mắc bệnhtim mạch có độ tin cậy cao
Hiện nay, với sự phát triển của công nghệ thì các thiết bị di động, cảm ứng vàmạng không dây được tích hợp vào các hệ thống y tế ngày càng nhiều do lợi ích củachúng mang lại như giảm chi phí chăm sóc sức khỏe và tăng khả năng truy cập, thuthập thông tin cho bệnh nhân, cũng như các chuyên gia y tế Một trong những ứngdụng là các hệ thống cảm ứng sinh học tiết kiệm năng lượng có thể mang trên người.Trong bệnh viện, hệ thống này có thể sử dụng để theo dõi các bệnh nhân trong cáctrường hợp đăc biệt Bên ngoài bệnh viện, hệ thống này có thể theo dõi và thu thập
Trang 12liên tục dữ liệu về tình trạng sức khỏe của bệnh nhân Dữ liệu này bao gồm sự thayđổi nhịp tim của bệnh nhân trong các hoạt động hàng ngày và có tính thời gian thực.Những dữ liệu này sẽ được tiền xử lý và khai phá để trích rút ra những thông tin hữuích về tình trạng sức khỏe của bệnh nhân, cũng như hỗ trợ việc ra quyết định chẩnđoán cho bác sĩ Tuy nhiên, hầu hết các kỹ thuật khai phá dữ liệu truyền thống chủyếu áp dụng cho các tập dữ liệu cố định, có sẵn và trong một môi trường tĩnh, không
có tính thời gian thực Như vậy, chúng ta cần một thuật toán khai phá dữ liệu liên tục
mà có thể tích hợp liên tục các thông tin, dữ liệu mới vào bộ nhớ trong khi vẫn duy trìnhững dữ liệu đã được học từ trước Một số thuật toán khai phá dữ liệu liên tục đượcnghiên cứu nhiều như: SOM, GNG,
Trong luận văn này, chúng tôi tập trung nghiên cứu và phân tích một cách tiếp cậntrong khai phá dữ liệu để chẩn đoán bệnh tim mạch cho bệnh nhân ngoại trú Phươngpháp chẩn đoán được thực hiện qua hai bước Trong bước đầu tiên, dữ liệu lâm sàngcủa bệnh nhân như tuổi, giới tính, huyết áp, có bị tiểu đường hay không, lượng choles-terol trong máu, có hút thuốc hay không được thu thập Tập dữ liệu thu được thườngchứa rất nhiều các thuộc tính được thu thập dưới dạng số nhưng lại không đầy đủ, cónhiều lỗi và kiểu giá trị đặc biệt Mặt khác, trong bước chẩn đoán này, thuật toánApriori được áp dụng để khai phá luật kết hợp cho bệnh tim mạch Thuật toán Aprioriđược đề xuất cho dữ liệu rời rạc nên không thể áp dụng cho dữ liệu liên tục, dạng số
Vì vậy, tiền xử lý dữ liệu trở nên rất quan trọng trong quá trình khai phá tri thức từ cơ
sở dữ liệu Ở giai đoạn tiền xử lý dữ liệu, chúng ta thực hiện chuyển đổi dữ liệu dạng
số sang dữ liệu rời rạc biểu diễn bởi các chỉ mục (items)
Dựa trên tập luật kết hợp mà được khai phá trong quá trình đầu tiên, bác sĩ sẽquyết định những bệnh nhân nào có nguy cơ mắc bệnh cao Những bệnh nhân này
sẽ được chuyển qua bước chẩn đoán kế tiếp Ở bước thứ hai này bệnh nhân sẽ đượcchẩn đoán dựa trên tín hiệu điện tâm đồ mà biểu diễn sự thay đổi nhịp tim của bệnhnhân khi họ thực hiện các hoạt động hàng ngày bằng cách sử dụng một mô hình mạngnơ-ron nhân tạo Sự thay đổi nhịp tim là một thuộc tính quan trọng để chẩn đoán sớmcác trường hợp đột tử ở người mắc bệnh tim mạch [24] Đầu tiên, tín hiệu điện tâm
đồ được biến đổi thành định dạng véc tơ sử dụng kỹ thuật Poincaré Mục đích chínhcủa bước tiền xử lý dữ liệu là chuyển định dạng thông tin biểu diễn trong không gian
Trang 13hai chiều bởi phương pháp mã hóa Poincaré về định dạng tương thích với véc tơ đầuvào của mô hình mạng nơ-ron Bên cạnh đó, với cách xử lý và biểu diễn dữ liệu nàykích cỡ của thông tin phần nào được nén lại để phù hợp hơn cho việc xử lý của mạngnơ-ron Chính vì vậy thời gian huấn luyện mô hình sẽ trở nên nhanh hơn và làm giảmtính phức tạp của mô hình mạng Thuật toán GNG được áp dụng để nhận biết mẫuthay đổi nhịp tim Đây là một thuật toán khai phá dữ liệu liên tục và có thể học thêmđược những tri thức mới nhưng vẫn duy trì những tri thức cũ đã học GNG bao gồm
ba lớp Lớp đầu vào nhận tín hiệu đầu vào đã qua tiền xử lý Lớp ẩn là một đồ thị, cónhiệm vụ hiệu chỉnh và chuyển dịch không tuyến tính tín hiệu đầu vào Cuối cùng làlớp đầu ra có nhiệm vụ phân không gian đầu ra vào các vùng quyết định Mô hình banđầu được khởi tạo với hai nút tại hai vị trí ngẫu nhiên Khi một mẫu được đưa vào,các nút trong tầng ẩn sẽ cạnh tranh để xác định nút nào khớp nhất với mẫu đầu vào.Sau một số bước huấn luyện, tầng ẩn được cập nhật bằng cách chèn thêm nút mới với
hy vọng sẽ cải thiện hiệu quả của mô hình Các nút với giá trị lỗi cao chính là điềukiện để quyết định việc chèn thêm nút mới Bên cạnh việc chèn thêm nút mới, các nút
mà không có liên kết với nút nào khác sẽ bị xóa đi bởi vì sau một số bước huấn luyệngiá trị lỗi của chúng có rất ít khả năng trở thành giá trị lỗi lớn nhất Điều này dẫn đếnviệc chèn nút mới gần chúng sẽ rất khó xảy ra Quá trình huấn luyện lặp lại cho đếnkhi mô hình thỏa mãn điều kiện dừng như độ hội tụ hay số lượng nút trong mô hình
Sự hội tụ của thuật toán được đánh giá bằng giá trị lỗi bình phương trung bình.Tập dữ liệu sử dụng trong quá trình chẩn đoán đầu tiên được thu thập từ thực tế.Một mẫu dữ liệu thu được gồm 14 thuộc tính như tuổi, giới tính, huyết áp tâm thu,lượng cholesterol trong máu, lượng đường trong máu, các dạng đau ngực, kết quả điệntâm đồ Các thực nghiệm thực hiên trên bộ dữ liệu này có thể đánh giá độ chínhxác của thuật toán và xem xét mức độ ảnh hưởng của tham số đầu vào như minsup,minconf đối với hiệu quả của thuật toán Tập dữ liệu cho bước thứ hai của quá trìnhchẩn đoán được thu thập từ tập các hoạt động, tần suất thở, trạng thái tim mạch Kếtquả thực nghiệm chứng tỏ rằng độ chính xác của thuật toán GNG khá cao với số nút
và số cạnh thấp khi so sánh với mô hình mạng nơ-ron SOM
Luận văn này gồm có 5 chương chính:
• Chương 1: Giới thiệu tổng quan động cơ nghiên cứu và đóng góp của luận văn.
• Chương 2: Giới thiệu bệnh tim mạch và một số hệ thống để chẩn đoán bệnh
Trang 14tim mạch Trong chương này, chúng tôi cũng giới thiệu qua một số kỹ thuật khaiphá dữ liệu như K-means, Cây quyết định, Mạng Perception nhiều lớp và SOM.
• Chương 3: Giới thiệu tổng quan quá trình chẩn đoán Trong đó, chúng tôi trình
bày chi tiết hai bước của quá trình chẩn đoán bệnh tim mạch dựa trên thuật toánApriori và GNG
• Chương 4: Đánh giá thuật toán Apriori trong khai phá luật kết hợp trên tập dữ
liệu về bệnh tim trong bước đầu tiên Sau đó, chúng tôi đánh giá hiệu quả củathuật toán GNG và so sánh với thuật toán SOM trên tập dữ liệu tín hiệu điệntâm đồ biểu diễn sự thay đổi nhịp tim
• Chương 5: Kết luận
Trang 15Chương 2
Cơ sở lý thuyết
Trái tim của chúng ta hoạt động như một cái bơm để bơm máu đưa máu đi tới khắpcác mô cơ quan trong cơ thể Để đảm bảo được chức năng bơm máu một cách đều đặnkhoảng 70-80 lần/phút, từ ngày này sang ngày khác, bản thân trái tim cũng được nuôidưỡng bởi một hệ thống mạch máu riêng Hệ thống mạch máu này gọi là hệ mạchvành Danh từ mạch vành để chỉ tình trạng bệnh lý làm cho lòng động mạch vành bịhẹp lại hoặc tắc nghẽn Khi lòng động mạch vành bị hẹp đến một mức độ nào đó thìdòng máu đến nuôi tim sẽ không đủ và dẫn đến tình trạng thiếu máu cơ tim Bệnhmạch vành còn có nhiều tên gọi khác như: Thiểu năng vành, suy động mạch vành,thiếu máu cơ tim hay bệnh tim thiếu máu cục bộ [36]
Hình 2.1: Bệnh Tim mạch vành
Trang 16tỷ lệ mắc bệnh tim cao hơn cá thể khác Những yếu tố nguy cơ của bệnh tim là: tănghuyết áp, rối loạn lipid máu, hút thuốc lá, béo phì, đái tháo đường, cuộc sống côngviệc có nhiều căng thẳng, ít vận động, gia đình có người bị bệnh tim sớm, nam giới,cao tuổi
Triệu chứng
• Đau ngực: triệu chứng của chứng thiếu máu cơ tim thường hay gặp nhất là đaungực Đau khởi phát khi gắng sức, ở ngay sau xương ức, đau nhói, thắt chặt vàlan ra vai trái, cánh tay trái, bàn tay trái Đau giảm đi khi nghỉ ngơi hoặc dùngthuốc dãn mạch Nếu cơn đau xuất hiện lúc nghỉ ngơi hoặc cơn đau quá trầmtrọng, cơn đau quá 30 phút thì phải nghĩ đến là bệnh nhân bị nhồi máu cơ timcấp
• Một số người già, những người bị bệnh tiểu đường, bệnh phổi tắc nghẽn mãntính khi mắc bệnh mạch vành có thể không có triệu chứng đau thắt ngực nhưtrên mà thay vào đó là mệt hoặc khó thở khi gắng sức Những trường hợp đógọi là thiếu máu cơ tim yên lặng
Những thăm dò để chẩn đoán bệnh Tim mạch
• Điện tâm đồ lúc nghỉ: thiếu máu cơ tim làm thay đổi điện học của cơ tim vàđiện tâm đồ phát hiện ra các thay đổi đó Tuy nhiên, chỉ khoảng 50% bệnh nhân
bị bệnh tim có thay đổi tín hiệu điện tâm đồ
• Siêu âm tim: Tình trạng thiếu máu cơ tim làm ảnh hưởng đến sự co bóp của tim.Những vùng giảm động do thiếu máu cơ tim gây ra sẽ được phát hiện qua siêu
âm tim
• Điện tâm đồ và Siêu âm tim lúc gắng sức: Nếu lòng động mạch vành chỉ hẹpnhẹ thì triệu chứng thiếu máu cơ tim chỉ xảy ra khi gắng sức
Trang 17• Xạ hình tưới máu cơ tim: Dùng chất đồng vị phóng xạ bơm vào mạch máu.Những vùng nào của cơ tim bị thiếu máu nuôi sẽ giảm hoặc không bắt đượcđồng vị phóng xạ Sau đó, dùng máy Scan để phát hiện các vùng đó.
• Chụp động mạch vành chọn lọc: là tiêu chuẩn vàng để chẩn đoán bệnh timmạch Thông qua thăm dò này, bác sĩ sẽ biết được tình trạng tim mạch của bạnnhư thế nào
2.2.1 Các Hệ thống chẩn đoán dựa vào chỉ số nguy cơ mắc bệnh
tim
Nghiên cứu Framingham là một nghiên cứu được tiến hành trên một bộ phân dân cư
của thị trấn Framingham (hạt Middlesex, bang Massachusettes, Hoa kỳ) Dân số banđầu gồm 5029 người đàn ông và phụ nữ khỏe mạnh độ tuổi từ 30 đến 62, được theodõi từ năm 1948 Đến năm 1971, các nhà nghiên cứu tuyển thêm một thế hệ thứ hai làcon của những người tham gia ban đầu cùng với vợ (hoặc chồng) của những người connày Cỡ mẫu nghiên cứu gồm 3969 người đàn ông và 4522 phụ nữ Trong quá trìnhtheo dõi, các nhà nghiên cứu ghi nhận các biến cố tim mạch nặng xảy ra cho nhữngngười tham gia Cùng với một số nghiên cứu dịch tễ khác, nghiên cứu Framinghamcho phép xác định các yếu tố nguy cơ chính của bệnh tim mạch do xơ vữa động mạch:hút thuốc lá, tăng huyết áp, tăng cholesterol, đái tháo đường, HDL thấp
Từ các dữ liệu thu thập được, các nhà nghiên cứu dùng một mô hình toán học đểước tính xác suất bị các biến cố tim mạch trong 10 năm tới của một người dựa vàogiới tính, tuổi, cholesterol toàn phần, HDL, huyết áp tâm thu, tình trạng hút thuốc lá,
có đái tháo đường hay không, có điều trị tăng huyết áp hay không Bước kế tiếp, cácnhà nghiên cứu qui đổi từng khoảng trị số của các biến liên tục (tuổi, huyết áp )thành các điểm Khi cộng tất cả các điểm lại ta có điểm tổng cộng cho từng người vàứng với mỗi điểm tổng cộng là một xác suất ( bị các biến cố tim mạch trong 10 nămtới) tương ứng Hệ thống Framingham xây dựng hai bảng điểm riêng biệt cho nam vànữ
Trong hệ thống Framingham phiên bản năm 1998, biến cố được dự báo là sự xuấthiện của bệnh tim ( đau thắt ngực, nhồi máu cơ tim được nhận biết hoặc không, suyđộng mạch vành và chết do bệnh động mạch vành) Các biến được đưa vào bao gồm
Trang 18giới tính, tuổi, cholesterol toàn phần, HDL, huyết áp tâm thu, có đái tháo đường haykhông, có hút thuốc lá hay không Dạng trình bày là cac bảng điểm dành riêng chonam và nữ Trong hệ thống Framingham phiên bản 2008, biến cố được dự báo ngoàibệnh động mạch vành còn có bệnh mạch máu não( đột quỵ dạng thiếu máu cục bộ,đột quỵ dạng xuất huyết, cơn thiếu máu não thoáng qua), bệnh động mạch ngoại vi(khập khiễng cách hồi) và suy tim.
Hệ thống chẩn đoán nguy cơ mắc bệnh tim mạch cho các nước Châu âu (SCORE) được xây dựng từ số liệu của 12 nghiên cứu đoàn hệ ở các nước Châu âu
(khoảng 2,1 triệu người theo dõi), hầu hết được thực hiện trong dân số chung Các biếnđược đưa vào hệ thống SCORE gồm: giới tính, tuổi, cholesterol toàn phần, Huyết áptâm thu, có hút thuốc lá hay không( người đái tháo đường được xếp vào nhóm có nguy
cơ cao hoặc rất cao, không cần phải ước tính nguy cơ theo SCORE) Biến cố được dựbáo là chết do nguyên nhân tim mạch gồm tất cả các trường hợp chết vì một bệnh timmạch có nguồn gốc xơ vữa động mạch: nhồi máu cơ tim, đột quỵ, phình động mạchchủ Việc dùng biến cố này có lợi điểm là dễ chuẩn hóa Dạng trình bày là biểu đồmàu, có hai biểu đồ riêng cho nhóm các nước có tử vong tim mạch thấp và các nước
có tử vong tim mạch cao
Hệ thống chẩn đoán chẩn đoán bệnh tim mạch của Hiệp hội tim mạch Hoa
Kỳ (Pooled Cohort Equations - PCE) do nhóm chuyên gia thuộc Trường Tim Mạch
và Hiệp hội Tim Hoa Kỳ đưa ra năm 2013 Nhóm chuyên gia này tập hợp số liệu cácnghiên cứu đoàn hệ cộng đồng trên những người Mỹ gốc Phi và Mỹ da trắng khôngphải gốc Latinh được theo dõi ít nhất 12 năm Biến cố kết cục của hệ thống là chết
do bệnh động mạch vành, nhồi máu cơ tim nhưng không chết, đột quỵ hoặc đột quỵnhưng không chết Các biến được đưa vào hệ thống bao gồm: giới tính, tuổi, chủngtộc, cholesterol toàn phần, HDL, huyết áp tâm thu, có đang điều trị tăng huyết áp haykhông, có đái tháo đường hay không, có hút thuốc lá hay không
Nghiên cứu của Reynolds được xây dựng từ số liệu của 2 thử nghiệm lâm sàng là
Nghiên cứu về sức khỏe phụ nữ( Women Health Studay - 24.558 phụ nữ là nhân viên
y tế) và Nghiên cứu về sức khỏe thầy thuốc (Physician’s Health Study - 10724 bác sĩnam), với biến cố được dự báo là nhồi máu cơ tim, đột quỵ, tái tưới máu mạch vành
và chết do nguyên nhân tim mạch Các biến được đưa vào là giới tính, tuổi, huyết áptâm thu, cholesterol toàn phần, HDL, có hút thuốc lá hay không, có tiền sử gia đìnhmắc nhồi máu cơ tim sớm, HbA1c, hsCRP
Trang 19Hình 2.2: Đặc điểm của các hệ thống ước tính nguy cơ bệnh Tim mạch
2.2.2 Hệ thống hỗ trợ chuẩn đoán bệnh Tim mạch sử dụng kỹ
thuật khai phá dữ liệu
Ngày nay, các bệnh viện đều lưu trữ và quản lý thông tin về tình hình sức khỏe củabệnh nhân trên các hệ thống thông tin Những hệ thống này chứa một lượng lớn dữliệu, trong đó có rất nhiều thông tin hữu ích chưa được khai phá để hỗ trợ cho bác sĩtrong việc chuẩn đoán, cũng như dự đoán tình trạng của bệnh nhân Với sự phát triểncủa khoa học máy tính và các kỹ thuật khai phá dữ liệu, có nhiều nghiên cứu và hệthống hỗ trợ chẩn đoán sớm nguy cơ mắc bệnh tim mạch đã được thực hiện Những
hệ thống đó áp dụng nhiều kỹ thuật khai phá dữ liệu khác nhau và thu được các kếtquả khác nhau Dưới đây là một số hệ thống và nghiên cứu trong khai phá dữ liệu đểchẩn đoán bệnh tim mạch
• Hệ thống dự đoán bệnh tim thông minh (IHDPS) được phát triển dựa trên các
kỹ thuật khai phá dữ liệu như cây quyết định, mạng Nơron, Naive Bayes Hệthống được xây dựng bởi Sellappan Palaniappan và các đồng sự vào năm 2008
Trang 20đồ, tiền xử lý dữ liệu và các dữ liệu về bệnh tim năm 2006.
2.3.1 K-means
Thuật toán phân cụm k-means do MacQueen đề xuất trong lĩnh vực thống kê năm
1967, mục đích của thuật toán k-means là sinh ra k cụm dữ liệu C1, C2, , Ck từ mộttập dữ liệu ban đầu gồm n đối tượng trong không gian d chiều Xi = (xi1, xi2, , xid)(i =1 n) sao cho hàm tiêu chuẩn
E =
kXi=1
Xx∈Ci
vì đây là mô hình khoảng cách dễ lấy đạo hàm và xác định các cực trị tối thiểu Hàmtiêu chuẩn và độ đo khoảng cách có thể được xác định cụ thể hơn tùy vào ứng dụnghoặc các quan điểm của người dùng [7]
Thuật toán k-means được chứng minh là hội tụ và có độ phức tạp tính toán làO(n.k.d) Như vậy, do thuật toán k-means phân tích phân cụm đơn giản nên có thể
áp dụng đối với tập dữ liệu lớn Tuy nhiên, nhược điểm của k-means là chỉ áp dụng
Trang 21Algorithm 1 Thuật toán K-MEAN
Lặp lại các bước 2 và 3 cho đến khi các trọng tâm của cụm không thay đổi
với dữ liệu có thuộc tính số và khám phá ra các cụm có dạng hình cầu, k-means cònrất nhạy cảm với nhiễu và các phần tử ngoại lai trong dữ liệu Hình 2.3 diễn tả môphỏng về một số hình dạng cụm dữ liệu khám phá được bởi k-means:
Hình 2.3: Cụm dữ liệu khai phá bởi K-mean
Hơn nữa, chất lượng phân cụm dữ liệu của thuật toán k-means phụ thuộc nhiềuvào các tham số đầu vào như: số cụm k và k trọng tâm khởi tạo ban đầu Trong trườnghợp, các trọng tâm khởi tạo ban đầu mà quá lệch so với các trọng tâm cụm tự nhiênthì kết quả phân cụm của k-means có độ chính xác là rất thấp, nghĩa là các cụm dữliệu được khám phá rất lệch so với các cụm trong thực tế Trên thực tế người ta chưa
có một giải pháp tối ưu nào để chọn các tham số đầu vào, giải pháp thường được sửdụng nhất là thử nghiệm với các giá trị đầu vào k khác nhau rồi sau đó chọn giải pháptốt nhất
Trang 222.3.2 Cây quyết định
Cây quyết định là một kiểu mô hình dự báo, nghĩa là một ánh xạ từ các quan sát vềmột sự vật/hiện tượng tới các kết luận về giá trị mục tiêu của sự vật/hiện tượng Cấutrúc của một cây quyết định bao gồm các nút và các nhánh Nút dưới cùng được gọi lànút lá, trong mô hình phân lớp dữ liệu chính là các giá trị của các nhãn lớp (gọi tắt lànhãn) Các nút khác nút lá được gọi là các nút con, đây còn là các thuộc tính của tập
dữ liệu, hiển nhiên các thuộc tính này phải khác thuộc tính phân lớp Mỗi một nhánhcủa cây xuất phát từ một nút p nào đó ứng với một phép so sánh dựa trên miền giá trịcủa nút đó Nút đầu tiên được gọi là nút gốc của cây Xem xét một ví dụ về một câyquyết định như sau:
Hình 2.4: Bảng dữ liệu
Từ Bảng2.4, ta xây dựng được cây quyết định như sau:
Hình 2.5: Cây quyết địnhCây quyết định của ví dụ trên Hình 2.5có thể được giải thích như sau: các nút láchứa các giá trị của thuộc tính phân lớp Các nút con tương ứng với các thuộc tính
Trang 23khác thuộc tính phân lớp Nút gốc cũng được xem như một nút con đặc biệt Cácnhánh của cây từ một nút bất kỳ tương đương một phép so sánh có thể là so sánhbằng, so sánh khác, lớn hơn nhỏ hơn Nhưng kết quả các phép so sánh này bắt buộcphải thể hiện một giá trị logic (đúng hoặc sai) dựa trên một giá trị nào đó của thuộctính của nút Lưu ý cây quyết định trên không có sự tham gia của một số thuộc tínhtrong thành phần cây, các thuộc tính như vậy được gọi chung là các thuộc tính dư thừabởi vì các thuộc tính này không ảnh hưởng đến quá trình xây dựng mô hình của cây.Các thuộc tính tham gia vào quá trình phân lớp thông thường có các giá trị liêntục hay còn gọi là kiểu số hoặc kiểu rời rạc hay còn gọi là kiểu dữ liệu phân loại Ví
dụ kiểu dữ liệu lương biểu diễn bằng số thực là kiểu dữ liệu liên tục, kiểu dữ liệu giớitính là kiểu dữ liệu rời rạc
Algorithm 2 Thuật toán Cây quyết định
1 Bắt đầu từ nút đơn biểu diễn tất cả các mẫu
2 Nếu các mẫu thuộc cùng một lớp, nút trở thành nút lá và được gán nhãn bằng lớpđó
3 Ngược lại, dùng độ đo thuộc tính để chọn thuộc tính sẽ phân tách tốt nhất các mẫuvào các lớp
4 Một nhánh được tạo cho từng giá trị của thuộc tính được chọn và các mẫu đượcphân hoạch theo
5 Dùng đệ quy cùng một quá trình để tạo cây quyết định
6 Tiến trình kết thúc chỉ khi một trong các điểu kiện sau đây là đúng
• Tất cả các mẫu của một nút cho trước đều thuộc về cùng một lớp
• Không còn một mẫu nào mà có thể dựa vào để phân hoạch xa hơn
Thuật toán cây quyết định có một số điểm mạnh như sau:
• Cây quyết định có thể tự giải thích và khi được gắn kết lại, chúng có thể dễ dàng
tự sinh ra Nói cách khác, nếu cây quyết định mà có số lượng nút lá vừa phải thìngười không chuyên cũng dễ dàng hiểu được nó Hơn nữa, cây quyết định cũng
có thể chuyển sang tập luật Vì vậy, cây quyết định được xem như là dễ hiểu
• Cây quyết định có thể xử lý cả thuộc tính tên và số đầu vào
• Thể hiện của cây quyết định là đủ đa dạng để biểu diễn cho bất kỳ giá trị rời rạcnào
Trang 24• Cây quyết định có khả năng xử lý các bộ dữ liệu mà có thể gây ra lỗi.
• Cây quyết định có khả năng xử lý các bộ dữ liệu mà có giá trị rỗng
• Cây quyết định được xem như là một phương pháp phi tham số Điều này cónghĩa là cây quyết định không có giả định về sự phân chia bộ nhớ và cấu trúcphân lớp
Bên cạnh đó, cây quyết định cũng có một số hạn chế sau:
• Hầu hết các thuật toán xây dựng cây quyết định (như ID3 hoặc C4.5) bắt buộccác thuộc tính mục tiêu phải là các giá trị rời rạc
• Khi cây quyết định sử dụng phương pháp “chia để trị”, chúng có thể thực hiệntốt nếu tồn tại một số thuộc tính liên quan chặt chẽ với nhau, nhưng sẽ khó khănnếu một số tương tác phức tạp xuất hiện Một trong những nguyên nhân gây
ra điều này là những sự phân lớp mà có mô tả rất mạch lạc về việc phân lớpcũng có thể gặp khó khăn trong việc biểu diễn bằng cây quyết định Một minhhọa đơn giản của hiện tượng này là vấn đề tái tạo cây quyết định (Pagallo vàHuassler, 1990) Khi mà hầu hết các cây quyết định phân chia không gian thểhiện thành những khu vực loại trừ lẫn nhau để biểu diễn một khái niệm Trongmột số trường hợp, cây nên chứa một vài cây con giống nhau trong thứ tự thểhiện của việc phân lớp
2.3.3 Thuật toán Mạng Perceptron nhiều lớp
2.3.3.1 Mạng Perceptron một lớp
Mạng perceptron một lớp do F.Rosenblatt đề xuất năm 1960 [16] là mạng truyềnthẳng chỉ một lớp vào và một lớp ra không có lớp ẩn Trên mỗi lớp này có thể có mộthoặc nhiều nơ-ron Mô hình mạng nơ-ron của Rosenblatt sử dụng hàm ngưỡng đóngvai trò là hàm chuyển Do đó, tổng của các tín hiệu vào lớn hơn giá trị ngưỡng thì giátrị đầu ra của nơ-ron sẽ là 1, còn trái lại sẽ là 0
Trang 25Một đối tượng sẽ được nơ-ron i phân vào lớp A nếu
Tổng thông tin đầu vào:P wijxj > θi
Trong đó wij là trọng số liên kết từ nơ-ron j tới nơ-ron i, xj là đầu vào từ nơ-ron
j, và θ là ngưỡng của nơ-ron i Trong trường hợp trái lại, đối tượng sẽ được phân vàolớp B
Việc huấn luyện mạng dựa trên phương pháp học có giám sát với tập mẫu học là
(x(k), d(k) , k = 1, 2, , p Trong đó, d(k) = [d(k)1 , d(k)2 , , d(k)n ]T là đầu ra quan sátứng với đầu vào x(k) = [x(k)1 , x(k)2 , , x(k)m ]T (với m là số đầu vào, n là số đầu ra, và p
là cặp mẫu đầu vào-đầu ra dùng cho việc học) Như vậy chúng ta mong rằng sau quátrình huấn luyện, đầu ra tính toán được y(k) = [y(k)1 , y2(k), , y(k)n ]T sẽ bằng với đầu racủa mẫu học d(k)
Yi(k) = g(wTi x(k)) = g(
mXj=1
wijx(k)j ) = d(k)i , i = 1, 2, , n; k = 1, 2, p (2.2)
Hình 2.6: Mạng Perceptron một lớp
Để bắt đầu quá trình huấn luyện mô hình mạng, các trọng số được gán giá trị ngẫunhiên trong khoảng [-3, 3] Sau đó hiệu chỉnh các trọng số cho phù hợp với mẫu huấnluyện để làm giảm sai số giữa y(k)và d(k)
Các bước tiến hành:
• Xác định ngẫu nhiên bộ trọng số
• Với mỗi mẫu huấn luyện (x(k), d(k)), k = 1, 2, , p thực hiện các bước:
Trang 26– Tính giá trị y(k)theo công thức
– Xác định sai số δi tại nơ-ron i: δi = di− yi, trong đó di là giá trị đầu raquan sát được và yilà giá trị đầu ra tính toán tại nơ-ron thứ i
– Tính ∆wij là số gia của trọng số wij (trọng số liên kết giữa đầu vào j tớinơ-ron i) theo công thức ∆wij = ηδixj trong đó η là tốc độ huấn luyện(0 < η < 1)
– Hiệu chỉnh wij(t+1) = w(t)ij + ∆wij = wij(t) + ηδ(t)i x(t)j trong đó wij(t+1) làtrọng số sau khi điều chỉnh ở lần huấn luyện tại thời điểm t
Rosenblatt đã chứng minh rằng quá trình huấn luyện của mạng perceptron sẽ hội
tụ tới bộ trọng số W , biểu diễn đúng các mẫu học với điều kiện là các mẫu này biểuthị các điểm rời rạc của một hàm khả tách tuyến tính nào đó (f : Rn → R được gọi làkhả tách tuyến tính nếu các tập F−1(xk) với xk thuộc miền giá trị của f , có thể táchđược với nhau bởi các siêu phẳng trong không gian Rn)
Năm 1969, Minsky và Papert đã chứng minh một cách chặt chẽ rằng lớp hàm thểhiện sự phụ thuộc giữa đầu vào và đầu ra có thể huấn luyện bởi mạng Perceptron mộtlớp là lớp hàm khả tách tuyến tính Khả tách tuyến tính là trường hợp tồn tại một mặtsiêu phẳng để phân cách tất cả các đối tượng của một lớp này với một lớp khác, ví dụmột mặt phẳng sẽ phân chia không gian ba chiều thành hai vùng riêng biệt Mở rộng
ra, nếu có n đầu vào , n > 2 thì công thứcPni=1wijxj = θi tạo nên một siêu phẳng
có n − 1 chiều trong không gian n chiều, nó chia không gian đó thành hai nửa Trongnhiều bài toán thực tế đòi hỏi chia các vùng của các điểm trong một siêu không gianthành các lớp riêng biệt Loại bài toán này gọi là bài toán phân lớp Bài toán phân lớp
có thể giải quyết bằng cách tìm các tham số thích hợp cho một siêu phẳng để nó cóthể chia không gian n chiều thành các vùng riêng biệt Với tính chất của như đã nêutrên, mạng perceptron một lớp có thể mô tả các hàm logic như AND, OR và NOT.Tuy nhiên nó không thể hiện được hàm XOR Như vậy chứng tỏ mô hình perceptronmột lớp không thể giải quyết bài toán này Vấn đề này sẽ được giải quyết bằng môhình mạng nơ-ron perceptron nhiều lớp
2.3.3.2 Mạng Perceptron lan truyền thẳng nhiều lớp
Mạng perceptron nhiều lớp (Multilayer Perceptron –MLP) còn được gọi là mạngtruyền thẳng nhiều lớp là sự mở rộng của mô hình mạng perceptron với sự bổ sungthêm những lớp ẩn và các nơ-ron trong các lớp ẩn này có hàm kích hoạt dạng phi
Trang 27tuyến Mạng MLP có một lớp ẩn là mạng nơ-ron nhân tạo được sử dụng phổ biếnnhất, nó có thể xấp xỉ các hàm liên tục được định nghĩa trên một miền có giới hạncũng như những hàm là tập hợp hữu hạn của các điểm rời rạc.
Thuật toán học theo phương pháp lan truyền ngược sai số Thuật toán học theo
phương pháp lan truyền ngược sai số do Rumelhart và các cộng sự [27] đề xuất là mộttrong số những kết quả nghiên cứu quan trọng nhất đối với sự phát triển của mạngnơ-ron nhân tạo Thuật toán này được áp dụng cho mạng truyền thẳng nhiều lớp trong
đó các nơ-ron có thể sử dụng các hàm chuyển là các hàm liên tục có các dạng khácnhau Thuật toán sử dụng một tập các mẫu gồm các cặp đầu vào - đầu ra để huấnluyện mạng Với mỗi cặp đầu vào - đầu ra (x(k), d(k)) thuật toán lan truyền ngược sai
số thực hiện hai giai đoạn sau:
• Giai đoạn thứ nhất, mẫu đầu vào x(k)được truyền từ lớp vào tới lớp ra, và ta cókết quả đầu ra tính toán được là y(k)
• Giai đoạn tiếp theo, tín hiệu lỗi được tính toán từ sự khác nhau giữa đầu ra quansát được d(k)với đầu ra tính toán y(k)sẽ được lan truyền ngược lại từ lớp ra đếncác lớp trước để điều chỉnh các trọng số của mạng Để làm ví dụ ta xét mạngtruyền thẳng có một lớp ẩn dưới đây, đối với các mạng có kích thước lớn hơnthì thao tác cũng tương tự
Mạng nơ-ron được xét có m nơ-ron ở lớp vào, l nơ-ron trong lớp ẩn và n nơ-ron ở lớp
ra Đường kẻ liền thể hiện luồng tín hiệu được truyền từ đầu vào tới đầu ra còn cácđường kẻ nét đứt thể hiện luồng tín hiệu lỗi được truyền ngược trở lại từ đầu ra.Chúng ta xét một cặp đầu vào - đầu ra để huấn luyện mạng (x, d), để đơn giảnchúng ta bỏ ký hiệu mũ k thể hiện số thứ tự của cặp mẫu này trong bộ mẫu dùng đểhuấn luyện mạng Khi đưa vào đầu vào x, nơ-ron thứ q trong lớp ẩn sẽ nhận tín hiệuvào của mạng là:
netq =
mXj=1
vqjxjnơ-ron q ở lớp ẩn sẽ tính toán và tạo kết quả ở đầu ra của nó là:
zq = g(netq) = g(
mXj=1
Trang 28Hình 2.7: Lan truyền tín hiệu trong quá trình huấn luyện theo phương pháp lan truyềnngược sai số
Do đó tín hiệu vào của nơ-ron thứ i trên lớp sẽ ra là:
neti =
lXq=1
wiqzq =
lXq=1
wiqg(
mXj=1
Và cuối cùng, đầu ra của nơ-ron i trên lớp ra sẽ là:
yi = g(neti) = g(
lXq=1
wiqzq) = g(
lXq=1
wiqg(
mXj=1
vqjxj) (2.5)
Công thức trên cho biết quá trình lan truyền tín hiệu từ đầu vào qua lớp ẩn tới đầu
ra Tiếp theo chúng ta xét tín hiệu lỗi được lan truyền ngược lại từ lớp ra Trước hết,đối với mỗi cặp giá trị vào – ra chúng ta xây dựng một hàm giá như sau:
E(w) = 1
2
nXi=1
(di− yi)2 = 1
2
nXi=1
[di− g(neti)]2 = 1
2
nXi=1
"
di− g(
lXq=1
wiqzq)
#2
(2.6)Như vậy với một tập gồm p mẫu huấn luyện, chúng ta lần lượt xây dựng được phàm giá như vậy Việc học của mạng hay nhiệm vụ của giải thuật thực chất là tìmkiếm tập trọng số W trong không gian RM (M là số trọng số có trong mạng) để lần
Trang 29lượt tối thiểu hoá các hàm giá như vậy Điều đáng chú ý là việc tối thiểu hoá được tiếnhành liên tiếp nhau và theo chu kỳ đối với các hàm giá Để tối thiểu hàm giá như vậy,giải thuật lan truyền ngược sai số sử dụng phương pháp giảm Gradient để điều chỉnhcác trọng số liên kết giữa các nơ-ron.
2.3.4 SOM
Thuật toán SOM (Self Organizing Map) được giáo sư Teuvo Kohonen phát triển vàonhững năm 80, là một công cụ thích hợp trong khai phá dữ liệu [6,32] SOM là một
mô hình mạng nơ-ron nhân tạo, được huấn luyện sử dụng kỹ thuật học không giám sát
để biểu diễn dữ liệu với số chiều thấp hơn nhiều (thường là 2 chiều) so với dữ liệu đầuvào đa chiều (thường số chiều lớn) Kết quả của SOM gọi là bản đồ Mô hình mạngnơ-ron SOM khác với các mô hình mạng nơ-ron nhân tạo khác là không sử dụng cáclớp ẩn mà chỉ sử dụng lớp đầu vào và lớp đầu ra SOM sử dụng khái niệm lân cận đểgiữ lại đặc trưng của các dữ liệu đầu vào trên bản đồ (có nghĩa là các mẫu huấn luyệntương tự nhau thì được đặt gần nhau trên bản đồ) Ưu điểm chính của SOM là biểudiễn trực quan dữ liệu đa chiều vào không gian ít chiều hơn (thường là 2 chiều) và đặctrưng của dữ liệu đầu vào được giữ lại trên bản đồ
Hình 2.8: Mô hình SOM
Kiến trúc của SOM
• Lớp đầu ra gồm các nơ-ron được bố trí trên một lưới (bản đồ) kích thước
X × Y Mỗi nơ-ron có vị trí xác định trên lưới, tại mỗi nơ-ron lưu giữ một véc
tơ trọng số có số chiều bằng với số chiều của véc tơ đầu vào
• Ma trận trọng số wij kết nối giữa véc tơ đầu vào và các nơ-ron
Trang 30Hình 2.9: Ma trận trọng số
Thuật toán SOM
Xét một tập dữ liệu là các véc tơ trong không gian n chiều:
Ni(d) = j, di,j ≤ d, với d là bán kính lân cận
Các nút lận cận tùy thuộc vào bán kính, được sắp xếp trong lưới theo hình chữnhật hoặc lục giác Số các lân cận xác định ma trận trọng tâm của kết quả, có ảnhhưởng đến độ chính xác và khả năng sinh ma trận của SOM
Hình 2.10: Các lân cận
Trang 31Trong thuật toán SOM, các quan hệ hình học và số các nơ-ron là cố định ngay
từ đầu Số lượng nơ-ron thường được chọn đủ lớn nếu có thể, bằng cách điều khiểnkích thước cho phù hợp Nếu kích thước lân cận được lựa chọn là phù hợp thì ma trậnkhông bị mất mát thông tin nhiều ngay cả khi số các nơ-ron vượt quá số các véc tơđầu vào Tuy nhiên, nếu kích thước của ma trận tăng, ví dụ đến mười nghìn nơ-ron thìquá trình huấn luyện trở nên nặng nề vì việc tính toán sẽ không còn hợp lý cho phầnlớn các ứng dụng
Trước khi huấn luyện các giá trị ban đầu được đưa ra là các véc tơ trọng số SOM
là thuật toán không phụ thuộc nhiều đối với dữ liệu ban đầu( dữ liệu có thể bị thiếu),nhưng thuật toán SOM vẫn hội tụ nhanh Có ba thủ tục khởi tạo điển hình sau:
• Khởi tạo ngẫu nhiên: véc tơ trọng số ban đầu được gán giá trị là các giá trị ngẫunhiên đủ nhỏ
• Khởi tạo ví dụ: véc tơ trọng số ban đầu được gắn với các mẫu ngẫu nhiên rút ra
với k.k là độ đo khoảng cách
Sau khi tìm được nơ-ron khớp nhất, véc tơ trọng số của SOM được cập nhập lại.véc tơ trọng số của nơ-ron khớp nhất và các lân cận hình thái của nó di chuyển dầnđến véc tơ trong không gian đầu vào Thủ tục cập nhập này trải dài theo nơ-ron khớpnhất và các hình trạng lân cận của nó về phía véc tơ ví dụ
SOM cập nhập luật cho vectơ trọng số của đơn vị thứ i là:
mi(t + 1) = mi(t) + α(t)hci(t) [x − mi(t)] (2.7)Trong đó:
• t: là thời gian
Trang 32• x: là véc tơ đầu vào ngẫu nhiên rút ra từ tập dữ liệu đầu vào tại thời điểm t
Hàm lân cận Gauss cho ra kết quả tốt hơn, nhưng việc tính toán lại nặng nề hơn.Thường thì ban đầu bán kính lân cận lớn và giảm dần xuống 1 trong suốt quá trìnhhuấn luyện Tỷ lệ học α(t) là một hàm giảm dần theo thời gian Hai mẫu dùng phổbiến là hàm tuyến tính và hàm nghịch đảo theo thời gian:
α(t) = A
t + Bvới A và B là hằng số
Việc huấn luyện thường được tiến hành trong hai giai đoạn Giai đoạn đầu, có liênquan đến việc sử dụng giá trị ban đầu α đủ lớn và các bán kính lân cận Trong giaiđoạn sau, giá trị α và bán kính lân cận đủ nhỏ ngay từ khi bắt đầu Thủ tục này phù
Trang 33là thiết lập SOM theo hình trạng tốt hơn trong khuôn khổ của tập dữ liệu hoặc thựchiện kết quả lượng tử hóa tốt hơn.
Trang 34Chương 3
Quá trình chẩn đoán bệnh tim dựa trên kỹ thuật khai phá dữ liệu
Làm thế nào để chẩn đoán bệnh Tim? Thực tế cho thấy, khó có thể xác định đượcbệnh nhân có nguy cơ mắc bệnh tim hay không khi chỉ thông qua một xét nghiệm.Việc chẩn đoán bệnh tim có thể dựa trên các thông tin lâm sàng (tuổi, giới tính, huyết
áp, có hút thuốc lá hay không, có bị tiểu đường hay không ) và các triệu chứng.Tuy nhiên, việc đánh giá dựa trên những thông tin lâm sàng không hoàn toàn chínhxác Do vậy, việc chẩn đoán bệnh tim còn được thực hiện dựa vào đánh giá và phântích dữ liệu về sự thay đổi nhịp tim Đây chính là thuộc tính rất quan trọng trong chẩnđoán bệnh tim mạch [1] Trong khi các thông tin lâm sàng là dữ liệu tĩnh và rời rạc,thì sự thay đổi nhịp tim trong một giai đoạn thì thay đổi theo thời gian Dựa vào cácthuộc tính khác nhau của yếu tố nguy cơ, quá trình chẩn đoán bệnh tim có thể đượcchia ra thành hai bước kiểm tra Bước đầu tiên, các kỹ thuật khai phá dữ liệu cơ bảnnhư cây quyết định, khai phá luật kết hợp có thể được áp dụng trên các thông tinlâm sàng để nhóm các đối tượng vào các lớp khác nhau theo mức độ của sự rủi ro (cóbệnh hoặc không) Ở bước sau, dữ liệu về sự biến đổi của nhịp tim sẽ được khai phátheo thời gian thực
Hình 3.1 mô tả tổng quan của quá trình chẩn đoán bệnh tim mạch Ở bước chẩn
Trang 35Hình 3.1: Tổng quan hệ thống quá trình chẩn đoán bệnh tim
đoán đầu tiên thuật toán Apriori được áp dụng để khai phá luật kết hợp cho bệnh timdựa trên các thông tin lâm sàng của bệnh nhân Sau bước này, dựa trên kết quả thuđược, bác sĩ sẽ quyết định những bệnh nhân nào có nguy cơ mắc bệnh tim mạch cao.Nhóm bệnh nhân này tiếp tục được chuyển qua bước thứ hai của quá trình chẩn đoán
Ở bước thứ hai này, Kỹ thuật Poincaré và thuật toán GNG được áp dụng để chẩn đoándựa trên sự thay đổi nhịp tim khi bệnh nhân thực hiện các hoạt động hàng ngày
lâm sàng
Trong phần này, chúng tôi sẽ trình bày chi tiết bước đầu tiên của quá trình chẩn đoánbệnh tim Bước chẩn đoán này dựa trên các thông tin lâm sàng của bệnh nhân và sửdụng thuật toán Apriori để khai phá luật kết hợp cho bệnh tim
Hình 3.2 mô tả tiến trình chẩn đoán bệnh tim ở bước thứ nhất Đầu tiên, dữ liệulâm sàng của bệnh nhân được thu thập Sau đó, dữ liệu được tiền xử lý cho phù hợpvới định dạng đầu vào của thuật toán Apriori Ở bước này, thuật toán Apriori được áp
Trang 36Hình 3.2: Chẩn đoán bệnh tim dựa vào thông tin lâm sàng của bệnh nhân
dụng để khai phá luật kết hợp cho tập dữ liệu đã qua tiền xử lý Kết quả cuối cùng, ta
có một tập luật kết hợp để hỗ trợ cho quá trình chẩn đoán bệnh tim
3.2.1 Tiền xử lý Dữ liệu
Dữ liệu được thu trực tiếp từ các thiết bị hay do bệnh nhân cung cấp dựa trên nhữngquan sát và cảm nhận Đối với bệnh tim thì một mẫu dữ liệu thu được gồm 14 thuộctính được mô tả như trong Bảng3.1
Các tập dữ liệu thu được thường chứa rất nhiều các thuộc tính được thu thập dướidạng số nhưng lại không đầy đủ, có nhiều lỗi và kiểu giá trị đặc biệt Vì vậy, giai đoạnthu thập và tiền xử lý dữ liệu trở nên rất quan trọng trong quá trình khai phá tri thức
từ cơ sở dữ liệu Thuật toán Apriori được đề xuất cho dữ liệu rời rạc nên không thể
áp dụng cho dữ liệu liên tục dạng số Mỗi giá trị dữ liệu rời rạc được gọi là một item
Ở giai đoạn tiền xử lý dữ liệu, chúng ta thực hiện chuyển đổi dữ liệu dạng số sang dữliệu rời rạc biểu diễn bởi các items Bảng 3.2 sau mô tả quy tắc chuyển đổi dạng sốsang dạng dữ liệu rời rạc
3.2.2 Các khái niệm và định nghĩa
Trước khi mô tả thuật toán, phần này giới thiệu một số định nghĩa, khái niệm và dữliệu được sử dụng trong thuật toán tìm luật kết hợp Apriori
Định nghĩa:
Cho I = I1, I2, , Im là tập hợp của m tính chất riêng biệt Giả sử D là CSDL, vớicác bản ghi chứa một tập con T các tính chất (có thể coi T ⊆ I), các bản ghi đều
có chỉ số riêng Một luật kết hợp là mệnh đề kéo theo có dạng X → Y , trong đó
X, Y ⊆ I, thỏa mãn điều kiện X ∩ Y = Các tập hợp X và Y được gọi là các tậphợp tính chất Tập X gọi là nguyên nhân, tập Y gọi là hệ quả Có hai độ đo quan trọng