1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu khai phá dữ liệu và ứng dụng trong đào tạo

79 79 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 79
Dung lượng 1,68 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sự phân tích một cách tự động và mang tính dự báocủa khai phá dữ liệu có ưu thế hơn hẳn so với phân tích thông thường ở chỗ,khai phá dữ liệu có thể sử dụng với các cơ sở dữ liệu CSDL chứ

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

VIỆN CÔNG NGHỆ THÔNG TIN

- -NGUYỄN THỊ THU

TÌM HIỂU VỀ KHAI PHÁ DỮ LIỆU

VÀ ỨNG DỤNG TRONG ĐÀO TẠO

KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC

Chuyên ngành: Sư phạm Tin học

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

VIỆN CÔNG NGHỆ THÔNG TIN

- -NGUYỄN THỊ THU

TÌM HIỂU VỀ KHAI PHÁ DỮ LIỆU

VÀ ỨNG DỤNG TRONG ĐÀO TẠO

KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC

Chuyên ngành: Sư phạm Tin học

Giáo viên hướng dẫn:

Đỗ Thị Lan Anh

HÀ NỘI, 2019

Trang 3

LỜI CẢM ƠN

Trong thời gian nghiên cứu và làm đề tài, em đã gặp không ít khó khăn

về cách làm và kiến thức Tuy nhiên, em đã nhận được sự giúp đỡ tận tình của

cô giáo và các bạn, em đã hoàn thành đề tài này

Có được thành quả này, cho phép em được bày tỏ lời cảm ơn đến cácthầy cô giáo trong Viện Công Nghệ Thông Tin Trường Đại Học Sư Phạm HàNội 2 đã giúp em hoàn thành chương tìn và đề tài này

Đồng thời em gửi lời cảm ơn đặc biệt về sự hướng dẫn và chỉ bảo của

cô giáo Ths Đỗ Thị Lan Anh đã tận tình giúp đỡ em trong suốt quá trìnhhoàn thành chương trình cũng như đề tài này

Cùng với sự góp ý và hỗ trợ của các bạn trong lớp K41- Sư phạm Tinhọc Tuy nhiên do thời gian có hạn, cũng như kinh nghiệm còn thiếu nêntrong đề tài sẽ không tránh khỉ những thiếu xót, hạn chế nhất định Những ýkiến, nhận xét của thầy cô và các bạn là cơ sở để em học hỏi và hoàn thiện tốtkiến thức của mình hơn Em rất mong nhận được nhận xét và góp ý của thầy

cô và các bạn

Em xin chân thành cảm ơn!

Sinh viên thực hiện

Nguyễn Thị Thu

Trang 4

LỜI CAM ĐOAN

Tôi xin cam đoan khoá luận được hoàn thành bằng sự cố gắng của bảnthân, dưới sự hướng dẫn tận tình của giảng viên Ths Đỗ Thị lan Anh và thamkhảo một số tài liệu đã được ghi rõ nguồn

Khoá luận hoàn toàn không sao chép từ tài liệu có sẵn nào Kết quảnghiên cứu không trùng lặp với các tác giả khác

Nếu sai, tôi xin hoàn toàn chịu trách nhiệm!

Sinh viên thực hiện

Nguyễn Thị Thu

Trang 5

MỤC LỤC

ĐẶT VẤN ĐỀ 1

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 3

1.1 Khái niệm về khai phá dữ liệu và phát triển tri thức 3

1.2 Các bước trong quá trình phát hiện tri thức 4

1.3 Kiến trúc hệ thống khai phá dữ liệu 5

1.4 Các nhiệm vụ trong khai phá dữ liệu 6

1.4.1 Phát hiện các luật tối ưu truy vấn ngữ nghĩa 6

1.4.2 Phát hiện sự phụ thuộc cơ sở dữ liệu 7

1.4.3 Phát hiện sự sai lệch 7

1.4.4 Phát hiện luật kết hợp 8

1.4.5 Mô hình hóa sự phụ thuộc 9

1.4.6 Mô hình hóa nhân quả 9

1.4.7 Phân nhóm 10

1.4.8 Phân lớp 10

1.4.9 Hồi quy 11

1.4.10 Tổng hợp 11

1.5 Sơ lược về một số kĩ thuật khai phá dữ liệu 12

1.5.1 Phân lớp dữ liệu 12

1.5.2 Phân cụm dữ liệu 12

1.5.3 Cây quyết định 12

1.5.4 Luật kết hợp 13

1.5.5 Hồi quy 13

1.5.6 Mạng Nơron 14

1.5.7 Giải thuật di truyền 14

1.6 Các cách thức và giải pháp cơ bản 14

1.7 Kết luận 16

CHƯƠNG 2: CƠ SỞ LÍ THUYẾT LUẬT KẾT HỢP 17

Trang 6

2.1.1 Luật thừa 17

2.1.2 Luật kết hợp 18

2.1.3 Một số tính chất của luật kết hợp 21

2.1.4 Phát biểu bài toán khai phá luật kết hợp 22

2.1.5 Một số hướng tiếp cận trong khai phá luật kết hợp 23

2.2 Các đặc trưng của luật kết hợp 26

2.2.1 Không gian tìm kiếm luật 26

2.2.2 Độ hỗ trợ của luật 28

2.3 Một số thuật toán cơ bản 29

2.3.1 Thuật toán Apriori 29

2.3.2 Thuật toán Apriori-tid 34

2.3.3 Thuật toán AIS 37

2.3.4 Thuật toán SETM 39

2.3.5 Thuật toán CHARM 42

2.4 Kết luận 44

CHƯƠNG 3: ỨNG DỤNG KHAI PHÁ LUẬT KẾT HỢP TRONG ĐÀO TẠO 45

3.1 Bài toán 45

3.2 Công cụ sử dụng trong chương trình 45

3.3 Mô tả dữ liệu bài toán 47

3.4 Chuẩn hoá dữ liệu đầu vào cho thuật toán 48

3.5 Kết quả khai phá luật kết hợp sử dụng thuật toán Apriori 50

3.6 Kết quả khai phá dữ liệu từ cơ sở dữ liệu điểm của trường Đại học Sư Phạm Hà Nội 2 53

3.7 Kết luận 53

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 54

TÀI LIỆU THAM KHẢO 55

Trang 8

DANH MỤC HÌNH VẼ

Hình 1.1 Quy trình phát hiện tri thức 4

Hình 2.1: Dàn cho tập I = {1, 2, 3, 4} 26

Hình 2.2 Cây cho tập I = {1, 2, 3, 4} 27

Hình 2.3: Các bước thực hiện thuật toán apriori 33

Hình 2.4: Các bước thực hiện thuật toán Apriori_TID 36

Hình 2.5 Các bước thực hiện thuật toám AIS 38

Hình 2.6: Các bước thực hiện thuật toám SETM 41

Hình 3.1 Giao diện phần mềm WEKA 46

Hình 3.2 Môi trường Weka Explorer 47

Hình 3.3: Bảng dữ liệu khoá 41 48

Hình 3.4: Phân bố điểm của sinh viên học môn Tin học đại cương 50

Hình 3.5: Phân bố điểm sinh viên ứng với các môn khác nhau 51

Trang 9

DANH MỤC BẢNG

