Ví dụ, giữa hàng hóa và đơn giá, giữa doanh thu và chi phí,… 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 CSDL quan hệ, tôi đã chọn
Trang 1=== ===
NGUYỄN LÊ HỒNG NHẬT
PHỤ THUỘC HÀM XẤP XỈ KIỂU TƯƠNG QUAN HÀM SỐ VÀ ỨNG DỤNG
ĐỂ PHÁT HIỆN PHẦN TỬ NGOẠI LAI
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
HÀ NỘI, 2018
Trang 2======
NGUYỄN LÊ HỒNG NHẬT
PHỤ THUỘC HÀM XẤP XỈ KIỂU TƯƠNG QUAN HÀM SỐ VÀ ỨNG DỤNG
ĐỂ PHÁT HIỆN PHẦN TỬ NGOẠI LAI
Chuyên ngành: Khoa học máy tính
Mã số: 8 48 01 01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Người hướng dẫn khoa học: TS LÊ VĂN PHÙNG
HÀ NỘI, 2018
Trang 3LỜI CẢM ƠN
Tôi xin cảm ơn các thầy cô Trường Đại học Sư phạm Hà Nội 2, các bạn học viên lớp Cao học khoa học máy tính, đồng nghiệp và gia đình đã tạo điều kiện, giúp đỡ cũng như luôn động viên tôi trong quá trình học tập và hoàn thành luận văn
Xin cảm ơn các thầy cô giảng dạy trực tiếp đã giúp đỡ, truyền đạt cho tôi nhiều kiến thức bổ ích cho công tác thực tiễn của bản thân
Đặc biệt tôi xin chân thành cảm ơn Tiến sỹ Lê Văn Phùng đã luôn chỉ bảo, hướng dẫn, giúp đỡ tôi trong suốt quá trình hoàn thành luận văn này
Trong quá trình thực hiện luận văn, không thể tránh khỏi những khiếm khuyết, xin chân thành cảm ơn những ý kiến đóng góp quý báu của các thầy
cô, các anh chị và các bạn
Một lần nữa tôi xin trân trọng cảm ơn!
Hà Nội, ngày tháng năm 2018
Học viên
Nguyễn Lê Hồng Nhật
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này do tôi tự nghiên cứu, tìm hiểu và tổng hợp từ nhiều nguồn tài liệu khác nhau Luận văn tốt nghiệp là kết quả của quá trình học tập, nghiên cứu và thực hiện hoàn toàn nghiêm túc, trung thực của bản thân Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và đƣợc trích dẫn hợp pháp
Tôi xin hoàn toàn chịu trách nhiệm về nội dung và sự trung thực trong luận văn tốt nghiệp Thạc sĩ của mình
Hà Nội, ngày tháng năm 2018
Học viên
Nguyễn Lê Hồng Nhật
Trang 5MỤC LỤC
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục đích nghiên cứu 3
3 Đối tượng nghiên cứu 3
4 Dự kiến đóng góp mới 3
5 Nhiệm vụ nghiên cứu 3
6 Giới hạn phạm vi nghiên cứu 3
7 Phương pháp nghiên cứu 4
8 Bố cục luận văn 4
CHƯƠNG 1: TỔNG QUAN VỀ PHỤ THUỘC HÀM VÀ PHẦN TỬ NGOẠI LAI 5
1.1 Khái quát về phụ thuộc hàm 5
1.1.1 Khái quát về mô hình dữ liệu quan hệ 5
1.1.2 Phụ thuộc hàm, khóa, hệ tiên đề Armstrong 6
1.1.3 Các dạng phụ thuộc hàm đặc biệt 10
1.1.4 Phụ thuộc đa trị và phụ thuộc kết nối 12
1.1.5 Phụ thuộc mạnh và phụ thuộc yếu 17
1.1.6 Phụ thuộc hàm mờ 19
1.1.7 Mô tả tương đương của học các họ các thuộc hàm 20
1.2 Khái quát về Phần tử ngoại lai 21
1.2.1 Khái niệm về phần tử ngoại lai 22
1.2.2 Mối quan hệ giữa phần tử ngoại lai với khai phá dữ liệu 24
1.2.3 Mô hình phát hiện các phần tử ngoại lai trong CSDL quan hệ 25
1.2.4 Phân loại các phần tử ngoại lai trong CSDL quan hệ 26
1.2.5 Mô hình phát hiện phần tử ngoại lai dựa theo luật đối với CSDL quan hệ 27
Trang 61.2.6 Ứng dụng của các phần tử ngoại lai 30
CHƯƠNG 2: PHỤ THUỘC HÀM XẤP XỈ KIỂU TƯƠNG QUAN HÀM SỐ 31
2.1 Khái quát về phụ thuộc hàm xấp xỉ 31
2.1.1 Khái niệm về PTH xấp xỉ 31
2.1.2 Các độ đo xấp xỉ 32
2.2 Độ đo khoảng cách 35
2.2.1 Khoảng cách giữa hai bộ giá trị trên tập thuộc tính 35
2.2.2 Một số tính chất của hàm khoảng cách 35
2.3 Phụ thuộc hàm xấp xỉ loại 2 36
2.3.1 Định nghĩa 36
2.3.2 Ví dụ 36
2.4 Một số tính chất của Phụ thuộc hàm xấp xỉ loại 2 37
2.5 Điều kiện để quan hệ phụ thuộc hàm xấp xỉ loại 2 và thuật toán kiểm tra 38
2.5.1 Khái niệm hệ xấp xỉ mức của quan hệ r 38
2.5.2 Điều kiện để quan hệ phụ thuộc hàm xấp xỉ loại 2 39
2.5.3 Thuật toán kiểm tra quan hệ phụ thuộc hàm xấp xỉ loại 2 40
2.6 Phần tử ngoại lai đối với phụ thuộc hàm 41
2.6.1 Khái niệm phần tử ngoại lai đối với phụ thuộc hàm 41
2.6.2 Định lý nhận biết cặp ngoại lai đối với phụ thuộc hàm 42
2.6.3 Phần tử ngoại lai đối với các dạng phụ thuộc hàm đặc biệt 43
2.6.4 Phần tử ngoại lai đối với dạng phụ thuôc hàm xấp xỉ loại 1 45
2.7 Phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ loại 2 45
2.7.1 Định nghĩa Phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ loại 2 45
2.7.2 Định lý nhận biết cặp ngoại lai đối với phụ thuộc hàm xấp xỉ loại 2 45
Trang 72.7.3 Thuật toán xác định các cặp ngoại lai đối với phụ thuộc hàm xấp xỉ
loại 2 46
2.8 Kết luận chương 47
CHƯƠNG 3:ỨNG DỤNG PHỤ THUỘC HÀM XẤP XỈ KIỂU TƯƠNG
QUANHÀM SỐ ĐỂ PHÁT HIỆN PHẦN TỬ NGOẠI LAI 48
3.1 Bài toán minh họa phát hiện dữ liệu sai sót về doanh thu trong doanh
nghiệp 48
3.2 Vấn đề chọn ngưỡng và thuật toán 48
3.3 Sơ đồ tính toán và phân tích kết quả 50
3.3.1 Sơ đồ tính toán50 3.3.2 Phân tích kết quả 51
3.4 Một số giao diện chính của chương trình 52
3.5 Kết luận chương: Đánh giá kết quả đạt được và hạn chế của chương
trình thử nghiệm 61
KẾT LUẬN VÀ KIẾN NGHỊ 62
TÀI LIỆU THAM KHẢO 64
Trang 8DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
TỪ VIẾT
FD Dependent Function Phụ thuộc hàm
AFDs Approximate Functional
MVD Multi Valued Dependency Phụ thuộc đa trị
JD Join Dependency Phụ thuộc kết nối
EJD Embedded Join Dependency Phụ thuộc kết nối nhúng
FFD Fuzzy Functional Dependency Phụ thuộc hàm mờ CPU Central processing unit Bộ vi xử lý
Trang 9DANH MỤC CÁC BẢNG
Bảng 1.1 Biểu diễn quan hệ r 5
Bảng 1.2 Bảng thiết bị lưu giữ thông tin về các mặt hàng 6
Bảng 1.3 Quan hệ THISINH 7
Bảng 1.4 Bảng quan hệ BANHANG 10
Bảng 1.5 Quan hệ thỏa phụ thuộc đa trị 13
Bảng 1.6 Quan hệ thỏa phụ thuộc kết nối 15
Bảng 1.7 Bảng tương ứng với phụ thuộc kết nối 16
Bảng 1.8 Quan hệ DTNAM (Tên, Chiều cao, Cân nặng) 20
Bảng 2.1 Bảng dữ liệu quan hệ số 36
Bảng 3.1 Số liệu về doanh thu của một doanh nghiệp (input) 48
Bảng 3.2 DOANH THU 1 53
Bảng 3.3 DOANHTHU 2 54
Bảng 3.4 DOANH THU 3 57
Bảng 3.5 DOANH THU 4 58
Bảng 3.6 DOANH THU 5 59
Trang 10DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1 Sơ đồ phát hiện phần tử ngoại lai dựa theo luật trong CSDL quan hệ
29
Hình 3.1 Sơ đồ tính toán 51
Hình 3.2 Giao diện chính của chương trình 52
Hình 3.3 Màn hình nhập dữ liệu của DOANHTHU 1 53
Hình 3.4 Kết quả của DOANHTHU 1 54
Hình 3.5 Kết quả của DOANHTHU 2 (𝛿=0.01) 55
Hình 3.6 Kết quả của DOANHTHU 2 (𝛿=0.02) 55
Hình 3.7 Kết quả của DOANHTHU 2 (𝛿=0.03) 56
Hình 3.8 Kết quả của DOANHTHU 2 (𝛿=0.148) 56
Hình 3.9 Kết quả của DOANHTHU 3 57
Hình 3.10 Kết quả của DOANHTHU 4 58
Hình 3.11 Kết quả của DOANHTHU 5 (𝛿=0.01) 59
Hình 3.12 Kết quả của DOANHTHU 5 (𝛿=0.02) 60
Hình 3.13 Kết quả của DOANHTHU 5 (𝛿=0.021) 60
Trang 11MỞ ĐẦU
1 Lý do chọn đề tài
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 (CNTT), 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à khai 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ệ, đặc biệt là mối tương quan giữa các dữ liệu, tiêu biểu như phụ thuộc hàm đã phát triển ở mức độ cao và đạt được những kết quả sâu sắc
Thế kỷ XXI được xem là một thể kỷ của CNTT Các công nghệ khám phá tri 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 vô cùng 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 và ngoài nước
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 lĩnh vực khám phá phần tử ngoại lai mới bước đầu được thực sự quan tâm nghiên cứu Mặc dù nó được ứng dụng trong nhiều lĩnh vực trong 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ý trong 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
Trang 12lĩnh vực thể thao, y tế, giáo dục,… 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
lệ hoặc các phần tử ngoại lai trở nên cấp thiết hơn nhiều
Khái niệm phụ thuộc hàm (PTH) đóng một vai trò rất quan trọng trong
lý thuyết CSDL quan hệ Các PTH rất hữu ích trong việc phân tích và thiết kế CSDL quan hệ như xác định khóa, xác định các dạng chuẩn, các vấn đề về nhất quán dữ liệu, Tuy nhiên trong thực tế do có một số giá trị dữ liệu không chính xác hoặc một số ngoại lệ nào đó làm cho các PTH không thỏa
Sự phụ thuộc tuyệt đối này dường như quá nghiêm ngặt khi ta hình dung tới một quan hệ có hàng nghìn bộ, trong khi đó chỉ có khoảng vài bộ vi phạm PTH Bỏ qua các PTH này sẽ làm mất tính chất phụ thuộc vốn có giữa các thuộc tính Vì vậy các nhà nghiên cứu đã mở rộng khái niệm PTH thành PTH xấp xỉ theo một cách thức, một nghĩa nào đó; các PTH xấp xỉ (Approximate Functional Dependencies - AFDs) này cho phép có một số lượng “lỗi” nhất định của các bộ dữ liệu đối với PTH Một PTH xấp xỉ là một PTH hầu như đúng trên một quan hệ r (đa số các bộ thỏa mãn điều kiện PTH) Để xác định PTH xấp xỉ người ta cần xác định được tỷ số giữa số lượng các bộ không thỏa mãn PTH với tổng số các bộ có trong quan hệ
Một trường hợp xấp xỉ khác là có những nhóm thuộc tính mặc dù giữa chúng không có PTH theo kiểu bằng nhau tuyệt đối (theo các định nghĩa PTH thông thường) mà có sự PTH theo kiểu tương quan hàm số (tuyến tính hoặc phi tuyến) Trường hợp này xảy ra khá nhiều và liên quan đến nhiều bài toán thực tế Ví dụ, giữa hàng hóa và đơn giá, giữa doanh thu và chi phí,…
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 CSDL quan hệ, tôi đã chọn đề tài “Phụ thuộc hàm xấp xỉ kiểu tương quan hàm số và ứng dụng để phát hiện phần tử ngoại lai” là luận văn thạc sỹ của mình Trong đó nghiên cứu vận dụng kiến
Trang 13thức nghiên cứu này vào việc hỗ trợ phát hiện các dữ liệu sai sót trong báo cáo về doanh thu trong doanh nghiệp
2 Mục đích nghiên cứu (Các kết quả cần đạt được)
- Phát hiện phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ kiểu tương quan hàm số trong CSDL quan hệ
- Hỗ trợ phát hiện dữ liệu sai sót về doanh thu trong doanh nghiệp
3 Đối tượng nghiên cứu
- Đối tượng nghiên cứu: Phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ kiểu tương quan hàm số trong CSDL quan hệ
5 Nhiệm vụ nghiên cứu
- Tìm hiểu về phần tử ngoại lai, phụ thuộc hàm, phụ thuộc hàm xấp xỉ kiểu tương quan hàm số trong CSDL quan hệ
- Tìm hiểu phần tử ngoại lai đối với phụ thuộc hàm xấp xỉ kiểu tương quan hàm số trong CSDL quan hệ
- Ứng dụng phụ thuộc hàm xấp xỉ kiểu tương quan hàm số để phát hiện phần tử ngoại lai hỗ trợ phát hiện dữ liệu sai sót về doanh thu trong doanh nghiệp
6 Giới hạn phạm vi nghiên cứu
- Phạm vi nghiên cứu: Phần tử ngoại lai trong phụ thuộc hàm xấp xỉ trong CSDL quan hệ
Trang 147 Phương pháp nghiên cứu
- Kết hợp lý thuyết với đánh giá thực nghiệm
- Thu thập tài liệu, phân tích, suy luận, tổng hợp, đánh giá
- Phân tích bài toán và ứng dụng và chọn lọc thuật toán thử nghiệm thích hợp
8 Bố cục luận văn
- Mở đầu
- Chương 1: Tổng quan về phụ thuộc hàm và phần tử ngoại lai
- Chương 2: Phụ thuộc hàm xấp xỉ kiểu tương quan hàm số
- Chương 3: Ứng dụng phụ thuộc hàm xấp xỉ kiểu tương quan hàm số để phát hiện phần tử ngoại lai
- Kết luận và Kiến nghị
- Tài liệu tham khảo
Trang 15CHƯƠNG 1 TỔNG QUAN VỀ PHỤ THUỘC HÀM
VÀ PHẦN TỬ NGOẠI LAI
1.1 Khái quát về phụ thuộc hàm
1.1.1 Khái quát về mô hình dữ liệu quan hệ
Định nghĩa Quan hệ
Cho R={a1,a2, ,an} là một tập hữu hạn, không rỗng các thuộc tính Mỗi thuộc tính ai có một miền giá trị là Dai Khi đó r – một tập các bộ {h1,h2, ,hm} được gọi là một quan hệ trên R, với hj (j =1, 2, ,m) là một hàm:
hj: R Dai
ai R sao cho: hj ( ai ) Dai
Có thể biểu diễn quan hệ r ở dạng bảng:
Bảng 1.1 Biểu diễn quan hệ r
Trang 16- Vì h1, h2, , hm là các thành phần trong tập hợp quan hệ trong r Trong mô hình quan hệ, không chấp nhận hai bản ghi trùng nhau trong một file dữ liệu
Ví dụ :
Để lưu giữ thông tin về các mặt hàng, cần sử dụng bảng THIẾT BỊ như sau:
Bảng 1.2 Bảng thiết bị lưu giữ thông tin về các mặt hàng
CPUSK478P30 Bộ vi xử lý
pentium 4
Pentium IV 3.0C GHz (Box/512Kb/Bus800)
54 B
VGA8 Card màn hình VGA 8Mb (2X) Ati 10 C
HDDQ30 ổ đĩa cứng Maxtor Quantum 30Gb
5400rpm
53 D
Khi viết R(a1,a2,…,an) ta có một lược đồ quan hệ R
1.1.2 Phụ thuộc hàm, khóa, hệ tiên đề Armstrong
Khái niệm về phụ thuộc hàm trong một quan hệ là rất quan trọng trong việc thiết kế mô hình dữ liệu Năm 1970 E.F Codd đã mô tả phụ thuộc hàm trong mô hình dữ liệu quan hệ, nhằm giải quyết việc phân rã không mất thông tin
Định nghĩa phụ thuộc hàm
Cho R = { a1, a2, , an } là tập các thuộc tính, r = { h1, h2, , hm } là một quan hệ trên R, và A, B R (A, B là tập cột hay tập thuộc tính) Khi đó ta nói
A xác định hàm cho B hay B phụ thuộc hàm vào A trong r
f
( ký pháp A B ) nếu:
Trang 17( hi, hj r) (( a A ) ( hi(a) = hj(a)) ( b B ) ( hi(b) = hj(b) ))
nghĩa là đối số trùng nhau thì hàm có cùng giá trị
Người ta còn viết (A, B) hay A B thay cho A B
Lúc đó tập hợp tất cả (A,B) như thế xác định một họ f trên R
Nhận xét:
- Ta có thể thấy rằng B mà phụ thuộc hàm vào A, nếu hai dòng bất kỳ
mà các giá trị của tập thuộc tính A mà bằng nhau từng cặp một, thì kéo theo các giá trị trên tập thuộc tính B cũng phải bằng nhau từng cặp một
Ví dụ:
Bảng 1.3 Quan hệ THISINH
PĐ711001 Nguyễn Thái Bình 12 Bản Nhàn Lạng Sơn 0
PĐ711002 Trần Nam Ninh 3 Kim Mã Hà Nội 3
PĐ711003 Lê Thanh Hoa 53 Hội Bà Trưng Hà Nội 3
PĐ711004 Vũ Thúy Hồng 89 Đồng Đăng Lạng Sơn 0
PĐ711005 Phạm Như Em 40 Trần hưng đạo Hải Dương 2
Trong quan hệ THISINH, dựa vào định nghĩa phụ thuộc hàm của quan hệ ta có:
{ TINH } { KHUVUC }
{ SBD } { HOTEN, DIACHI, TINH, KHUVUC }
Ý nghĩa: Khái niệm phụ thuộc hàm miêu tả một loại ràng buộc (phụ thuộc dữ liệu) xảy ra tự nhiên nhất giữa các tập thuộc tính
Gọi F là tập xác định các phụ thuộc hàm đối với lược đồ quan hệ R và
X Y là một phụ thuộc hàm X, Y R Nói rằng X Y được suy diễn logic
từ F nếu mối quan hệ r trên R đều thoả mãn phụ thuộc hàm của F thì cũng
r
Trang 18thoả mãn X Y Chẳng hạn F ={A B, B C} thì A C suy ra từ F
Gọi F +
là bao đóng(closure) của F, tức là tập tất cả các phụ thuộc hàm được
suy diễn logic từ F Nếu F =F+
thì F là họ đầy đủ(full family) của các phụ
thuộc hàm
Để có thể xác định khoá của một lược đồ quan hệ và các suy diễn logic giữa các phụ thuộc hàm cần thiết phải tính được F+
từ F Do đó đòi hỏi phải
có các hệ tiên đề Tập các quy tắc của hệ tiên đề được Armstrong (1974) đưa
ra, thường được gọi là hệ tiên đề Armstrong
Hệ tiên đề Armstrong
Cho R = {a1, ,an} là tập các thuộc tính
X, Y, Z R Hệ tiên đề Armstrong bao gồm 3 tính chất cơ bản sau:
A1 (phản xạ) : Nếu Y X thì X Y
A2 (tăng trưởng): Nếu Z R và X Y thì XZ YZ
Trong đó ký hiệu XZ là hợp của hai tập X và Z thay cho ký hiệu X
cấu trúc logic của mô hình dữ liệu quan hệ
Có nhiều quan hệ khác nhau nhưng các họ đầy đủ các phụ thuộc hàm của chúng lại như nhau
Trang 19A R ( A R F+, (A, R) Y)
Nghĩa là A phải thoả mãn các tính chất sau đây:
Với bất kỳ hai bộ h1, h2 r đều tồn tại một thuộc tính a A sao cho
h1(a) h2(a) Nói cách khác, không tồn tại hai bộ mà có giá trị bằng nhau trên mọi tập thuộc tính của A Điều kiện này có thể viết t1(A) t2(A) Do vậy, mỗi giá trị của A xác định là duy nhất Khi biết giá trị thuộc tính trong A sẽ biết được các giá trị của thuộc tính khác
Theo định nghĩa của E.F.Codd-[11]: Nếu có hai dòng bằng nhau trên các giá trị của khoá A thì sẽ kéo theo bằng nhau trên tất cả các cột còn lại Như vậy sẽ có hai cột bằng nhau, điều này không thể có được và nếu có thì đấy là dữ liệu nhầm lẫn
Chúng ta gọi A ( A R) là một khoá tối tiểu của r (tương ứng của s, của Y) nếu:
+ A là một khoá của r (s,Y) tức A R
+ Bất kỳ một tập con thực sự của A không là khoá của r (s, Y) hay không tồn tại A' tập con thực sự A' A mà A' R
Nhận xét:
f
r
Trang 20Khoá chính là hình ảnh của cột mã số hay số thứ tự (vì số thứ tự không
Dù rằng dễ thấy A có thể chính bằng R nhưng người ta vẫn phải đi tìm khóa tối tiểu, tức là khóa nhỏ nhất mà không thể nhỏ hơn được nữa để việc so sánh các giá trị khóa với nhau trong quá trình tìm kiếm bản ghi là nhanh nhất Một sơ đồ quan hệ có thể có nhiều khóa, thậm chí còn có nhiều khoá tối tiểu
1.1.3.1 Phụ thuộc đối ngẫu (Dual Dependency - DD)
Cho lược đồ quan hệ R(U) Ta nói rằng Y là phụ thuộc đối ngẫu vào X hay X xác định đối ngẫu Y trong R (kí hiệu X D Y) nếu:
(t i , t j R) ((xX) (t i (x) = t j (x)) (yY) (t i (y) = t j (y))) là thỏa mãn
Trang 21Hay nói một cách khác, Nếu hai bộ của quan hệ là bằng nhau trên ít
nhất một thuộc tính nào đó của X thì chúng sẽ bằng nhau tại ít nhất một thuộc tính của Y
Ta có hệ tiên đề sau cho phụ thuộc đối ngẫu:
1.1.3.2 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 A p, A q nào đó thuộc R, mà với mọi t ir ta có: t i (A p ) = t i (A q ) Khi đó ta dễ thấy có phụ thuộc hàm: A pA q (cũng đồng thời có A qA 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 )
1.1.3.3 Phụ thuộc hàm dạng tỉ lệ
Cho r là một bàng dữ liệu trên sơ đồ quan hệ (R,F) Giả sử có các thuộc tính số: As, A s1 , A s2 , ,A skR và các số thực: p 1 , p2 p k với p j ≤ l: j= 1 k
Trang 22Trong trường hợp này ta có phụ thuộc hàm:
A s →A s1 A s2 A sk Ta gọi phụ thuộc hàm dạng này là phụ thuộc hàm
dạng tỉ lệ Gọi p j là tỉ lệ đối với thuộc tính Asj(j=1 k)
1.1.4 Phụ thuộc đa trị và phụ thuộc kết nối
1.1.4.1 Phụ thuộc đa trị (MultiValued Dependency - MVD)
Cho lược đồ quan hệ R(U) X, Y U, Z = R – XY Quan hệ R thỏa mãn điều kiện X xác định đa trị Y hay Y phụ thuộc đa trị vào X (kí hiệu X
Y) nếu với hai bộ bất kỳ t1, t2r, với t1[X] = t2[X] khi đó t3 r sao cho
t3[X] = t1[X], t3[Y] = t1[Y] và t3[Z] = t2[Z]
Hay nói một cách khác, X xác định đa trị Y nếu với mỗi giá trị của X
có một tập rỗng hoặc một tập các giá trị tương ứng trên Y mà không liên quan
gì đến giá trị của các thuộc tính còn lại (các thuộc tính trên U - XY)
Gọi Y(X) = {y | (xy) XYR}
Khi đó ta có X Y nếu Y(X) = Y(XZ)
Do tính đối xứng của t1 và t2 nên ta thấy rằng còn tồn tại bộ t4 thoả mãn: t4[X] = t2[X], t4[Y] = t2[Y], t4[Z] = t1[Z]
Ta thấy ngay từ định nghĩa nếu X Y thì X Z
Ví dụ : Cho lược đồ quan hệ R trên tập thuộc tính U = {NguoiMua,
LoaiAo, CuaHang} thể hiện quan hệ một người mua loại áo ở một cửa hàng nào đó
r là một thể hiện của lược đồ như sau:
Trang 23Bảng 1.5 Quan hệ thỏa phụ thuộc đa trị
Có một ràng buộc: Nếu người nào mua từng mua mặt hàng gì thì người
đó sẽ mua mặt hàng đó tại mọi cửa hàng Do đó ta có một phụ thuộc hàm thể hiện ràng buộc ấy:
LoaiAo Nguoimua
Và phụ thuộc hàm: LoaiAo Cửa hàng cũng thể hiện ràng buộc đó
Chú ý: X và Y có thể là tập rỗng, nếu Y = thì X đúng với mọi quan hệ Nếu X = thì Y thoả mãn trên một quan hệ khi và chỉ khi tập giá trị trên tập thuộc tính Y là độc lập với các giá trị của những thuộc tính còn lại trong quan hệ Gọi r[YZ] là một quan hệ, Y Z = khi đó
Y thoả trên r khi và chỉ khi r = r[Y] x r[Z] (tích đề các)
Kết quả trên cho thấy mối liên quan giữa phụ thuộc hàm (FD) và phụ thuộc đa trị (MVD)
Giả sử X Y là một phụ thuộc hàm thỏa mãn trên thể hiện r của quan
hệ R(U), khi đó X Y là thỏa trên r Có nghĩa là phụ thuộc hàm là trường hợp riêng của phụ thuộc đa trị
Mỗi phụ thuộc hàm đều là phụ thuộc đa trị, nhưng ngược lại thì không đúng Một phụ thuộc đa trị X Y sẽ là một phụ thuộc hàm chỉ khi với mỗi giá trị tại X thì tập giá trị tại Y tương ứng nhiều nhất có một phần tử
Trang 24Thông thường khi nghiên cứu hệ tiên đề cho phụ thuộc đa trị người ta
gộp cả các tiên đề cho các phụ thuộc hàm và xét hệ tiên đề chung của phụ
thuộc hàm (FD) và phụ thuộc đa trị (MVD):
A1 (Phản xạ cho FD): Nếu Y X U thì X Y
A2 (Tăng trưởng cho FD): Nếu X Y và Z U thì XZ YZ
A3 (Bắc cầu cho FD): Nếu X Y và Y Z thì X Z
A4 (Luật bù cho MVD): Nếu X Y thì X U\XY
A5 (Luật tăng trưởng cho MVD): Nếu X Y và V W thì
A11 (giả bắc cầu hỗn hợp): Nếu X Y và XY Z thì X Z\Y
A12 (tách): Nếu X Y và Y Z thì X YZ và X Z\Y
Hệ tiên đề này là đầy đủ và đúng đắn cho tập phụ thuộc hàm và phụ
thuộc đa trị Có nghĩa là cho một tập các phụ thuộc hàm và phụ thuộc đa trị F,
tập tất cả các phụ thuộc hàm và phụ thuộc đa trị suy dẫn logic được từ tập M
(kí hiệu là M+) trùng với tập phụ thuộc hàm và phụ thuộc đa trị suy ra được từ
tập M bằng cách dùng hệ tiên đề trên
Trang 251.1.4.2.Phụ thuộc kết nối (Join dependency – JD)
Cho R = {R 1 , R 2 , …, R n } là tập các lược đồ quan hệ trên U Một phụ thuộc kết nối trên U là một mệnh đề có dạng *[ R 1 , …, R n ] Trong đó, *[ R 1 ,
…, R n ] là một thể hiện của r trên U, nếu r tách không mất mát thông tin thành
R 1 , R 2 , …, R n Nghĩa là, r = r r r
n
R R
Điều kiện cần thiết để một quan hệ r(U) thoả phụ thuộc kết nối *[ R1,
R2, …, Rn] là U = R1R2…Rn Ta thấy phụ thuộc đa trị là trường hợp đặc biệt của phụ thuộc kết nối do X Y thoả mãn *[XY, XZ] với Z = U – XY Một quan hệ r(U) thỏa phụ thuộc đa trị X Y khi và chỉ khi có thể tách không mất mát thông tin thành XY và XZ trong đó Z=U - XY Điều kiện trên tương đương với một phụ thuộc kết nối *[XY, XZ] Nhìn theo chiều ngược lại thì một phụ thuộc kết nối *[R1, R2] là một phụ thuộc đa trị R1 R2
R1 Có thể định nghĩa JD theo cách tương tự như với phụ thuộc đa trị như sau: Giả sử quan hệ r(U) thỏa mãn phụ thuộc kết nối *[ R1, R2, …, Rn], nếu r chứa các bộ t1, t2, …, tn sao cho ti(Ri Rj) = tj(Ri Rj) với mọi i, j thì r phải chứa một bộ t sao cho t(Ri) = ti(Ri) với 1 i n
Ví dụ: Cho quan hệ r(ABCDE) như hình dưới đây thoả mãn JD
Trang 26Từ tính chất trên của phụ thuộc kết nối ta có thể suy ra r phải tồn tại một bộ
t = <a b c d’ e’>
Phụ thuộc kết nối có ý nghĩa quan trọng trong việc thiết kế cơ sở dữ liệu quan hệ
Phụ thuộc kết nối nhúng (Embedded Join Dependency – EJD)
Quan hệ r(U) thỏa mãn phụ thuộc kết nối nhúng EJD *[R 1 ,R 2 , …,R n ] nếu s (r) thỏa mãn *[R 1 , R 2 , …, R n ] như một JD thông thường Trong đó S =
R 1 , R 2 , …, R n U
Có thể coi phụ thuộc đa trị MVD là trường hợp mở rộng của phụ thuộc hàm FD và là một trường hợp đặc biệt của phụ thuộc kết nối JD Nhưng chưa tìm thấy một hệ tiên đề xác đáng đầy đủ cho lớp JD như với lớp MVD và FD
Cho C là một tập các phụ thuộc hàm và phụ thuộc kết nối và *R là một phụ thuộc kết nối Thuật toán săn đuổi Chase đối với tập C ký hiệu bởi CHASE C (T R ) là bảng T R được áp dụng bởi các luật dưới đây cho tới khi không có luật nào có thể áp dụng được nữa
Trang 27 Luật FD (FD-rule)
Cho X Y là một phụ thuộc hàm trên C và A Y Cho w i và w j là hai hàng của T R sao cho w i [X] = w j [X] thì đồng nhất w i (A) và w j (A) cho mỗi thuộc tính A Y bằng cách đặt lại tên một trong hai biến đó như sau:
w i (A) = d 1 và w j (A) = d 2 Nếu d 1 hoặc d 2 là biến được phân biệt, chẳng hạn d 1
là biến được phân biệt thì mọi xuất hiện của d 2 được thay thế bởi d 1
Nếu cả d 1 và d 2 đều là biến không phân biệt thì mọi xuất hiện của biến
có chỉ số lớn hơn được thay thế bởi biến có chỉ số nhỏ hơn
Luật JD (JD – rule)
Một JD rule tương ứng với một phụ thuộc kết nối *R trên C, trong đó
*R = *[R 1 , …, R n ], thêm các hàng vào T R như sau:
Cho W 1 , …, W n là n hàng (không cần phân biệt) của T R Nếu tồn tại một ánh xạ W trên R mà với mỗi i , 1 i n, W i [R i ] = W[R i ] và W chưa có trong
T R thì hàng W được thêm vào T R
1.1.5 Phụ thuộc mạnh và phụ thuộc yếu
1.1.5.1 Phụ thuộc mạnh (Strong Dependency - SD)
Phụ thuộc mạnh lần đầu tiên đƣợc giới thiệu và tiên đề hoá bởi
G.Czédli Sau đó đƣợc J.Demetrovics và G.Gyepesi tiếp tục nghiên cứu Phụ thuộc mạnh đƣợc cài đặt trong việc thiết kế các hệ quản trị CSDL có đặc tính nổi bật là phân tách các mảng dữ liệu lớn thành các mảng dữ liệu nhỏ hơn và đẹp để đƣa vào bộ nhớ
Cho quan hệ R(U) Ta nói rằng Y là phụ thuộc mạnh vào X trong R (kí hiệu X S Y) nếu: (t i , t j R) ( (x X) (t i (x) = t j (x)) (yY) (t i (y) =
t j (y)) ) là thỏa mãn
Hay nói một cách khác, Nếu hai bộ của quan hệ bằng nhau tại ít nhất
một thuộc tính nào đó của X thì chúng sẽ bằng nhau tại mọi thuộc tính của Y
Hệ tiên đề cho phụ thuộc mạnh:
Trang 281.1.5.2 Phụ thuộc yếu (Weak Dependency - WD)
Cho quan hệ R(U) Ta nói rằng Y phụ thuộc yếu vào X trong R (kí hiệu X
W
Y) nếu:
(t i , t j R) ( (xX) (t i (x) = t j (x)) (yY) (t i (y) = t j (y)) ) là thỏa mãn
Hay nói một cách khác, Nếu hai bộ của quan hệ bằng nhau trên mọi
thuộc tính của X thì tồn tại một thuộc tính nào đó của Y để chúng bằng nhau trên thuộc tính đó
Ta thấy phụ thuộc hàm là trường hợp riêng của phụ thuộc yếu
Hệ tiên đề của phụ thuộc yếu:
Trang 29Hệ tiên đề này đã được chứng minh là đúng đắn và đầy đủ đối với phụ thuộc yếu Có nghĩa là cho một tập phụ thuộc yếu W +
(vế trái, vế phải của phụ thuộc yếu khác tập rỗng), tập tất cả các phụ thuộc yếu suy dẫn logic được
từ tập W +
(kí hiệu là W ++ ) trùng với tập các phụ thuộc yếu suy ra được từ tập
W + bằng cách dùng hệ W-tiên đề
Hệ tiên đề phụ thuộc mạnh
Giả sử U là tập hữu hạn khác rỗng các thuộc tínhX,Y,Z,V,W U và
aU Ta nói S là một s họ trên U nếu
S.2 XS3 XS4 X S5
Trang 30Ví dụ :
Bảng 1.8 Quan hệ DTNAM (Tên, Chiều cao, Cân nặng)
Từ Định lý :
Phụ thuộc hàm trong cơ sở dữ liệu quan hệ thoả mãn phụ thuộc hàm mờ
suy ra hệ tiên đề Amstrong cho phụ thuộc hàm mờ (FA tiên đề)
FA 1 (Phản xạ): Nếu Y X thì X ~> Y
FA 2 (Tăng trưởng): Nếu Z U và X ~> Y thì XZ ~> YZ
FA 3 (Bắc cầu): Nếu X ~> Y và Y ~> Z thì X ~> Z 1.1.7 Mô tả tương đương của học các họ các thuộc hàm
Các dạng tương đương của họ phụ thuộc hàm chính là các công cụ để chúng ta có thể nghiên cứu phong phú hơn nữa cấu trúc logic của họ phụ thuộc hàm Các dạng tương đương được giới thiệu sau đây là hàm đóng, nửa dàn giao và tập không giao
Ánh xạ L : P(U) P(U) được gọi là một hàm đóng trên U nếu với mọi X,
Y P(U) thì
(1) X L(X)
Trang 31(2) Nếu X Y thì L(X) L(Y)
(3) L(L(X)) = L(X)
W W Armstrong (1974)- [12], khẳng định rằng có một tương ứng 1-1 giữa lớp các hàm đóng và lớp các f – họ
Giải sử F là một f – họ trênU Đặt LF(X) = {a U | X {a} F} Khi
đó LF là một hàm đóng Ngược lại, nếu L là một hàm đóng thì tồn tại duy nhất một f – họ F trên U sao cho L = LF, ở đây F = {X Y | X, Y U, Y L(X)} Như vậy, định lý 1.3.20 chỉ ra rằng để nghiên cứu phân tích các đặc trưng của họ phụ thuộc hàm chúng ta có thể dùng công cụ hàm đóng
Cho I là một tập con của P(U) Khi đó I được gọi là nửa dàn giao trên
Trang 321.2.1 Khái niệm về phần tử ngoại lai
Khái niệm về phần tử ngoại lai (Outliers) đã được nhiều tác giả như Knorr, Arning, Hawkins – [6], [10] đề xuất và nghiên cứu theo hướng thống
kê và độ đo Theo hướng nghiên cứu này, các phần tử ngoại lai được xác định
dựa trên sự khác biệt của một nhóm phần tử này với đa số các phần tử khác trong một tập dữ liệu (khác biệt về khoảng cách, khác biệt về phân phối, )
Có hướng tiếp cận phần tử ngoại lai theo luật (rules base) dựa trên việc các phần tử trong 1 quan hệ không tuân theo các ràng buộc, quy tắc cho trước Các (quy tắc) ràng buộc bao gồm những ràng buộc về cấu trúc của CSDL (PTH, các dạng chuẩn,…) hoặc các ràng buộc về ngữ nghĩa mà các phần tử trong quan hệ phải tuân theo
Trong các tập dữ liệu thường tồn tại các đối tượng dữ liệu không tuân theo một hình thức hoặc một mô hình dữ liệu chung, các đối tượng dữ liệu mà giá trị dữ liệu được xem là nằm ngoài phạm vi hoặc không liên quan tới tập
dữ liệu còn lại Những đối tượng có đặc tính trên được gọi là các phần tử ngoại lai
Các phần tử ngoại lai có thể là ngoại lại gây ra bởi lỗi thực hiện hoặc là lỗi phép đo Ví dụ việc hiển thị một người có tuổi 999 có thể là do việc thiết lập mặc định chương trình không giới hạn tuổi dữ liệu Mặt khác, các phần tử ngoại lai có thể là kết quả của quá trình tự nhiên
Có nhiều thuật toán khai thác dữ liệu cố gắng làm cực tiểu hoá sự ảnh hưởng của các phần tử ngoại lai, loại bỏ chúng cùng một lúc Tuy nhiên, điều
đó có thể làm mất những thông tin tiềm ẩn quan trọng khi “nhiễu của người này lại là tín hiệu của người khác” Nói khác đi, các phần tử ngoại lai có thể trở thành một lĩnh vực cụ thể như là trong công việc phát hiện lỗi nơi các phần tử ngoại lai đóng vai trò là lỗi Do đó, việc phân tích và phát hiện phần
Trang 33tử ngoại lai là một công việc khai thác dữ liệu thú vị được đề cập tới như là khai thác phần tử ngoại lai
Có nhiều định nghĩa được đưa ra để định nghĩa phần tử ngoại lai như định nghĩa của Barnet và Levis : “Một phần tử ngoại lai là một đối tượng xuất hiện không nhất quán với tập dữ liệu còn lại” [Hawkins 1980]-[10] mô tả định nghĩa trực quan về phần tử ngoại lai có thể là “Một đối tượng mà nó lệch hướng rất nhiều với đối tượng khác do đó dẫn đến sự nghi ngờ rằng chúng được tạo ra bởi một kỹ thuật khác” Nói khác đi, các đối tượng không cùng một mô hình thực hiện với tập dữ liệu còn lại được xem là các phần tử ngoại lai
Một phần tử ngoại lai có thể là một đối tượng dữ liệu trong các trường hợp sau:
● Nằm trong một phân bố khác với phân bố của tập dữ liệu còn lại
● Là một đối tượng có giá trị hợp lệ nhưng không phải là đối tượng mong muốn
● Là đối tượng dữ liệu được đánh giá, hoặc sinh ra do sai sót, không chính xác
Đối với trường hợp các phần tử ngoại lai có thể là các đối tượng hợp lệ nhưng chúng có giá trị không mong muốn Chúng không cần thiết phải loại
bỏ khỏi tập dữ liệu nhưng các đối tượng này phải được xác định hay nhận dạng [Drapter and Smith 1966] nhận xét rằng một phần tử ngoại lai có thể
“cung cấp thông tin mà các đối tượng khác không thể bởi vì nó xuất hiện từ
sự kết hợp bất bình thường của một số trường hợp có thể là thực sự cần thiết” Có thể các phần tử ngoại lai thực sự liên quan tới một mô hình xác xuất
cụ thể hoặc cũng có thể là nằm trong mô hình cần được làm mịn
Nếu một phần tử ngoại lai không phải là một đối tượng hợp lệ (có thể
là do nó được đánh giá và đưa vào không đúng) Thì nó có thể phải được phát
Trang 34hiện, khắc phục và đánh giá trong miền chuyên gia Do đó, phụ thuộc vào từng ngữ cảnh các phần tử ngoại lai có thể được loại bỏ từ tập dữ liệu để làm tăng tính thuần nhất của dữ liệu còn lại Ví dụ, trong một cơ sở dữ liệu đáp ứng thời gian thực cho hệ thống giao dịch trực tuyến, các phần tử ngoại lai có thể là những giá trị cực đại trong các phiên giao dịch mà các kết nối mạng phục vụ Các phiên giao tiếp được xem như là không thành công trong hệ thống trực tuyến Đây là một trường hợp có ý nghĩa là loại bỏ giá trị ngoại lai
để tránh sự vượt quá thời gian đáp ứng trung bình của các phiên giao dịch
Nói tóm lại, các phần tử ngoại lai là những đối tượng đủ khác với hầu hết các điểm khác.Tuy nhiên, không có một định nghĩa về phần tử ngoại lai nào được chấp nhận rộng rãi Các phần tử ngoại lai thường được xem xét là các điểm không thoả mãn dưới mô hình của dữ liệu Việc phần tử ngoại lai có
bị loại bỏ hay không còn phụ thuộc vào từng chương trình ứng dụng và quyết định từ miền chuyên gia
Việc nghiên cứu phần tử ngoại lai có nhiều ý nghĩa trong việc làm sạch dữ liệu, phát hiện sai sót trong quá rình xây dựng cây quyết định khi khai phá dữ liệu Các khái niệm và tính chất của PTH xấp xỉ, giá trị ngoại lai và khoảng cách giúp chúng ta xác định PTH xấp xỉ và tính chất của chúng
1.2.2 Mối quan hệ giữa phần tử ngoại lai với khai phá dữ liệu
Trước khi các kỹ thuật khai thác 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 và tinh vi, thời gian thực hiện thấp Khai thác
dữ liệu nhằm mục đích cung cấp các thuật toán có tính phân cấp, cho cả hai thuật ngữ “cỡ dữ liệu” và “chiều dữ liệu” 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
Trang 35lớn không phù hợp với bộ nhớ chính Dữ liệu đó được gọi là dữ liệu nằm ở bộ nhớ ngoài (Disk-resident Data)
Một vấn đề nghiên cứu trong khóa luận này 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 vấn đề khác 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 có thể định nghĩa một cách đầy đủ và chính xác về phần tử ngoại lai Các định nghĩa về phần tử ngoại lai trước đây chưa được sử dụng rộng rãi Ý nghĩa ngoại lai của các đối tượng trong các tập
dữ liệu thuộc các 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 Do
đó, rất khó để đưa ra được một định nghĩa hoàn chỉnh về phần tử ngoại lai
1.2.3 Mô hình phát hiện các phần tử ngoại lai trong CSDL quan hệ
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 đề
Amstrong) Giả sử r là 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 r là 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
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
Trang 36Phầ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.4 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 củ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ăn tô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ệ
Trang 37và 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], [4], [5]:
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.2.5 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