Khi đó, một số bài toán trong bảng quyết định liên quan đến tập rút gọn có thể được giải quyết bằng một số kết quả liên quan đến tập tối thiểu của một thuộc tính trong lý thuyết cơ sở d
Trang 2người thầy đã hết lòng giúp đỡ và tạo điều kiện tốt nhất để em hoàn thành luận văn này
Em xin chân thành cảm ơn toàn thể các Thầy, cô công tác tại Viện CNTT và Trường Đại học Công Nghệ Thông Tin và Truyền Thông - Đại Học Thái Nguyên đã luôn tận tình chỉ bảo, giúp đỡ, tạo điều kiện và truyền đạt kiến thức cho em trong suốt quá trình học tập và thực hiện luận văn
Xin chân thành cảm ơn Ban Giám Hiệu Trường THPT Định Hóa, gia đình, bạn bè và đồng nghiệp đã không ngừng quan tâm, động viên, giúp đỡ và tạo mọi điều kiện tốt nhất cho tôi trong suốt thời gian học tập và thực hiện luận văn
Mặc dù đã cố gắng rất nhiều, nhưng do thời gian có hạn và bản thân còn những hạn chế nhất định nên luận văn không tránh khỏi thiếu sót Em rất mong nhận được các ý kiến phê bình, góp ý của Hội đồng bảo vệ luận văn, các thầy cô giáo và đồng nghiệp để luận văn được hoàn chỉnh hơn
Thái Nguyên, ngày 09 tháng 05 năm 2015
Học viên
Chử Thị Quỳnh Hoa
Trang 3cứu Trong luận văn có sử dụng một số định nghĩa, bổ đề, hệ quả, thuật toán lấy từ nguồn tài liệu có trích dẫn tên tài liệu và tên tác giả rõ ràng như đã nêu trong phần tài liệu tham khảo Tôi xin chịu trách nhiệm về sản phẩm nghiên cứu của mình
Học viên
Chử Thị Quỳnh Hoa
Trang 4MỤC LỤC
Lời cam đoan
MỤC LỤC i
Danh mục các thuật ngữ iv
Danh mục các ký hiệu, các từ viết tắt v
Danh sách bảng vii
Danh sách hình vẽ viii
MỞ ĐẦU 1
Chương 1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ BÀI TOÁN CHẨN ĐOÁN BỆNH 3
1.1 Các khái niệm cơ bản về hệ thông tin và tập thô 3
1.1.1 Hệ thông tin 3
1.1.2 Tập thô 5
1.1.3 Bảng quyết định 8
1.1.4 Cơ sở dữ liệu quan hệ 10
1.1.5 Tập rút gọn và lõi 12
1.1.6 Luật quyết định 14
1.2 Khai phá dữ liệu 15
1.2.1 Khai phá dữ liệu và phát hiện tri thức 15
1.2.2 Các chức năng khai phá dữ liệu 17
1.2.3 Các hệ thống khai phá dữ liệu và kiến trúc tổng quát của chúng 18
1.2.4 Các loại dữ liệu có thể khai phá được 22
1.2.5 Khai phá dữ liệu theo hướng tiếp cận tập thô 22
1.3 Bài toán chẩn đoán bệnh 23
1.3.1 Vai trò của phương pháp chẩn đoán lâm sàng trong y học 23
1.3.2 Giá trị thực tiễn của việc xác định quan hệ giữa phụ thuộc hàm và bảng quyết định trong chẩn đoán bệnh 24
Trang 51.4 Kết luận chương 1 26
Chương 2 MỐI QUAN HỆ GIỮA PHỤ THUỘC HÀM VÀ BẢNG QUYẾT ĐỊNH THEO HƯỚNG TIẾP CẬN TẬP THÔ 27
2.1 Xác định các phụ thuộc hàm từ bảng quyết định 27
2.1.1 Thuộc tính rút gọn và các thuật toán tìm chúng 27
2.1.2 Thuật toán tìm họ tất cả các tập rút gọn trong bảng quyết định 36
2.1.3 Tập lõi trong bảng quyết định 38
2.1.4 Thuật toán xác định các phụ thuộc hàm từ bảng quyết định 42
2.2 Xây dựng bảng quyết định từ tập phụ thuộc hàm 44
2.2.1 Sự phụ thuộc giữa các thuộc tính trong bảng quyết định 44
2.2.2 Một số thuật toán cơ bản liên quan đến phụ thuộc hàm 45
2.2.3 Thuật toán xây dựng bảng quyết định từ tập phụ thuộc hàm 50
2.3 Kết luận chương 2 54
Chương 3 CHƯƠNG TRÌNH THỬ NGHIỆM 55
3.1 Bài toán chẩn đoán bệnh cúm 55
3.1.1 Yêu cầu nghiệp vụ 55
3.1.2 Yêu cầu công nghệ 57
3.2 Thiết kế chương trình 57
3.2.1 Thiết kế cơ sở dữ liệu 57
3.2.2 Thiết kế xử lý 59
3.2.3 Thiết kế các mô-đun và lược đồ chương trình 60
3.3 Cài đặt và thực hiện chương trình 63
3.3.1 Các chức năng chương trình 63
3.3.2 Hệ thống dữ liệu đầu vào 64
3.3.3 Hệ thống giao diện 65
3.3.4 Kết quả thử nghiệm chương trình và đánh giá 67
3.4 Kết luận chương 3 71
Trang 6KẾT LUẬN 72
Tài liệu tham khảo 73
PHỤ LỤC 75
Trang 7Danh mục các thuật ngữ
Thuật ngữ tiếng Việt Thuật ngữ tiếng Anh
Quan hệ không phân biệt được Indiscernibility Relation
Quan hệ dung sai Tolerance Relation
Rút gọn thuộc tính Attribute Reduction
Ma trận phân biệt Indiscernibility Matrix
Hàm phân biệt Indiscernibility Function
Tập tối thiểu của thuộc tính a Minimal set of the attribute a
Họ các tập tối thiểu của thuộc tính
a
Family of all minimal sets of attribute
a
Trang 8Danh mục các ký hiệu, các từ viết tắt
Ký hiệu, từ viết tắt Diễn giải
C Số thuộc tính điều kiện trong bảng quyết định
A Số thuộc tính trong hệ thông tin
u a Giá trị của đối tượng u tại thuộc tính a
IND B Quan hệ B không phân biệt
u B Lớp tương đương chứa u của quan hệ IND B
Trang 9CSDL Cơ sở dữ liệu
Trang 10Danh sách bảng
Bảng 1.1 Bảng dữ liệu về bệnh cúm 4
Bảng 1.2 Bảng thông tin về bệnh cúm 7
Bảng 1.3 Bảng quyết định 9
Bảng 1.4 Bảng quyết định về bệnh cúm 14
Bảng 2.1 Bảng quyết định ở Ví dụ 2.1 30
Bảng 2.2 Bảng quyết định về bệnh cúm ở Ví dụ 2.2 32
Bảng 2.3 Bảng rút gọn thứ nhất của hệ thống bệnh cúm R 33 1 Bảng 2.4 Bảng rút gọn thứ hai của hệ thống bệnh cúm R 33 2 Bảng 2.5 Bảng quyết định ở Ví dụ 2.3 37
Bảng 2.6 Bảng quyết định minh họa Ví dụ 2.4 41
Bảng 2.7 Bảng quyết định được xây dựng từ Thuật toán 2.16 54
Trang 11Danh sách hình vẽ
Hình 1.1 Quá trình phát hiện tri thức 16
Hình 1.2 Kiến trúc của một hệ thống khai phá dữ liệu điển hình 20
Hình 2.1 Sơ đồ thuật toán xây dựng các phụ thuộc hàm từ bảng quyết định 43
Hình 2.2 Sơ đồ thuật toán xây dựng bảng quyết định từ tập phụ thuộc hàm 51
Hình 3.1 Màn hình giao diện chương trình 65
Hình 3.2 Màn hình xây dựng bảng quyết định 65
Hình 3.3 Màn hình xây dựng bảng thuộc tính rút gọn 66
Hình 3.4 Màn hình xây dựng các phụ thuộc hàm và luật quyết định từ bảng quyết định 67
Trang 12MỞ ĐẦU
Lý thuyết tập thô (Rough Set Theory) do Zdzislaw Pawlak (1926-2006)
đề xuất vào năm 1982 đã được ứng dụng ngày càng rộng rãi trong lĩnh vực khoa học máy tính Lý thuyết tập thô được phát triển trên một nền tảng toán học vững chắc, cung cấp các công cụ hữu ích để giải quyết các bài toán phân tích dữ liệu, phát hiện luật, nhận dạng… Đặc biệt thích hợp với các bài toán phân tích trên khối lượng dữ liệu lớn, chứa đựng thông tin mơ hồ, không chắc chắn Mục đích chính của phân tích dữ liệu dựa trên lý thuyết tập thô nhằm đưa ra các xấp xỉ để biểu diễn các đối tượng không thể được phân lớp một cách chắc chắn bằng tri thức có sẵn Theo quan điểm của lý thuyết tập thô, mọi tập thô đều liên kết với hai tập “rõ” là xấp xỉ dưới và xấp xỉ trên của nó Xấp xỉ dưới bao gồm các đối tượng chắc chắn thuộc tập đó, còn xấp xỉ trên chứa tất cả các đối tượng có khả năng thuộc về tập đó Các tập xấp xỉ là cơ sở
để rút ra các kết luận (tri thức) từ cơ sở dữ liệu
Trong lý thuyết tập thô, mô hình biểu diễn dữ liệu được trình bày thông qua hệ thông tin hay bảng quyết định
Bảng quyết định là một hệ thông tin có dạng T = (U,A), với U là tập các đối tượng và A là tập các thuộc tính, trong đó tập thuộc tính A được chia thành hai tập thuộc tính con khác rỗng rời nhau là C và D, C được gọi là tập thuộc tính điều kiện và D là tập thuộc tính quyết định Tức là T = (U, C D) với C D = Bảng quyết định là mô hình thường gặp trong thực tế, khi mà giá trị dữ liệu tại các thuộc tính điều kiện có thể cung cấp cho ta thông tin về giá trị của thuộc tính quyết định Bảng quyết định là nhất quán khi phụ thuộc hàm C → D là đúng, trái lại là không nhất quán
Với bảng quyết định nhất quán T = (U,CD), tập thuộc tính RC
được gọi là một tập rút gọn của tập thuộc tính điều kiện C nếu R là tập tối
Trang 13thiểu thỏa mãn phụ thuộc hàm RD Giả sử D chỉ chứa một thuộc tính duy nhất d , nếu xem bảng quyết định T là quan hệ r trên tập thuộc tính C d
thì khái niệm tập rút gọn tương đương với khái niệm tập tối thiểu của thuộc tính d trên quan hệ Khi đó, một số bài toán trong bảng quyết định liên
quan đến tập rút gọn có thể được giải quyết bằng một số kết quả liên quan đến tập tối thiểu của một thuộc tính trong lý thuyết cơ sở dữ liệu quan hệ; bao gồm bài toán tìm tập tất cả các thuộc tính rút gọn, bài toán trích lọc các phụ thuộc hàm từ bảng quyết định, bài toán xây dựng bảng quyết định thỏa mãn tập phụ thuộc hàm cho trước
Do tính hấp dẫn và tính thời sự của khai phá dữ liệu, đặc biệt là mối quan hệ giữa phụ thuộc hàm và bảng quyết định để từ bảng quyết định trích lọc các phụ thuộc hàm và xây dựng bảng quyết định thỏa mãn tập phụ thuộc hàm cho trước nên tôi lựa chọn đề tài “Nghiên cứu mối quan hệ giữa phụ thuộc hàm và bảng quyết định trong chẩn đoán bệnh” là luận văn cao học của mình Trong đó vận dụng kiến thức nghiên cứu này vào chẩn đoán bệnh lâm sàng trong lĩnh vực y học
Trang 14Chương 1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ BÀI
TOÁN CHẨN ĐOÁN BỆNH 1.1 Các khái niệm cơ bản về hệ thông tin và tập thô
1.1.1 Hệ thông tin
Một tập dữ liệu có thể biểu diễn dưới dạng một bảng, trên đó mỗi hàng biểu diễn thông tin ứng với một đối tượng, mỗi cột biểu diễn một thuộc tính
có thể đo được của mỗi đối tượng (do các chuyên gia hay người sử dụng cung
cấp) Bảng này được gọi là một hệ thông tin Một cách hình thức, hệ thông tin
được định nghĩa như sau:
Định nghĩa 1.1 Hệ thông tin (Information System) là một cặp S = (U, A)
u(b i ) bởi u(B) Như vậy, nếu u và v là hai đối tượng, thì ta sẽ viết u(B) = v(B)
nếu u(b i )= v(b i ), với mọi i = 1, 2, , k [6]
Định nghĩa 1.2 Quan hệ không phân biệt được
Xét hệ thông tin S = (U, A), với mỗi tập thuộc tính BA tạo ra một
quan hệ hai ngôi trên U, ký hiệu IND(B)
(B) = u,v U U | u a v a , a B
IND(B) được gọi là quan hệ B_không phân biệt được Dễ kiểm chứng
đây là một quan hệ tương đương trên U Nếu ( , )u v IND B( ) thì hai đối
Trang 15tượng u và v giống nhau (không phân biệt được) nếu chỉ xem xét giá trị tại các thuộc tính trong B Quan hệ tương đương IND(B) xác định một phân hoạch trên U, ký hiệu U/IND(B) hay U/B, tức là U/IND(B) = U/B = u B| uU Với mọi đối tượng uU, lớp tương đương của u trong quan hệ IND(B) được
ký hiệu bởi [u] B Khi đó [u]B = {v U|(u,v) IND(B)} [6]
Ví dụ 1.1 Xét hệ thông tin cho ở bảng 1.1
A = {Đau đầu, Đau cơ, Thân nhiệt, Cúm}
Trong bảng, các bệnh nhân u2, u4 và u6 không phân biệt được đối với thuộc tính Đau đầu; bệnh nhân u5 và u6 không phân biệt được đối với thuộc tính Đau cơ, Cúm và bệnh nhân u2, u4 không phân biệt được đối với thuộc tính Đau đầu, Đau cơ và Thân nhiệt
Do đó:
IND({Đau đầu}) = {{u 1 , u 3 , u 5 },{u 2 , u 4 , u 6}}
IND({Đau cơ}) = {{u 1 , u 3 , u 5 , u 6 },{u 2 , u 4}}
IND({Thân nhiệt}) = {{u 2 , u 3 , u 4 },{u 5 , u 6 }, {u 1}}
IND({Cúm}) = {{u 3 , u 4 , u 5 , u 6 },{ u 1 , u 2}}
IND({Đau đầu, Đau cơ}) = {{u 1 , u 3 , u 5 },{u 2 , u 4 }, { u 6}}
Trang 16Xét hệ thông tin S = (U, A), một quan hệ bộ phận xác định trên họ
U/B | BAđược định nghĩa: U/P U/Q nếu và chỉ nếu
Cho hệ thông tin S U A, và tập đối tượng X U Với một tập
thuộc tính B A cho trước, chúng ta có các lớp tương đương của phân hoạch
/
U B Trong lý thuyết tập thô truyền thống, để biểu diễn X thông qua các lớp
tương đương của U B (còn gọi là biểu diễn X bằng tri thức có sẵn B), người /
ta xấp xỉ X bởi hợp của một số hữu hạn các lớp tương đương của U B Có /
hai cách xấp xỉ tập đối tượng X thông qua tập thuộc tính B, được gọi là B-xấp
xỉ dưới và B-xấp xỉ trên của X, ký hiệu lần lượt là BX và BX , được xác định
B
NEG X U BX : B-miền ngoài của X
Dễ thấy B-miền biên của X là tập chứa các đối tượng có thể thuộc X, còn
B-miền ngoài của X chứa các đối tượng chắc chắn không thuộc X Sử dụng
các lớp của phân hoạch U/B, các xấp xỉ dưới và trên của X có thể viết lại:
Trang 17Thuật toán 1.1 [2] Xác định xấp xỉ dưới, xấp xỉ trên
Đầu vào: Hệ thông tin S = (U, A), tập thuộc tính B A, tập đối tượng
Thuật toán 1.1 có độ phức tạp là O(k|U|log|U|), trong đó |B| |A| = k [2]
Ví dụ 1.2 Xét hệ thông tin biểu diễn các triệu chứng cúm của bệnh nhân
Trang 18U Đau đầu Thân nhiệt Cảm cúm
u 4 Không Bình thường Không
Khi đó: BX u u2, 3 và BX u u u u u u2, 3, 5, 6, 7, 8 Như vậy, B-miền
biên của X là tập hợp BN B X u u u u5, 6, 7, 8 Nếu đặt D = {Cảm cúm} thì
Trang 19Với các khái niệm của tập xấp xỉ đối với phân hoạch U B , các tập thô /được chia thành bốn loại như sau:
1) Tập X là B-xác định thô nếu BX và BX U
2) Tập X là B-không xác định trong nếu BX và BX U
3) Tập X là B-không xác định ngoài nếu BX và BX U
4) Tập X là B-không xác định hoàn toàn nếu BX và BX U [1]
Bảng quyết định là mô hình thường gặp trong thực tế, khi mà giá trị dữ liệu tại các thuộc tính điều kiện có thể cung cấp cho ta thông tin về giá trị của thuộc tính quyết định
Bảng quyết định T được gọi là nhất quán (consistent) khi và chỉ khi phụ thuộc hàm C D nghiệm đúng, nghĩa là với mọi u v U u C, , v C kéo theo u D v D Ngược lại T là không nhất quán (inconsistent) hay mâu thuẫn
Dễ thấy bảng quyết định T là nhất quán khi và chỉ khi POS C D U Trong trường hợp bảng không nhất quán thì POS C D chính là tập con cực
đại của U sao cho phụ thuộc hàm CD đúng
Trang 20Ví dụ 1.3 Hệ thông tin S = (U, A) biểu diễn cơ sở tri thức về bệnh cúm
được thể hiện trong bảng 1.3 là một bảng quyết định T U C, D
Trong đó:
1, 2, 3, 4, 5, 6
U x x x x x x
A = {Đau đầu, Đau cơ, Thân nhiệt, Cúm}
Tập thuộc tính điều kiện C = {Đau đầu, Đau cơ, Thân nhiệt} Tập thuộc tính quyết định D = {Cúm}
U Đau đầu Đau cơ Thân nhiệt Cúm
Trang 211.1.4 Cơ sở dữ liệu quan hệ
Mục này trình bày các khái niệm cơ bản nhất về mô hình dữ liệu quan
hệ của E.F Codd Các khái niệm này có thể xem trong [5]
Cho Ra1, ,a n là một tập hữu hạn, khác rỗng các thuộc tính Mỗi thuộc tính a có miền giá trị là i D a Quan hệ r trên R là tập các bộ i
Cho rh1, ,h mlà một quan hệ trên tập thuộc tính Ra1, ,a n Phụ
thuộc hàm (PTH) trên R là một dãy ký tự có dạng AB với , A B R Khi
đó chúng ta nói A xác định hàm cho B hay B phụ thuộc hàm vào A trong r
(PTH AB thỏa mãn quan hệ r trên R) nếu
h h i, jr a A h a i h a j b B h b i h b j Đặt
r
F A B A BR AB là họ đầy đủ các PTH thỏa mãn quan hệ r Ký
hiệu P R là tập các tập con của R Cho F P R P R Ta nói rằng F là một họ f trên R nếu với mọi , , , A B C DR
Trang 22Sơ đồ quan hệ (SĐQH) s là một cặp R F, với R là tập thuộc tính và
F là tập các phụ thuộc hàm trên R Ký hiệu A a A: a F, A
được gọi là bao đóng của A trên s Dễ thấy ABF khi và chỉ khi
B A Tương tự ký hiệu A r a A: a F, A r được gọi là bao
đóng của A trên quan hệ r
Cho r là một quan hệ, s R F, là một SĐQH, F là một họ f trên R
và AR Khi đó A là một khóa của r (tương ứng của s) nếu
AR ARF A R F Ta gọi A là một khóa tối thiểu của r (tương ứng của s) nếu A là một khóa của r (tương ứng của s) và bất kỳ một tập con thực sự của A không là khóa của r (tương ứng của s) Ký hiệu K và r
K B:B a B A Khi đó, K a s được gọi là họ
các tập tối thiểu của thuộc tính a trên s Tương tự, cho r là một quan hệ trên R
và a Đặt R K a r AR A: a ,B:B a B A Khi đó, K a r
được gọi là họ các tập tối thiểu của thuộc tính a trên r
Gọi K P R là một hệ Sperner trên R nếu với mọi , A B K kéo
theo A B Dễ thấy K r,K K s, a r,K a s là các hệ Sperner trên R Với tập K là một hệ Sperner trên R, ta định nghĩa tập K 1 như sau:
Dễ thấy K 1 cũng là một hệ Sperner trên R Nếu K là một hệ Sperner
trên R đóng vai trò là tập các khóa tối thiểu của quan hệ r (hoặc SĐQH s) thì
1
K là họ tất cả các tập không phải khóa lớn nhất của r (hoặc của s), gọi là
Trang 23tập các phản khóa Nếu K là một hệ Sperner trên R đóng vai trò là họ các tập tối thiểu của thuộc tính a trên r (hoặc trên s), hay K K a r (hoặc K K a s), thì 1 r 1
Trong bảng quyết định, các thuộc tính điều kiện được phân thành thuộc
tính lõi và thuộc tính không cần thiết Thuộc tính lõi là thuộc tính cốt yếu,
không thể thiếu trong việc phân lớp chính xác tập dữ liệu Thuộc tính không cần thiết là thuộc tính dư thừa mà việc loại bỏ thuộc tính này không ảnh hưởng đến việc phân lớp dữ liệu Các thuộc tính không cần thiết được phân
thành hai nhóm: Thuộc tính dư thừa thực sự và thuộc tính rút gọn Thuộc tính
dư thừa thực sự là những thuộc tính dư thừa mà việc loại bỏ tất cả các thuộc
tính như vậy không ảnh hưởng đến việc phân lớp dữ liệu Thuộc tính rút gọn,
với một tổ hợp thuộc tính nào đó nó là thuộc tính dư thừa và với một tổ hợp các thuộc tính khác nó có thể là cốt yếu
Định nghĩa 1.3 [11] (Tập lõi dựa trên miền dương) Cho bảng quyết định
,
T U CD Thuộc tính c C được gọi là không cần thiết (dư thừa)
Trang 24trong bảng quyết định T dựa trên miền dương nếu
( )
POS D POS D ; Nói cách khác, cC là không cần thiết khi và chỉ khi trên POS C D phụ thuộc hàm C\ c D nghiệm đúng; ngược lại, c được gọi là cần thiết Bảng quyết định T được gọi là độc lập nếu mọi thuộc
tính c C đều cần thiết Tập tất cả các thuộc tính cần thiết trong T được gọi
là tập lõi dựa trên miền dương và được ký hiệu là PCORE C Lúc đó, thuộc
tính cần thiết còn được gọi là thuộc tính lõi
Định nghĩa 1.4 [11] (Tập rút gọn dựa trên miền dương) Cho bảng quyết định
,
T U CD và tập thuộc tính RC Nếu
1) POS R( )D POS C( )D
2) r R POS, R r ( )D POS C( )D (Nghĩa là: T U R, D độc lập)
thì R là một tập rút gọn của tập thuộc tính điều kiện C dựa trên miền dương
Nói cách khác, R là tập rút gọn nếu nó là tập tối tiểu thỏa mãn
POS D POS D
Tập rút gọn định nghĩa như trên còn gọi là tập rút gọn Pawlak Rõ ràng
là có thể có nhiều tập rút gọn của C Ký hiệu PRED C là họ tất cả các tập
rút gọn Pawlak của C trong T Một thuộc tính là cần thiết khi và chỉ khi nó thuộc vào mọi tập rút gọn của C Khi đó
Định nghĩa 1.5 [1] Cho bảng quyết định T U C, D và aC Ta nói
rằng a là thuộc tính rút gọn của T nếu tồn tại một tập rút gọn RPRED C
sao cho aR
Định nghĩa 1.6 [1] Cho bảng quyết định T U C, D và aC Ta nói
rằng a là thuộc tính dư thừa thực sự của T nếu
Trang 25Ví dụ 1.4 Xét bảng quyết định về bệnh cúm cho ở Bảng 1.4
U Mệt mỏi Đau đầu Đau cơ Thân nhiệt Cảm cúm
Bảng 1.4 Bảng quyết định về bệnh cúm
Bảng này có hai tập rút gọn là R 1 = {Đau cơ, Thân nhiệt} và R 2 = {Đau đầu, Thân nhiệt} Như vậy tập lõi là PCORE(C) = {Thân nhiệt} và Thân nhiệt
là thuộc tính cần thiết duy nhất Các thuộc tính không cần thiết bao gồm:
Thuộc tính Mệt mỏi là thuộc tính dư thừa thực sự vì không tham gia
vào rút gọn nào
Hai thuộc tính Đau đầu và Đau cơ là hai thuộc tính rút gọn vì đều có
mặt trong một tập rút gọn Hai thuộc tính này đều không cần thiết theo nghĩa là, từ bảng dữ liệu, có thể loại bỏ một trong hai thuộc tính này mà vẫn chẩn đoán đúng bệnh Tức là
POS {Đau cơ, Thân nhiệt} ({Cảm cúm}) = POS C ({Cảm cúm})
POS {Đau đầu, Thân nhiệt} ({Cảm cúm}) = POS C ({Cảm cúm}) [1]
des(X i ), des(Y j ) lần lượt là các mô tả của các lớp tương đương ứng với X i , Y j
Một luật quyết định xác định bởi X i , Y j có dạng:
Trang 261.2.1 Khai phá dữ liệu và phát hiện tri thức
Phát hiện tri thức là lĩnh vực nghiên cứu và ứng dụng mới tập trung vào
dữ liệu, thông tin và tri thức, liên quan đến việc dùng các công cụ tin học để khai thác các hệ thông tin nhằm phát hiện các tri thức từ các hệ thống đó Phát hiện tri thức từ dữ liệu (Knowledge Discovery from Data) là quá trình nhận biết cái logic, cái mới lạ, những tri thức tiềm tàng hữu ích từ cơ sở
dữ liệu, và cuối cùng là việc hiểu được các mẫu, các mô hình trong dữ liệu
Phát hiện tri thức (Knowledge Discovery) trong cơ sở dữ liệu là quá
trình phát hiện các mẫu hay các mô hình đúng đắn, mới lạ, có lợi ích tiềm tàng và có thể hiểu được trong dữ liệu
Khai phá dữ liệu (Data Mining) là quá trình tìm kiếm, khám phá dưới
nhiều góc độ khác nhau nhằm phát hiện các mối liên hệ, quan hệ giữa các dữ liệu, đối tượng bên trong CSDL, phát hiện tri thức mới, có giá trị từ những dữ liệu lớn được lưu trữ trong cơ sở dữ liệu (CSDL), datawarehouse hay các kho chứa thông tin khác
Trang 27Hình 1.1 Quá trình phát hiện tri thức
Phát hiện tri thức là một quá trình bao gồm một dãy các bước lặp sau: Làm sạch dữ liệu, tích hợp dữ liệu, trích chọn dữ liệu, chuyển đổi dữ liệu, khai phá dữ liệu, ước lượng mẫu, biểu diễn tri thức
Trong đó, khai phá dữ liệu là khâu chủ yếu, là một giai đoạn quan trọng trong quá trình phát hiện tri thức từ CSDL, các tri thức này hỗ trợ trong việc
ra quyết định, điều hành trong khoa học và kinh doanh Về bản chất, nó là giai đoạn duy nhất tìm ra được thông tin mới, thông tin tiềm ẩn có trong cơ sở dữ liệu, bao gồm các giải thuật khai phá dữ liệu để tìm ra các mẫu hay các mô hình trong dữ liệu dưới khả năng có thể chấp nhận được của máy tính điện tử Khai phá dữ liệu là tiến trình khám phá tri thức tiềm ẩn trong các CSDL,
cụ thể hơn, đó là tiến trình lọc, sản sinh những tri thức hoặc các mẫu tiềm ẩn, chưa biết những thông tin hữu ích từ các CSDL lớn [3], [4]
Trang 281.2.2 Các chức năng khai phá dữ liệu
Các chức năng khai phá dữ liệu đã được sử dụng để chỉ rõ loại mẫu phải tìm trong các nhiệm vụ khai phá dữ liệu Về mặt tổng thể, các nhiệm vụ khai
phá dữ liệu có thể được phân loại thành 2 phạm trù: mô tả và dự đoán
Các nhiệm vụ mô tả cần làm nổi bật các thuộc tính chung của dữ liệu trong CSDL Nhiệm vụ dự đoán thực hiện các suy luận trên dữ liệu hiện tại để làm các dự báo Công việc khai phá dữ liệu mô tả sẽ mô tả các tính chất hoặc đặc tính chung của dữ liệu trong CSDL, nghĩa là phân tích và mô tả một tập mẫu đã biết trong khả năng nhận thức của con người nhằm giúp họ hiểu rõ hơn, sâu hơn về dữ liệu Còn công việc khai phá dữ liệu dự đoán sẽ thực hiện việc suy luận dựa trên dữ liệu hiện hành để cho ra các dự báo, nghĩa là phân tích tập dữ liệu huấn luyện và tạo ra một hoặc một vài mô hình cho phép dự đoán các mẫu mới chưa biết [4]
Khai phá dữ liệu được chia nhỏ thành một số hướng chính như sau: + Mô tả khái niệm (concept description): thiên về mô tả, tổng hợp và tóm tắt khái niệm
+ Luật kết hợp (association rules): là dạng luật biểu diễn tri thức ở dạng khá đơn giản Luật kết hợp được ứng dụng nhiều trong lĩnh vực kinh doanh, y học, tin – sinh, tài chính và thị trường chứng khoán,.v.v
+ Phân lớp và dự đoán (classification and prediction): xếp một đối tượng vào một trong những lớp đã biết trước Hướng tiếp cận này thường sử dụng
một số kỹ thuật của machine learning như cây quyết định (decision tree),
mạng nơ-ron nhân tạo (neural network),.v.v Người ta còn gọi phân lớp là học
có giám sát (học có thầy)
+ Phân cụm (clustering): xếp các đối tượng theo từng cụm (số lượng cũng như tên của cụm chưa được biết trước Người ta còn gọi phân cụm là học không giám sát (học không thầy)
Trang 29+ Khai phá chuỗi (sequential/temporal patterns): tương tự như khai phá luật kết hợp nhưng có thêm tính thứ tự và tính thời gian Hướng tiếp cận này được ứng dụng nhiều trong lĩnh vực tài chính và thị trường chứng khoán vì nó
có tính dự báo cao
1.2.3 Các hệ thống khai phá dữ liệu và kiến trúc tổng quát của chúng
Các hệ thống khai phá dữ liệu có thể phân loại theo các tiêu chẩn khác nhau như sau:
- Theo loại của CSDL đã khai phá:
+ Các mô hình dữ liệu (hệ thống khai phá dữ liệu quan hệ, hệ thống khai phá dữ liệu giao dịch, hệ thống khai phá dữ liệu quan hệ - đối tượng, hệ thống khai phá dữ liệu kho dữ liệu)
+ Các kiểu dữ liệu đã xử lý (hệ thống khai phá dữ liệu không gian, hệ thống khai phá dữ liệu chuỗi thời gian, hệ thống khai phá dữ liệu văn bản, hệ thống khai phá dữ liệu dòng dữ liệu, hệ thống khai phá dữ liệu đa phương tiện, hệ thống khai phá dữ liệu Web)
+ Các loại CSDL riêng cho mỗi ứng dụng
- Theo loại của tri thức đã phát hiện:
+ Dựa trên các chức năng khai phá dữ liệu như đặc trưng hóa, tách lọc, kết hợp và phân tích tương quan, phân loại dự đoán, phân cụm, phân tích ngoại lai, phân tích tiến hóa Một hệ thống khai phá dữ liệu toàn diện thường cung cấp đa chức năng hoặc tích hợp nhiều chức năng
+ Dựa trên hạt nhân hoặc tính trừu tượng của tri thức được khám phá bao gồm các tri thức tổng quát (ở mức trừu tượng cao), tri thức mức nguyên thủy (ở mức dữ liệu thô), hoặc tri thức ở mức đa tầng (xem xét một số mức trừu tượng) Một hệ thống khai phá dữ liệu tiên tiến sẽ rất tiện cho việc phát hiện tri thức ở đa mức trừu tượng
Trang 30Các hệ thống khai phá dữ liệu cũng có thể được phân loại như những thứ mà các quy tắc khai phá dữ liệu (các mẫu xuất hiện một cách phổ biến) ngược với các bất quy tắc (loại trừ, ngoại lai)
Nói chung, các quy tắc khai phá dữ liệu mô tả khái niệm, sự kết hợp, phân tích tương quan, phân loại, dự đoán và phân cụm sẽ loại trừ được các phần tử ngoại lai các phương pháp này cũng có thể giúp cho việc khám phá các phần tử ngoại lai
- Theo loại kỹ thuật đã sử dụng:
+ Các kỹ thuật có thể được mô tả tùy theo mức độ tương tác sử dụng,
ví dụ như các hệ tự trị, các hệ thống thăm dò tương tác
+ Các hệ thống hướng truy vấn, hoặc các phương pháp phân tích dữ liệu đã sử dụng, ví dụ như các kỹ thuật hướng CSDL hay kho dữ liệu, máy học, thống kê, hiển thị, nhận dạng mẫu, mạng nơ – ron,
Một hệ thống khai phá dữ liệu phức tạp thường chấp nhận các kỹ thuật khai phá dữ liệu đa tạp hoặc trắc nghiệm một kỹ thuật tích hợp, hiệu quả trên
cơ sở liên hợp nhiều cách tiếp cận riêng lẻ
- Hệ thống khai phá dữ liệu được phát triển dựa trên khái niệm rộng của khai phá dữ liệu Khai phá dữ liệu là một quá trình phát hiện tri thức được quan tâm từ khối lượng lớn dữ liệu trong các cơ sở dữ liệu, kho dữ liệu, hay các kho chứa thông tin khác
* Kiến trúc của một hệ thống khai phá dữ liệu:
Trang 31Hình 1.2 Kiến trúc của một hệ thống khai phá dữ liệu điển hình
- Cơ sở dữ liệu, kho dữ liệu hoặc các lưu trữ thông tin khác (Database,
Data warehouse, World Wide Web, và Other information repositories): Đây
là một hay một tập các CSDL, các kho dữ liệu, các trang tính hay các dạng lưu trữ thông tin khác Thành phần này là các nguồn dữ liệu/thông tin sẽ được khai phá Các kỹ thuật làm sạch dữ liệu và tích hợp dữ liệu có thể được thể hiện trên những dữ liệu này
- Máy chủ CSDL hay máy chủ kho dữ liệu (Database hay data
warehouse server): Máy chủ này có trách nhiệm lấy những dữ liệu thích hợp
dựa trên các yêu cầu khai phá của người dùng
Warehouse
World Wide Web
Other Info Repositories Data cleaning, integration and selection
Knowledge Base
Graphical User Interface
Pattern Evaluation
Data Mining Engine
Database or Data warehouse Server
Trang 32- Cơ sở tri thức (Knowledge base): Đây là miền tri thức được dùng để
hướng dẫn việc tìm kiếm hay đánh giá độ quan tâm của các mẫu kết quả được tìm thấy Tri thức miền có thể là các phân cấp khái niệm, niềm tin của người
sử dụng, các ràng buộc hay các ngưỡng giá trị, siêu dữ liệu, …
- Kỹ nghệ khai phá dữ liệu (Data mining engine): Một hệ thống khai phá
dữ liệu cần phải có một tập các mô-đun chức năng để thực hiện công việc như: đặc trưng hóa, kết hợp và phân tích tương quan, phân lớp, dự đoán, phân cụm, phân tích ngoại lai và phân tích tiến hóa Là thành phần chứa các khối chức năng thực hiện các tác vụ khai phá dữ liệu
- Mô-đun đánh giá mẫu (Pattern evaluation module): Bộ phận này thực
hiện đo mức quan tâm và tương tác với các mô-đun khai phá dữ liệu để duyệt tìm các mẫu đáng được quan tâm Thành phần này làm việc với các độ đo (và các ngưỡng giá trị) hỗ trợ tìm kiếm và đánh giá các mẫu sao cho các mẫu được tìm thấy là những mẫu được quan tâm bởi người sử dụng Nó có thể dùng các ngưỡng về độ quan tâm để lọc mẫu đã khám phá được Cũng có thể mô-đun đánh giá mẫu được tích hợp vào mô-đun khai phá, tùy theo sự cài đặt của phương pháp khai phá được dùng Thành phần này có thể được tích hợp vào thành phần Data mining engine
- Giao diện đồ họa người dùng (Graphical user interface): Bộ phận này
cho phép người dùng giao tiếp với hệ thống khai phá dữ liệu bằng việc định
rõ một truy vấn khai phá dữ liệu hoặc một nhiệm vụ cung cấp thông tin để giúp đỡ tiêu điểm tìm kiếm và thực hiện khai phá dữ liệu thăm dò dựa trên những kết quả khai phá dữ liệu trung gian Người sử dụng có thể chỉ định câu truy vấn hay tác vụ khai phá dữ liệu Ngoài ra, bộ phận này còn cho phép người dùng duyệt các lược đồ CSDL, lược đồ kho dữ liệu/kho dữ liệu (hay các cấu trúc dữ liệu), các đánh giá mẫu khai phá được và hiển thị các mẫu ở các dạng khác nhau [4]
Trang 331.2.4 Các loại dữ liệu có thể khai phá được
Khai phá dữ liệu được áp dụng trên nhiều loại dữ liệu khác nhau Về nguyên tắc, khai phá dữ liệu được áp dụng đối với bất kỳ loại dữ liệu lưu trữ nào, cũng như các dữ liệu tạm thời Do đó, các loại dữ liệu có thể khai phá được bao gồm:
+ CSDL quan hệ (Relational Databases)
+ CSDL giao dịch (Transactional Databases)
+ Kho dữ liệu (DataWarehouses)
+ Hệ thống CSDL nâng cao (Advanced Data and Information System) + Dữ liệu dòng (Stream data)
+ World Wide Web
Các CSDL được gọi là CSDL nâng cao do cấu trúc phức tạp của chúng
Hệ thống CSDL nâng cao bao gồm các đối tượng CSDL quan hệ (CSDL quan hệ - đối tượng) và CSDL có tính định hướng theo ứng dụng cụ thể, chẳng hạn như CSDL đa phương tiện, CSDL đa chiều, CSDL thời gian, CSDL chuỗi, CSDL theo chuỗi thời gian, CSDL không gian và thời gian, CSDL văn bản, CSDL hỗn hợp, CSDL di sản Những thách thức và kỹ thuật khai phá dữ liệu có thể khác nhau cho mỗi hệ thống lưu trữ
1.2.5 Khai phá dữ liệu theo hướng tiếp cận tập thô
Tập thô đã làm sáng tỏ nhiều lĩnh vực nghiên cứu, nhưng hiếm khi tìm thấy phương pháp ứng dụng cho thế giới thực Khai phá dữ liệu theo hướng tiếp cận tập thô là một quá trình đa giai đoạn bao gồm chủ yếu là: rời rạc hóa; rút gọn và sinh ra các luật quyết định trên tập huấn luyện; phân lớp trên tập mẫu
Lý thuyết tập thô, từ khi ra đời đã được sử dụng rộng rãi trong khai phá
dữ liệu, và có chức năng quan trọng trong việc biểu diễn, nghiên cứu và kết luận các tri thức không chắc chắn, đó là một công cụ mạnh với thiết lập hệ thống quyết định thông minh Mục tiêu chính là làm xuất hiện các kỹ thuật tập
Trang 34thô như thế nào để có thể được sử dụng như là một cách tiếp cận vấn đề khai phá dữ liệu và trích rút tri thức
1.3 Bài toán chẩn đoán bệnh
1.3.1 Vai trò của phương pháp chẩn đoán lâm sàng trong y học
Bài toán chẩn đoán bệnh lâm sàng trong y học là một bài toán khó và
quan trọng trong việc chẩn đoán bệnh cho bệnh nhân để đưa ra được phương pháp điều trị đúng đắn và chính xác Hầu hết các bệnh nhân tử vong không phải do điều trị không hiệu quả mà do không được điều trị kịp thời vì không được chẩn đoán trước đó Do vậy, chẩn đoán chính xác để đưa ra phương pháp điều trị đúng đắn là hết sức quan trọng
Khám bệnh và đưa ra những chẩn đoán lâm sàng là một khâu quan trọng, có lẽ là khâu chủ yếu trong công tác của bác sĩ điều trị vì nó quyết định khá nhiều cho sự thành công hay thất bại của công tác điều trị: công tác khám bệnh có làm được tốt mới phát hiện được đúng và đầy đủ các triệu chứng để
có thể làm được một chẩn đoán thật chính xác và đầy đủ, rồi từ đó mới định được tiên lượng, cách điều trị và phòng bệnh cho đúng đắn
Đây là một công tác:
- Khoa học: ngoài kiến thức y học mà tất cả các thầy thuốc bắt buộc phải
có đầy đủ, còn phải có một quan niệm biện chứng con người là một khối thống nhất trong đó mỗi bộ phận đều có liên quan hữu cơ với nhau, vì thế trong quá trình khám bệnh, bác sĩ không chỉ khám đơn độc bộ phận có bệnh
mà luôn luôn phải khám toàn bộ cơ thể người bệnh để có được chẩn đoán chính xác về bệnh
- Kỹ thuật: phải theo đúng quy tắc khám và kỹ thuật khám mới phát hiện được đúng triệu chứng (ví dụ: khi nghe các tiếng không bình thường ở tim, ở phổi, khi sờ lá lách hoặc gan mấp mé bờ sườn, hoặc khi gõ phản xạ gân…)
Trang 35Không những thế, đấy còn là một công tác:
- Chính trị: cách khám bệnh kỹ lưỡng tỉ mỉ của thầy thuốc ngoài việc giúp thầy thuốc phát hiện đúng bệnh còn củng cố lòng tin cậy của người bệnh
ổn định tư tưởng bi quan lo sợ của họ, giúp họ tin tưởng vào việc điều trị vào
sự khỏi bệnh sau này: yếu tố rất cần thiết cho việc điều trị bệnh được tốt Ngày nay mặc dù có sự tiến bộ và phát triển của các phương pháp cận lâm sàng, vai trò của khám bệnh và phương pháp chẩn đoán lâm sàng vẫn quan trọng vì nó cho hướng chẩn đoán để từ đó các chỉ định làm các xét nghiệm cận lâm sàng cần thiết, tránh tình trạng làm tràn lan hoặc ngược lại bệnh nhân không làm những xét nghiệm cần thiết
Sau quá trình chẩn đoán lâm sàng nếu bệnh nhân có những triệu chứng mắc bệnh thì giai đoạn chẩn đoán thứ hai (chẩn đoán cận lâm sàng sẽ được tiến hành để có thể đưa ra được kết luận chắc chắn) [3]
1.3.2 Giá trị thực tiễn của việc xác định quan hệ giữa phụ thuộc hàm và bảng quyết định trong chẩn đoán bệnh
Quá trình chẩn đoán bệnh trong y học được hiểu là một quá trình ra quyết định, trong đó bác sĩ sẽ đưa ra các chẩn đoán cho một bệnh nhân mới
mà các dữ liệu lâm sàng về bệnh nhân này chưa có trong dữ liệu lâm sàng Thông qua các thủ tục chẩn đoán hợp lý, bác sĩ có thể đưa ra được hướng điều trị tiếp theo một cách kịp thời, nhanh chóng và độ chính xác cao
Trong thực tế từ hai đến ba thập kỷ gần đây hệ thống hỗ trợ chẩn đoán ra quyết định y tế đang trở thành một công cụ hỗ trợ rất tốt cho các bác sĩ và nó
đã trở thành một phần của kỹ thuật công nghệ trong y học
Lý thuyết tập thô là một công cụ tương đối mới và đã bắt đầu cho thấy tầm quan trọng của nó trong việc hỗ trợ chẩn đoán nhiều bệnh Từ khi xuất hiện, lý thuyết tập thô đã được sử dụng hiệu quả trong các bước của quá trình
Trang 36khai phá dữ liệu và khám phá tri thức, gồm tiền xử lý số liệu, trích lọc các tri thức tiềm ẩn trong dữ liệu và đánh giá kết quả thu được Ứng dụng quan trọng
nhất trong lý thuyết tập thô là rút gọn thuộc tính Rút gọn thuộc tính (attribute
reduction), một thành phần chủ chốt của rút gọn dữ liệu Mục tiêu của rút gọn
thuộc tính là loại bỏ các thuộc tính dư thừa để tìm ra các thuộc tính cốt yếu và cần thiết trong cơ sở dữ liệu Rút gọn thuộc tính giúp tìm ra tập nhỏ nhất các thuộc tính để phân tích dữ liệu mà vẫn giữ được hiệu năng (hoặc hầu hết hiệu năng) như tập toàn bộ các thuộc tính Rút gọn thuộc tính vừa làm giảm khối lượng xử lý dữ liệu do chỉ phải thao tác trên một khối lượng dữ liệu nhỏ hơn, vừa làm cho kết quả thu được trở nên cô đọng, dễ hiểu hơn
Lý thuyết tập thô là một công cụ hỗ trợ đắc lực cho việc chẩn đoán nhiều bệnh, trong đó điển hình có bệnh cúm Bệnh cúm là một bệnh viêm nhiễm cấp tính lây theo đường hô hấp gây nên bởi virus cúm, có khả năng lây lan cao qua đường hô hấp Cúm lây truyền mạnh, có thể thành dịch Bệnh khởi phát đột ngột bằng sốt cao, nhức đầu, đau mỏi toàn thân và những dấu hiệu hô hấp, viêm đường hô hấp trên, các biến chứng về phế quản và phổi, dễ dẫn đến viêm phổi, tỷ lệ tử vong cao Nếu không được chẩn đoán sớm và điều trị, bệnh diễn biến kéo dài sẽ dẫn đến nhiều hậu quả nghiêm trọng, hay gặp phải nhất là viêm phế quản, viêm phổi, tiêu chảy, viêm tai giữa, viêm não, viêm ngang tuỷ và có thể dẫn đến tử vong Vì vậy, việc chẩn đoán sớm
và điều trị kịp thời đóng vai trò vô cùng quan trọng trong việc cải thiện sức khoẻ cho bệnh nhân mắc bệnh cúm và ngăn chặn được những biến chứng gây
tử vong cho người bệnh
Trước mối nguy hiểm và sự phát triển không ngừng của bệnh cúm mà đặc biệt là cúm do virus ở Việt Nam cũng như trên toàn thế giới Một bảng quyết định có thể có nhiều tập rút gọn khác nhau Từ các tập rút gọn đó ta tìm
ra được các phụ thuộc hàm thể hiện bệnh nhân mắc những triệu chứng thuộc
Trang 37một trong số các tập rút gọn thì kết luận được bệnh nhân mắc bệnh Dựa vào các phụ thuộc hàm tìm được ta có thể kết luận chắc chắn là bệnh nhân mắc bệnh hay không dựa trên một số thuộc tính cần thiết tìm được ở các tập rút gọn, giúp cho bác sĩ chẩn đoán bệnh nhanh chóng và chính xác chỉ dựa trên một vài thuộc tính cơ bản giống như kinh nghiệm đã được rút ra sau khi đã chẩn đoán rất nhiều bệnh nhân mà không cần chẩn đoán lần lượt tất cả các thuộc tính (triệu chứng) Việc tạo được các phụ thuộc hàm (luật chẩn đoán bệnh) hỗ trợ chẩn đoán bệnh nhanh chóng và chính xác trong y tế, đóng góp quan trọng trong sự thành công của công tác điều trị bệnh cho bệnh nhân, rút
ra được các tri thức từ cơ sở dữ liệu chẩn đoán bệnh của những bệnh nhân đã được chẩn đoán trước đó Thông qua việc tạo ra các luật chẩn đoán mới từ việc khai thác mối quan hệ giữa các phụ thuộc hàm và bảng quyết định sẽ hỗ trợ cho việc chẩn đoán bệnh lâm sàng trong y học và đặc biệt là giúp chẩn đoán sớm bệnh cúm Việc xây dựng được các phụ thuộc hàm (khai phá các luật phát hiện bệnh hay luật chẩn đoán bệnh) từ bảng quyết định hỗ trợ cho việc ra quyết định đúng đắn về hướng điều trị tiếp theo đối với bệnh nhân
1.4 Kết luận chương 1
Trong chương này đã trình bày tổng quan về phát hiện tri thức và khai phá dữ liệu, một số vấn đề về hệ thông tin đầy đủ và mô hình tập thô truyền thống, hệ thống hóa các kiến thức cơ bản của lý thuyết tập thô đã được trình bày trên từng ví dụ minh họa cụ thể, một số khái niệm về cơ sở dữ liệu quan
hệ và bài toán chẩn đoán bệnh bằng phương pháp lâm sàng
Trang 38Chương 2 MỐI QUAN HỆ GIỮA PHỤ THUỘC HÀM VÀ BẢNG QUYẾT ĐỊNH THEO HƯỚNG TIẾP CẬN TẬP THÔ
2.1 Xác định các phụ thuộc hàm từ bảng quyết định
2.1.1 Thuộc tính rút gọn và các thuật toán tìm chúng
Trong bảng quyết định thuộc tính dư thừa thực sự là thuộc tính không xuất hiện trong bất kỳ tập rút gọn nào và thuộc tính rút gọn là thuộc tính xuất
hiện trong một tập rút gọn nào đó Khi đó, bài toán tìm tập tất cả thuộc tính
dư thừa thực sự tương đương với bài toán tìm tập tất cả các thuộc tính rút gọn Để giải quyết bài toán này, phương pháp tiếp cận thông thường là tìm họ tất cả các tập rút gọn của bảng quyết định, sau đó tìm phép hợp giữa các tập rút gọn Tuy nhiên, cách tiếp cận này không khả thi với các bảng dữ liệu kích thước lớn vì độ phức tạp thời gian của thuật toán tìm họ tất cả các tập rút gọn của bảng quyết định là hàm mũ đối với số thuộc tính điều kiện
Rút gọn thuộc tính là một trong những bài toán ứng dụng điển hình nhất của lý thuyết tập thô Trong lý thuyết tập thô, mục tiêu của rút gọn thuộc tính
là tìm ra tập nhỏ nhất các thuộc tính cho phân tích dữ liệu mà vẫn giữ được hiệu năng (hoặc hầu hết hiệu năng) như tập toàn bộ các thuộc tính Rút gọn thuộc tính vừa làm giảm khối lượng xử lý dữ liệu do chỉ phải thao tác trên một khối lượng dữ liệu nhỏ hơn, vừa làm cho kết quả thu được trở nên cô đọng và dễ hiểu hơn
Theo Yiyu Yao và Yan Zhao, mô hình Pawlak và mô hình xác suất là hai mô hình rút gọn thuộc tính điển hình trong lý thuyết tập thô Điển hình theo mô hình Pawlak là các phương pháp dựa trên miền dương, các phương pháp sử dụng ma trận phân biệt, các phương pháp sử dụng các phép toán đại
số quan hệ Các phương pháp rút gọn thuộc tính theo mô hình Pawlak thường
được tiến hành theo hướng "từ trên xuống" (còn được gọi là phương pháp
Trang 39loại bỏ (deletion method)), nghĩa là loại bỏ dần các thuộc tính không cần
thiết Điển hình theo mô hình xác suất là các phương pháp sử dụng entropy thông tin, các phương pháp sử dụng các độ đo mà điển hình là các độ đo
trong tính toán hạt (granular computing), các phương pháp tích hợp lý thuyết
tập thô với lý thuyết tập mờ Các phương pháp rút gọn thuộc tính theo mô
hình xác suất thường được tiến hành theo hướng "từ dưới lên" (còn được gọi
là phương pháp bổ sung (addition method)), nghĩa là chọn các thuộc tính có
độ liên quan cao tới mục tiêu xử lý dữ liệu để bổ sung vào tập thuộc tính rút
gọn Trong nhiều tình huống, tập rút gọn kết quả chỉ cần đảm bảo "hầu hết"
hiệu năng của tập toàn bộ các thuộc tính Một số thuật toán theo hướng kết hợp dưới lên - trên xuống cũng đã được đề xuất (chẳng hạn, thuật toán bổ sung - loại bỏ)
Trong cơ sở dữ liệu quan hệ, Demetrovics J và Thi V.D [7] đã chứng minh bổ đề quan trọng sau
Bổ đề 2.1 [7] Giả sử K là một hệ Sperner trên R, khi đó
Trên quan hệ r, do K a r là hệ Sperner trên R nên ta có bổ đề sau
Bổ đề 2.2 [1] Cho r là một quan hệ trên R và a , khi đó R
Cho bảng quyết định nhất quán T U C, d với U u u1, 2, ,u m
Xét quan hệ ru u1, 2, ,u m trên tập thuộc tính RC d , từ khái niệm
tập rút gọn của bảng quyết định nhất quán và tập tối thiểu của một thuộc tính
trên quan hệ ta có r
d
PRED C K d , với PRED C là họ tất cả các tập
rút gọn Pawlak của C trong T và K d r là họ các tập tối thiểu của thuộc tính d
Trang 40trên r Do đó, nếu ký hiệu REAT C là tập tất cả các thuộc tính rút gọn của
Thuật toán 2.1 [1] Tìm tập tất cả các thuộc tính rút gọn
Đầu vào: Bảng quyết định T U C, d với POS C d U ,
Bước 4 Đặt REAT C V d
Tập REAT C được xây dựng là tập tất cả các thuộc tính rút gọn của C
Độ phức tạp Thuật toán 2.1
Với m là số đối tượng và n là thuộc tính điều kiện, độ phức tạp thời gian
để tính hệ bằng nhau Er tại bước 1 là r 2
O m n Tại bước 2, hệ bằng nhau Er r
có tối đa m 2 phần tử Do đó độ phức tạp thời gian để tính tập M d là 4
O m n Bởi vậy, độ phức tạp thời gian của Thuật toán 2.1 là 4
O m n , độ phức tạp
này là đa thức theo số hàng và số cột của T