Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 50 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
50
Dung lượng
0,98 MB
Nội dung
1
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN MINH HUY
PHỤ THUỘCHÀMXẤPXỈVÀỨNGDỤNG
TRONG KHAI PHÁDỮLIỆU
LUẬN VĂN THẠC SĨ
Hà Nội – 2011
2
MỤC LỤC
Lời cam đoan
Mục lục
Danh mục các từ viết tắt
Danh mục các bảng biểu
Danh mục phụ lục
MỞ ĐẦU 5
Chương 1 - Phụthuộchàmvàphụthuộchàmxấpxỉ 6
1.1 Khaiphádữliệu 6
1.1.1 Phát hiện tri thức vàkhaiphádữliệu 6
1.1.2 Các phương pháp khaiphádữliệu 7
1.2 Phụthuộchàm 7
1.2.1 Định nghĩa 7
1.2.2 Hệ tiên đề Armstrong 8
1.2.3 Định nghĩa hai tập phụthuộchàm tương đương 10
1.2.4 Định nghĩa phủ tối thiểu 11
1.2.5 Khoá của quan hệ 13
1.3 Phụthuộchàmxấpxỉ 14
1.3.1 Phụthuộchàmxấpxỉ loại 1 14
1.3.2 Phụthuộchàmxấpxỉ loại 2 16
1.3.3 Bao đóng xấpxỉ 20
1.3.4 Khoá xấpxỉ 21
Chương 2 - Xây dựng cây quyết định 24
3
2.1 Đặt vấn đề 24
2.2 Bảng quyết định 24
2.2.1 Hệ thống thông tin 24
2.2.2 Bảng quyết định 27
2.3 Cây quyết định 30
2.4 Ảnh hưởng của phụthuộc hàm, phụthuộchàmxấpxỉ khi xây dựng
cây quyết định 36
Chương 3 - Thử nghiệm và đánh giá 37
3.1 Thuật toán TANE 37
3.1.1 Mô tả thuật toán 37
3.1.2 Độ phức tạp 38
3.2 Thuật toán AFDMCEC 38
3.2.1 Phân tích thử nghiệm 39
3.2.2 Những so sánh về độ phức tạp thời gian 40
KẾT LUẬN 41
TÀI LIỆU THAM KHẢO 42
PHỤ LỤC 43
a) Giao diện chương trình
b) Thủ tục tính phụthuộchàmxấpxỉ
c) Thủ tục phân hoạch
4
‘
DANH MỤC CÁC CHỮ VIẾT TẮT
CSDL : Cơ sở dữliệu
FDs : Các phụthuộchàm
AFDs : Các phụthuộchàmxấpxỉ
AFDMCEC : Khaipháphụthuộchàmxấpxỉ sử dụngphủ tối thiểu
và lớp tương đương
5
DANH MỤC CÁC BẢNG BIỂU
Bảng 1.1 Quy trình phát hiện tri thức
Bảng 1.2 Bảng cơ sở dữliệu quan hệ
Bảng 1.3 Cây khaiphá các AFDs(ví dụ với 5 thuộc tính)
Bảng 1.4 Bảng cơ sở dữliệu quan hệ số
Bảng 1.5 Bảng cơ sở dữliệu kiểm toán(ví dụtrong 5 tháng)
Bảng 2.1 Bảng dữliệu các đồ chơi
Bảng 2.2 Bảng các triệu chứng của bệnh nhân
Bảng 2.3 Bảng quyết định về cúm
Bảng 2.4 Bảng rút gọn thứ nhất của bảng quyết định về cúm
Bảng 2.5 Bảng rút gọn thứ hai của bảng quyết định về cúm
Bảng 2.6 Bảng chọn ứng cử viên vào ngạch giảng dạy
Bảng 2.7 Bảng dữliệu điều tra khách hàng mua ôtô
Bảng 2.8 Cây quyết định tại bước 1 trên thuộc tính phụ cấp
Bảng 2.9 Cây quyết định tại bước 2
6
MỞ ĐẦU
Cơ sở dữliệu (CSDL) là một trong lĩnh vực được tập trung nghiên cứu và phát
triển công nghệ thông tin, nhằm giải quyết các bài toán quản lý, tìm kiếm thông tin
trong những hệ thống lớn, đa dạng, phức tạp cho nhiều người sử dụng trên máy tính
điện tử. Mô hình dữliệu quan hệ đặt trọng điểm hàng đầu không phải là khác thác
các tiềm năng của máy mà sự mô tả trực quan dữliệu theo quan điểm của người
dùng, cung cấp một mô hình dữliệu đơn giản, trong sáng, chặt chẽ, dễ hiểu và tạo
khả năng tự động hoá thiết kế CSDL quan hệ. Có thể nói lý thuyết thiết kế và cài
đặt CSDL, nhất là mô hình dữliệu quan hệ đã phát triển ở mức độ cao và đạt được
những kết quả sâu sắc.
Ngày nay việc khaiphádữliệu còn được coi như việc khaiphá tri thức từ dữ
liệu (knowlegde mining from databases), trích lọc tri thức(knowlegde extraction),
phân tích dữliệu mẫu (data-partent analysis), khảo cứu dữ liệu(data archaeology),
đào xới và nạo vét dữ liệu(data dredging).
Với các ngành khoa học, kinh tế - xã hội nơi có những kho dữliệu khổng lồ
thì việc tìm kiếm, truy xuất và đưa ra thông tin cần thiết phù hợp với thời gian và
yêu cầu là không dễ dàng và chính vì thế một hế hệ mới các phương pháp tiếp cận,
phương pháp nghiên cứu, và các kỹ thuật, công cụ cho phép phân tích, tổng hợp,
khai phá tri thức từ dữliệu một cách thông minh và hiệu quả đã được các nhà khoa
học quan tâm và nghiên cứu.
Trong những năm gần đây, việc tìm kiếm các thuật toán cho phép khaiphá
phụ thuộchàmxấpxỉ đang được quan tâm nghiên cứu, một trong hững thuật toán
đó là TANE - một thuật toán tương đối hiệu quả trongkhaipháphụthuộchàmxấp
xỉ.
7
CHƯƠNG 1:
PHỤ THUỘCHÀMVÀPHỤTHUỘCHÀMXẤPXỈ
1.1 Khaiphádữliệu
1.1.1 Phát hiện tri thức và khaiphádữliệu
Phát hiện tri thức trong các cơ sở dữliệu là một qui trình nhận biết các mẫu
hoặc các mô hình trongdữliệu với các tính năng: hợp thức, mới, khả ích, và có thể
hiểu được. Còn khai thác dữliệu là một bước trong qui trình phát hiện tri thức gồm
có các thuật toán khai thác dữliệu chuyên dùng dưới một số qui định về hiệu quả
tính toán chấp nhận được để tìm ra các mẫu hoặc các mô hình trongdữ liệu. Nói
một cách khác, mục đích của phát hiện tri thức vàkhaiphádữliệu chính là tìm ra
các mẫu và/hoặc các mô hình đang tồn tại trong các cơ sở dữliệu nhưng vẫn còn bị
che khuất bởi hàng núi dữ liệu.
Qui trình phát hiện tri thức
Qui trình phát hiện tri thức được mô tả tóm tắt :
Bảng 1.1 Quy trình phát hiện tri thức
- Bước thứ nhất là tìm hiểu lĩnh vực ứngdụngvà hình thành bài toán, bước
này sẽ quyết định cho việc rút ra được các tri thức hữu ích và cho phép chọn các
phương pháp khaiphádữliệu thích hợp với mục đích ứngdụngvà bản chất của dữ
liệu.
8
- Bước thứ hai là thu thập và xử lý thô, còn được gọi là tiền xử lý dữliệu nhằm
loại bỏ nhiễu, xử lý việc thiếu dữ liệu, biến đổi dữliệuvà rút gọn dữliệu nếu cần
thiết, bước này thường chiếm nhiều thời gian nhất trong toàn bộ qui trình phát hiện
tri thức.
- Bước thứ ba là khaiphádữ liệu, hay nói cách khác là trích ra các mẫu
hoặc/và các mô hình ẩn dưới các dữ liệu.
- Bước thứ tư là hiểu tri thức đã tìm được, đặc biệt là làm sáng tỏ các mô tả và
dự đoán. Các bước trên có thể lặp đi lặp lại một số lần, kết quả thu được có thể
được lấy trung bình trên tất cả các lần thực hiện.
1.1.2 Các phương pháp khaiphádữliệu
Với hai đích chính của khaiphádữliệu là Dự đoán và Mô tả , người ta thường
sử dụng các phương pháp sau cho khaiphádữ liệu:
- Phương pháp quy nạp
- Phát hiện các luật kết hợp
- Sử dụng cây quyết định
- Các phương pháp phân lớp và hồi quy phi tuyến:
- Phân nhóm và phân đoạn
- Các phương pháp dự trên mẫu
- Mô hình phụthuộc dựa trên đồ thị xác suất
- Mô hình học quan hệ
- Mạng neuron
- Thuật giải di truyền
1.2 Phụthuộchàm
1.2.1 Định nghĩa
Trong mỗi CSDL luôn tồn tại nhiều mối liên hệ giữa các thuộc tính, giữa các
bộ; sự liên hệ này có thể xảy ra trong cùng một quan hệ hoặc trong các quan hệ của
một lược đồ CSDL. Các mối liên hệ này là những điều kiện bất biến mà tất cả các
bộ của những quan hệ có liên quan trong CSDL đều phải thoả mãn ở mọi thời
điểm. Những điều kiện bất biến đó được gọi là rằng buộc toàn vẹn.
Phụthuộchàm là 1 công cụ dùng để biểu diễn 1 cách hình thức 1 số rằng
buộc toàn vẹn.
9
Các phụthuộchàm là các tương quan giữa các thuộc tính của một quan hệ:
Một phụthuộchàm chỉ ra rằng giá trị của một thuộc tính được xác định duy nhất
bởi một số các thuộc tính khác. Vấn đề phát hiện các phụthuộchàm từ các quan hệ
đã nhận được các mối quan tâm đáng kể. Việc phân tích CSDL tự động, đương
nhiên, rất thú vị cho các mục tiêu khaiphá tri thức vàkhaiphádữliệu , và các phụ
thuộc hàm có nhiều ứngdụngtrong các lĩnh vực quản lý CSDL, tối ưu hóa truy
vấn…
Một cách hình thức, một phụthuộchàm trên một lược đồ quan hệ R là một
biểu diễn XA với X R và A
R.Phụ thuộc này đúngtrong một quan hệ r trên
R cho trước nếu với mọi cặp hàng t,u
R, ta có nếu t[B] = u[B] mọi B
X thì
t[A] = u[A] (ta cũng nói rằng t và u thoả trên X và A).
Ví dụ :
Mã Sinh viên Họ và tên Số chứng minh Năm sinh
Quê quán
00001 Nguyễn Văn A 1247237 1987
Hà Nội
00002 Nguyễn Văn B 1211445 1988
Lạng Sơn
Ta có các phụthuộchàm sau
AB, AC, AD, AE,CB,CD, CE
Phụ thuộchàm X A là tối thiểu trong r nếu A không phụthuộchàm vào bất
kỳ một tập con thực sự nào của X. Ví dụ nếu Y A không thoả trong r với bất kỳ
Y X.
Phụ thuộchàm X A là tầm thường nếu A X.
1.2.2 Hệ tiên đề Armstrong
Gọi F là tập tất cả các phụthuộchàm đối với lược đồ quan hệ r(U) và
X -> Y là một phụthuộchàm với X, Y U, ta nói rằng X -> Y được suy diễn
logic từ F nếu quan hệ trên r(U) đều thỏa mãn các phụthuộchàm của F thì cũng
thỏa X -> Y. Sau đây là tập quy tắc của hệ tiên đề được Armstrong đề xuất vào năm
1974, được gọi là hệ tiên đề Armstrong.
Hệ tiên đề Armstrong
10
Gọi R(U) là lược đồ quan hệ với U = (A
1
, A
2
, , A
n
) là tập các thuộc tính: giả
sử X, Y, Z U, hệ tiên đề Armstrong bao gồm:
* Tính phản xạ: Nếu Y X thì X -> Y
* Tính tăng trưởng: Nếu Z U, X->Y thì ZX -> ZY. Trong đó ZX=Z
U
* Tính bắc cầu: Nếu X -> Y và Y -> Zthì X -> Z.
Ví dụ:
Cho AB -> C, C -> A, chứng minh BC -> ABC
(1) C -> A (theo giả thiết)
(2) BC -> AB (áp dụng luật tăng trưởng tăng (1) lên B)
(3) AB -> C (theo giả thiết)
(4) AB -> ABC (tăng (3)AB)
(5) BC -> ABC (bắc cầu (1), (2)).
Bổ đề 1:
Hệ tiên đề Armstrong là đầy đủ, có nghĩa là nếu F là tập phụthuộchàmđúng
trên quan hệ r và f : X -> Y là một phụthuộchàm được suy dẫn từ F nhờ hệ tiên đề
Armstrong thì f đúng trên r
Bổ đề 2:
Tính hợp : nếu X -> Y và X -> Z thì X -> YZ .
Tính tựa bắc cầu : Nếu X -> Y và WY -> Z thì XW -> Z.
Tính tách: Nếu X -> Y và Z Y thì X -> Z.
Bao đóng của F được kí hiệu là F
+
, là tập tất cả các phụthuộchàm được suy
diễn logic nhờ tiên đề Armstrong, 3 bổ đề trên từ F, nếu F = F
+
thì F là họ đầy đủ
của các phụthuộc hàm. Bao đóng của tập thuộc tính (X
+
)
X -> Y là một phụthuộchàm suy ra từ F. Khi đó X
+
được gọi là bao đóng của
tập thuộc tính X nếu X
+
là tập tất cả các thuộc tính U được suy dẫn bắt đầu từ tập
X.
X
+
F
= { A | X -> A F
+
}
Thuật toán tìm bao đóng của tập thuộc tính:
INPUT: X, F,U
OUTPUT: X
+
[...]... thuộc tính không khoá phải phụthuộchàmxấpxỉ đầy đủ vào khoá chính Dạng chuẩn 3 - NF + Là 2 NF + Các thuộc tính không khoá phải phụthuộcxấpxỉ trực tiếp vào khoá chính 24 Dạng chuẩn BCNF + Là 3NF + Không có thuộc tính khoá mà phụthuộchàmxấpxỉ vào thuộc tính không khoá Thuật toán kiểm tra BCNF Bước 1 : Xác định khoá Bước 2 : Kiểm tra thuộc tính không khoá phải phụthuộchàmxấpxỉ đầy đủ vào... B~> A (thuộc tính khoá phụthuộchàmxấpxỉvàthuộc tính không khoá) Nếu BC là khoá ta có A~>B (thuộc tính khoá phụthuộchàmxấpxỉvàthuộc tính không khoá) Như vậy : Lược đồ U thuộc dạng chuẩn 3NF 25 CHƯƠNG 2 : XÂY DỰNG CÂY QUYẾT ĐỊNH 2.1 Đặt vấn đề Một trong những đích khai phádữliệutrong thực tế nhằm đạt đến là mô tả các mẫu dữ liệu, mỗi một sự mô tả là thể hiện những tri thức được khaiphá Sự... đầy đủ vào khoá chính Bước 3 : Kiểm tra các thuộc tính không khoá phải phụthuộcxấpxỉ trực tiếp vào khoá chính Bước 4 : Với mỗi thuộc tính khoá kiểm tra có phụthuộchàmxâpxỉ vào thuộc tính khoá không Nếu phụthuộc thì luợc đồ quan hệ không thuộc dạng chuẩn BCNF Ví dụ 1: Cho lược đồ quan hệ U = {A, B, C, D} và tập các phụthuộchàmxấpxỉ với mức xấpxỉ (A~>B, B~> A, AC ~>D) Xác định : AC... sự phụthuộc tự nhiên giữa các thuộc tính dữ liệutrong mẫu cần phải được đề cập và ứngdụng để loại trừ nó, nhằm nâng cao hiệu quả cho cây được xây dựng [3, 5, 8, 9] Hơn nữa, có nhiều trường hợp trong thực tế, các nhóm thuộc tính mặc dầu giữa chúng không có sự phụthuộc theo định nghĩa của phụthuộchàm thông thường mà lại phụthuộc theo kiểu tương quan hàm số nào đó, ta gọi là phụthuộchàmxấp xỉ. .. phụthuộchàm không đầy đủ Khi loại bỏ, ta phân bịêt hai loại phụthuộchàm không đầy đủ sau: Loại1: Phụthuộchàm mà vế phải là tập con của vế trái ( loại AB -> B) Loai 2: Hai phụthuộchàm có vế phải giống nhau, nếu vế trái của phụthuộchàm này chứa vế trái của phụthuộchàm kia thì ta loại ra khỏi F 14 Ví dụ: Nếu có ABC -> D và BC - >D thì ta loại ABC -> D khỏi F BC3: Loại bỏ những phụthuộc hàm. .. qua hệ trên tập thuộc tính R Một phụthuộchàmđúng trên r cũng là phụthuộchàmxấpxỉ loại 2 với mức tuỳ ý (0 2Y là 2 phụthuộchàmxấpxỉ loại 2 mức 1 và mức 2 giữa X và Y trên r, khi... với tập thuộc tính là R= và tập phụthuộcxấpxỉ F={AB >0.05 C, AB >0.05 E, E >0.05 D} với mức xấpxỉ của = 0.05 Áp dụng thuật toán tính bao đóng xấpxỉ trên ta dễ dàng thu được bao đóng xấpxỉ của AB = {ABCDE} 1.3.4 Khoá xấpxỉ Giả sử s = < R, F> là một sơ đồ quan hệ xấpxỉ Khi đó A là một khoá xấpxỉ của s nếu A R F+ Chúng ta gọi A là một khoá tối tiểu xấpxỉ của s nếu:... xấpxỉ của s nếu: A là một khoá xấpxỉ của s Bất kì một tập con thực sự của A không là khoá xấpxỉ của s 1.3.4.1 Thuật toán tìm khoá xấpxỉ của sơ đồ quan hệ Thuật toán 2: Vào: Sơ đồ quan hệ s = trong đó: F là tập phụthuộchàmxấpxỉvà R = { a1, , an} là tập các thuộc tính Ra: K là một khoá xấpxỉ của s Thuật toán thực hiện như sau: Tính liên tiếp các tập thuộc tính K0, K1 ,Kn như sau:... thứ nhất là cho tương ứng bởi “miền trong Cách thứ hai có thể xấpxỉ bởi “bao đóng” của V Hai giá trị xấpxỉ này được gọi là tương ứng là B -xấp xỉ dưới và B -xấp xỉ trên của V, ký hiệu là lượt là BV và BV cụ thể các tập xấpxỉ này được xác định như sau: BV u U u BV u U u B V , B V , Với các xấpxỉ trên, ta gọi B-miền biên của V là tập BN B V BV \ BV , và Bmiền ngoài của... đại của U sao cho phụthuộchàm CD đúng 2.2.2.2 Rút gọn thuộc tính Trong bảng quyết định, các thuộc tính điều kiện được phân thành ba nhóm: thuộc tính lõi, thuộc tính rút gọn 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 hoạch chính xác tập dữliệuThuộc tính không cần thiết là những thuộc tính dư thừa, nghĩa là có thể loại bỏ một thuộc tính như vậy . hiệu quả trong khai phá phụ thuộc hàm xấp
xỉ.
7
CHƯƠNG 1:
PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM XẤP XỈ
1.1 Khai phá dữ liệu
1.1.1 Phát hiện.
Danh mục phụ lục
MỞ ĐẦU 5
Chương 1 - Phụ thuộc hàm và phụ thuộc hàm xấp xỉ 6
1.1 Khai phá dữ liệu 6
1.1.1 Phát hiện tri thức và khai phá dữ liệu 6