Trọng tâm của Luận văn là giải quyết bài toán phát hiện phần tử ngoại lai đối với phụ thuộc mạnh trong mô hình dữ liệu quan hệ, song bên cạnh đó Luận văn cũng tiến hành nghiên cứu và đề
Trang 1LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này là công trình nghiên cứu thực sự của cá nhân mình, thực hiện dưới sự hướng dẫn tận tình của thầy giáo TS Lê Văn Phùng
Các số liệu, kết quả do bản thân nghiên cứu và tìm hiểu được trình bày trong luận văn này trung thực và chưa từng được công bố dưới bất cứ hình thức nào
Tôi xin chịu hoàn toàn trách nhiệm về nghiên cứu của mình
Học viên
Lê Long Giang
Trang 2LỜI CẢM ƠN
Lời đầu tiên, tôi xin được gửi lời cảm ơn sâu sắc nhất tới thầy giáo TS Lê Văn Phùng, người thầy đã trực tiếp dành nhiều thời gian tận tình hướng dẫn, cung cấp những thông tin, tài liệu quý báu giúp đỡ tôi hoàn thành bản luận văn này
Tôi cũng xin gửi lời cảm ơn đến các giảng viên trường Đại Học Công nghệ Thông Tin và Truyền Thông - Đại học Thái Nguyên, các thầy Viện Công nghệ thông tin - Viện Hàn lâm Khoa học Công nghệ Việt Nam đã giảng dạy, truyền đạt những kiến thức và giúp đỡ tôi trong suốt quá trình học tập của mình
Tôi cũng xin gửi lời cảm ơn tới Ban Giám đốc - Sở Khoa học và Công nghệ tỉnh Lào Cai, Phòng Quản lý Công nghệ và Thị trường công nghệ đã tạo mọi điều kiện thuận lợi cho em tham gia khóa học và trong suốt quá trình hoàn thành luận văn
Cuối cùng, tôi xin cảm ơn những người thân, bạn bè và gia đình đã luôn
cổ vũ động viên tôi hoàn thành luận văn tốt nghiệp này
Mặc dù đã hết sức cố gắng hoàn thành luận văn với tất cả sự nỗ lực của bản thân, nhưng luận văn không tránh khỏi những thiếu sót.Kính mong nhận được những ý kiến đóng góp của quý thầy cô và bạn bè, đồng nghiệp
Tôi xin chân thành cảm ơn!
Thái Nguyên, ngày 20 tháng 04 năm 2016
Học viên
Lê Long Giang
Trang 3MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
CÁC KÍ HIỆU VIẾT TẮT DÙNG TRONG LUẬN VĂN vi
MỘT SỐ QUI ƯỚC VỀ KÍ HIỆU THƯỜNG ĐƯỢC vii
SỬ DỤNG TRONG LUẬN VĂN: vii
BẢNG CÁC HÌNH VẼ viii
DANH MỤC CÁC ĐỊNH NGHĨA, ĐỊNH LÝ, BỔ ĐỀ, THUẬT TOÁN viii
MỞ ĐẦU 1
CHƯƠNG 1: PHỤ THUỘC HÀM MẠNH VÀ PHẦN TỬ NGOẠI LAI 3
1.1.Khái niệm về phụ thuộc mạnh 3
1.2.Phương pháp xác định phụ thuộc mạnh trong CSDL 5
1.3 Phần tử ngoại lai và mối quan hệ giữa chúng với khai phá dữ liệu 13
1.3.1.Khái niệm về phần tử ngoại lai 13
1.3.2 Các phương pháp xác định phần tử ngoại lai 14
1.3.3 Mối quan hệ giữa phần tử ngoại lai và khai phá dữ liệu 15
1.4 Mô hình phát hiện phần tử ngoại lai trong dữ liệu và trong cơ sở dữ liệu quan hệ 16
1.4.1 Định nghĩa mô tả 16
1.4.2 Phân loại các phần tử ngoại lai trong CSDL quan hệ 17
1.4.3 Mô hình phát hiện phần tử ngoại lai dựa theo luật đối với CSDL quan hệ 18
1.5 Ứng dụng của các phần tử ngoại lai 22
KẾT LUẬN CHƯƠNG 1 23
CHƯƠNG 2: PHÁT HIỆN PHẦN TỬ NGOẠI LAI ĐỐI VỚI PHỤ THUỘC HÀM MẠNH TRONG CƠ SỞ DỮ LIỆU QUAN HỆ 24
2.1 Phần tử ngoại lai đối với các dạng phụ thuộc hàm đặc biệt 24
2.1.1.Phần tử ngoại lai đối với phụ thuộc hàm dạng bằng nhau 24
Trang 42.1.2.Phần tử ngoại lai đối với phụ thuộc hàm dạng tỉ lệ 26
2.2 Phần tử ngoại lai đối với hệ ràng buộc dạng phụ thuộc hàm 28
2.3 Thuật toán phát hiện các phần tử ngoại lai đối với các dạng chuẩn 32
2.3.1 Thuật toán phát hiện phần tử ngoại lai đối với dạng chuẩn 2NF 32
2.3.2 Thuật toán phát hiện phần tử ngoại lai đối với dạng chuẩn 3NF 34
2.3.3 Thuật toán phát hiện phần tử ngoại lai đối với dạng chuẩn BCNF 36 2.4 Phần tử ngoại lai đối với phụ thuộc mạnh 37
2.4.1 Thuật toán tìm các phụ thuộc hàm mạnh trong quan hệ và SĐQH 37 2.4.2 Xác định phụ thuộc hàm mạnh cực đại đối với một tập thuộc tính 38 2.4.3 Thuật toán tìm phần tử ngoại lai đối với phụ thuộc mạnh trong CSDL quan hệ 41
KẾT LUẬN CHƯƠNG 2 43
CHƯƠNG 3: ỨNG DỤNG TÌM PHẦN TỬ NGOẠI LAI 44
3.1 Lựa chọn bài toán để cài đặt 44
3.2 Cài đặt chương trình 47
3.2.1 Yêu cầu hệ thống 47
3.2.2 Cấu trúc của chương trình 47
3.3.Chương trình minh họa: 47
3.3.1 Demo 01: 47
3.3.2 Demo 02: 51
3.3.3 Một số đoạn mã lệnh sử dụng trong chương trình 55
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 64
TÀI LIỆU THAM KHẢO 65
Trang 5DANH MỤC HÌNH ẢNH
Hình 1.3.1 Phần tử ngoại lai trong tập điểm có tọa độ (x,y) trên mặt phẳng có giá trị tung độ y nhỏ hơn hẳn các phần tử khác của tập hợp 13 Hình 1.4.3 Sơ đồ phát hiện phần tử ngoại lai dựa theo luật trong CSDL quan hệ 21
Trang 6CÁC KÍ HIỆU VIẾT TẮT DÙNG TRONG LUẬN VĂN
Trang 7MỘT SỐ QUI ƯỚC VỀ KÍ HIỆU THƯỜNG ĐƯỢC
SỬ DỤNG TRONG LUẬN VĂN:
- Các thuộc tính được kí hiệu bằng các chữ Latin hoa đầu bảng chữ A, B, C,
- Tập thuộc tính được ký hiệu bằng các chữ Latin hoa cuối bảng chữ X, Y, Z,
- XY hoặc X ∪ Y biểu diễn hợp của hai tập X và Y Phép trừ hai tập X và
Y được ký hiệu là X\Y, hoặc X-Y
- Một phân hoạch của tập M (thành các tập con rời nhau và có hợp là M),
X1, X2, , Xm được ký hiệu là M = X1| X2| | Xm
Với ý nghĩa M = X1∪ X2∪ ∪ Xm và Xi ∩ Xj = , 1≤ i, j≤ m, i≠j
- Kí hiệu R, U để chỉ tập toàn bộ các thuộc tính trong một sơ đồ quan hệ
- Các quan hệ (hoặc bảng dữ liệu) được kí hiệu bằng các chữ cái thường:
- Kí hiệu | r | là lực lượng (số bộ) của quan hệ r
- Kí hiệu X Y để chị phụ thuộc hàm giữa X và Y
- Kí hiệu X s Y để chỉ phụ thuộc mạnh giữa X và Y; hoặc có thể sử
dụng kí hiệu X Y để chỉ phụ thuộc mạnh với lời chú dẫn đi trước
- Kí hiệu X Y để chỉ phụ thuộc hàm xấp xỉ mức giữa X và Y
- Kí hiệu ⇒ để chỉ sự kéo theo trong mệnh đề logic
Trang 8BẢNG CÁC HÌNH VẼ DANH MỤC CÁC ĐỊNH NGHĨA, ĐỊNH LÝ, BỔ ĐỀ, THUẬT TOÁN
Định nghĩa 1.4.1 Định nghĩa mô tả 17
Định nghĩa 2.1.1.1 Phụ thuộc hàm dạng bằng nhau 24
Định nghĩa 2.1.1.2 Phần tử ngoại lai đối với phụ thuộc hàm dạng bằng nhau 24
Định nghĩa 2.1.2.1 Phụ thuộc hàm dạng tỉ lệ 26
Định nghĩa 2.1.2.2Phần tử ngoại lai đổi với phụ thuộc hàm dạng tỉ lệ 26
Định nghĩa 2.1.3.1 Phần tử ngoại lai đối với hệ ràng buộc dạng PTH 29
Định nghĩa 2.2.1 Phần tử ngoại lai đối với dạng chuẩn 32
Định nghĩa 2.2.3Phụ thuộc mạnh cực đại 39
Định lý 1.2.1Tính đúng và đầy đủ của hệ T1-T3 6
Định lý 1.2.2 Sự tồn tại họ phụ thuộc hàm sinh ra họ phụ thuộc mạnh 8
Định lý 1.2.3 Họ phụ thuộc mạnh 12
Bổ đề 1.2.1 Tính bắc cầu hỗn hợp 8
Bổ đề 1.2.2: 11
Bổ đề 2.1.3.1 29
Mệnh đề 1.2.2 Phụ thuộc mạnh của các tập phụ thuộc hàm tương đương 10
Mệnh đề 2.2.3 Sự tồn tại của phụ thuộc mạnh 38
Thuật toán 2.1.1 (phát hiện phần tử ngoại lai đối với PTH dạng bằng nhau) 25
Thuật toán 2.1.2(phát hiện phần tử ngoại lai đối với phụ thuộc hàm dạng tỉ lệ) 27
Thuật toán 2.1.3(Thuật toán xác định phần tử ngoại lai đối với hệ ràng buộc dạng PTH) 30
Thuật toán 2.2.1.1(Thuật toán NL_ 2NF) 33
Thuật toán 2.2.1.2(Thuật toán NL_ 3NF) 34
Thuật toán 2.2.1.3(Thuật toán NL_ BCNF) 36
Thuật toán 2.2.2(Tìm các PTM trong SĐQH) 37
Thuật toán 2.2.3.1(Tìm phụ thuộc mạnh cực đại) 39
Thuật toán 2.3.1.2(Tìm các phụ thuộc mạnh trong quan hệ r) 40
Trang 9MỞ ĐẦU
Thế kỉ XXI được xem là một kỷ nguyên của công nghệ thông tin.Các công nghệ khám phá trí thức được áp dụng rộng rãi trong nhiều lĩnh vực và đem lại những thành tựu to lớn.Nhưng các công nghệ khám phá tri thức thường nhằm mục đích tìm kiếm, khám phá các dạng và mẫu thường gặp Chủ yếu tập trung vào các hướng: Tìm kiếm các luật kết hợp, nhận dạng và phân lớp mẫu… Còn lĩnh vực khám phá phần tử ngoại lai chưa có được sự quan tâm, đầu tư và phát triển ở trong nước cũng như ở nước ngoài
Người ta nhận thấy rằng có rất nhiều tri thức còn tiềm ẩn trong dữ liệu, vấn
đề đặt ra là làm thế nào để khai thác được thông tin và khai thác một cách có hiệu quả.Còn trong lĩnh vực khám phá phần tử ngoại lai mới bước đầu được sự quan tâm nghiên cứu.Mặc dù nó được ứng dụng trong nhiều lĩnh vực cuộc sống như: Phát hiện những thẻ bất thường trong hệ thống ngân hàng, những tuyến đường bất
ổn không hợp lý tong giao thông, ứng dụng trong hệ thống an ninh, dự báo thời tiết, trong thị trường chứng khoán, trong lĩnh vực thể thao,… Tuy nhiên, với số lượng dữ liệu được tập trung và lưu trữ trong cơ sở dữ liệu ngày càng lớn thì việc tìm kiếm các ngoại lai hoặc các phần tử ngoại lai trở nên cấp thiết hơn rất nhiều
Do tính hấp dẫn và tính thời sự của khai phá dữ liệu, đặc biệt là phát hiện
phần tử ngoại lai trong cơ sở dữ liệu quan hệ, tôi chọn đề tài: “Nghiên cứu phần
tử ngoại lai đối với phụ thuộc mạnh trong mô hình dữ liệu quan hệ” là luận văn
cao học của mình.Trong đó nghiên cứu vận dụng kiến thức nghiên cứu này vào giải quyết bài toán tìm phần tử ngoại lai đối với phụ thuộc mạnh trong mô hình
dữ liệu quan hệ
Đề tài đi sâu nghiên cứu một mảng kỹ thuật khai thác dữ liệu nhằm hỗ trợ cho mục đích sử dụng khác nhau.Có mục đích tìm các nhân tố tích cực, có mục đích tìm các lỗi lưu trữ trong tập dữ liệu, có mục đích tìm kiếm nhận dạng tội phạm, gian lận tài chính hoặc cũng có thể làm dự báo, phân tích thị trường,…
Trong phạm vi,ứng dụng rộng rãi em đã nêu ở trên, việc nghiên cứu phần
tử ngoại lai đối với phụ thuộc mạnh trong mô hình dữ liệu quan hệ đã mang ý nghĩa khoa học rất lớn Luận văn sẽ thực hiện với hi vọng sẽ đóng góp một phần
Trang 10nghiên cứu khoa học nhất định trong việc tổng hợp, đánh giá một nhiệm vụ khai phá dữ liệu quan trọng nhằm phát hiện những tri thức có ý nghĩa lớn, đảo bảo cơ
sở toán học trong chuyên ngành khoa học máy tính
Trọng tâm của Luận văn là giải quyết bài toán phát hiện phần tử ngoại lai đối với phụ thuộc mạnh trong mô hình dữ liệu quan hệ, song bên cạnh đó Luận văn cũng tiến hành nghiên cứu và đề xuất những vấn đề lý thuyết mới về phụ thuộc hàm, các dạng chuẩn của quan hệ cũng như một số thuật toán tìm luật kết hợp, xây dựng cây quyết định dựa trên phụ thuộc hàm
Một số mục tiêu cụ thể của Luận văn được đặt ra là:
1.Xây dựng mô hình phát hiện phần tử ngoại lai dựa theoluật trong CSDL quan hệ, bao gồm:
- Xây dựng phương pháp xác định phần tử ngoại lai đối với phụ thuộc hàm và khóa
- Xây dựng phương pháp xác định phần tử ngoại lai đối với hệ ràng buộc dạng phụ thuộc hàm
- Xây dựng phương pháp xác định phần tử ngoại lai đối với các dạng chuẩn 2.Xây dựng phương pháp xác định phụ thuộc mạnh trong cơ sở dữ liệu quan
hệ và xác định phương pháp xác định phần tử ngoại lai đối với phụ thuộc mạnh
3.Ứng dụng kết quả nghiên cứu vào giải quyết bài toán
Với việc hoàn thành các mục tiêu đã đặt ra, luận văn đã đạt được mộ số kết quả đóng góp một phần trong việc phát triển lý thuyết về phát hiện phần tử ngoại lai đối với phụ thuộc mạnh trong mô hình dữ liệu quan hệ
Luận văn được bố cục như sau
Ngoài phần mở đầu và kết luận luận văn được chia làm 3 chương:
+ Chương 1: Phụ thuộc mạnh và phần tử ngoại lai
+ Chương 2:Phát hiện phần tử ngoại lai đối với phụ thuộc hàm mạnh
trong cơ sở dữ liệu quan hệ
+ Chương 3: Ứng dụng tìm phần tử ngoại lai đối với phụ thuộc mạnh
trong mô hình dữ liệu quan hệ
Trang 11CHƯƠNG 1 PHỤ THUỘC HÀM MẠNH VÀ PHẦN TỬ NGOẠI LAI
Trong nội dung của chương nay trình bày một số lý thuyết và công trình nghiên cứu của các tác giả đi trước làm cơ sở cho nghiên cứu bao gồm:Khái niệm phụ thuộc mạnh, hệ tính chất xác định phụ thuộc mạnh, phương pháp xác định phụ thuộc mạnh trong Cơ sở dữ liệu, phần tử ngoại lai và mối quan hệ giữa chúng với khai phá dữ liệu.Đồng thời trình bày mô hình phát hiện phần tử ngoại lai trong dữ liệu,trong cơ sở dữ liệu quan hệ và ứng dụng của các phần tử ngoại lai
1.1.Khái niệm về phụ thuộc mạnh
Phụ thuộc mạnh (StrongDependencies) là khái niệm mới được một số tác giả đề xuất và nghiên cứu [2], [11], [17], nó có nhiều ứng dụng quan trọng trong thực tiễn, đặc biệt khi chúng ta cần phân tích mối quan hệ giữa những yếu tố có ảnh hưởng mạnh mang tính quyết định đến nhau.Phụ thuộc mạnh (PTM) liên quan nhiều đến phụ thuộc hàm (PTH) thông thường, và các PTM trên R cũng là các phụ thuộc hàm theo nghĩa thông thường trên R.Tuy nhiên các kết quả về PTM của các tác giả đi trước mới chỉ được đề xuất trong phạm vi họ các PTM trên một tập thuộc tính R.Nội dung dưới đây em trình bày một số kết quả nghiên cứu về mối quan hệ giữa họ S+các PTM và họ F+ các PTH trên R; phương pháp
để xác định các họ phụ thuộc mạnh S+ trên một sơ đồ quan hệ cũng như phương pháp xác định các PTM trên một quan hệ, đồng thời em cũng trình bày phương pháp xác định phần tử ngoại lai đối với các phụ thuộc mạnh
Các khái niệm về phụ thuộc mạnh và các kết quả sau có thể tìm thấy trong [2], [11], [17]:
Cho R là một tập hữu hạn không rỗng các thuộc tính, r = (t1, t2, ,tm) là một quan hệ trên R và A, B ⊆ R Ta nói rằng B phụ thuộc mạnh vào A trên r, kí
Trang 12mạnh của r.Một phụ thuộc mạnh trên R là một mệnh đề dạng A
Một phụ thuộc mạnh A s B đúng trên một quan hệ r nếu A s
B.Chúng ta cũng nói rằng r thoả phụ thuộc mạnh A s B.Cho R là một tập
không rỗng hữu hạn các thuộc tính và P(R) là các tập con của R.Cho Y⊆P(R) x P(R).Chúng ta nói rằng Y là một họ s trên R nếu và chỉ nếu với mọi A,B,C,D⊆R v à a ∈R, ta có:
(S1) ({a},{a})∈Y,
(S2) (A,B)∈Y, (B,C)∈Y ; B ≠ ⇒(A,C)∈Y,
(S3) (A,B)∈Y, C⊆A , D⊆B ⇒(C, D)∈Y,
(S4) (A,B)∈Y, (C,D)∈ Y ⇒(A∪C, B∩D)∈Y,
(S5) (A,B)∈Y, (C,D)∈Y ⇒(A ∩C, B∪ D)∈Y
Dễ thấy rằng Sr là một họ s trên R
Nếu Y là một họ s trên R thì sẽ có một quan hệ r để sao cho Y = Sr
Đặt S+ là họ tất cả các PTM mà có thể suy dẫnlogic từ s theo các qui tắc ( S 1 ) - (S5).Gọi S+ là bao đóng của S
Gọi cặp (R, S) với R là tập không rỗng các thuộc tính và S là tập các PTM trên R là một sơ đồ mạnh (SĐM) (StrongScheme)
Giả sử: G = (R,S) là một SĐM trên R và X ⊆R khi đó đặt:
Xs+ ={a∈R | X s a∈S+
} Gọi Xs
+
là bao đóng của X trên G
Với X,Y ⊆ R rõ ràng A s B∈S+ khi và chỉ khi Y ⊆Xs+
Để thuận tiện ta sẽ kí hiệu X Y để chỉ phụ thuộc hàm thông thường và
ký hiệu: X s Y là phụ thuộc mạnh (hoặc có thể viết X Y∈S+
)
Trong [2], [11], [17], các tác giả mới chỉ nghiên cứu các tính chất của các PTM trên một sơ đồ mạnh (SĐM) g = (R, S) mà chưa đề cập đến mối quan hệ giữa một tập các phụ thuộc mạnh trên R với tập các phụ thuộc hàm F trên
Trang 13R.Trong nội dung dưới đây, tôi trình bày một số kết quả nghiên cứu về mối quan
hệ giữa tập PTM và tập các PTH thông thường trên một tập thuộc tính R.Đồng thời cũng trình bày phương pháp xác định các PTM trên một sơ đồ quan hệ cũng như trên một quan hệ cho trước
1.2 Phương pháp xác định phụ thuộc mạnh trong CSDL
Vì rằng các PTM được sinh ra từ họ các phụ thuộc hàm nào đó trên tập thuộc tính R.Vì vậy trong kết quả nghiên cứu của tôi dưới đây, tôi xét mối quan
hệ giữa họ các PTM và họ các PTH thông thường trên một SĐQH
Ta kí hiệu một phụ thuộc mạnh giữa X, Y ⊆R là X s Y∈S+hoặc kí hiệu: X Y ∈S+(với S+là một tập các phụ thuộc mạnh) là tương đương [1], [2]
* Hệ tính chất xác định phụ thuộc mạnh
Giả sử cho (R,F) là một sơ đồ quan hệ Ta kí hiệu F+ là bao đóng của F,
S+là tập các phụ thuộc mạnh được sinh ra từ F+ theo hệ tính chất sau:
T1 Với a∈R,Y⊆R nếu {a} Y∈F+ khi và chỉ khi {a} Y∈S+;
T2. A,B,C⊆ R ta có AB s C∈S+ khi và chi khi A s C vàB
Trang 14Ngược lại: X, Y ⊆R ta có X Y∈S+giả sử với bất kỳ a∈X ta có:
X = {a}∪X-{a} như vậy {a}∪(X - {a}) Y∈S+
Theo T2 ta có: {a} Y∈S+
Theo T1 thì ta có {a} Y ∈F+
Điều phải chứng minh
Chứng minh H2:
Giả sử X Y∈S+ Ta sẽ chứng minh X Y∈F+ Thật vậy theo Hệ quả H1 đã được chứng minh ở trên thì a ∈Xta có {a} Y∈F+ Do F+ là một họ f trên R do vậy áp dụng nhiều lần tính cộng tínhcủa họ f ta có X Y∈F+ Suy ra
S+⊂F+
[1], [2].Điều phải chứng minh
Định lý 1.2.1(Tính đúng và đầy đủ của hệ T1-T3)
Cho (R,F) là một SĐQH, F + là bao đóng của F Tập các phụ thuộc mạnh
S + được sinh ra từ tậpF+theo các tính chất T1-T3 là đúng và đầy đủ
Chứng minh
+Ta sẽ chứng minh tính đúng đắn của hệ tính chất T1-T3
Có nghĩa là S+được sinh ra theo T1 - T3 là một họ s trên R Tức là nó sẽ thoả mãn các tính chất (S1) - (S5) của một họ s trên R[2]
- Tính chất (S1):
Với mọi a ∈R ta có {a} {a}∈F+
.Do vậy{a} s {a} ∈S+
.Điều phải chứng minh
Trang 15T1 ta có {a} s C∈S+.Áp dụng tính chất T2 nhiều lần ta sẽ thu được A s
C∈S+.Điều phải chứng minh
Tương tự do D = (D-E) ∪E Từ C s D∈S+suy ra C s E∈ S+(theo
T3) Theo tính chất T2 ta có:C s E∈S+hay là:AC s B∩D∈ S+.Điều phải
Giả sử X = x1x2 xk Vì X s Y∈F+ là phụ thuộc mạnh nên dễ dàng suy
ra các phụ thuộc hàm {Xi} Y∈S+ với i = l…k
Trang 16Theo T1 ta có (xi} s Y∈F+ với i = l…k.Vì các phụ thuộc mạnh này
thuộc S+nên ta có thể áp dụng k lần tính chất T2 và suy raX s Y∈S+.Điều
Giả sử (R, F) là một SĐQH.F+là bao đóng của F (theo hệ tiên đề
Amstrong).S+là họ các phụ thuộc mạnh sinh ra từ F+ theo hệ tính chất T1 - T3
Khi đó nếu X s Y∈S+
và Y s Z∈F+
thì ta cóX s Z∈S+
Chứng minh
Trước hết với một quan hệ r bất kỳ trên (R,F) Chúng ta chứng minh
X s Zlà một phụ thuộc mạnh đúng trên r Thật vậy, do X s Y là phụ
thuộc mạnh nên ta có:
t1 t2∈r: nếu với mỗi a∈X mà t1(a) = t2(a) thì b∈Y: t1(b) = t2(b)
Do Y Z là một phụ thuộc hàm nên ta có:
t1 t2∈r: nếu b∈Y: t1(b) = t2(b) thì suy ra z∈Z: t1(z) = t2(z)
Từ đây ta suy ra:
t1 t2∈r: nếu với mỗi a∈X mà t1(a) = t2(a) thì z∈Z: t1(z) = t2(z)
Theo định nghĩa phụ thuộc mạnh ta có X s Z là một phụ thuộc mạnh
Do X s Z là một phụ thuộc mạnh thuộc F+ nên theo Định lý 1.2.1 suy
ra:X s Z∈S+.Bổ đề được chứng minh
Định lý 1.2.2(Sự tồn tại họ phụ thuộc hàm sinh ra họ phụ thuộc mạnh)
Cho R là một tập các thuộc tính, S + là một họ s các phụ thuộc mạnh trên R
Trang 17Có thể tìm được một họ F + các phụ thuộc hàm trên R mà S + sẽ được sinh ra từ
thì {a} Y∈F+
Quy tắc 3: X Y∈F+, Z⊆R thì XZ YZ∈F+;
Quy tắc 4: X,Y,Z⊆R mà có X Y∈ F+, và Y Z∈F+ thì X Z∈ F+
Họ S+sẽ đóng vai trò như tập phụ thuộc hàm F ban đầu để xây dựng F+ Trước hết ta chứng minh rằng họ F+ được sinh ra từ họ phụ thuộc mạnh
S+theo các qui tắc 1, quy tắc 4 như trên là một họ f trên R
(Khái niệm về họ f trên R được trình bày trong [1], [2], [5], [6])
Thật vậy:
Với mọi A, B, C,D ⊆R ta có:
- Do A ⊆A nên A A∈ F+
theo Qui tắc 1
- Giả sử có A B∈F+, và C D∈F+ thì A C∈F+ theo Qui tắc 4
- Giả sử có A B∈F+, A ⊆C, D ⊆ B ta có do A ⊆C nên C A∈F+ (Qui tắc 1) Theo Qui tắc 4 (bắc cầu) thì C B∈F+
- Giả sử A B∈F+, C D∈F+ Áp dụng Qui tắc 3 với A C∈F+ ta có
AC BC∈F+; với C D∈F+ ta có BC BD∈F+ Theo Qui tắc 4 (bắc cầu), suy
ra AC BD∈F+
Như vậy F+ là một họ f trên R(Theo [2], [5])
Bây giờ chúng ta sẽ chứng minh rằng S+cũng thoả các tính chất T1 - T3 với F+ được xây dựng như trên
- Tính chất T1 :
Giả sử với a∈R, Y⊆R à {a} Y∈S+khi đó theo qui tắc 2 thì {a} Y∈
F+
Trang 18Ngược lại, giả sử a∈R, Y⊆Rnếu{a} Y∈F+ (giả sử Y≠{a} vì nếu Y={a) thì hiển nhiên (a) Y∈S+theo tính chất của họ s) Ta sẽ chứng minh rằng
+ Nếu nó được suy dẫn từ Qui tắc 2 thì hiển nhiên {a} {y}∈S+
+ Nếu nó được suy dẫn từ Qui tắc 4, thì sẽ phải có một phụ thuộc mạnh dạng{a} {z}∈S+
(cũng đồng thời thuộc F+) và một phụ thuộc hàm {z} {y}∈
F+
để {a} {y}∈F+
với z là một thuộc tính nào đó thuộc R Theo Bổ đề 2.1 thì
{a} {y}∈S+.Từ đó y∈Y ta có{a} {y}∈S+ Theo tính chất (S5) của họ s, ta
dễ dàng suy ra {a} Y∈S+.Điều phải chứng minh
.Điều phải chứng minh
Ta được điều phải chứng minh
Mệnh đề 1.2.2 (Phụ thuộc mạnh của các tập phụ thuộc hàm tương đương)
Giả sử G và F là hai tập phụ thuộc hàm tương đương (F + = G + ) Khi đó các họ phụ thuộc mạnh sinh ra từ F + và G + (theo T I - T 3 ) là như nhau
Chứng minh
Giả sử S1+, S2+ là các họ phụ thuộc mạnh sinh ra từ F+ và G+ Ta có:
Trang 19S1+⊂F+ suy ra S1+⊂G+ Do S2+là họ các phụ thuộc mạnh sinh ra từ G+ nên
S1
+
⊆S2+(tính đầy đủ của họ PTM, xem Định lý 2.3)
Tương tự ta cũng có S2+⊆S1+
vậy S1+=S2+ Điều phải chứng minh
Bây giờ ta xét tập các phụ thuộc mạnh SF sinh ra từ tập F các phụ thuộc hàm theo các qui tắc sau:
T0’: {a} {a} ∈ S F
T1’: Với a ∈R, Y⊆Rthì {a} Y ∈F khi và chi khi {a} Y ∈S F
T2’: A,B,C ⊆R ta c ó A B s C ∈C khi và chỉ khi A s C ∈S F và B
Trang 20s E∈SF.Áp dụng T3' ta được: AC s E∈SF, hay viết lại:A∪C s
D∪SF.Điều phải chứng minh
Như vậy tập SFlà một họ s trên R
Định lý 1.2.3
Họ phụ thuộc mạnh sinh ra từ tập phụ thuộc hàm tối tiêu F
Họ phụ thuộc mạnh S F sinh ra từ tập phụ thuộc hàm tối tiêu F và họ phụ thuộc mạnh sinh ra từ F + (F + là bao đóng của F theo Hệ tiên đề Amstrong) là như nhau,có nghĩa là: S F = S +
và dễ dàng chứng minh rằng {xi} {yi} ∈SF
Áp dụng k lần tính chất T2' và h lần tính chất T3' cho các phụ thuộc hàm {xi} {yi} ∈SF ta sẽ nhận được X Y ∈SF Có nghĩa là S+⊆SF
Ngược lại, vì tập SF cũng là tập các phụ thuộc mạnh trong F+ Theo Định
lý 1.2.1về tính đầy đủ của họ các phụ thuộc mạnh S+trong F+ nên ta có SF ⊆S+.Từ đây ta suy ra: SF= S+ Điều phải chứng minh
Trang 21Từ Định lý 1.2.1, Mệnh đề 1.2, và Định lý 1.2.3 ta thấy rằng để tìm tập
tất cả các phụ thuộc mạnh trên SĐQH (R, F) thì ta có thể thực hiện các bước:
- Xây dựng tập phụ thuộc hàm tối tiểu G tương đương với F
- Từ tập phụ thuộc hàm tối tiểu này xây dựng tập các phụ thuộc mạnh
theo các qui tắc T0' - T4'
1.3.Phần tử ngoại lai và mối quan hệ giữa chúng với khai phá dữ liệu
1.3.1 Khái niệm về phần tử ngoại lai
Một cách hình thức người ta có thể định nghĩa phần tử ngoại lai (Outliers) của một tập dữ liệu là các phần tử mà theo một cách nhìn nào đó có các đặc tính không giống với tập hợp đa số còn lại của tập dữ liệu Chẳng hạn trong hình 1.3.1 cho thấy một phần tử ngoại lai theo vị trí hình học
Hình 1.3.1 – Phần tử ngoại lai trong tập điểm có tọa độ (x,y) trên mặt phẳng có
giá trị tung độ y nhỏ hơn hẳn các phần tử khác của tập hợp
Các khái niệm về ngoại lai đầu tiên có nguồn gốc từ lĩnh vực thống kê Barnett và Lewis định nghĩa: Một phần tử ngoại lai là một quan trắc hoặc một tập con các quan trắc mà sự xuất hiện của chúng trái ngược với những quan trắc còn lại, (xem [10]) Phần tử ngoại lai cũng có thể được hiểu như một quan trắc mà giá trị của nó khác biệt quá nhiều so với những quan trắc khác gây cho người ta nghi ngờ rằng nó được thực hiện bằng một kỹ thuật khác
Có nhiều phương pháp định nghĩa và hiểu khác nhau về phần tử ngoại lai Tuy nhiên chúng có chung là: phần tử ngoại lai của một file dữ liệu là những phần tử của file dữ liệu có sự khác biệt đáng kể đối với những phần tử còn lại Và khi tiến hành xác định phần tử ngoại lai, trước hết người ta đưa ra định nghĩa, sau
Trang 22đó xây dựng phương pháp để xác định
1.3.2 Các phương pháp xác định phần tử ngoại lai
Có nhiều công trình nghiên cứu về phát hiện phần tử ngoại lai Các phương pháp chính để xác định phần tử ngoại lai bao gồm:
1.3.2.1 Xác định phần tử ngoại lai theo khoảng cách (Distance-Based):
Theo hướng tiếp cận này phải xác định một hàm đo khoảng cách (metric) giữa các phần tử trong tập dữ liêu Các phần tử ngoại lai là những phần tử nằm khá xa với tập các phần tử còn lại.Điển hình cho hướng tiếp cận này là Knorr (xem [18], [19])
Một trong những định nghĩa của Knorr đưa ra như sau:
Cho một tập hợp dữ liệu (dataset) T; O là một phần tử thuộc T Xác định một hàm khoảng cách trong T (khoảng cách giữa 2 điểm trong T) Gọi D – lân cận của O là một tập hợp các điểm Q ∈ T sao cho khoảng cách tới O nhỏ hơn D
Một phần tử O trong tập dữ liệu T là một (M,D)-outlier nếu số phần tử của
T nằm trong D-lân cận của O không vượt quá M
Ví dụ: O là (3,5)-outlier trong T, nếu trong lân cận khoảng cách 5 của O không có quá 3 phần tử của T
(Lân cận khoảng cách của O là các điểm cách O không quá 5 đơn vị đo khoảng cách)
1.3.2.2 Xác định theo thống kê (Sttistical-Based):
Hướng nghiên cứu này dựa trên việc xác định các mô hình phân phối
thống kê mà các phần tử phải tuân theo (phân phối chuẩn, phân phối X2 ) Phần
tử ngoại lai là những phần tử không tuân theo các luật này Điển hình cho hướng tiếp cận này là các tác giả Barnett and Lewis (xem [10])
Ví dụ về một định nghĩa phần tử ngoại lai theo thống kê: Cho một tập dữ liệu T sau khi xác định các phần tử tuân theo luật chuẩn N(µ, ) với kỳ vọng µ
và phương sai , các phần tử t ∈ T được gọi là phần tử ngoại lai nếu:
|(t-µ)/ |>=3 Các phần tử ngoại lai được xác định là các phần tử có giá trị lệch với giá trị trung
Trang 23bình µ vượt quá 3 (quy tắc 3 )
1.3.2.3 Xác định theo độ khác biệt (Deviation-Based):
Hướng nghiên cứu này dựa trên việc xác định những đặc trưng cơ bản của các phần tử trong một tập các phần tử.Các phần tử có những đặc trưng khác biệt quá lớn so với các phần tử còn lại thì là các phần tử ngoại lai Điển hình cho hướng tiếp cận này là các tác giả Arning, Agrawal, Raghavan (xem[8])
Đồng thời với các hướng nghiên cứu này, các tác giả cũng đưa ra các phương pháp và thuật toán xác định phần tử ngoại lai: phương pháp dựa theo đồ thị (Graphical methods), phương pháp dựa theo phân phối (Distribution-based methods), phương pháp dựa theo độ sau (Depth-Based methods), thuật toán phân cụm (Clustering Algorithm) và đặc biệt phương pháp dựa theo khoảng cách (Distance-Based methods) được Knorr phát triển trong các công trình của mình Các phương pháp nói trên mới nghiên cứu phát hiện phần tử ngoại lai trên tập các phần tử dữ liệu nói chung, chưa đi sâu vào các loại dữ liệu cụ thể Mặt khác vai trò của các ràng buộc, luật biết trước chưa được đặt ra Các tác giả nghiên cứu thường giải quyết vấn đề phát hiện phần tử ngoại lai đồng thời với việc phát hiện những luật mà các phần tử của tập dữ liệu phải tuân theo Điều này làm hạn chế đến hiệu quả khi áp dụng vào những trường hợp CSDL cụ thể hoặc khi chúng ta quan tâm nhiều đến sự vi phạm của các phần tử dữ liệu đối với một tập hợp các luật được cho trước
1.3.3 Mối quan hệ giữa phần tử ngoại lai và khai phá dữ liệu
Trước khi các kỹ thuật khai thác dữ liệu ra đời, thông tin hữu ích chỉ được khai thác hiệu quả trên các tập dữ liệu với cỡ và số chiều dữ liệu là nhỏ Do đó,
để có thể khai thác dữ liệu một cách hiệu quả với khối lượng thông tin lớn thì cần thiết phải có các công cụ khai thác dữ liệu tốt, các thuật toán khai thác dữ liệu tự động, thời gian thực hiện nhanh Trong thực tế các chương trình ứng dụng khai thác dữ liệu thường phải khai thác dữ liệu trên các tập dữ liệu rất lớn không phù hợp với bộ nhớ chính [4]
Dữ liệu đó được gọi là dữ liệu nằm trong bộ nhớ ngoài (Disk –
Trang 24residentData)
Một vấn đề được quan tâm trong luận văn này là tìm hiểu các thuật toán khai thác, tìm kiếm các phần tử ngoại lai trong các tập dữ liệu lớn, nhiều chiều Hiện nay, một số các kỹ thuật phát hiện phần tử ngoại lai nhằm các mục đích sau:
a) Cung cấp một số giải thích hoặc mô tả về không gian dữ liệu mà trong
đó xuất hiện phần tử ngoại lai
b) Cung cấp một số thông tin về mối quan hệ giữa các phần tử ngoại lai (ví dụ đối với cường độ của hai phần tử ngoại lai)
Một số vấn đề khác cần quan tâm liên quan tới “ ý nghĩa “ của các phần tử ngoại lai Cho đến nay, chưa có một đĩnh nghĩa nào định nghĩa một cách đầy đủ
và chính xác về phần tử ngoại lai Việc xác định các phần tử ngoại lai trong mỗi lĩnh vực là khác nhau Bời vì “ ý nghĩa “ ngoại lai của các phần tử ngoại lai mang tính chất và đặc trưng của từng lĩnh vực áp dụng,nên rất khó để đưa ra được một
định nghĩa hoàn chỉnh về phần tử ngoại lai
1.4.Mô hình phát hiện phần tử ngoại lai trong dữ liệu và trong cơ sở dữ liệu quan hệ
Như tôi đã tình bày ở trên, các hướng nghiên cứu phát hiện phần tử ngoại lai của các tác giả đi trước mới dừng lại nghiên cứu phát hiện phần tử ngoại lai trên tập các phần tử dữ liệu nói chung, chưa đi sâu vào các loại dữ liệu có cấu trúc cụ thể Mặt khác vai trò của các ràng buộc, luật biết trước chưa được đặt ra Điều này làm hạn chế đến hiệu quả khi áp dụng vào những trường hợp loại CSDL cụ thể hoặc khi chúng ta quan tâm nhiều đến sự vi phạm của các phần tử
dữ liệu đối với một tập họp các luật được cho trước[1], [2] Nội dung dưới đây tôi trình bày hướng nghiên cứu mới về phát hiện các phần tử ngoại lai đối với CSDL quan hệ dựa theo các luật (Rule-Base) Hướng tiếp cận này mang lại hiệu quả hơn đối với nhiều trường hợp thực tế
1.4.1.Định nghĩa mô tả
Cho một sơ đồ quan hệ (R,F), với tập thuộc tính R={A1,A2, ,An} và tập các phụ thuộc hàm F đúng trên R Gọi F+ là bao đóng của F (theo Hệ tiên đề
Trang 25Amstrong) Giả sử rlà một bảng dữ liệu có các trường (thuộc tính) và miền giá trị trùng với quan hệ trên sơ đồ quan hệ (R,F) Ta gọi rlà bảng dữ liệu trên R Bảng
dữ liệu này có thể chứa những bộ trùng nhau Kí hiệu T là tập các ràng buộc và qui tắc mà các phần tử của R phải thoả mãn
Định nghĩa 1.4.1:
Cho một bảng dữ liệu r trên một tập thuộc tính R Kí hiệu T là tập các qui tắc, ràng buộc (gọi là các luật) mà các phần tử của r phải tuân theo Phần tử ngoại lai của r là những phần tử của bảng dữ liệu này không tuân theo một trong các qui tắc, ràng buộc đó
Một phần tử của bảng dữ liệu được hiểu là một bộ các giá trị của các i thuộc tính
Các qui tắc, ràng buộc được đề cập bao gồm những ràng buộc về cấu trúc của CSDL (khoá, phụ thuộc hàm, các dạng chuẩn phải tuân theo đối với một quan hệ và các ràng buộc theo ngữ nghĩa phụ thuộc vào yêu cầu, ý nghĩa của ứng dụng mà trong đó CSDL được sử dụng
Ví dụ: Cho bảng dữ liệu r trên sơ đồ quan hệ (R,F)được giả thiết là một quan hệ có dạng chuẩn 3NF.Khi đó các phần tử của r (các bộ của r) cần phải thoả
mãn điều kiện: không có các bộ trùng nhau (điều kiện của một quan hệ), và điều
kiện r ởdạng chuẩn 3NF, tức là không tồn tại một phụ thuộc hàm dạng X a đúng trên r với a là một thuộc tính thứ cấp và x+= R.Tuy nhiên trong quá trình
cập nhật dữ liệu, có sự sai sót dẫn đến r không là một quan hệ hoặc thoả mãn một
phụ thuộc hàm mà vi phạm đến điều kiện của 3NF do có những bộ bị cập nhật
sai (ràng buộc ởđây là điều kiện về điều kiện khoá của quan hệ, và dạng chuẩn
3NF của r) Khi đó những bộ của r có giá trị trùng nhau hoặc vi phạm vào điều kiện của dạng chuẩn 3NF sẽ được gọi là các phân tử ngoại lai [1],[2]
1.4.2.Phân loại các phần tử ngoại lai trong CSDL quan hệ
Tuỳ theo các loại ràng buộc đối với các phần tử trong một quan hệ của CSDL quan hệ ta cũng có những loại phần tử ngoại lai đối với từng trường hợp
đó (phần tử vi phạm các ràng buộc tương ứng) Tuỳ theo ngữ cảnh và yêu cầu
Trang 26của bài toán thực tế mà các khái niệm, định nghĩa, phương pháp xác định phần tử ngoại lai sẽ được đưa ra Trong phạm vi nghiên cứu của Luận văntôi chỉ đề cập tới một số dạng phần tử ngoại lai phổ biến đối với CSDL quan hệ và có ý nghĩa trong việc ứng dụng vào một số bài toán kiểm toán và quản lý tài chính Chi tiết
về khái niệm và phương pháp xác định các phần tử ngoại lai cho từng trường hợp
sẽ được trình bày ở các nội dung sau Các loại phần tử ngoại lai trong CSDL quan hệ được đề cập tới trong luận văn bao gồm [1], [2]:
1) Phần tử ngoại lai đối với phụ thuộc hàm, trong đó được chia ra:
a Phần tử ngoại lai đối với phụ thuộc hàm nói chung
b Phần tử ngoại lai đối với khoá
c Phần tử ngoại lai đối với các dạng phụ thuộc hàm đặc biệt khác(dạng bằng nhau, dạng tỉ lệ)
2) Phần tử ngoại lai đối với hệ luật kết hợp (các ràng buộc dạng phụ thuộc hàm); 3) Phần tử ngoại lai đối với các dạng chuẩn, trong đó chia ra:
a Phần tử ngoại lai đối với dạng chuẩn 2NF
b Phần tử ngoại lai đối với dạng chuẩn 3NF
c Phần tử ngoại lai đối với dạng chuẩn BCNF
4) Phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ loại 2
5) Phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ dạng hồi qui
1.4.3.Mô hình phát hiện phần tử ngoại lai dựa theo luật đối với CSDL quan hệ
Mô hình được trình bày ở đây dùng cho việc phát hiện các phân tử ngoại lai theo nghĩa chúng vi phạm các qui tắc, ràng buộc (luật) cho trước trong CSDL dạng quan hệ Các luật được đề cập ở đây mang tính chủ quan của người dùng và
đã biết trước (dựa trên các qui định trong thực tế đối với từng loại dữ liệu) có ý nghĩa như hệ thống giám sát trong kỹ thuật học máy có giám sát
Trong trường hợp bài toán phát hiện phần tử ngoại lai theo nghĩa xác định các phần tử trong tập dữ liệu có sự khác biệt đáng kể so với đa số các phần tử còn lại mà chưa biết rõ luật mà các phần tử phải tuân theo thì có thể áp dụng các phương pháp đã được trình bày trong [6], [9], [12] để giải quyết
Trang 272) Xử lý trước: trong bước này cần phân tích bài toán để nếu cần thiết thì
sẽ sử dụng các thuật toán phân loại dữ liệu hoặc lấy mẫu kiểm tra
3) Dựa vào các mô hình (phương pháp) phát hiện phần tử ngoại lai đã biết
để phân loại bài toán
4) Sử dụng phương pháp được lựa chọn để xử lý bài toán
Sơ đồ được mô tả như trong Hình 1.4.3
* So sánh với các mô hình phát hiện phần tử ngoại lai khác
Mô hình phát hiện phần tử ngoại lai dựa theo luật được trình bày ở trên so với các mô hình của các tác giả đi trước có những điểm khác biệt sau:
- Các mô hình trước đây không đặt ra vấn đề biết trước các luật mà các phần tử trong tập dữ liệu phải tuân theo mà thường gắn quá trình xác định phần
tử ngoại lai cùng với việc phát hiện các luật nằm trong dữ liệu Các phương pháp, thuật toán phát hiện thuộc loại phát hiện không có giám sát (tương tự như phương pháp học máy không có giám sát) Trong mô hình mới được đưa ra trong Luận văn, các luật được biết trước Các phương pháp, thuật toán được đưa ra thuộc loại phát hiện có giám sát (tương tự như phương pháp học máy có giám sát)
- Mô hình mới tập trung vào việc phát hiện phần tử ngoại lai trong tập dữ liệu mà mỗi phần tử là một bản ghi (bộ giá trị của nhiều thuộc tính - phần tử trong không gian nhiều chiều) Tập dữ liệu trong các mô hình trước đó là tập dữ liệu nói chung và các phần tử thuộc không gian một chiều
- Các phần tử ngoại lại trong CSDL quan hệ được đề cập ở đây được hiểu
Trang 28là các phần tử (bộ) giá trị của bảng dữ liệu cho trên một tập thuộc tính R hoặc cho trên một sơ đồ quan hệ (R,F) mà không tuân theo các qui định, ràng buộc đối với quan hệ trên sơ đồ quan hệ (R,F)
Trang 29Hình 1.4.3 Sơ đồ phát hiện phần tử ngoại lai dựa theo luật trong CSDL quan hệ
Xác định bài toàn
Tiền xử lý
- Bảng đầu vào
- Các luật (ràng buộc, qui tắc)
- Phân loại dữ liệu (a)
- Xác định mẫu chọn (b)
Phát hiện PTNL đối với phụ thuộc hàm xấp xỉ loại II
Phát hiện PTNL đối với các ràng buộc theo ngữ nghĩa
2NF (6)
3NF (7)
BCNF (8)
Dạng chung (12)
Dạng
hồi
qui (13)
Dạng luật kết hợp (5)
Dạng ràng buộc khác
Trang 30Ghi chú:
(a) Phân loại dữ liệu [3], [5]
(b) Lấy mẫu phát hiện phần tử ngoại lai [6]
Các thuật toán được trình bày trong Luận án:
(1) Phát hiện phần tử ngoại lai đối với phụ thuộc hàm dạng chung [2] (2) Phát hiện phần tử ngoại lai đối với [2]
(3) Phát hiện phần tử ngoại lai đối với PTH dạng bằng nhau [2]
(4) Phát hiện phần tử ngoại lai đối với PTH dạng tỉ lệ [2]
(5) Phát hiện phần tử ngoại lai đối với hệ luật kết hợp[2]
(6) Phát hiện phần tử ngoại lai đối với dạng chuẩn 2NF [2]
(7) Phát hiện phần tử ngoại lai đối với dạng chuẩn 3NF[2]
(8) Phát hiện phần tử ngoại lai đối với dạng chuẩn BCNF[2]
(9) Phát hiện phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ loại 2[2] (10) Phát hiện phần tử ngoại lai bằng phương pháp hồi qui (đối với các phụ thuộc hàm xấp xỉ loại 2 có dạng tương quan tuyến tính[2]
Trong các nội dung tiếp theo tôi sẽ mô tả chi tiết khái niệm và phương
pháp xác định phần tử ngoại lai cho từng trường hợp
1.5 Ứng dụng của các phần tử ngoại lai
Đối với một số ứng dụng khám phá tri thức, các sự kiện hiếm có thường được quan tâm hơn các sự kiện thông thường, chẳng hạn việc phát hiện các thẻ tín dụng giả, theo dõi các hoạt động tội phạm trong thương mại điện tử.[4]
Sau sự tấn công các trang mạng năm 2000 và đặc biệt sự kiện khủng bố tấn công nước Mỹ ngày 11/9/2001, người ta quan tâm nhiều đến việc bảo mật
máy tính, bao gồm cả phần cứng, phần mềm và cả hệ thống mạng (ví dụ: phát
hiện sự xâm nhập) Bảo mật hệ thống mạng bao gồm tần suất của các tấn công dịch vụ mà một sự kiện bên ngoại được phát hiện trong gói dữ liệu hệ thống
mạng (ví dụ: Số lượng lớn không bình thường các gói dữ liệu từ một nguồn lạc
danh) Công cụ thống kê có thể được dùng để tìm ra một thói quen là ngoại lệ
tương ứng với một lịch sử đã biết (ví dụ: Những thói quen điển hình theo đăng
Trang 31nhập, sử dụng CPU và truy xuất dữ liệu)
Đối với các hệ thống thanh toán điện tử bao gồm các ứng dụng thẻ tín dụng, thẻ điện thoại và thẻ thông minh, chúng ta quan tâm tới việc phát hiện thẻ giả
Một ứng dụng nữa của việc phát hiện phần tử ngoại lai là nghiên cứu cổ phiếu Các công ty và các cá nhân đã từng thử dự đoán giá trị các cổ phiếu được niêm yết
KẾT LUẬN CHƯƠNG 1
Chương 1 đã thu được một số kết quả sau: Khái niệm về phụ thuộc mạnh,
hệ tính chất của phụ thuộc mạnh, phương pháp xác định phụ thuộc mạnh trong CSDL, phần tử ngoại lai và mối quan hệ giữa chúng, mô hình phát hiện phần tử ngoại lai trong dữ liệu và trong CSDL quan hệ và ứng dụng của phần tử ngoại lai
Trang 32CHƯƠNG 2: PHÁT HIỆN PHẦN TỬ NGOẠI LAI ĐỐI VỚI PHỤ THUỘC
HÀM MẠNH TRONG CƠ SỞ DỮ LIỆU QUAN HỆ
2.1.Phần tử ngoại lai đối với các dạng phụ thuộc hàm đặc biệt
Chúng ta thấy rằng trong trường hợp đối với một phụ thuộc hàm nói chung thì các thuật toán nêu trên chỉ có thể tìm được các cặp phần tử mà trong đó
có ít nhất một phân tử là ngoại lai đối với phụ thuộc hàm Trong một số trường hợp đặc biệt của phụ thuộc hàm trong các CSDL thực tế như phụ thuộc hàm dạng bằng nhau, phụ thuộc hàm dạng tỉ lệ chúng ta có thể có thuật toán riêng để xác định chính xác phần tử ngoại lai đối với các phụ thuộc hàm loại này Phần dưới đây trình bày một số trường hợp đó[3], [4], [5]
2.1.1 Phần tử ngoại lai đối với phụ thuộc hàm dạng bằng nhau
Định nghĩa 2.1.1.1(Phụ thuộc hàm dạng bằng nhau):
Cho bảng dữ liệu r trên R = (A 1 ,A 2 , ,A n ).Giả sử với Ap, Aq nào đó thuộc
R, mà với mọi t i ∈r ta có: t i (A p ) = t i (A q ) Khi đó ta dễ thấy có phụ thuộc hàm:
A p A q (cũng đồng thời có A q A p ) Chúng ta gọi các phụ thuộc hàm dạng này
là các phụ thuộc hàm dạng bằng nhau
Các phụ thuộc hàm dạng này có trong các bảng dữ liệu được sinh ra trong trường hợp chúng ta kết nối (Join) hai hoặc nhiều bảng dữ liệu với nhau (giữa
bảng định mức, tiêu chuẩn với bảng thực tế phát sinh được cập nhật (Ví dụ:Giữa
bảng kê khai tỉ lệ thuế phải nộp của doanh nghiệp với bảng qui định về thuế suất của Nhà nước ban hành ) [2]
Trong trường họp này, để xác định các cặp phần tử ngoại lai ti, tj ta có thể
so sánh: ti(Ap) với tj(Aq) ( hoặc tj(Ap) với tj(Aq) Nếu ti(Ap) ≠ ti(Aq) (hoặc tj(Ap) ≠
tj(Aq)) thì khi đó mọi cặp (ti, tk) (hoặc (tj, tk)) với tk∈r đều là cặp phần tử ngoại lai Trong trường hợp này ta có thể xác định chính xác phần tử ngoại lai như sau:
Định nghĩa 2.1.1.2(Phần tử ngoại lai đối với phụ thuộc hàm dạng bằng nhau):
Cho r làmột bảng dữ liệu trên sơ đồ quan hệ (R,F) với R= (A 1 ,A 2 , ,A n ); cho A p A q là phụ thuộc hàm dạng bằng nhau đúng trên r(t i (A p ) = t i (A q ) với mọi
Trang 33t i ∈r).Phần tử ngoại lai đối với A p A q là phần tử t k ∈rmà t k (A p ) ≠ t k (A q )
Dựa trên định nghĩa ta cũng dễ đưa ra thuật toán để phát hiện những phần
tử ngoại lai đối với phụ thuộc hàm dạng này Thuật toán dựa trên việc kiểm tra giá trị thuộc tính của vế trái và vế phải phụ thuộc hàm
Thuật toán 2.1.1(Phát hiện phần tử ngoại lai đối với PTH dạng bằng nhau)
Input: r là bảng dữ liệu trên R; Ap Aqlà phụ thuộc hàm dạng bằng nhau;
Output: tập các phần tử ngoại lai của r: OTL
Begin
Với mỗi ti∈r thực hiện kiểm tra: ti(Ap) ≠ ti(Aq), nếu đúng thì lưu ti vào tập
OTL
End
Ví dụ: Cho bảng kê các hợp đồng nhập khẩu hàng hoá của một công ty
(đã được kết nối với bảng thuế suất qui định theo MA_HANG)
Trong đó cột TL_THUE là thuế suất được công ty kê khai, TL_THUE_QĐ là thuế suất do Nhà nước qui định theo từng loại hàng hoá
HD
MA HANG
TL_
THUE
THANH TIỀN
TIEN THUE
TL_ THUE_QD
Trang 34Ta thấy có phụ thuộc hàm TLTHUE THUE_QĐ có dạng bằng nhau
Áp dụng thuật toán trên chúng ta sẽ thấy các hoá đơn ứng với loại hàng có mã số: M1020, M1002, M1005, M1006, M1007 có sự kê khai thuế suất thấp hơn thuế suất qui định
2.1.2 Phần tử ngoại lai đối với phụ thuộc hàm dạng tỉ lệ
Trong trường hợp này ta có phụ thuộc hàm:
lệ Gọi p j là tỉ lệ đối với thuộc tính A sj (j=1 k)
Trong thực tế chúng ta gặp loại phụ thuộc hàm loại này trong các trường hợp tạo các bảng kê về khối lượng một loại sản phẩm được sản xuất ra cùng với các thành phần dùng để tạo nên sản phẩm đó (theo định mức qui định) Đồng thời trong thực tế các tỉ lệ này có thể được chấp nhận với một giá trị sai số nào đó
vì vậy đối với trường hợp này ta đưa ra định nghĩa về phần tử ngoại lai như sau
Định nghĩa 2.1.2.2(Phần tử ngoại lai đổi với phụ thuộc hàm dạng tỉ lệ)
Cho r là một bảng dữ liệu trên R Với một số δ cho trước Phần tử t i ∈r sẽ
là ngoại lai đổi với phụ thuộc hàm dạng tỉ lệ A s As1 A s2 A sk , nếutồn tại một
A sj ∈{A sl , A s2 , A sk } để sao cho:
p A t
A t
j s i
sj i
) (
) (
>δ
Trong thực tế đối với từng thuộc tính người ta có thể chọn giá trị δ khác
Trang 35nhau tuỳ theo yêu câu độ chính xác
Ta có thuật toán phát hiện phần tử ngoại lai đối với phụ thuộc hàm dạng tỉ
A t
j s i
sj i
) (
) (
Trang 36tỉ lệ qui định vượt quá 1%)
2.2 Phần tử ngoại lai đối với hệ ràng buộc dạng phụ thuộc hàm
Trong thực tế chúng ta cũng thường gặp tập dữ liệu mà các phần tử của nó được qui định phải tuân theo một hệ các ràng buộc nào đó Các phần tử không tuân theo các ràng buộc này được coi là ngoại lai Ta sẽ xét một trường hợp các ràng buộc có dạng phụ thuộc hàm được trình bày ở dưới đây [1], [2]
Cho một tập các thuộc tính R = {A1, A2, A3, , An} và một bảng dữ liệu r trên R.Giả sử miền giá trị của Ai là Di(i = 1 n ) Giả thiết r có dạng chuẩn 1 trở nên
Giả sử mọi bộ thuộc r phải thoả tập các qui tắc F(f1, f2, ,fm) có dạng: F: {fj: mj uj } j = l m; m ≥ 1
Trang 37mệnh đề có thể suy diễn từ các mệnh đề khác)
Định nghĩa 2.2 (Phần tử ngoại lai đối với hệ ràng buộc dạng PTH)
Một phần tử thuộc bảng dữ liệu r được gọi là phần tử ngoại lai đối với hệ ràng buộc dạng phụ thuộc hàm nếu không thoả mãn một trong các ràng buộc trong hệ
Dưới đây chúng ta sẽ xét mối quan hệ giữa hệ các ràng buộc dạng phụ thuộc hàm và phụ thuộc hàm trên r
Nếu ký hiệu: Bj = (Aj1, Aj2, , Ajk)
Qj = (A*j1,A*j2,…, A*jk)
Chúng ta xét tập các phụ thuộc hàm:
G {gj:BjQj )} với j=(l ,m) ;
Ta có G ⊆Fr (với Fr là họ các phụ thuộc hàm đúng trên r )
Tách r thành các tập con Sj sao cho mỗi tập con Sj chứa các bản ghi thoả mãn vế trái của qui tắc fj, nghĩa là:
Sj= {t∈r, sao cho (Aj1= aj1, Aj2= aj2,…,Ajk= ajk)
Giả sử Sj thoả mãn qui tắc fj.Xét phụ thuộc hàm gj∈G
Giả sử ta có 2 phần tử bất kỳ t1, t2 thuộc Sj, do các phần tử của Sj đều chứa
bộ thuộc tính (Aj1, Aj2, , Ajk) với j, k nào đó và (Aj1= aj1, Aj2= aj2…Ajk= ajk)
Khi đó ta có t1(Aj1, Aj2, , Ajk) = t2(Aj1, Aj2, , Ajk), do t1, t2 thoả bộ qui tắc