Bảng 2.1: Ví dụ về một cơ sở dữ liệu dạng giao dịch - F 19Bảng 2.2 : Các tập phổ biến trong cơ sở dữ liệu ở bảng 2.1 với độ hỗ trợ tối thiểu 25% 20Bảng 2.3 Cơ sở dữ liệu giao dịch D 32Bảng 2.4: Cơ sở dữ liệu giao dịch D1 35Bảng 3.1: Các luật thu được trên dữ liệu sinh viên của lớp Sư phạm Tin học khoá 41 52

Trang 10

1 Lí do chọn đề tài

ĐẶT VẤN ĐỀ

Trang 11

Khai phá dữ liệu (KPDL) là quá trình dựa trên những dữ liệu có sẵn,tìm kiếm các mẫu mới, những thông tin tiềm ẩn mang tính dự đoán trong cáckhối dữ liệu lớn Những công cụ khai phá dữ liệu có thể dự đoán những xuhướng trong tương lai Sự phân tích một cách tự động và mang tính dự báocủa khai phá dữ liệu có ưu thế hơn hẳn so với phân tích thông thường ở chỗ,khai phá dữ liệu có thể sử dụng với các cơ sở dữ liệu (CSDL) chứa dữ liệukhông đầy đủ hoặc biến đổi liên tục.

Một trong những nội dung cơ bản nhất trong khai phá dữ liệu và rất phổbiến là phát hiện các luật kết hợp Phương pháp này nhằm tìm ra các tập thuộctính thường xuất hiện đồng thời trong cơ sở dữ liệu và rút ra các luật về ảnhhưởng của một tập thuộc tính dẫn đến sự xuất hiện của một thuộc tính khácnhư thế nào Apriori là thuật toán luật kết hợp, việc áp dụng thuật toán Apriorivào khai phá dữ liệu sẽ giúp phát hiện ra các luật kết hợp Vì vậy, việc lựachọn thuật toán luật kết hợp để ứng dụng vào việc khai phá dữ liệu sẽ manglại hiệu quả tốt Đây là phương pháp điển hình cho việc tư vấn, đặc biệt là

trong đào tạo.Vì vậy tôi chọn đề tài “Tìm hiểu khai phá dữ liệu và ứng dụng trong đào tạo” Kết quả nghiên cứu cung cấp các thông tin hỗ trợ sinh

viên lựa chọn môn học, hướng nghiên cứu, đồng thời hỗ trợ cán bộ phòng đàotạo thuận lợi hơn trong công tác đào tạo Cụ thể là tìm ra các luật có ích giúpcho các nhà quản lí đào tạo sắp xếp khung chương trình, lên thời khoá biểu,…

2 Mục đích và nhiệm vụ nghiên cứu

- Mục đích: Giúp tư vấn cho quá trình đào tạo từ việc cài đặt thuậttoán Apriori sinh các luật kết hợp từ đó giúp tư vấn trong đào tạo

- Nhiệm vụ nghiên cứu:

+ Tìm hiểu khai phá dữ liệu

+ Tìm hiểu các thuật toán khai phá đặc biệt là thuật toán Apriori

Trang 12

+ Cài đặt chương trình thử nghiệm

3 Phương pháp nghiên cứu

- Phương pháp nghiên cứu lí thuyết

- Phương pháp thực nghiệm: lấy dữ liệu mẫu và cài đặt thử nghiệm

Trang 13

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU

1.1 Khái niệm về khai phá dữ liệu và phát triển tri thức

Với sự phát triển mạnh mẽ của công nghệ thông tin con người đã xâydựng được nhiều hệ CSDL lớn tập trung hoặc phân tán, nhiều hệ quản trịCSDL mạnh với các công cụ phong phú giúp con người khai thác hiệu quảhơn các nguồn tài nguyên dữ liệu trong các hoạt động kinh tế xã hội

Sự phát triển nhanh chóng của công nghệ thông tin dẫn đến một lượng lớn

dữ liệu được thu thập và lưu trữ trong các CSDL lớn đã vượt qua khả năngcủa con người có thể hiểu được chúng nếu không có những công cụ hỗ trợ tốt.Dẫn tới một lượng lớn dữ liệu ít được xem xét tới Vì vậy khi con người đưa

ra quyết định thường không dựa vào những thông tin và dữ liệu thu thập được

mà dựa vào nhận thức và suy đoán để đưa ra quyết định Tình huống đặt ra ởđây là nhiều dữ liệu nhưng vẫn thiếu thông tin và thiếu tri thức Do đó một kĩ

thuật mới đã ra đời đó là kĩ thuật khai phá tri thức trong cơ sở dữ liệu

(Knowledge Discovery in Database) gọi tắt KDD

Năm 1989 thuật ngữ KDD được đưa ra với ý nghĩa là thực hiện các xử lý

để tìm ra các tri thức trong CSDL và mục đích nhấn mạnh đến các ứng dụng ởmức cao hơn của khai phá dữ liệu (data mining) Khai phá dữ liệu thườngđược dùng trong các lĩnh vực thống kê, sử dụng phương pháp thống kê để môhình dữ liệu và phát hiện các mẫu, luật,…

KDD là một quá trình tổng thể bao gồm nhiều bước nhằm phát hiện ra cáctri thức hữu ích trong dữ liệu còn khai phá dữ liệu chỉ tập trung vào việc ứngdụng các thuật toán nhằm phát hiện các mẫu từ dữ liệu mà không có thêm cácbước của quá trình KDD như bước kết hợp với tri thức đã có hoặc bước đánhgiá kết quả thu được Các bước thêm vào này rất cần thiết để thấy được rằngnhững thông tin thu được từ dữ liệu là thực sự hữu ích Nhiều khi các mẫu thuđược từ quá trình khai phá dữ liệu nhờ việc thực hiện một ứng dụng nào đó

Trang 14

phát hiện tri thức từ dữ liệu đặc trưng bằng các bước lặp chính là lặp lại cácứng dụng theo một thuật toán khai phá dữ liệu cụ thể và hiểu các mẫu thuđược từ thuật toán này.

Định nghĩa: “KDD là một quá trình không tầm thường của việc xác định các mẫu mới, có giá trị, có hiệu quả sử dụng và cơ bản hiểu được trong cơ sở

dữ liệu”.[6]

Định nghĩa của Ferruzza: “Khai phá dữ liệu là tập hợp các phương pháp được dùng trong tiến trình khám phá tri thức để chỉ ra sự khác biệt các mối quan hệ và các mẫu chưa biết bên trong dữ liệu” [2]

1.2 Các bước trong quá trình phát hiện tri thức

Quy trình phát hiện tri thức thường tuân theo các bước sau [2]:

Hình thành và định nghĩa bài toán

Thu thập và tiền xử lí dữ liệu

Khai phá dữ liệu, rút ra các tri thức

Phân tích và kiểm định kết quả

Sử dụng các tri thức phát hiện được

Hình 1.1 Quy trình phát hiện tri thức

B

ư ớ c 1 : Hình thành, xác định và định nghĩa bài toán: Là tìm hiểu lĩnh

vực ứng dụng từ đó hình thành bài toán, xác định các nhiệm vụ cần phải hoànthành Bước này sẽ quyết định cho việc rút ra được các tri thức hữu ích và chophép chọn các phương pháp khai phá dữ liệu thích hợp với mục đích ứngdụng và bản chất của dữ liệu

Trang 15

được gọi là tiền xử lí dữ liệu nhằm loại bỏ nhiễu (làm sạch dữ liệu), xử lí việcthiếu dữ liệu (làm giàu dữ liệu), biến đổi dữ liệu và rút gọn dữ liệu nếu cầnthiết, bước này thường chiếm nhiều thời gian nhất trong toàn bộ quy trìnhphát hiện tri thức Do dữ liệu được lấy từ nhiều nguồn khác nhau, không đồngnhất, … có thể gây ra các nhầm lẫn Sau bước này, dữ liệu sẽ nhất quán, đầy

đủ, được rút gọn và rời rạc hóa

B

ư ớ c 3 : Khai phá dữ liệu, rút ra các tri thức: Là khai phá 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 Giaiđoạn này rất quan trọng bao gồm các công đoạn như: chức năng, nhiệm vụ vàmục đích của khai phá dữ liệu, dùng phương pháp khai phá nào? Thôngthường, các bài toán khai phá dữ liệu bao gồm: các bài toán mang tính mô tả -đưa ra tính chất chung nhất của dữ liệu, các bài toán dự báo – bao gồm cả việcphát hiện suy diễn dựa trên dữ liệu hiện có Tùy theo bài toán xác định được

mà ta sử dụng các phương pháp khai phá dữ liệu cho phù hợp

B

ư ớ c 4 : Phân tích và kiểm định kết quả: 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ạinhiều lần, kết quả thu được lấy trung bình trên tất cả các lần thực hiện

B

ứng dụng vào trong thực tế Do các kết quả có thể là các dự đoán hoặc các mô

tả nên chúng có thể được đưa vào các hệ thống hỗ trợ ra quyết định nhằm tựđộng hóa quá trình này

Tóm lại: KDD là một quá trình kết xuất ra tri thức từ kho dữ liệu mà trong

đó khai phá dữ liệu là công đoạn quan trọng nhất

1.3 Kiến trúc hệ thống khai phá dữ liệu

Kiến trúc của hệ thống khai phá dữ liệu có thể chia thành các thành phầnchính như sau:

Trang 16

- Kho dữ liệu: là một tập các cơ sở dữ liệu, các công cụ làm sạch dữ liệu

và tích hợp dữ liệu có thể thực hiện trên chúng

- Cơ sở tri thức: là yếu tố tri thức được dùng để đánh giá các mẫu kếtquả khai phá được

- Kỹ thuật khai phá: là các công cụ để thực hiện các nhiệm vụ: mô tả,kết hợp, phân lớp, phân nhóm dữ liệu

- Công cụ đánh giá mẫu: gồm một số modul sử dụng các độ đo và tươngtác với các modul khai phá dữ liệu để tập trung vào các thuộc tính cầnquan tâm

- Biểu diễn dạng đồ họa: modul này giao tiếp với người dùng và hệthống khai phá dữ liệu

1.4 Các nhiệm vụ trong khai phá dữ liệu

Ngày nay, nhu cầu phát hiện tri thức từ CSDL ngày càng cao dẫn tới sựphát triển mạnh mẽ của các loại hệ thống phát hiện tri thức trong CSDL Đểđáp ứng các nhu cầu từ nhiều lĩnh vực khác nhau mà việc phát hiện tri thứctrở lên đa dạng và phong phú hơn Do đó, nhiệm vụ phát hiện tri thức trongCSDL cũng trở nên đa dạng hơn và có thể phát hiện rất nhiều tri thức khácnhau

1.4.1 Phát hiện các luật tối ưu truy vấn ngữ nghĩa

Là biến đổi các câu truy vấn ban đầu thành một câu truy vấn mới bằngcách thêm hoặc xóa đi các mối liên kết bằng việc sử dụng các tri thức CSDLngữ nghĩa bao gồm các ràng buộc về tính toàn vẹn và sự phụ thuộc hàm đểsản sinh ra các câu truy vấn hiệu quả hơn Như vậy câu truy vấn đã biến đổicũng trả lại cùng câu trả lời giống như câu truy vấn ban đầu trong bất kì trạngthái nào của CSDL thỏa mãn kiến thức về ngữ nghĩa được sử dụng trong phépbiến đổi Các hệ thống phát hiện luật SQO có thể được chia thành ba lớp:

Trang 17

- Các hệ thống hướng truy vấn (hệ thống báo cáo) trong đó thuật toánphát hiện tri thức trong CSDL nhằm phục vụ các truy vấn CSDL thực củangười dùng.

- Các hệ thống hướng dữ liệu (hệ thống tác nghiệp) trong đó thuật toánphát hiện tri thức trong CSDL chủ yếu phục vụ sự phân bổ dữ liệu trong trạngthái hiện thời của CSDL

- Các hệ thống kết hợp các đặc tính của cả hệ thống hướng truy vấn vàhướng dữ liệu

Một đặc tính quan trọng của các luật SQO, khác với các kiểu phát hiệntri thức khác, là việc chọn các thuộc tính để tổng hợp một SQO cần phải tínhđến chi phí liên quan như dùng phương pháp truy cập nào và sơ đồ chỉ sốtrong hệ quản trị CSDL Việc này là cần thiết để tiết kiệm thời gian xử lí truyvấn Một thuật toán phát hiện tri thức trong CSDL loại này đòi hỏi phải xemxét tối ưu chi phí

1.4.2 Phát hiện sự phụ thuộc cơ sở dữ liệu

Trong một mô hình cơ sở dữ liệu quan hệ, chúng ta nghiên cứu quan hệtrong CSDL quan hệ không tính đến quan hệ giữa các thuộc tính Các quan hệnày thường được thể hiện thông qua sự phụ thuộc dữ liệu hoặc ràng buộc toànvẹn Ở đây sẽ sử dụng thuật ngữ phụ thuộc CSDL để chỉ sự phụ thuộc dữ liệukiểu này Sự phụ thuộc CSDL được sử dụng trong thiết kế hoặc duy trìCSDL Phương pháp phát hiện tự động sự phụ thuộc CSDL này chính là mộtkiểu nhiệm vụ của khai phá dữ liệu

1.4.3 Phát hiện sự sai lệch

Nhiệm vụ này nhằm khám phá sự thay đổi có ý nghĩa dưới dạng độ đo

đã biết trước hoặc giá trị chuẩn, phát hiện sự sai lệch đáng kể giữa nội dungcủa tập con dữ liệu thực và nội dung mong đợi Hai mô hình sai lệch hay dùng

là lệch theo thời gian và lệch theo nhóm Sai lệch theo thời gian là sự thay đổi

Trang 18

giữa dữ liệu trong hai tập con dữ liệu, ở đây tính cả trường hợp tập con dữliệu này thuộc tập con kia, nghĩa là xác định dữ liệu trong một nhóm con củađối tượng có khác đáng kể so với toàn bộ đối tượng không? Theo cách này,các sai sót dữ liệu hay sai lệch so với giá trị thông thường được phát hiện.

Một giao dịch có thể chứa một số điều khoản, tập hợp tất cả các điềukhoản sẽ thuộc vào một không gian A nào đó mà mỗi giao dịch khi đó là mộttập con của A Chúng ta cần phát hiện mối quan hệ, mối kết hợp trong số cácđiều khoản chứa trong các giao dịch của một dữ liệu nào đó sao cho sự xuấthiện của một số điều khoản nào đó trong giao dịch sẽ kéo theo sự xuất hiệncủa một số điều khoản khác trong cùng một giao dịch đó

Một luật kết hợp là một quan hệ có dạng X → Y, trong đó X và Y làtập các phần tử và X ∩ Y =  Mỗi luật kết hợp được đặc trưng bởi độ hỗ trợ(supp) và độ tin cậy (conf) Độ hỗ trợ được định nghĩa như tỷ lệ số giỏ thỏamãn cả X và Y trên toàn bộ số giỏ chỉ thỏa mãn X

Trang 19

1.4.5 Mô hình hóa sự phụ thuộc

Nhiệm vụ này liên quan tới việc tìm kiếm một mô hình mô tả sự phụthuộc giữa các biến, các thuộc tính theo hai mức: mức cấu trúc và mức địnhlượng Mức cấu trúc của mô hình mô tả thường biểu diễn dưới dạng đồ thị.Trong đó, các biến phụ thuộc bộ phận vào các biến khác Mức định lượng môhình mô tả mức độ phụ thuộc được biểu thị dưới dạng luật “nếu – thì”: “nếu(tiên đề là đúng) thì (kết luận đúng)” Về nguyên tắc thì cả tiên đề và luật kếthợp đều có thể là sự kết hợp logic của các giá trị thuộc tính Trên thức tế, tiên

đề thường là nhóm các giá trị thuộc tính và kết luận chỉ là một giá trị thuộctính Hơn thế nữa hệ thống có thể phát hiện các luật phân lớp trong đó tất cảcác luật cần phải có cùng một thuộc tính do người dùng chỉ ra trong kết luận

Quan hệ phụ thuộc cũng có thể biểu diễn dưới dạng mạng tin cậyBayes Đó là một đồ thị có hướng, không có chu trình Các nút biểu diễnthuộc tính và trọng số biểu diễn độ mạnh của sự phụ thuộc giữa các nút đó

1.4.6 Mô hình hóa nhân quả

Nhiệm vụ này tập trung phát hiện mối nhân quả trong thuộc tính Giốngnhư luật phụ thuộc các luật nhân quả cũng là các luật “nếu – thì” nhưng mạnhhơn Luật phụ thuộc đơn giản chỉ là một mối quan hệ tương hỗ giữa tiên đề vàkết luận của luật mà không có ý nghĩa quan hệ nhân quả trong quan hệ này Do

đó, cả tiên đề và kết luận có thể quan hệ dưới sự ảnh hưởng của một biến thứ

ba, nghĩa là một thuộc tính có thể có ở trong tiên đề hoặc trong kết luận Luậtnhân quả không chỉ chỉ ra mối tương quan giữa tiên đề và kết luận mà còn chobiết tiên đề thực sự tạo ra kết luận và mối quan hệ giữa hai thành phần này làtrực tiếp Tập các mối quan hệ có thể được biểu diễn bằng đồ thị nhân quả

Thuật toán CAUDISCO phát hiện các luật nhân quả bằng cách áp dụngcác phép kiểm tra sự độc lập thống kê của từng cặp thuộc tính Sau đó, đối vớicác thuộc tính phụ thuộc lẫn nhau, thuật toán sẽ xác định mối quan hệ là có

Trang 20

xác thực, tiềm năng hay chỉ là một liên kết giả tạo, không phụ thuộc vào tậpcác điều kiện thỏa mãn bởi quan hệ nhân quả.

Các quan hệ nhân quả cần phụ thuộc vào thời gian theo định nghĩa lànguyên nhân trước kết luận Nguyên nhân và kết quả đều có ít nhất một sựkiện thời gian đi kèm và thời gian của kết quả phải đi sau thời gian củanguyên nhân Mặc dù yếu tố thời gian làm rõ ý nghĩa nhân quả nhưng hệthống thường khó phân biệt các liên kết giả tạo

1.4.7 Phân nhóm

Là việc mô tả chung để tìm ra các tập hay các nhóm, loại mô tả dữ liệu.Các nhóm có thể tách nhau hoặc phân cấp Tức là dữ liệu có thể vừa thuộcnhóm này lại vừa thuộc nhóm khác Các ứng dụng khai phá dữ liệu có nhiệm

vụ phân nhóm như: phát hiện tập các cửa hàng bán hàng trực tuyến uy tín trênứng dụng bán hàng trực tuyến; xác định các quang phổ từ các phương pháp đotia hồng ngoại, … Liên quan chặt chẽ đến việc phân nhóm là nhiệm vụ đánhgiá dữ liệu, hàm mật độ xác suất đa biến/ các trường trong CSDL

1.4.8 Phân lớp

Phân lớp là việc xác định một hàm ánh xạ từ một mẫu dữ liệu vào mộttrong số các lớp đã được biết trước đó Mục tiêu của thuật toán phân lớp làtìm ra mối quan hệ nào đó giữa thuộc tính dự báo và thuộc tính phân lớp Quátrình phân lớp có thể sử dụng mối quan hệ này để dự báo cho các mục mới.Các kiến thức biểu diễn dưới dạng các luật có dạng: “Nếu các thuộc tính dựbáo của một mục thỏa mãn điều kiện của các tiền đề thì mục nằm trong lớpchỉ ra trong kết luận”

Ví dụ: Một mục biểu diễn thông tin về các nhân viên trong đó các thuộctính dự báo là: họ tên, tuổi, giới tính, trình độ học vấn,… và thuộc tính phânlớp là trình độ lãnh đạo của nhân viên

Trang 21

1.4.9 Hồi quy

Hồi quy là việc học một hàm ánh xạ từ một mẫu dữ liệu thành một biến

dự đoán có giá trị thực Về khái niệm, nhiệm vụ hồi quy tương tự như phânlớp Điểm khác nhau chính là ở chỗ thuộc tính để dự báo là liên tục chứkhông phải rời rạc Việc dự báo các giá trị số thường được làm bởi cácphương pháp thống kê cổ điển, chẳng hạn như hồi quy tuyến tính Tuy nhiên,các phương pháp mô hình hóa cũng được sử dụng như cây quyết định, trong

đó nút lá là mô hình tuyến tính phát sinh tập các lớp giả có giá trị thuộc tínhđích tương tự nhau, sau đó sử dụng phương pháp quy nạp để thay thế các lớptrong luật quy nạp bằng tổ hợp các giá trị của thuộc tính lớp cho các bộ dữliệu theo luật

Ứng dụng của hồi quy là rất nhiều: dự báo nhu cầu của người dùng vớimột sản phẩm trong dịp tết; dự đoán số lượng sinh vật phát quang hiện thờitrong khu rừng bằng cách dò tìm vi sóng bằng các thiết bị cảm biến từ xa; dựđoán giá bất động sản bằng cách kiểm tra các thuộc tính như: vị trí địa lí, nămxây dựng, số phòng ngủ,…

1.4.10 Tổng hợp

Nhiệm vụ tổng hợp là công việc liên quan đến các phương pháp tìmkiếm một mô tả tập con dữ liệu Kĩ thuật tổng hợp thường áp dụng trong việcphân tích dữ liệu có tính thăm dò và báo cáo tự động Nhiệm vụ tổng hợpchính là sản sinh ra các mô tả đặc trưng cho một lớp Mô tả này là một kiểutổng hợp, tóm tắt các đặc tính chung của tất cả hay hầu hết các mục của mộtlớp Các mô tả đặc trưng thể hiện theo luật có dạng sau: “Nếu một mục thuộc

về lớp đã chỉ trong tiền đề thì mục đó có tất cả các thuộc tính đã nêu trong kếtluận” Cần lưu ý rằng các luật này có những đặc trưng khác biệt so với luậtphân lớp Luật phát hiện đặc trưng cho một lớp chỉ sản sinh khi các mục đãthuộc về lớp đó

Trang 22

1.5 Sơ lược về một số kĩ thuật khai phá dữ liệu

Có nhiều kỹ thuật khác nhau được sử dụng đề khai phá dữ liệu nhằmthực hiện chức năng mô tả và dự đoán Với mỗi chức năng có các kĩ thuậtkhai phá dữ liệu tương ứng của nó

1.5.1 Phân lớp dữ liệu

Mục tiêu của phân lớp dữ liệu là dự đoán nhãn lớp cho các mẫu dữ liệu.Quá trình phân lớp dữ liệu được chia làm 2 bước là: Xây dựng mô hình dữliệu và sử dụng mô hình dữ liệu Mô hình dữ liệu sẽ được sử dụng để dự đoánnhãn lớp độ chính xác của mô hình chấp nhận được Một số phương phápphân lớp dữ liệu phổ biến là: phân lớp theo cây quyết định, phân lớp kiểuBayes, phân lớp dựa trên quy tắc if – then, …

1.5.2 Phân cụm dữ liệu

Mục tiêu của kĩ thuật phân cụm dữ liệu là nhóm các đối tượng tương tựnhau trong tập dữ liệu vào các cụm sao cho nhóm các lớp đối tượng tương tựnhau Kĩ thuật phân cụm thường không thực hiện độc lập mà sử dụng kết hợpvới các kĩ thuật khác Một lớp phân cụm được đưa ra thì phải có một kĩ thuậtkhác áp dụng trên lớp đó để đưa được ra ý nghĩa của cụm đó Hai kĩ thuật

phân cụm cơ bản là phân hoạch (partitional) và phân cấp (hierarchical).

Ngoài ra, còn một số kĩ thuật phân cụm khác như: phân cụm dựa vào mật độ,phân cụm dựa vào lưới, phân cụm dựa vào mô hình,…

Một số thuật toán khai phá dữ liệu bằng phân cụm dữ liệu là: thuật toánk-means, thuật toán PAM (Partitioning Around Medoids), thuật toán CALAR(Clustering LARge Application), thuật toán BRICH (Balanced InterativeReducing and Clustering Using Hierarchies), thuật toán DBCAN (Density –Based Spatial Clustering of Application with Noise),…

1.5.3 Cây quyết định

Kĩ thuật cây quyết định là một công cụ mạnh và hiệu quả trong phânlớp và dự báo Các đối tượng dữ liệu sẽ được phân thành các lớp và các giá trị

Trang 23

của đối tượng dữ liệu chưa biết sẽ được dự đoán Cây quyết định được biểudiễn dưới dạng một sơ đồ có cấu trúc cây Nút trên cùng gọi là nút gốc Mỗinút trên cây (trừ nút lá) ghi một phép thử trên thuộc tính, mỗi nhánh biểu diễnmột kết quả của phép thử Mỗi nút lá sẽ ghi một nhãn lớp Tri thức rút ra từ kĩthuật cây quyết định thường được mô tả rõ ràng, tường minh, dễ hiểu chongười sử dụng.

Một số thuật toán khai phá dữ liệu bằng cây quyết định là: Thuật toánCLS (Concept Learning System), thuật toán ID3 (Interactive Dichotomizer 3),thuật toán C4.5, thuật toán SLIQ (Supervised Learning In Quest),…

1.5.4 Luật kết hợp

Mục tiêu của phương pháp này là phát hiện và đưa ra mối quan hệ giữacác giá trị trong cơ sở dữ liệu Kết quả của luật kết hợp là tập luật kết hợp tìmđược Phương pháp khai phá luật kết hợp gồm hai bước:

- Bước 1: Tìm tất cả các tập mục phổ biến Một tập mục phổ biến đượcxác định thông qua việc tính độ hỗ trợ và thoả mãn độ hỗ trợ cực tiểu

- Bước 2: Sinh ra các luật kết hợp mạnh từ tập mục phổ biến, luật phảithoả mãn độ hỗ trợ và độ tin cậy cực tiểu

Một số thuật toán khai phá dữ liệu bằng luật kết hợp là: thuật toán AIS,thuật toán Apriori, thật toán Apriori_TID, thuật toán SETM, thuật toánFT_growth,…

1.5.5 Hồi quy

Mục tiêu của hồi quy là dự đoán các giá trị liên tục của đầu ra Ví dụchúng ta có thể dự đoán lương của một giảng viên đại học sau 5 năm kinhnghiệm, hay dự đoán giá cổ phiếu của một công ty sau một thời gian trên sànchứng khoán Phương pháp hồi quy là một lựa chọn tốt khi tất cả các biến độclập cũng là giá trị liên tục Nhiều bài toán có thể giải quyết bằng hồi quytuyến tính Nhiều bài toán phi tuyến tính cũng được giải bằng cách chuyển

Trang 24

sang giải lặp bài toán tuyến tính Một số phương pháp hồi quy là: mô hình hồiquy, hồi quy Poisson, hồi quy logistic,…

1.5.6 Mạng Nơron

Mạng Nơ-ron là một trong những kĩ thuật khai phá dữ liệu được ứngdụng phổ biến hiện nay Kĩ thuật này ra đời do mong muốn nâng khả nănglàm việc của máy tính dần tăng bằng khả năng làm việc của bộ não con người

Kết quả của mạng nơ-ron là khả năng tạo ra các mô hình dự đoán có độchính xác cao, có thể áp dụng cho nhiều bài toán khác nhau Tuy nhiên, kĩthuật này khá phức tạp, khi tiến hành sẽ gặp rất nhiều khó khăn như: mấtnhiều thời gian, nhiều dữ liệu và nhiều lần kiểm tra thử

1.5.7 Giải thuật di truyền

Giải thuật di truyền là phương pháp tìm kiếm cực trị tổng thể, kỹ thuậttối ưu tổng thể có tầm qua trọng rất lớn đối với nhiều vấn đề khác nhau trongkhoa học kĩ thuật Ý tưởng của giải thuật di truyền là mô phỏng theo cơ chếcủa quá trình chọn lọc và di truyền trong tự nhiên

1.6 Các cách thức và giải pháp cơ bản

Khai phá dữ liệu không phải là việc đơn giản mà có rất nhiều khó khăn vàthách thức Tuy nhiên không có nghĩa là việc giải quyết là hoàn toàn bế tắc

mà phải xem xét cũng như tìm cách giải quyết những vấn đề này

Đầu vào chủ yếu của một hệ thống khai thác tri thức là các dữ liệu thôtrong cơ sở phát sinh trong khai phá dữ liệu Do các dữ liệu trong thực tếthường động, không đầy đủ, lớn và bị nhiễu Trong nhiều trường hợp khác,người ta không biết cơ sở dữ liệu có chứa các thông tin cần thiết cho việc khaithác dữ liệu hay không và làm thế nào để giải quyết với sự dư thừa nhữngthông tin không thích hợp này

 Dữ liệu lớn: Các CSDL lớn với hàng trăm trường và bảng với hàng triệu bản ghi và với kích thước đến gigabyte và terabyte đã là chuyện

Trang 25

bình thường Các phương pháp giải quyết hiện nay là đưa ra một ngưỡng cho

cơ sở dữ liệu, lấy mẫu, các phương pháp xấp xỉ, xử lý song song

 Kích thước lớn: Không chỉ có số lượng bản ghi lớn mà số cáctrường trong cơ sở dữ liệu cũng nhiều Vì vậy kích thước bài toán trở lên lớnhơn Một tập dữ liệu kích thước lớn làm tăng không gian tìm kiếm mô hìnhsuy diễn và làm tăng khả năng một giải thuật khai phá dữ liệu có thể tìm thấycác mẫu giả Chúng ta khắc phục bằng cách làm giảm kích thước tác động củabài toán và sử dụng các tri thức biết trước để xác định các biến không phùhợp

 Dữ liệu động: Nội dung của cơ sở dữ liệu thay đổi liên tục Dữliệu thay đổi theo thời gian và việc khai phá dữ liệu cũng bị ảnh hưởng bởithời gian quan sát dữ liệu Việc dữ liệu thay đổi nhanh chóng có thể làm chocác mẫu khai thác trước đó mất giá trị Các biến trong CSDL của ứng dụng đãcho cũng có thể bị thay đổi, bị xóa, hoặc tăng lên theo thời gian Vấn đề nàyđược giải quyết bằng các giải pháp tăng trưởng để nâng cấp các mẫu và coicác thay đổi như là cơ hội để khai thác bằng cách sử dụng nó để tìm kiếm cácmẫu bị thay đổi

 Các trường không phù hợp: Một đặc điểm khác là tính khôngthích hợp của dữ liệu, nghĩa là mục dữ liệu trở thành không thích hợp vớitrọng tâm hiện tại của việc khai thác Một khía cạnh khác đôi khi cũng liênquan đến độ phù hợp là tính ứng dụng của một thuộc tính đối với một tập concủa cơ sở dữ liệu Vấn đề này giải quyết bằng cách lấy ví dụ mẫu, chọn lọccác bộ dữ liệu đặc trưng và tốt nhất

 Các giá trị bị thiếu: Đây là vấn đề có thể nói là rất khó khăntrong việc khai phá dữ liệu Sự có mặt hay vắng mặt của giá trị các thuộc tính

dữ liệu phù hợp có thể ảnh hưởng đến việc khai phá dữ liệu Trong một hệthống tương tác, sự thiếu vắng dữ liệu quan trọng có thể dẫn đến việc yêu cầu

Trang 26

vắng mặt của dữ liệu như một điều kiện, thuộc tính bị mất có thể coi như mộtgiá trị trung gian và là giá trị không biết Chúng ta có thể tận dụng các xử lísong song để khắc phục vấn đề này Hiện nay, do giá thành các phần cứngkhông cao lắm, có thể áp dụng các giải pháp song song cho việc khai phá dữliệu: Phân chia nhiệm vụ, dữ liệu cho nhiều bộ xử lí thực hiện đồng thời.

1.7 Kết luận

Nội dung chương tìm hiểu quá trình phát hiện tri thức và các vấn đề khaiphá dữ liệu Phát hiện tri thức là một quá trình rút ra tri thức từ dữ liệu màtrong đó khai phá dữ liệu là giai đoạn quan trọng nhất Khai phá dữ liệu lànhiệm vụ tìm ra các dữ liệu có ích từ số lượng lớn dữ liệu Trong chương nàytóm tắt một số kĩ thuật dùng để khai phá dữ liệu và phân tích việc khai phá dữliệu Trong các kĩ thuật khai phá dữ liệu, phát hiện luật kết hợp là một lĩnhvực đang được quan tâm và đây cũng là lĩnh vực nghiên cứu của khoá luận, sẽđược trình bày chi tiết trong chương 2

Trang 27

CHƯƠNG 2: CƠ SỞ LÍ THUYẾT LUẬT KẾT HỢP

2.1 Lí thuyết về luật kết hợp

2.1.1 Luật thừa

a) Định nghĩa

Xét luật r: X→Y thuộc tập các luật {R} của một cơ sở tri thức [3]

Luật r được gọi là luật thừa nếu với các luật còn lại thuộc tập R {r} nếuchúng ta có thể suy ra một luật r: X→Y

Một định nghĩa khác: Gọi R: tập luật của cơ sở tri thức; r thuộc R:X→Y; (X)R-{r}: tập các mệnh đề suy ra từ X bằng các luật thuộc R-{r}; luật r:X→Y thuộc R gọi là thừa nếu Y thuộc (X)R-{r}

ta có: X→Y→Z→T

Thuật toán xác định (X)R-{r}

1 Bước 1: Ketqua:= X;

2 Bước 2: Với mọi r thuộc R, nếu vế trái r thuộc kết quả thì

Ketqua:= Ketqua ∪ Vephai(r)

3 Bước 3: Lặp lại bước 2 cho đến khi nào kết quả không thay đổinữa Khi đó ta có (X)R-{r}

b) Thuật toán loại bỏ luật thừa:

Tư tưởng thuật toán loại bỏ luật thừa gồm các bước sau:

1 Buớc 1: t R = R {r}, từ định nghĩa của luật thừa trên, chúng ta có

Trang 28

2 Bước 2: Xác định (X)R = (Aj| Aj là các mệnh đề có thể suy diễn

từ X dựa trên tập luật R)

3 Bước 3 : Kiểm tra nếu Y thuộc (X)R hay không:

• Nếu đúng: thì luật r là thừa đối với tập R

• Ngược lại: thì luật r không thừa đối với tập R

Giải thuật chính loại bỏ luật thừa:

Bước 1: Xét luật r trong tập luật R, kiểm tra r có thừa đối với tập R {r} không?

-Bước 2 : Nếu thừa thì R= R {r}; lặp lại bước 1 với luật khác

Bước 3: Lặp lại cho đến khi không còn bỏ luật nào nữa

2.1.2 Luật kết hợp

Cho một tập I = {I1, I2, ,Im} là tập gồm m khoản mục (item), còn đượcgọi là các thuộc tính (attribute) Các phần tử trong I là phân biệt nhau X ⊆Iđược gọi là tập mục (itemset) Nếu lực lượng của X bằng k (tức là |X| = k) thì

X được gọi là k-itemset

Một giao dịch (transaction) T được định nghĩa như một tập con (subset)của các khoản mục trong I (T ⊆l) Tương tự như khái niệm tập hợp, các giaodịch không được trùng lặp, nhưng có thể nới rộng tính chất này của tập hợp

và trong các thuật toán sau này, người ta đều giả thiết rằng các khoản mụctrong một giao dịch và trong tất cả các tập mục (item set) khác, có thể coichúng đã được sắp xếp theo thứ tự từ điển của các item

Gọi D là CSDL của n giao dịch và mỗi giao dịch được đánh nhãn vớimột định danh duy nhất (Unique Transasction IDentifier-TID) Nói rằng, mộtgiao dịch T ∈ D hỗ trợ (support) cho một tập X ⊆ I nếu nó chứa tất cảcác item của X, nghĩa là X ⊆ T, trong một số trường hợp người ta dùng kýhiệu T(X) để chỉ tập các giao dịch hỗ trợ cho X Kí hiệu support(X) (hoặcsupp(X),

Trang 29

s(X)) là tỷ lệ phần trăm của các giao dịch hỗ trợ X trên tổng các giao dịchtrong D, nghĩa là:

Trang 30

supp (�) =|{� ∈ �|� ⊆

��}|

Ví dụ về cơ sở dữ liệu F (dạng giao dịch) : X = {A, B, C, D, E},

T = {1, 2, 3, 4} Thông tin về các giao dịch cho ở bảng sau :

Đ ị

Bảng 2.1: Ví dụ về một cơ sở dữ liệu dạng giao dịch - F

Tập phổ biến (frequent itemset) [2]: Support tối thiểu minsup ∈ ( 0, 1]

(Minimum Support) là một giá trị cho truớc bởi nguời sử dụng Nếu tập mục

X ⊆ I có supp(X) ≥ minsup thì ta nói X là một tập phổ biến - frequent itemset(hoặc large itemset) Một frequent itemset đuợc sử dụng như một tập đángquan tâm trong các thuật toán Ngược lại, những tập không phải frequentitemset là những tập không đáng quan tâm Trong các trình bày sau này, ta sẽ

sử dụng những cụm từ khác như “X có support tối thiểu” hay “X không cósupport tối thiểu” cũng để nói lên rằng X thỏa mãn hay không thỏa mãnsupport(X) ≥ minsup

Ví dụ: Với cơ sở dữ liệu F cho ở bảng 2.1 và giá trị ngưỡng minsup =

25% sẽ liệt kê tất cả các tập phổ biến (frequent-itemset) như sau :

Trang 31

Bảng 2.2 : Các tập phổ biến trong cơ sở dữ liệu ở bảng 2.1

với độ hỗ trợ tối thiểu 25%

Một số tính chất (TC) liên quan đến các frequent itemset [4]:

Tính chất 1: support cho tất cả các subset: nếu A ⊆ B thì A, B là các

itemset thì supp(A) ≥ supp(B) vì tất cả các giao dịch của D support B thì cũngsupport A

Tính chất 2 : Nếu một item A không có support tối thiểu trên D nghĩa là support(A) < minsup thì một superset B của A sẽ không phải là một frequent

vì support(B) ≤ support(A) < minsup

Tính chất 3: Nếu item B là frequent trên D, nghĩa là support(B) ≥

minsup thì mọi subset A của B là frequent trên D vì support(A) ≥ support(B)

> minsup

Định nghĩa luật kết hợp [2]

Một số luật kết hợp có dạng R: X => Y, trong đó X, Y ⊆ I và X ∩ Y =

∅ X được gọi là tiên đề và Y được gọi là hệ quả của luật

Luật X => Y tồn tại một độ tin cậy c (confidence-conf) Độ tin cậy cđược định nghĩa là khả năng giao dịch T hỗ trợ X thì cũng hỗ trợ Y Ta cócông thức tính độ tin cậy c như sau:

Conf(X => Y) = ��(� ⊆ ��|� ⊆ ��) = � ( � ⊆ � ˄

� ⊆ � )

= s u pp ( � ∪ � )

Trang 32

��(� ⊆ ��) supp (�)

Tuy nhiên, không phải bất cứ luật kết hợp nào có mặt trong tập các luật

có thể được sinh ra cũng đều có ý nghĩa trên thực tế Mà tất cả các luật đều

Trang 33

phải thoả mãn một ngưỡng hỗ trợ và tin cậy cụ thể Thật vậy, cho một tập cácgiao dịch D, bài toán phát hiện luật kết hợp là sinh ra tất cả các luật kết hợp

mà có độ tin cậy conf lớn hơn độ tin cậy tối thiểu min_conf và độ hỗ trợ lớnhơn độ hỗ trợ tối thiểu minsup do người dùng xác định

Khi khai phá các luật kết hợp, có 2 vấn đề chính cần phải giải quyết :

■ Thứ nhất, đó là độ phức tạp của giải thuật, số luợng luật tăng theocấp độ luỹ thừa cùng với số lượng các mục (item) Tuy nhiên, cácgiải thuật hiện nay có thế giảm bớt không gian tìm kiếm này dựatrên các ngưỡng tối thiểu để đánh giá độ hiệu quả của luật

■ Thứ hai, các luật tốt (tối ưu) phải đuợc lấy ra từ tập hợp các luậttìm đuợc Điều này rất khó bởi vì tập hợp các luật tìm đuợc là rấtlớn, trong đó số lượng các luật có thể dùng được lại chiếm tỷ lệ vôcùng nhỏ Các nghiên cứu liên quan đến vấn đề thứ hai hầu hết chútrọng vào việc giúp người dùng duyệt tập luật cũng như việc pháttriển các độ đo chất lượng của luật

Xét trường hợp X ∩ Y = ∅ và các giao dịch trong D hỗ trợ Z nếu

và chỉ nếu chúng hỗ trợ X hoặc Y, khi đó X ∪ Y => Z có độ hỗ trợ 0%

Tương tự X => Y và X => Z thì không nhất thiết X => Y ∪ Z đúng

Trang 34

s(X) > s(X ∪ Y) và s(Y) > s(X ∪ Y) thì hai luật riêng biệt sẽ không đủ độ tincậy.

- Tính chất 3: Các luật kết hợp không có tính chất bắc cầu

Nếu X => Y và X => Z thì không thể suy ra X => Z

Ví dụ:

Giả sử X, Y, Z có số tác vụ tương ứng là t(X), t(Y), t(Z) và độ tin cậycực tiểu là min_conf, c(X => Y) = c(Y => Z) = min_conf thì c(X => Z) =min_conf2 < min_conf vì min_conf < 1, do đó luật không đủ độ tin cậy

Trang 35

2.1.4 Phát biểu bài toán khai phá luật kết hợp

Khai phá luật kết hợp được phân thành 2 bài toán con:

Bài toán 1: Tìm tất cả các tập mục mà có độ hỗ trợ lớn hơn độ hỗ trợ

tối thiểu do người dùng xác định, Các tập mục thoả mãn độ hỗ trợ tối thiểuđược gọi là các tập mục phổ biến

Bài toán 2: Dùng các tập mục phổ biến để sinh ra các luật mong muốn.

Ý tưởng chung là nếu gọi ABCD và AB là các tập mục phổ biến, thì chúng cóthể xác định luật nếu AB => CD giữ lại với tỷ lệ độ tin cậy:

Conf = s u pp (

� �� � ) supp (�

�)

Trang 36

nếu conf ≥ min_conf thì luật được giữ lại (luật này sẽ thoả mãn độ hỗtrợ tối thiểu vì ABCD là phổ biến)

2.1.5 Một số hướng tiếp cận trong khai phá luật kết hợp

Lĩnh vực khai phá luật kết hợp cho đến nay đã đuợc nghiên cứu và pháttriển theo nhiều hướng khác nhau Có những đề xuất nhằm cải tiến tốc độthuật toán, có những đề xuất nhằm tìm kiếm luật có ý nghĩa hơn và có một

số hướng chính sau đây

a) Luật kết hợp nhị phân (binary association rule hoặc boolean

association rule) : là hướng nghiên cứu đầu tiên của luật kết hợp Hầu hết cácnghiên cứu ở thời kỳ đầu về luật kết hợp đều liên quan đến luật kết hợp nhịphân Trong dạng luật kết hợp này, các mục (thuộc tính) chỉ đuợc quan tâm là

có hay không xuất hiện trong giao dịch của CSDL chứ không quan tâm về

“mức độ“ xuất hiện

Ví dụ: Trong hệ thống bán sách thì việc bạn mua 1 quyển sách khoahọc hay 5 quyển sách khoa học được xem là giống nhau

Thuật toán tiêu biểu nhất khai phá dạng luật này là thuật toán Apriori

và các biến thể của nó Đây là dạng luật đơn giản và các luật khác cũng có thểchuyển về dạng luật này nhờ một số phuơng pháp như rời rạc hoá, mờ hoá,

Một ví dụ về dạng luật này : “sách toán= ‘yes’ AND sách bài tập toán=

‘yes’ => sách để học tốt toán= ‘yes’ AND sách giải bài tập toán = ‘yes’, với

-Một ví dụ về dạng luật này “Phân tích thiết kế hệ thống [C] AND lập

Trang 37

trình C++ [B] => hệ điều hành [C], với độ hỗ trợ là 37%, và độ tin cậy là94%”.

c) Luật kết hợp tiếp cận theo hướng tập thô (mining association

rules base on rough set): Tìm kiếm luật kết hợp dựa trên lý thuyết tập thô

d) Luật kết hợp nhiều mức (multi-level association rule) : Với cách tiếp cận theo luật này sẽ tìm kiếm thêm những luật có dạng “ mua laptop => mua hệ điều hành AND mua phần mềm diệt virut, ” thay vì chỉ những luật quá cụ thể như “mua laptop Dell => mua hệ điều hành Microsoft Windows AND mua phần mềm diệt virut BKAV, ” Như vậy dạng luật đầu là dạng luật

tổng quát hoá của dạng luật sau và tổng quát theo nhiều mức khác nhau

e) Luật kết hợp mờ (fuzzy association rule) : Với những hạn chế

còn gặp phải trong quá trình rời rạc hoá các thuộc tính số (quantitaveattributes), các nhà nghiên cứu đã đề xuất luật kết hợp mờ nhằm khắc phụccác hạn chế trên và chuyển luật kết hợp về một dạng tự nhiên hơn, gần gũihơn với nguời sử dụng

Một ví dụ của dạng này là : “Phân tích thiết kế hệ thống trung bình

AND lập trình C++ khá => hệ điều hành trung bình, với độ hỗ trợ là 37%, và

độ tin cậy là 94%” Trong luật trên, điều kiện điểm các môn đã đuợc mờ hoá

ở mức điểm yếu kém, trung bình, khá và giỏi

f) Luật kết hợp với thuộc tính được đánh trọng số (association rule with weighted items): Trong thực tế, các thuộc tính trong CSDL không phải

lúc nào cũng có vai trò như nhau Có một số thuộc tính đuợc chú trọng hơn và

có mức độ quan trọng cao hơn các thuộc tính khác Ví dụ khi khảo sát vềdoanh thu hàng tháng, thông tin về thời gian đàm thoại, vùng cước là quantrọng hơn nhiều so với thông tin về phương thức gọi Trong quá trình tìmkiếm luật, chúng ta sẽ gán thời gian gọi, vùng cước các trọng số lớn hơn thuộctính phương thức gọi Đây là huớng nghiên cứu rất thú vị và đã được một số

Trang 38

thuộc tính đuợc đánh trọng số, chúng ta sẽ khai thác đuợc những luật “hiếm”(tức là có độ hỗ trợ thấp, nhưng có ý nghĩa đặc biệt hoặc mang rất nhiều ýnghĩa).

g) Luật kết hợp song song (parallel mining of association rules):

Bên cạnh khai phá luật kết hợp tuần tự, các nhà làm tin học cũng tập trungvào nghiên cứu các thuật giải song song cho quá trình phát hiện luật kết hợp.Nhu cầu song song hoá và xử lý phân tán là cần thiết bởi kích thước dữ liệungày càng lớn hơn nên đòi hỏi tốc độ xử lý cũng như dung lượng bộ nhớ của

hệ thống phải được đảm bảo Có rất nhiều thuật toán song song khác nhau đã

đề xuất để có thể không phụ thuộc vào phần cứng

Bên cạnh những nghiên cứu về những biến thể của luật kết hợp, các nhànghiên cứu còn chú trọng đề xuất những thuật toán nhằm tăng tốc độ quá trìnhtìm kiếm tập phổ biển từ CSDL

Ngoài ra, còn có một số hướng nghiên cứu khác về khai phá luật kếthợp như: khai phá luật kết hợp trực tuyến, khai phá luật kết hợp được kết nốitrực tuyến đến các kho dữ liệu đa chiều (Multidimensional data, datawarehouse) thông qua công nghệ OLAP (Online Analysis Processing),MOLAP (multidimensional OLAP), ROLAP (Relational OLAP), ADO(Active X Data Object) for OLAP V V

Trang 39

2.2 Các đặc trưng của luật kết hợp

2.2.1 Không gian tìm kiếm luật

Ta phải tìm tất cả các itemset thỏa ngưỡng minsupp Với các ứng dụng

thực tiễn, việc duyệt tất cả các tập con của I sẽ hoàn toàn thất bại vì không

gian tìm kiếm quá lớn Trên thực tế, sự tăng tuyến tính số lượng các item vẫn kéo theo sự tăng theo cấp lũy thừa các itemset cần xem xét Với trường hợp

đặc biệt I={1,2,3,4}, ta có thể biểu diễn không gian tìm kiếm thành một lướinhư trong hình 2.2.1

Hình 2.1: Dàn cho tập I = {1, 2, 3, 4}

Các tập phổ biến nằm trong phần trên của hình trong khi những tậpkhông phổ biến lại nằm trong phần dưới Mặc dù không chỉ ra một cách tường

minh các giá trị hỗ trợ cho mỗi itemset nhưng ta giả sử rằng đường biên đậm

trong hình phân chia các tập phổ biến và tập không phổ biến Sự tồn tại củađường biên như vậy không phụ thuộc vào bất kỳ cơ sở dữ liệu D và minsupnào Sự tồn tại của nó chỉ đơn thuần được đảm bảo bởi tính chặn dưới của

itemset thỏa ngưỡng minsup.

Ngày đăng: 16/09/2019, 13:20

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w