TÓM TẮT Trong những vấn đề về khai thác dữ liệu hiện đang được nhiều nhà khoa họcquan tâm là tìm kiếm tập phổ biến, nhưng đối với nhiều loại cơ sở dữ liệu đặc thù cóngưỡng phổ biến minsu
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM
NGUYỄN VŨ MINH DUY
ÁP DỤNG KHAI THÁC TẬP PHỔ BIẾN TỐI ĐẠI ĐỂ PHÁT TRIỂN HỆ HỖ TRỢ QUYẾT ĐỊNH CHẨN
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM
NGUYỄN VŨ MINH DUY
ÁP DỤNG KHAI THÁC TẬP PHỔ BIẾN TỐI ĐẠI ĐỂ PHÁT TRIỂN HỆ HỖ TRỢ QUYẾT ĐỊNH CHẨN
Trang 3CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
Cán bộ hướng dẫn khoa học : PGS.TS Quản Thành Thơ
Luận văn Thạc sĩ được bảo vệ tại Trường Đại học Công nghệ TP HCM
ngày 23 tháng 4 năm 2017
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ Luận văn Thạc sĩ)
Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã được
sửa chữa (nếu có)
Chủ tịch Hội đồng đánh giá LV
TS.Vũ Thanh Hiền
Trang 5NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Nguyễn Vũ Minh Duy Giới tính: Nam Ngày,
tháng, năm sinh: 05/08/1983 Nơi sinh: Đồng tháp Chuyên
ngành: Công nghê thông tin MSHV: 1441860042
I- Tên đề tài:
Áp dụng khai thác tập phổ biến tối đại để phát triển hệ hỗ trợ quyết định chẩn
đoán điều trị
II- Nhiệm vụ và nội dung:
Nghiên cứu cách thức sử dụng triệu chứng hỗ trợ cho bác sĩ ra quyết định chẩn
đoán bệnh Nghiên cứu giải thuật tập phổ biến tối đại trong khai thác dữ liệu Phát
triển hệ thống hỗ trợ ra quyết định chẩn đoán điều trị dựa trên thuật toán khai thác
tập phổ biến tối đại Hiện thực hệ thống thành một phân hệ ứng dụng (mô đun) tích
hợp vào phần mềm quản lý khám bệnh, để hỗ trợ ra quyết định chẩn đoán điều trị
trong quá trình khám chữa bệnh của bác sĩ
III- Ngày giao nhiệm vụ: 23/01/2016
IV- Ngày hoàn thành nhiệm vụ: 30/03/2017
V- Cán bộ hướng dẫn: PGS.TS Quản Thành Thơ
CÁN BỘ HƯỚNG DẪN KHOA QUẢN LÝ CHUYÊN NGÀNH
(Họ tên và chữ ký) (Họ tên và chữ ký)
PGS.TS Quản Thành Thơ
Trang 6LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi và sự hướng dẫnkhoa học của PGS.TS Quản Thành Thơ Các số liệu, kết quả nêu trong Luận văn làtrung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này
đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc
Học viên thực hiện Luận văn
(Ký và ghi rõ họ tên)
Nguyễn Vũ Minh Duy
Trang 7Tôi xin gửi lời cảm ơn chân thành đến TS Bs Võ Thành Liêm giảng viên Khoa
Y học gia đình, trường Đại học y Phạm Ngọc Thạch và nhiều bác sĩ đồng nghiệp Ykhoa đã hướng dẫn tôi thêm kiến thức về chuyên ngành y trong việc chẩn đoánkhám chữa bệnh để hoàn thành kết quả nghiên cứu Tôi xin chân thành cảm ơn ÔngNguyễn Duy Nam Tổng Giám đốc Công ty Tin học PowerSoft (PowerSoft.vn) đã tạođiều kiện và cho phép tôi tích hợp phân hệ ứng dụng vào phần mềm quản lý phòngkhám của công ty để đưa vào áp dụng thực tiễn
Bên cạnh đó, tôi rất chân thành cảm ơn PGS.TS Quản Thành Thơ người Thầy
đã đã tận tâm truyền đạt kiến thức, dành nhiều thời gian giảng dạy hướng dẫn tôitrong quá trình nghiên cứu chuyên môn để hoàn thành Luận văn mình một cách tốtnhất
Cuối cùng, tôi xin gửi đến bạn bè, đồng nghiệp đã tạo điều kiện thuận lợi vềmọi mặt trong quá trình học tập và nghiên cứu của mình, sự thành công của Luậnvăn tôi không thể không nhắc đến những người thân trong gia đình luôn luôn chia sẽ,động viên, giúp tôi có động lực vượt qua những thời điểm khó khăn nhất
TP Hồ Chí Minh, ngày 30 tháng 03 năm
2017 (Họ và tên của tác giả Luận văn)
Nguyễn Vũ Minh Duy
Trang 8TÓM TẮT
Trong những vấn đề về khai thác dữ liệu hiện đang được nhiều nhà khoa họcquan tâm là tìm kiếm tập phổ biến, nhưng đối với nhiều loại cơ sở dữ liệu đặc thù cóngưỡng phổ biến (minsupp) quá thấp thì có mật độ tập phổ biến quá nhiều hoặcngược lại ngưỡng phổ biến quá cao thì tập phổ biến quá ít hoặc gần như không có,nên có rất nhiều phương pháp phân tích xem xét vấn đề trên, từ đó các thuật toán tìmtập phổ biến tối đại đã được đề xuất Hiện nay với nguồn dữ liệu triệu chứng bệnh cómối quan hệ với bệnh lý của bệnh nhân càng phát triển lớn và nhanh,vì hàng nămcác bệnh viện phải tổ chức lưu trữ nguồn dữ liệu càng phát triển do số lượng bệnhnhân càng đông hơn Từ đó với nguồn cơ sở dữ liệu lớn như vậy có nhiều chiếnlược, phương pháp để xây dựng hệ hỗ trợ quyết định trong lịnh vực y tế Vấn đề tìm
ra các triệu chứng bệnh phổ biến nhất liên quan đến nhiều mặt bệnh nhằm hỗ trợ bác
sĩ đưa ra quyết định chẩn đoán bệnh tốt hơn cho bệnh nhân, từ đó học viên đề xuất
áp dụng thuật toán tìm ra tập phổ biến tối đại vào bài toán đề tài Học viên áp dụngthuật toán MAFIA để áp dụng vào mục tiêu đề tài với kỹ thuật sắp xếp tăng dần theo
độ hỗ trợ (Dynamic Recording) và nhiều chiến lược tỉa nhánh như PEP,FHUT,HUTMFI nhằm mục đích tìm ra tập phổ biến tối đại triệu chứng bệnh để ápdụng vào hệ hỗ trợ ra quyết định chẩn đoán điều trị cung cấp cho bác sĩ ra quyếtđịnh điều trị cho người bệnh
Trang 9ABSTRACT
Looking for frequent itemsets is currently interested by too many scientists, Inthe issue of data mining is currently interested many scientists are seeking frequentitemstes, but for many type-specific database with common threshold (minsupp) istoo low, the set density too much popular or vice versa common threshold set toohigh, too little common or almost no, so there are many methods of analysis toconsider the issue, from which the search algorithm of maximal common practicehas proposed Currently the data sources symptoms have a relationship with thepatient's pathology grow big and fast, because every year the hospital to organizearchive data sources grows as the number of patients from east than From there tothe source database so big there are strategies and methods to build decision supportsystems in the medical field Problem finding out the most common symptomsrelated to the disease to support many doctors make decisions to better diagnosepatients, from which students apply the algorithm proposed finding commonpractice maximal in math topic Students apply MAFIA algorithm to apply to thetarget with the technical topics sorted in ascending order of magnitude supports(Dynamic Recording) and pruning strategies such as PEP, FHUT, HUTMFI aims tofind common practice maximal symptoms for application in a decision supportsystem diagnosis and treatment give doctors treatment decisions for patients
Trang 10MỤC LỤC
DANH MỤC CÁC BẢNG xi
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Nội dung nghiên cứu 3
3 Mục tiêu nghiên cứu 3
4 Đối tượng nghiên cứu 4
5 Phạm vi nghiên cứu 4
6 Phương pháp nghiên cứu 4
7 Cấu trúc luận văn 5
Chương 01: GIỚI THIỆU TỔNG QUAN
6 1.1 Các khái niệm và định nghĩa 6
1.2 Tổng quan khai thác tập phổ biến và luật kết hợp 10
1.3 Hệ chuyên gia trong lĩnh vực y tế 14
1.4 Kết luận chương 01 17
Chương 02: KHAI THÁC TẬP PHỔ BIẾN TỐI ĐẠI 18
2.1 Tổng quát khai thác tập phổ biến tối đại 18
2.2 Thuật toán tìm kiếm theo chiều rộng Apriori 19
2.3 Thuật toán tìm kiếm theo chiều rộng Max-Miner 24
2.4 Thuật toán tìm kiếm theo chiều sâu GENMAX 27
2.5 Thuật toán tìm kiếm theo chiều sâu FPMAX 31
2.6 Thuật toán tìm kiếm theo chiều sâu MAFIA 36
2.7 Thuật toán mở rộng xMAFIA (Extention MAFIA): 51
2.8 Kết luận chương 02 55
CHƯƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ
59 3.1 Môi trường thực nghiệm thuật toán 59
3.2 Kết quả thực nghiệm các giải thuật trên CSDL 62
3.3 Mô đun hệ hỗ trợ ra quyết định chẩn đoán bệnh và CSDL 65
3.3.1 Qui trình khám chữa bệnh cho bệnh nhân đến khám bệnh: 65
3.3.2 Mô đun độc lập hỗ trợ ra quyết định chẩn đoán bệnh: 70
3.3.3 Tích hợp mô đun hỗ trợ ra quyết định chẩn đoán bệnh vào phần mềm quản lý phòng khám: 77
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
81
Trang 111 Kết luận 81
2 Nhận xét ưu điểm và hạn chế 82 TÀI LIỆU THAM KHẢO 84
Trang 13DANH MỤC CÁC HÌNH VÀ ĐỒ THỊ
hình 1.1 vị trí của kpdl 7
hình 1.2 kiến trúc của hệ thống kpdl 8
hình 1.3 dữ liệu triệu chứng được trích từ phác đồ điều trị và nguồn csdl khám bệnh .15
hình 1.4 dữ liệu triệu chứng và bệnh được mô hình lên dàn 15
hình 2.1 mô hình các loại tập phổ biến 18
hình 2.2 hình các bước chạy thuật toán apriori 21
hình 2.3 tìm kiếm trên cây của max-miner 25
hình 2.4 các bước chạy thuật toán max-miner 25
hình 2.5 các bước chạy thuật toán genmax 28
hình 2.6 biểu diễn csdl dạng bitmap và biểu diễn trên dàn của fp-max 32
hình 2.7 tập csdl được biểu diễn theo fp- tree 32
hình 2.8 hình minh họa việc xây dựng các mfi-tree cho các ví dụ về csdl 35
hình 2.9 hình minh họa giàn tập mục (the itemset lattice) 37
hình 2.10 hình minh họa dàn thể hiện các tập phổ biến 37
hình 2.11 hình biểu diễn cách thức phối hợp các thuật toán của mafia [12] 42
hình 2.12 hình biểu diễn sự tác động của chiến lược rẻ nhánh khi có dùng reordering và không dùng reordering [12] 43
hình 2.13 hình biểu diễn csdl dưới dạng bitmap theo chiều dọc 44
hình 2.14 hình biểu diễn các bước chạy giải thuật dsf .46
Trang 14hình 2.15 hình biểu diễn các bước chạy giải thuật pep 47 hình 2.16 hình biểu diễn các bước chạy giải thuậtfhut 48 hình 2.17 hình biểu diễn các bước chạy giải thuậthutmfi 49 hình 2.18 hình biểu diễn các bước chạy giải thuậtmafia 50 hình 2.19 hình nhận xét bước chạy giả thuậtmafia theo csdl bảng 2.5 .52 hình 2.20 hình nhận xét bước chạy giảithuật xdfs 54
hình 2.21 hình các so sánh giải thuật khai thác tập mfi của tác giả g¨osta grahne và jianfei zhu [10]
57
hình 2.22 hình các so sánh phân loại theo csdl của các giải thuật do tác giả g¨osta grahne và jianfei zhu thực hiện [10] 57hình 3.1 hình ví dụ cấu trúc csdl được tạo ra từ công cụ [16] [17] 59 hình 3.2 hình kết quả thực nghiệm trên tập csdl bảng 2.5minsupp 0.25 61 hình 3.4 hình kết quả chạy các giải thuật các csdl ở bảng3.1 .64 hình 3.5 hình ví dụ mô hình khám bệnh tại một bệnhviện hoặc phòng khám 65 hình 3.6 hình chụp mô tả csdl triệu chứng liên quanmặt bệnh 68
hình 3.7 hình chụp mô tả csdl các giao dịch bác sĩ khi khám bệnh cho bệnh nhân có các ghi nhận triệu chứng khi khám bệnh đã được mã hoá 69hình 3.8 hình mô tả mô hình xử lý csdl bệnh và triệu chứng 71hình 3.9 hình mô tả thao tác thực hiện trên giao diện website 72hình 3.10 hình kết quả chạy cho ra các bộ mfi từng bệnh của 10 bộ csdl giao dịch bệnh 76
Trang 16DANH MỤC CÁC BẢNG
Bảng 2.1 CSDL giao dịch ví dụ thuật toán Apriori 20
Bảng 2.2 CSDL giao dịch biểu diễn dạng nhị phân ví dụ thuật toán Apriori 21
Bảng 2.3 CSDL giao dịch ví dụ cho thuật toán GENMAX 27
Bảng 2.4 CSDL giao dịch theo chiều dọc của thuật toán GENMAX 30
Bảng 2.4 Bảng tính tập {i}-mẫu điều kiện với từng item phổ biến i 34
Bảng 2.5 ví dụ một cơ sở dữ liệu Giao dịch id với các tập mục 36
Bảng 3.1 mô tả CSDL chạy thực nghiệm 60
Hình 3.3 Hình kết quả thời gian chạy các giải thuật CSDL07 với minsupp 0.7 61
Bảng 3.2 mô tả CSDL bệnh thu thập được từ phần mềm khám chữa bệnh để chạy thực nghiệm mô đun hệ hỗ trợ ra quyết định khám bệnh 70
Trang 17hỗ trợ được tạo ra cho người sử dụng ra quyết định từ nguồn dữ liệu được cácchuyên gia chuyên ngành xử lý.
Các cơ sở dữ liệu trong các đơn vị, các ngành kinh doanh, trong các lĩnh vựcchứa đựng nhiều thông tin giá trị, phong phú và đa dạng, từ đó cần phải có nhữngphương pháp nhanh, phù hợp, chính xác, hiệu quả để khai thác được những thông tin
bổ ích Những “tri thức” trích xuất từ nguồn cơ sở dữ liệu trên sẽ là nguồn thông tin
hỗ trợ cho lãnh đạo, người ra quyết định trong việc lên kế hoạch hoạt động hoặctrong việc ra chương trình sản xuất kinh doanh Hoặc trong lĩnh vực cơ sở dữ liệu y
tế, sự kết hợp có ý nghĩa của các triệu chứng bệnh có thể cung cấp các thông tin hữuích cho các bác sĩ chẩn đoán để quyết định hướng điều trị sức khoẻ cho bệnh nhân.Trong những vấn đề về khai thác dữ liệu hiện đang được nhiều quan tâm củacác nhà nghiên cứu là phát hiện tập phổ biến, nhưng đối với nhiều loại cơ sở dữ liệu
có ngưỡng phổ biến do người dùng xác định quá thấp thì có mật độ tập phổ biến quánhiều hoặc ngược lại ngưỡng phổ biến quá cao thì tập phổ biến quá ít hoặc không cónên rất khó để phân tích xem xét, việc khám phá tập phổ biến tốt nhất, tập phổ biếntối đại là vấn đề cần quan tâm
Ngày nay, nhiều đơn vị y tế đã và đang ứng dụng công nghệ thông tin vàocông tác hỗ trợ chuyên môn, công tác quản lý bệnh viện, quản lý phòng khám ngàycàng phát triển kể cả trong nước và ngoài nước Việc tận dùng tri thức từ CSDLkhám bệnh và nguồn tri thức chuyên môn có sự đánh giá và kiểm duyệt của cácchuyên gia y tế để các bác sĩ có thể đưa ra quyết định chẩn đoán điều trị cho bệnhnhân đang là nhu
Trang 18cầu của đơn vị y tế và cũng là bài toán của các nhà khoa học
Nhiều nhà nghiên cứu đã phân tích dữ liệu y tế bằng cách sử dụng phươngpháp, kỹ thuật, công cụ khai thác dữ liệu cho việc tìm kiếm các tập phổ biến, tậpluật, các tập nguyên tắc quyết định Tuy nhiên, những số lượng tập phổ biến, tậpluật sinh ra thường là lớn, các tập luật này chỉ dẫn ra quyết định trong những điềukiện cụ thể của các tập dữ liệu mô tả, mà không chỉ ra mối quan hệ giữa các tập (cáckhái niệm, thuộc tính đã chọn) và tầm quan trọng của các tập đã chọn trong việc suydẫn quyết định
Trong khi quá trình bác sĩ chẩn đoán điều trị bệnh có độ phức tạp ở mức độkhác nhau, mỗi bác sĩ cố gắng tiếp cận các khía cạnh khác nhau của thuộc tính sứckhoẻ trên từng bệnh nhân như: tầm quan trọng tương đối của các triệu chứng, biểuhiện, dữ kiện sức khoẻ và mối quan hệ giữa các bệnh của bệnh nhân có biểu hiện, từ
đó bác sĩ có thể căn cứ các khía cạnh trên để đưa ra các quyết định điều trị
Vì vậy việc khai thác các tính chất triệu chứng phù hợp, để khám phá mối quan
hệ giữa các triệu chứng của bệnh, các đặc điểm quan trọng nhất ảnh hưởng đến việc
ra quyết định, từ đó bác sĩ đề xuất hướng điều trị tốt hơn, có hiệu quả hơn Do vậy,cần phân tích tầm quan trọng từ nguồn tri thức của các chuyên gia y tế, nguồn trithức trích rà từ CSDL hỏi khám bệnh thực tế, việc nghiên cứu và áp dụng lĩnh vựckhai thác dữ liệu, khai thác tập phổ biến tối đại vào CSDL y tế cụ thể là bộ dữ liệucác triệu chứng chẩn đoán bệnh, để tìm ra các triệu chứng phù hợp nhất để cung cấpthông tin cho bác sĩ quyết định đang thực sự cần thiết hỗ trợ thêm cho sự ra quyếtđịnh quả bác sĩ
Hệ thống hệ hỗ trợ ra quyết định chẩn đoán gồm nhiều mô đun và nhiều giaiđoạn để thực hiện, tất cả các mô đun và các giai đoạn thực hiện đều khó và phức tạp.Nhưng cốt lõi hơn hết là việc xử lý dữ liệu hiệu quả Vì vậy, tác giả ưu tiên tập trungnghiên cứu các thuật toán tìm các triệu chứng có số lượng phổ biến tối đại từ CSDLtriệu chứng liên quan bệnh thu thập được từ đó bác sĩ sẽ được gợi ý các tìm ra tậptriệu chứng bệnh có liên quan nhiều mặt bệnh nhất, hỗ trợ khai thác bệnh chứng từbệnh nhân từ đó đưa ra những câu hỏi bệnh liên quan đến bệnh có thể xảy ra nhằmmục
Trang 19tiêu đưa ra chẩn đoán phù hợp để điều trị cho bệnh nhân
2 Nội dung nghiên cứu
Nghiên cứu các thuật toán cơ bản về khai thác tập phổ biến tối đại trên cờ sở dữliệu giao dịch
Xây dựng mô đun hệ thống hỗ trợ ra quyết định chẩn đoán điều trị dựa trênCSDL triệu chứng liên quan bệnh, với cơ chế đưa ra các triệu chứng bệnh có liênquan nhiều bệnh nhất để hỗ trợ bác sĩ có thể làm căn cứ ưu tiên để hỏi thăm bệnh cáctriệu chứng liên quan bệnh, tránh hỏi quá nhiều câu hỏi triệu chứng làm giảm và ảnhhưởng khả năng xác định triệu chứng liên quan bệnh
Về mặt thực tiễn: ứng dụng xử lý tri thức từ phác đồ điều trị, cơ sở dữ liệutriệu chứng liên quan bệnh và cung cấp các gợi ý để bác sĩ làm căn cứ ra quyết địnhchẩn đoán điều trị cho bệnh nhân mang lại nhiều lợi ích cho bác sĩ, và là kết quả hữuích cho các sinh viên y khoa tham khảo thực tập
3 Mục tiêu nghiên cứu
Mục tiêu tổng quát: Khảo sát các phương pháp và phân tích thuật toán.
Đánh giá thực nghiệm một số thuật toán khai thác tập phổ biến tối đại và đề xuấtthuật toán áp dụng phù hợp
Mục tiêu cụ thể: Đưa ra các bước thực nghiệm cần thiết để đánh giá khách
quan ưu điểm và khuyết điểm của các thuật toán tìm tập phổ biến tối đại Đánh giáthuật toán khai thác cải tiến So sánh hiệu quả thuật toán của tác giả Kiểm tra tínhđúng đắn của mã nguồn các thuật toán khai thác tập phổ biến tối đại so với mã giảcủa các thuật toán đưa ra trong các bài báo Qua đó, đảm bảo môi trường thựcnghiệm là hoàn toàn đáng tin cậy để so sánh và đánh giá với các kết quả sau này.Phát triển mô đun hệ thống hỗ trợ ra quyết định chẩn đoán điều trị dựa trênthuật toán khai thác tập phổ biến tối đại đã lựa chọn
Hiện thực hệ thống thành hệ hỗ trợ ra quyết định chẩn đoán điều trị trong ứng
Trang 20dụng quản lý khám chữa bệnh
4 Đối tượng nghiên cứu
Thuật toán về khai thác tập phổ biến tối đại như: Apriori, Max-Miner,GENMAX, FPMAX, MAFIA
Dữ liệu mẫu thực nghiệm thuật toán như: http://w w w.phil i pp e - f ournie r viger.c o m / sp m f /index php ? link=datasets p h p
-Dữ liệu triệu chứng: từ kho phác đồ điều trị Sở y tế TP.HCM
http://pdd t m edin e t.or g vn được công khai user: dulieupddt, password: 59ntmk , cơ
sở dữ liệu triệu chứng liên quan bệnh h ttp:// d iseas e -onto l o g y org , Danh mục triệuchứng ICPC2 quốc tế đã được Việt hoá từ Hội bác sĩ gia đình Việt Nam, dữ liệumẫu khám bệnh thực tế của các bệnh từ phần mềm
Nghiên cứu ngôn ngữ C# tích hợp mô đun vào phần mềm quản lý khámbệnh, ngôn ngữ Java thực nghiệm thuật toán
5 Phạm vi nghiên cứu
Có nhiều khó khăn và hạn chế khách quan, nên giai đoạn này tác giả tìm hiểucác thuật toán khai thác tập phổ biến tối đại trên dữ liệu không có biến động, dữ liệunghiên cứu được lấy từ nguồn dữ liệu nghiên cứu chuẩn và dữ liệu y tế, việc đánhgiá chỉ mới đánh giá dựa trên tốc độ xử lý dữ liệu của các thuật toán Việc xử lý dữliệu theo hướng tập trung (chưa nghiên cứu hướng phân tán) Dữ liệu thực nghiệmđược lấy từ nguồn đáng tin cậy
6 Phương pháp nghiên cứu
Tiến hành thu thập và đọc các tài liệu có liên quan đến đề tài
Trang 22phục nhược điểm của thuật toán cũ
7 Cấu trúc luận văn
Luận văn gồm có phần mở đầu, kết luận và 03 chương, cụ thể như sau:
Chương 1: Giới thiệu tổng quan
Nghiên cứu, trình bày lý thuyết về khai thác dữ liệu,về luật kết hợp, trình bàyhướng tiếp cận bài toán của đề tài
Chương 2: Giới thiệu các thuật toán khai thác tập phổ biến tối đại
Trình bày một số thuật toán cơ bản về khai thác tập phổ biến tối đại như: Apriori,Max-Miner, GENMAX, FPMAX, MAFIA để đánh giá các thuật toán
Đề xuất cách tiếp cận giải quyết bài toán dự trên thuật toán MAFIA có hiệu chỉnh
Chương 3: Cài đặt chương trình, thực nghiệm
Tiến hành chạy thử nghiệm bộ dữ liệu thực nghiệm Từ đó hiển thị trực quan trênbiểu đồ kết quả thực nghiệm
Tiến hành xây dựng bộ dữ liệu triệu chứng bệnh từ nguồn dữ liệu nêu trên, thửnghiệm sử dụng công cụ cài đặt thuật toán xMAFIA có cải tiến
Tiến hành xây dựng bộ chức năng hỗ trợ ra quyết định chẩn đoán bệnh từ nguồn
cơ sở dữ liệu triệu chứng cài đặt vào phần mềm quản lý phòng khám
Trang 23Chương 1: GIỚI THIỆU TỔNG QUAN
1.1 Các khái niệm và định nghĩa
Sự phát triển vượt bậc về ứng dụng công nghệ thông tin vào đời sống, cácdoanh nghiệp, tổ chức đã sử dụng công nghệ thông tin vào công tác quản lý, điềuhành hoạt động nên khối lượng thông tin đã tăng trưởng khổng lồ Từ các thập kỷgần đây các nhà nghiên cứu đã phát triển các công cụ, kỹ thuật, phần mềm mới để
hỗ trợ các tiến trình khám phá, phân tích tổng hợp các thông tin từ nguồn dữ liệu,
để tìm ra các thông tin về mặt thống kê, các thông tin về quy luật, thông tin tiềm ẩnbên trong dữ liệu, thông tin có thể là cốt lỗi cần thiết có quá trình ra quyết định củanhà quản lý hay nhà ra quyết định
Khai phá dữ liệu (KPDL) [1] là một tiến trình khám phá tri thức tiềm ẩn trong
cơ sở dữ liệu (CSDL), là hàng loạt các tiến trình trích lọc, sản sinh những tri thứchoặc những mẫu dữ liệu tìm ẩn có khả năng hữu ích từ các CSDL lớn hay đặc thù.KPDL là tiến trình khái quát các sự kiện rời rạc trong CSDL thành các tri thứcmang tính rõ ràng hay khái quát hơn, có tính quy luật hỗ trợ hữu ích cho tiến trình
ra quyết định
Có thể tạm chia KPDL thành 02 dạng chính:
KPDL theo hướng kiểm tra: là dạng người dùng đề xuất các giả định, hệ thốngkiểm tra tính đúng đắn của các giả định (như: truy vấn thông tin, báo cáo, phân tíchthống kê, )
KPDL theo hướng khám phá: là dạng tìm kiếm, khám phá các tri thức tiềm ẩntrong CSDL bằng cách xem xét các giả thiết có khả năng xảy ra phù hợp, hoặc dokhông gian tìm kiếm quá lớn, nên nhiều heuristic đã được đề xuất nhằm nâng caohiệu năng của các giải thuật tìm kiếm trong dữ liệu
Ngày nay nhu cầu trở nên cấp thiết hơn khi các nhà ra quyết định không bằnglòng với dữ liệu đơn giản thu được từ các kỹ thuật trước đây, do đó từ các sự kiện
Trang 24rời rạc trong lĩnh vực ứng dụng, phát sinh nhu cầu nắm bắt tri thức, các mối quan hệgiữa chúng, xa hơn nữa là tìm ra các quy luật trong lĩnh vực chuyên sâu KPDL rađời nhằm đáp ứng nhu cấu cấp thiết trên.
Hình 1.1 Vị trí của KPDL
Các kỹ thuật KPDL hiện nay được khái quát một số cách tiếp cận chính như:
o Khai thác tập phổ biến và luật kết hợp
o Khai thác mẫu tuần tự/ theo thời gian
o Phân lớp dữ liệu và dự báo
o Khai thác cụm
o Mô tả khái niệm
Kiến trúc của hệ thống KPDL có thể có các thành phần chính sau:
Trang 25Khai phá text và web: Tóm tắt tài liệu, khôi phục văn bản và tìm kiếm vănbản, phân lớp văn bản và siêu văn bản.
Tin sinh học: Tìm kiếm và so sánh thông tin di truyền điển hình hoặc đặc biệtnhư bộ gen và DNA, các mối quan hệ ngầm giữa một số gen và một số bệnh ditruyền, …
Trang 26Tài chính và thị trường chứng khoán: Kiểm tra dữ liệu để trích xuất thông tin
dự đoán cho giá của các loại cổ phiếu - Những ứng dụng khác (Viễn thông,bảo hiểm y tế, thiên văn học, chống khủng bố, thể thao, …)
Khái quát các kỹ thuật khai phá dữ liệu: [1]
Khai thác t ập p h ổ biến và l u ật kết h ợp: là tiến trình khám phá các tập giá trịthuộc tính xuất hiện phổ biến trong các đối tượng dữ liệu Từ tập phổ biến có thể tạo
ra các luật kết hợp giữa các giá trị thuộc tính nhằm phản ánh khả năng xuất hiệnđồng thời các giá trị thuộc tính trong tập các đối tượng
Một luật kết hợp X → Y phản ánh sự xuất hiện của tập X dẫn đến sự xuất hiệnđồng thời tập Y Luật kết hợp giúp các nhà hoạch định hiểu rõ xu thế bán hàng, tâm
lý khách hàng, từ đó đƣa ra các chiến lược bố trí mặt hàng, kinh doanh, tiếp thị, tồnkho, …
Khai thác m ẫ u tuần t ự : là tiến trình khám phá các mẫu tuần tự phổ biến phảnánh mối quan hệ giữa các biến cố trong các CSDL hướng thời gian Một luật mô tảtuần tự có dạng tiêu biểu X → Y phản ánh sự xuất hiện của biến cố X sẽ dẫn đếnviệc xuất hiện kế tiếp biến cố Y Nhờ mẫu tuần tự, có thể khám phá các xu thế pháttriển hành vi của đối tượng
Phân lớp dữ liệu : là tiến trình khám phá các luật phân loại hay đặc trưng chocác tập dữ liệu đã được xếp lớp Tập dữ liệu học bao gồm tập đối tượng đã được xácđịnh lớp sẽ được dùng để tạo mô hình phân lớp dựa trên đặc trưng của đối tượngtrong tập dữ liệu học Các luật phân lớp được sử dụng để xây dựng các bộ phân lớp
dữ liệu Phân lớp dữ liệu có vai trò quan trọng trong tiến trình dự báo các khuynhhướng, quy luật phát triển Áp dụng vào tiến trình phân lớp dữ liệu khách hàngtrong CSDL có thể xây dựng các luật phân lớp khách hàng
Khai thác c ụ m : là tiến trình nhận diện các cụm tiềm ẩn trong tập các đối tượngchƣa được xếp lớp Tiến trình khai thác cụm dựa trên mức độ tương tự giữa các đốitượng Các đối tượng được gom cụm sao cho mức độ tương tự giữa các đối tượng
Trang 27trong cùng một cụm là cực đại và mức độ tương tự giữa các đối tượng nằm trong cáccụm khác nhau là cực tiểu Các cụm được đặc trưng bằng các tính chất chung của tất
cả các đối tượng gom cụm Do vậy, khảo sát các cụm sẽ giúp khái quát tổng kếtnhanh chóng nội dung của khối dữ liệu lớn
Trong đó Khai thác tập phổ biến và luật kết hợp là một trong những phần củaquá trình KPDL, l à tiến trình khám phá các tập giá trị thuộc tính xuất hiện phổ biếntrong các đối tượng dữ liệu Từ tập phổ biến có thể tạo ra các luật kết hợp giữa cácgiá trị thuộc tính nhằm phản ánh khả năng xuất hiện đồng thời các giá trị thuộc tínhtrong tập các đối tượng
Khai phá luật kết hợp được mô tả như sự tương quan của các sự kiện xuất hiệnphổ biến một các đồng thời Nhiệm vụ chính của khai phá luật kết hợp là phát hiện
ra các tập con cùng xuất hiện trong một khối lượng giao dịch lớn của một cơ sở dữliệu cho trước Nói cách khác, thuật toán khai phá luật kết hợp cho phép tạo ra cácluật mô tả các sự kiện xảy ra đồng thời (một cách phổ biến) như thế nào Các thuậttoán này trải qua 2 pha: pha đầu là đi tìm các sự kiện xảy ra phổ biến, pha hai là tìmluật
Ta sẽ sơ lược lại tổng quan về lĩnh vực khai thác tập phổ biến và luật kết hợp [1]
1.2 Tổng quan khai thác tập phổ biến và luật kết hợp
Đị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ới các bản ghi chứa một tập con T các tính chất (có thể coi như T ⊆ I), các bản ghiđều có chỉ số riêng Một luật kết hợp là một 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ập
hợp tính chất (itemset) Tập X gọi là nguyên nhân, tập Y gọi là hệ quả
Kí hiệu I = {i1, i2, …, im} là tập các thuộc tính được gọi là các mục dữ liệu D
là CSDL của tập các giao tác, mỗi giao tác T là một tập mục con của tập mục I, T
I Mỗi giao tác có một định danh duy nhất gọi là TID (Transaction Identification)
Trang 28X={i1, i2,…,ik} I được gọi là một tập mục hay một tập k-mục nếu nó chứa kmục.
Trang 29Một giao tác T được gọi là chứa tập mục X chỉ khi X T Mỗi giao tác là một bộ, I
là tập mục
Có 2 độ đo quan trọng đối với luật kết hợp: Độ hỗ trợ (support) và độ tin cậy(confidence), được định nghĩa như phần dưới đây
Định nghĩa: Độ hỗ trợ (support), độ tin cậy (confidence)
Định nghĩa 1.2.1: Độ hỗ trợ của một tập mục X trong cơ sở dữ liệu D là tỉ
số giữa số các giao tác T D có chứa tập X và tổng số giao tác trong D (hay làphần trăm của các giao tác trong D có chứa tập mục X), ký hiệu là support(X) haySupp(X)
Trang 30Supp (X)= | {T D : Y X } |
| D |
(1.2.1)
Ta có: 0 ≤ Supp(X)≤ 1 với mọi tập hợp X
số giao tác trong D chứa X Y với số giao tác trong D có chứa tập mục X Kí hiệu
độ tin cậy của một luật là conf (r) Ta có 0 conf 1
Nhận xét: Độ hỗ trợ và độ tin cậy chính là xác suất sau
Supp(X Y) = P(X Y)
Conf (XY) =P(Y/X) =Supp(X Y)/Supp(X)
Khi chúng ta nói rằng độ hỗ trợ của một luật là 50%, có nghĩa là có 50% tổng
số bản ghi chứa X∪Y Như vậy, độ hỗ trợ mang ý nghĩa thống kê của luật
Nói rằng độ tin cậy của một luật là 90%, có nghĩa là có tới 90% số bản ghi chứa
X chứa luôn cả Y Hay nói theo ngôn ngữ xác suất là: “ Xác suất có điều kiện để sảy
ra sự kiện Y đạt 85%” Điều kiện ở đây chính là: “Xảy ra sự kiện X”
Như vậy, độ tin cậy của luật thể hiện sự tương quan (correlation) gữa X và Y
Trang 31Độ tin cậy đo sức nặng của luật, và người ta hầu như chỉ quan tâm đến những luật
có độ tin cậy cao Một luật kết hợp đi tìm các nguyên nhân dẫn tới hỏng hóc của hệthống tổng đài, hay đề cập đến những mặt hàng thường hay được khách hàng muakèm với mặt hàng chính mà độ tin cậy thấp sẽ không có ích cho công tác quản lý.Việc khai thác các luật kết hợp từ cơ sở dữ liệu chính là việc tìm tất cả các luật
có độ hỗ trợ và độ tin cậy do người sử dụng xác định trước Các ngưỡng của độ hỗ
trợ (phổ biến)và độ tin cậy được ký hiệu là Minsupp và Minconf.
Ví dụ: phân tích giỏ hàng của người mua hàng trong một siêu thị ta được luậtkiểu như: 85% khách hàng mua sữa thì cũng mua bánh mì, 30% thì mua cả hai thứ.Trong đó: “mua sữa” là tiền đề còn “mua bánh mì ” là kết luận của luật Con số 30%
là độ hỗ trợ của luật còn 80% là độ tin cậy của luật
Nhận thấy rằng tri thức đem lại bởi luật kết hợp dạng trên có sự khác biệt rấtnhiều so với những thông tin thu được từ các câu lệnh truy vấn dữ liệu thông thườngnhư SQL Đó là những tri thức, những mối liên hệ chưa biết trước và mang tính dựbáo đang tiềm ẩn trong dữ liệu Những tri thức này không đơn giản là kết quả củaphép nhóm, tính tổng hay sắp xếp mà là của một quá trình tính toán khá phức tạp
Định nghĩa: Tập hợp
Định nghĩa 1.2.3: Tập hợp X được gọi là tập phổ biến nếu có Supp(X) >=
minsupp, với minsupp là ngưỡng độ hỗ trợ cho trước Kí hiệu các tập này là FI
Tính chất 1.1: Giả sử A,B ⊆ I là hai tập hợp với A⊆B thì supp(A)>=Supp(B).Như vậy, những bản ghi nào chứa tập hợp B thì cũng chứa tập hợp A
Tính chất 1.2: Giả sử A, B là hai tập hợp, A,B⊆I, nếu B là tập phổ biến và
A⊆B
thì A cũng là tập phổ biến
Nếu B là tập phổ biến thì Supp(B)>= minsupp, mọi tập hợp A là con của tậphợp B đều là tập phổ biến trong cơ sở dữ liệu D vì Supp(A) >= Supp(B) (Tính chất2.1)
Trang 32Tính chất 1.3: Giả sử A, B là hai tập hợp, A⊆B và A là tập hợp không phổ biến
thì B cũng là tập hợp không phổ biến
Định nghĩa 1.2.4: Một tập mục X được gọi là đóng (closed) nếu không có tập
cha nào của X có cùng độ hỗ trợ với nó, tức là không tồn tại một tập mục X’ nào màX’⊃X và t(X) = t(X’) (với t(x) và t(X’) tương ứng là tập các giao chứa tập mục Xvà
X’) Ký hiệu tập phổ biến đóng là FCI
Định nghĩa 1.2.5: Nếu X là phổ biến và không tập cha nào của X là phổ biến,
ta nói rằng X là một tập phổ biến lớn nhất (maximally frequent itemset) hay còn gọi
là tập phổ biến tối đại Ký hiệu tập tất cả các tập phổ biến lớn nhất là MFI
Pha 1: Tìm tất cả các tập phổ biến (tìm FI) trong CSDL T
Pha 2: Sử dụng tập FI tìm được ở pha 1 để sinh ra các luật tin cậy (interestingrules)
Nếu gọi ABCD và AB là các tập mục phổ biến, thì chúng ta có thể xác định luậtAB→CD với tỷ lệ độ tin cậy: Conf Supp (ABCD) Supp(AB)
Nếu Conf >= Minconf thì luật được giữ lại (và thỏa mãn độ hỗ trợ tối thiểu vìABCD là phổ biến)
Trong thực tế, hầu hết thời gian của quá trình khai thác luật kết hợp là thựchiện ở pha 1 Nhưng khi có những mẫu rất dài (mẫu chứa nhiều mục) xuất hiệntrong dữ liệu, việc sinh ra toàn bộ các tập phổ biến (FI) hay các tập đóng (FCI) làkhông thực tế Hơn nữa, có nhiều ứng dụng mà chỉ cần sinh tập phổ biến lớn nhất(MFI) là đủ,
Trang 33như khám phá mẫu tổ hợp trong các ứng dụng sinh học.
Có rất nhiều nghiên cứu về các phương pháp sinh tất cả các tập phổ biến và tậpphổ biến lớn nhất một cách có hiệu quả Khi các tập phổ biến dài có từ 15 đến 20hạng mục thì tập FI, thậm chí cả tập FCI trở nên rất lớn và hầu hết các phương pháptruyền thống phải đếm quá nhiều tập mục mới có thể thực hiện được
1.3 Hệ chuyên gia trong lĩnh vực y tế
Về lĩnh vực ứng dụng Y tế có các loại hệ thống chuyên gia phát triển rất nhanh
và đa dạng từ KPDL
Hệ chuyên gia là một chương trình máy tính nhằm dạy cho máy tính biết cáchoạt động của một chuyên gia thực thụ Hệ chuyên gia đầu tiên được xây dựng làDENDRAL, xuất hiện vào giữa thập niên 70, sau đó vào năm 1975 hệ chuyên giaMYCIN ra đời đã thành công trong việc áp dụng khoa học trí tuệ nhân tạo vào lĩnhvực Y học, cụ thể là lĩnh vực chẩn đoán và điều trị bệnh nhiễm trùng máu Đây là hệchuyên gia tương đối lớn, thực hiện ở mức chuyên gia con người, bên cạnh đó còncung cấp cơ chế giải thích các bước suy luận các mặt bệnh
Và trong các năm gần đây, các nhà khoa học tiếp cận như: Đỗ Văn Thành(2000) một cách tiếp cận ra quyết định trong chẩn đoán lâm sàng [2], Văn ThếThành, Trần Minh Bảo (2012) xây dựng hệ hỗ trợ ra quyết định chẩn đoán bệnh [3],Tripathy, B K.; Acharjya, D P and Cynthya (2011), A Framework for IntelligentMedical Diagnosis using Rough Set with Formal Concept Analysis [4], hệ hỗ trợDoctor’s Exam của tác giả Dr Nakamura, Dr Allan H Bruckheim [5] Bs Bảo Phi(2015) phần mềm DAPro 2.1 – phần mềm câu hỏi sổ tay chẩn đoán [6],.…
Việc bác sĩ sử dụng nguồn thông tin từ kiến thức đã được đào tạo, kinh nghiệm
để đưa ra các quyết định chẩn đoán điều trị cho bệnh nhân đó là một công việc quátải hằng ngày mà bác sĩ phải đối mặt Một thực tế đúng đắn là bác sĩ đưa ra quyếtđịnh tại thời điểm thích hợp cung cấp một lợi thế trong chẩn đoán y tế về mặt điềutrị và lợi ích cho sức khoẻ bệnh nhân Tuy nhiên, thách thức thực sự nằm trongchuyển
Trang 34đổi dữ liệu kiến thức và sử dụng kiến thức các chuyên gia đã soạn ra các hướng dẫn,phác đồ điều trị để bác sĩ có thể tận dụng các kiến thức để thực hiện ra quyết địnhchẩn đoán y tế phù hợp.
Phác đồ điều trị: là tài liệu được các chuyên gia y tế biên soạn làm tài liệumang tính chất hướng dẫn điều trị, tài liệu tham khảo để đào tạo, cũng gần nhưmang tính chất quyết định hướng dẫn định hướng tiêu chuẩn cho các bác sĩ Phác đồđiều trị được cập nhật và bổ sung theo thời gian phù hợp với tình hình bệnh tật, môhình bệnh tật và các cập nhật hướng điều trị theo quốc tế
Cụ thể ta xét bài toán các mặt bệnh từ phác đồ điều trị của các chuyên gia cócác biểu hiện triệu chứng của bệnh nhân như sau:
Trang 35Nếu bệnh nhân có TC1 (triệu chứng) thì căn cứ CSDL có thể bác sĩ cần xemxét tiếp các bệnh 1,3,5,7 từ đây bác sĩ sẽ hỏi thêm thông tin sức khoẻ, hoặc dữ kiện
y tế của bệnh nhân:
Nếu có thêm TC5 thì có thể xem xét bệnh 1 hoặc bệnh 5
Có thêm TC4 thì có xem xét bệnh 7 hoặc bệnh 3, nhưng có thêm TC3 nữa thìbác sĩ có thể nghĩ đến bệnh nhân mắc bệnh 3, từ đây bác sĩ sẽ ra hướng quyết địnhđiều trị cho bệnh nhân, nhưng với nhiều
Dữ liệu triệu chứng liên quan mặt bệnh: được tác giả tập hợp từ các nguồn dữliệu kho phác đồ điều trị Sở Y tế TP.HCM htt p ://pddt m e dinet.or g vn được côngkhai user: dulieupddt, password: 59ntmk , cơ sở dữ liệu triệu chứng liên quan bệnh
http://dise a s e -onto l o g y org Danh mục triệu chứng ICPC2 quốc tế đã được Việt hoá
từ Hội bác sĩ gia đình Việt Nam, từ đó xử lý và tập hợp lại với dạng dữ liệu triệuchứng có quan hệ với mặt bệnh, và thu thập các dữ liệu hỏi khám triệu chứng củabác sĩ tại phần mềm quản lý phòng khám
Thách thức đặt ra là làm sao từ cơ sở dữ liệu câu hỏi triệu chứng của cácchuyên gia ứng dụng vào công việc để hỗ trợ bác sỹ ra quyết định chẩn đoán điều trịcho bệnh nhân đang rất cần thiết để hỗ trợ bác sĩ ra quyết định
Sử dụng khai thác tập phổ biến tối đại trong ứng dụng trong y tế hệ hỗ trợquyết định để cung cấp chức năng phân tích tầm quan trọng các thuộc tính triệuchứng sức khoẻ làm sao tìm ra triệu chứng có mối liên hệ nhiều nhất đến các mặtbệnh, các mối quan hệ liên quan từ đó giúp hỗ trợ bác sĩ ra quyết định chẩn đoánđiều trị thích hợp cho bệnh nhân
Vì vậy tác giả chọn đề tài “Áp dụng khai thác tập phổ biến tối đại để phát triển
hệ hỗ trợ quyết định chẩn đoán điều trị” nhằm góp phần tạo ra thêm một công cụgiúp các nhà chuyên gia y tế cập nhật bổ sung dữ liệu tri thức và từ nguồn dữ liệunày qua quá trình khai phá để sử dụng từ đó hỗ trợ các bác sỹ thực tế ra các quyếtđịnh chẩn đoán phù hợp hơn, bác sĩ có thể chọn những câu hỏi triệu chứng liên quantới những
Trang 36bệnh liên quan nhất để đưa ra các quyết định phù hợp điều trị cho bệnh nhân.
1.4 Kết luận chương 01
Trong chương 01 tác giả đã trình bày các kiến thức tổng quan về KPDL[1],luật kết hợp, các loại tập phổ biến và tính chất, định nghĩa liên quan Trình bày tổngquan về hệ chuyên gia trong lĩnh vực y tế
Bài toán tìm tập triệu chứng có mối liên hệ giữa các bệnh nhiều nhất có ý nghĩa
to lớn trong thực tế, do vậy việc nghiên cứu các thuật toán tìm tập phổ biến tối đạiđược rất nhiều nhà nghiên cứu quan tâm Trong chương 02, tác giả sẽ trình bày tổngquan các thuật toán tìm tập phổ biến tối đại để có cơ sở ứng dụng thuật toán vào cơ
sở dữ liệu triệu chứng và bệnh
Trang 37Chương 2: KHAI THÁC TẬP PHỔ BIẾN TỐI ĐẠI
2.1 Tổng quát khai thác tập phổ biến tối đại.
Theo tác giả Bayardo – SIGMOD’98 [7]: tập phổ biến tối đại là tập phổ biến vàkhông tồn tại tập nào bao nó là phổ biến.Ví dụ cho M ∈ FS(O,I,R,minsupp), M đượcgọi là tập phổ biến tối đại nếu không tồn tại S ∈ FS(O,I,R,minsupp), M ≠ S, M ⊂ S
Ký hiệu MS(O,I,R,minsupp) là tập hợp các tập phổ biến tối đại theo ngưỡngminsupp
Minsupp có thể nhập bằng một số hoặc số % ví dụ minsupp= 2 trong CSDL có
3 giao dịch thì có nghĩa nếu hạng mục nào 2 xuất hiện lần trong các giao dịch, nghĩa
là 2 chia 3 = 0,66 tương đương 66%, vì trong thực tế số lượng giao dịch trong CDSLrất lớn nên các nhà phát triển thường để người dùng xác định là %, vì người dùngkhông biết chính xác con số xuất hiện trong các giao dịch
Tập phổ biến tối đại (Maximal frequent Itemsets) thỏa supp(X) ≥ minsupp và
không tồn tại |X’| > |X|, với X’ cũng phổ biến (tập phổ biến tối đại là tập phổ biến vàkhông tồn tại tập nào bao nó là phổ biến)
Ta có mô hình:
Frequent Itemsets
Frequent Itemsets
Maximal Frequent Itemsets
MFI⊆FCI⊆FI
Hình 2.1 Mô hình các loại tập phổ biến
Trang 38Trước khi qua các thuật toán liên quan về tìm tập phổ biến tối đại, chúng ta sẽxem xét thuật toán cơ bản Apriori tìm tập phổ biến, tập bao phổ biến, tập phổ biếntối đại.
2.2 Thuật toán tìm kiếm theo chiều rộng Apriori.
Thuật toán Apriori được đề xuất bởi tác giả R Agrawal và R Srikant – 1994[8] để khai thác các tập item đối với các luật kết hợp kiểu bool Tên của thuật toándựa trên việc thuật toán sử dụng tri thức trước (prior knowledge) của các thuộc tínhtập item phổ biến
Nguyên tắc loại bỏ của Apriori: nếu không phải là tập phổ biến thì tập bao nócũng không phổ biến
Tính chất Apriori: tất cả các tập con không rỗng của một tập item phổ biến cũng
phải là phổ biến
Tính chất Apriori này dựa theo nhận xét sau Theo định nghĩa, nếu một tậpitem I không thỏa ngưỡng độ phổ biến tối thiểu minsupp, thì I không là phổ biến, do
đó, P(I)< minsupp
Nếu một item A được thêm vào tập item I, thì tập item được tạo thành (ví
dụ, I∪A) không thể xuất hiện phổ biến hơn I Do đó, I∪A cũng không phổ biến; do
đó, P(I∪A) < minsupp
Tính chất này là đặc biệt của các thuộc tính gọi là chống đơnđiệu (antimonotone) nghĩa là nếu một tập không thể qua kiểm tra, tất cả các tập cha(superset) của nó cũng sẽ thất bại với sự kiểm tra tương tự Đó gọi là chống đơnđiệu là vì thuộc tính này là đơn điệu (monotonic) trong ngữ cảnh của việc thất bại sựkiểm tra
Phương pháp:
Tìm tất cả các tập phổ biến 1- hạng mục (C1)
Trang 39 Tạo các tập ứng viên kích thước k-hạng mục (k – candidate itemset) từ
các tập phổ biến có kích thước (k-1)-hạng mục Ví dụ, tạo ứng viên C2 từtập phổ biến C1
Kiểm tra độ phổ biến của các ứng viên trên CSDL và loại các ứng viên không phổ biến ta được Li(i=1,2,3, ,k)
Dừng khi không tạo được tập phổ biến hay tập ứng viên Lk={}hay
Ck={} Ví dụ: cho CSDL giao dịch như sau
Bảng 2.1 CSDL giao dịch ví dụ thuật toán Apriori
Ta sẽ biến đổi ngưỡng phổ biến minsupp=22% = 2/9
Hoặc biểu diễn CSDL về dạng nhị phân như sau:
Trang 40Ite mse { M
4
{ M
4
{ M
2
{ M
4
{ M
2
{ M
Bảng 2.2 CSDL giao dịch biểu diễn dạng nhị phân ví dụ thuật toán Apriori
Ta sẽ có các bước chạy thuật toán như sau: