Tải bản đầy đủ (.pdf) (77 trang)

Tìm hiểu một số kỹ thuật phát hiện tri thức ứng dụng trên cơ sở dữ liệu đăng kí học theo tín chỉ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (16.6 MB, 77 trang )

MỤC LỤC
Chương 1……………..TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU ........................ 5
1.1.Các khái niệm cơ bản………….. ..................................................................... 5
1.1.1.Tại sao phải khai phá dữ liệu. ............................................................... 5
1.1.2.Mục tiêu của khai phá dữ liệu. .............................................................. 5
1.1.3.Định nghĩa khai phá dữ liệu. ................................................................. 6
1.1.4.Các dạng dữ liệu có thể khai phá. ......................................................... 7
1.1.5.Quá trình khai phá dữ liệu..................................................................... 7
1.1.5.1.Các bước trong quá trình khai phá................................................. 7
1.1.5.2.Các thành phần của giải thuật khai phá.......................................... 8
1.1.6.Các hướng tiếp cận cơ bản và kỹ thuật áp dụng. ................................... 9
1.1.7. Các lĩnh vực ứng dụng của khai phá dữ liệu......................................... 9
1.2. Phương pháp khai phá dữ liệu....................................................................... 10
1.2.1.Một số phương pháp khai phá dữ liệu phổ biến................................... 10
1.2.1.1.Phương pháp suy diễn và quy nạp. .............................................. 10
1.2.1.2. Cây quyết định và luật................................................................ 10
1.2.1.3.Phát hiện các luật kết hợp............................................................ 11
1.2.1.4. Phân nhóm và phân đoạn............................................................ 12
1.2.1.5. Mạng neural. .............................................................................. 13
1.2.1.6.Giải thuật di truyền...................................................................... 13
1.2.2. Lựa chọn các kỹ thuật khai phá.......................................................... 14
Chương 2……………….. KHAI PHÁ DỮ LIỆU BẰNG LUẬT KẾT HỢP ....... 16
2.1. Ý nghĩa của luật kết hợp. .............................................................................. 16
2.2. Bài toán khai phá dữ liệu bằng luật kết hợp. ................................................. 17
2.2.1.Phát biểu bài toán và các pha thực hiện............................................... 17
2.2.2.Ví dụ................................................................................................... 20
2.3. Một số tính chất của tập mục phổ biến và luật kết hợp.................................. 22
2.3.1.Một số tính chất với tập mục phổ biến: ............................................... 22
2.3.2.Một số tính chất với luật kết hợp: ....................................................... 23
2.2.4. Các loại luật kết hợp .......................................................................... 24
1




2.4. Các thuật toán khai phá dữ liệu nhờ luật kết hợp........................................... 26
2.4.1.Khai phá luật kết hợp Boolean đơn chiều từ CSDL tác vụ. ................. 26
2.4.1.1.Thuật toán Apriori tìm tập mục phổ biến sử dụng phương pháp
sinh các ứng cử.................................................................................................... 26
2.4.1.2. Nâng cao hiệu quả của thuật toán Apriori................................... 36
2.4.1.3.Thuật toán sinh các luật kết hợp từ các tập mục phổ biến. ........... 40
2.4.1.4. Thuật toán AIS. .......................................................................... 43
2.4.1.5.Thuật toán SETM. ....................................................................... 46
2.4.1.6. Thuật toán AprioriTid................................................................. 49
2.4.2.Khai phá luật kết hợp định lượng........................................................ 51
2.4.3.Khai phá luật kết hợp đa mức. ............................................................ 53
2.4.3.1.Luật kết hợp đa mức.................................................................... 53
2.4.3.2.Các cách tiếp cận khai phá luật kết hợp đa mức........................... 55
2.4.4.Khai phá luật kết hợp đóng. ................................................................ 58
2.4.4.2.Sinh luật. ..................................................................................... 63
Chương 3:……………………ỨNG DỤNG........................................................ 64
3.1.Tình hình đào tạo theo tín chỉ trên thế giới và ở Việt Nam. ............................ 64
3.1.1. Vài nét về hệ thống tín chỉ đại học Châu Âu. .................................... 65
3.1.2. Việt Nam chuyển sang học chế tín chỉ: Đổi mới theo 3C ................... 65
3.1.2.1 Đổi mới theo 3C.......................................................................... 68
3.1.2.3. Đào tạo theo học chế tín chỉ tại trường Đại học Đà Lạt............... 69
3.1.2.4. Đào tạo theo tín chỉ của Đại học Thái Nguyên............................ 70
3.2. Ứng dụng cho bài toán khai phá luật kết hợp trên cơ sở dữ liệu đăng kí học
theo tín chỉ………………… ............................................................................... 70
3.2.2. Thiết kế các môđul chương trình và các giải thuật. ............................ 71
3.2.3. Thiết kế giao diện sử dụng................................................................. 71
3.2.4. Đánh giá kết quả và hướng phát triển của chương trình...................... 74
KẾT LUẬN……………………………………………………………………….75

TÀI LIỆU THAM KHẢO………………………………………………………...76

2


MỞ ĐẦU
Trong những năm gần đây, khai phá dữ liệu đã trở thành một trong những
lĩnh vực chính được các nhà khoa học quan tâm nghiên cứu bởi tính ứng dụng cao
trong thực tiễn cuộc sống. Với hàng loạt các nghiên cứu, đề xuất được thử nghiệm
và ứng dụng thành công vào đời sống đã chứng minh khai phá dữ liệu là lĩnh vực
nghiên cứu có nền tảng lý thuyết vững chắc.
Khai phá dữ liệu được ứng dụng rộng rãi trong nhiều lĩnh vực như: Tài
chính và thị trường chứng khoán, Thương mại, Giáo dục, Y tế, Sinh học, Bưu
chính viễn thông,…với nhiều hướng tiếp cận khác nhau như: Phân lớp/ Dự đoán,
Phân cụm, Luật kết hợp,….Các kỹ thuật chính được áp dụng trong khai phá dữ
liệu phần lớn được thừa kế từ lĩnh vực: Cơ sở dữ liệu, Học máy, Trí tuệ nhân tạo,
Lý thuyết thông tin, Xác suất thống kê,…
Luật kết hợp là một trong những phương pháp khai phá dữ liệu có hiệu quả
và là vấn đề quan trọng được nhiều nhà khoa học tìm hiểu và đã thu được những
thành công lớn.
Với một lĩnh vực công nghệ mới còn nhiều triển vọng trong tương lai, em
đã chọn hướng nghiên cứu về Tìm hiểu một số kỹ thuật phát hiện tri thức. Ứng
dụng trên cơ sở dữ liệu đăng kí học theo tín chỉ cho đề tài Đồ án tốt nghiệp của
mình. Đồ án tốt nghiệp được xây dựng và tổng hợp các nội dung dựa trên nền một
số nghiên cứu chủ yếu trong lĩnh vực khai phá dữ liệu của các nhà nghiên cứu
trong những năm gần đây ở một số hội nghị quốc tế và một số các bài báo được
công bố trên các tạp chí chuyên ngành, trên Internet.
Mục đích của đồ án là nghiên cứu, tổng hợp các kiến thức về khai phá dữ
liệu, phát hiện tri thức và tìm hiểu một số thuật toán khai phá luật kết hợp trong
CSDL lớn và áp dụng vào việc khai phá dữ liệu, phát hiện tri thức nhằm hỗ trợ

quyết định.
Nội dung chính của Đồ án gồm các chương mục chính sau:

3


Chương 1: Tổng quan về khai phá dữ liệu.
Chương này trình bày những nét khái quát nhất về khai phá dữ liệu, khai
phá dữ liệu trong quá trình phát hiện tri thức; Các hướng tiếp cận; Các kỹ thuật áp
dụng trong khai phá dữ liệu; Các lĩnh vực ứng dụng chính.
Chương 2: Khai phá dữ liệu nhờ luật kết hợp.
Trong chương này trình bày các phương pháp khai phá dữ liệu bằng luật kết
hợp từ thuật toán đầu tiên - Thuật toán Apriori và các hướng cải tiến của thuật toán
này nhằm nâng cao hiệu quả của quá trình tính toán. Ngoài ra còn giới thiệu một
số thuật toán khác như AIS, SETM, AprioriTid…Đồng thời cũng trình bày một số
hướng nghiên cứu về luật kết hợp đa mức, luật kết hợp định lượng, luật kết hợp
đóng.
Chương 3: Ứng dụng luật kết hợp trong bài toán khai phá dữ liệu trên Cơ sở dữ
liệu đăng kí học theo tín chỉ của Khoa công nghệ thông tin - Đại học Thái Nguyên.
Chương này trình bày bài toán và qua bài toán xác định rõ nhiệm vụ khai
phá dữ liệu, phân tích và thiết kế các môdul chương trình đồng thời thiết kế các
giao diện sao cho thuận lợi và thân thiết với người sử dụng nhưng dễ theo dõi và
kiểm tra. Chương trình được xây dựng với mục đích thử nghiệm để đánh giá kết
quả.

4


Chương 1
TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU

1.1. Các khái niệm cơ bản.
1.1.1.Tại sao phải khai phá dữ liệu.
Để lấy được những thông tin có tính “tri thức” trong khối dữ liệu khổng lồ
này, người ta đi tìm những kỹ thuật có khả năng hợp nhất các dữ liệu từ các hệ
thống dữ liệu khác nhau, chuyển đổi thành một tập hợp các cơ sở dữ liệu ổn định,
có chất lượng được sử dụng chỉ riêng cho một vài mục đích nào đó. Các kỹ thuật
đó được gọi chung là kỹ thuật tạo kho dữ liệu (Data Warehousing) và môi trường
các dữ liệu đó gọi là các kho dữ liệu.
Điều này đã tạo nên một lỗ hổng lớn trong việc hỗ trợ phân tích và tìm hiểu
dữ liệu, tạo ra khoảng cách giữa việc tạo ra dữ liệu và việc khai thác dữ liệu đó.
Trong khi đó, càng ngày người ta càng nhận thấy rằng nếu được phân tích thông
minh thì dữ liệu sẽ là một nguồn tài nguyên quý giá trong cạnh tranh trên thương
trường. Một công nghệ mới được nghiên cứu, đáp ứng cả nhu cầu trong khoa học
cũng như trong hoạt động thực tiễn. Đó chính là công nghệ Khai phá dữ liệu.
1.1.2. Mục tiêu của khai phá dữ liệu.
Gần 3 thập niên trở lại đây, lượng thông tin được lưu trữ trên các thiết bị
như đĩa cứng, CD-ROM, băng từ,…không ngừng tăng lên. Sự tích luỹ dữ liệu này
xảy ra với một tốc độ bùng nổ. Người ta ước đoán rằng, lượng thông tin trên toàn
cầu tăng khoảng gấp đôi sau hai năm đồng thời theo đó số lượng cũng như kích cỡ
của các Cơ sở dữ liệu cũng tăng lên một cách nhanh chóng.
Trong lĩnh vực kinh doanh, những nhà quản lý quả thực đang ngập trong dữ
liệu nhưng lại cảm thấy thiếu tri thức và thông tin hữu ích. Lượng dữ liệu khổng lồ
này thực sự đã trở thành nguồn tài nguyên rất giá trị bởi thông tin là yếu tố then
chốt trong mọi hoạt động thương mại vì thông tin giúp người điều hành và nhà
quản lý có cái nhìn sâu sắc, chính xác, khách quan vào tiến trình kinh doanh của
doanh nghiệp trước khi ra quyết định. Việc khai thác những thông tin tiềm ẩn
5


mang tính dự đoán từ những cơ sở dữ liệu lớn là mục tiêu chính của khai phá dữ

liệu - một hướng tiếp cận mới với khả năng giúp các đơn vị, tổ chức chú trọng vào
những thông tin có nhiều ý nghĩa từ những tập hợp dữ liệu lớn mang tính lịch sử.
Những công cụ khai phá dữ liệu có thể dự đoán những xu hướng trong tương lai
do đó cho phép các tổ chức, doanh nghiệp ra những quyết định kịp thời được định
hướng bởi tri thức mà khi khai phá dữ liệu đem lại. Sự phân tích dữ liệu một cách
tự động và mang tính dự báo của khai phá dữ liệu khiến nó có ưu thế hơn hẳn so
với sự phân tích thông thường dựa trên những sự kiện trong quá khứ của các hệ hỗ
trợ ra quyết định truyền thống trước đây. Công cụ khai phá dữ liệu cũng có thể trả
lời các câu hỏi trong lĩnh vực kinh doanh mà trước đây được xem là tốn nhiều thời
gian để xử lý.
Với tất cả các ưu thế trên, khai phá dữ liệu đã chứng tỏ được tính hữu dụng
của nó trong mỗi môi trường kinh doanh đầy tính cạnh tranh ngày nay. Giờ đây
khai phá dữ liệu đã và đang trở thành một trong những hướng nghiên cứu chính
của lĩnh vực khoa học máy tính và công nghệ tri thức. Phạm vi ứng dụng ban đầu
của khai phá dữ liệu chỉ là trong lĩnh vực thương mại và tài chính. Nhưng ngày
nay, khai phá dữ liệu đã được ứng dụng rộng rãi trong các lĩnh vực khác như: Tin
sinh học, điều trị y học, viễn thông, giáo dục,…
1.1.3. Định nghĩa khai phá dữ liệu.
Qua nội dung đã trình bày ở trên, chúng ta có thể hiểu một cách sơ lược
rằng khai phá dữ liệu là quá trình tìm kiếm thông tin hữu ích, tiềm ẩn và mang tính
dự báo trong các cơ sở dữ liệu lớn. Như vậy, nên chăng gọi quá trình này là khám
phá tri thức thay vì là khai phá dữ liệu. Tuy nhiên một số nhà khoa học đồng ý với
nhau rằng hai thuật ngữ trên là tương đương và có thể thay thế cho nhau. Họ lý
giải rằng mục đích chính của quá trình khám phá tri thức là thông tin và tri thức có
ích nhưng đối tượng mà chúng ta phải xử lý rất nhiều trong quá trình đó lại chính
là dữ liệu. Mặt khác, khi chia các bước trong quá trình khám phá tri thức, nhiều
nhà khoa học khác lại cho rằng khai phá dữ liệu chỉ là một bước trong quá trình
khám phá tri thức. Như vậy, khi xét ở mức không thật chi tiết thì hai thuật ngữ này
được xem là đồng nghĩa nhưng khi xét cụ thể thì khai phá dữ liệu lại là một bước
trong quá trình khám phá tri thức.

6


1.1.4. Các dạng dữ liệu có thể khai phá.
Khai phá dữ liệu được áp dụng rộng rãi nên có rất nhiều kiểu dữ liệu khác
nhau được chấp nhận để khai phá. Sau đây là một số loại điển hình:
Cơ sở dữ liệu quan hệ (relational databases): là các cơ sở dữ liệu tác nghiệp được
tổ chức theo mô hình dữ liệu quan hệ. Hầu hết các hệ quản trị cơ sở dữ liệu đều hỗ
trợ dạng dữ liệu này như: Oracle, IBM DB2, MS SQL Server, MS Access,…
Cơ sở dữ liệu đa chiều (multimemtional structures, data warehouses, datamart): là
các kho dữ liệu được tập hợp, chọn lọc từ nhiều nguồn dữ liệu khác nhau. Dạng dữ
liệu này mang tính lịch sử (tức có thời gian) và chủ yếu phục vụ cho quá trình
phân tích cũng như khai phá tri thức nhằm hỗ trợ cho việc ra quyết định.
Cơ sở dữ liệu dạng giao dịch (transactional databases): là dạng cơ sở dữ liệu tác
nghiệp nhưng các bản ghi thường là các giao dịch. Dạng dữ liệu này thường phổ
biến trong lĩnh vực thương mại và ngân hàng.
Cơ sở dữ liệu quan hệ - hướng đối tượng (object-relational databases): là dạng cơ
sở dữ liệu lai giữa hai mô hình quan hệ và hướng đối tượng.
Dữ liệu không gian và thời gian (spatial, temporal and time-series data): là dạng
dữ liệu có tích hợp thuộc tính về không gian (ví dụ như dữ liệu về bản đồ) hoặc
thời gian (ví dụ như dữ liệu về thị trường chứng khoán).
Cơ sở dữ liệu đa phương tiện (multimedia databases): là dạng dữ liệu âm thanh
(audio), hình ảnh (image), phim ảnh (video), text & WWW…Dạng dữ liệu này
hiện đang rất phổ biến trên Internet do sự ứng dụng rộng rãi của nó.
1.1.5. Quá trình khai phá dữ liệu.
1.1.5.1. Các bước trong quá trình khai phá.
Thông thường quá trình khai phá dữ liệu thực hiện qua các bước sau:
-

Xác định nhiệm vụ: Xác định chính xác các vấn đề cần giải quyết.


-

Xác định các dữ liệu liên quan: Dùng để xây dựng giải pháp quyết nhiệm
vụ bài toán.

-

Thu thập các dữ liệu có liên quan và xử lý chúng thành dạng sao cho giải
thuật khai phá dữ liệu có thể hiểu được.

7


-

Chọn thuật toán khai phá dữ liệu thích hợp và thực hiện việc khai phá
nhằm tìm được các mẫu có ý nghĩa dưới dạng biểu diễn tương ứng với các
ý nghĩa đó.

1.1.5.2. Các thành phần của giải thuật khai phá.
Quá trình khai phá dữ liệu là quá trình phát triển mẫu trong đó giải thuật
khai phá dữ liệu tìm kiếm các mẫu đáng quan tâm theo dạng xác định các luật, cây
phân lớp, hồi quy, phân nhóm,…Giải thuật khai phá dữ liệu bao gồm 3 thành phần
chính như sau:
- Biểu diễn mô hình.
- Đánh giá mô hình.
- Tìm kiếm mô hình.
 Biểu diễn mô hình: Mô hình được biểu diễn bằng một ngôn ngữ sao cho có
thể khai phá được. Nếu mô hình có sự mô tả hạn chế thì sẽ không thể học được

hoặc sẽ không thể có các mẫu tạo ra. Nếu diễn tả mô hình càng lớn thì càng làm
tăng mức độ nguy hiểm do bị học quá nhiều và làm giảm đi khả năng dự đoán các
dữ liệu chưa biết. Hơn nữa, việc tìm kiếm càng trở lên phức tạp hơn và việc giải
thích mô hình cũng khó khăn hơn.
 Đánh giá mô hình: Đánh giá xem một mẫu có đáp ứng được các tiêu chuẩn
của quá trình phát hiện tri thức hay không. Việc đánh giá mô hình được thực hiện
thông qua kiểm tra dữ liệu, đối với nhiệm vụ dự đoán thì việc đánh giá mô hình
ngoài kiểm tra dữ liệu còn dựa trên độ chính xác dự đoán mà việc đánh giá độ
chính xác dự đoán dựa trên đánh giá chéo.
 Tìm kiếm mô hình:
Bao gồm 2 thành phần : tìm kiếm tham số và tìm kiếm mô hình.
-

Tìm kiếm tham số: Giải thuật cần tìm các tham số để tối ưu hoá các tiêu

chuẩn đánh giá mô hình với các dữ liệu quan sát được và với một miêu tả mô hình
đã định.
-

Tìm kiếm mô hình: Quá trình này xảy ra giống như một vòng lặp tìm kiếm

tham số. Khi miêu tả, mô hình bị thay đổi tạo nên một họ các mô hình thì với mỗi
một miêu tả mô hình phương pháp tìm kiếm tham số được áp dụng để đánh giá
chất lượng mô hình. Các phương pháp tìm kiếm mô hình thường sử dụng các kỹ
8


thuật tìm kiếm heuristic (tức dựa trên kinh nghiệm, thử nghiệm, rút ra kết luận) bởi
kích thước của không gian các mô hình có thể ngăn cản các tìm kiếm tổng thể.


1.1.6. Các hướng tiếp cận cơ bản và kỹ thuật áp dụng.
Vấn đề khai phá dữ liệu có thể được phân chia theo lớp các hướng tiếp cận
chính sau:
Phân lớp và dự đoán (classification & prediction): xếp một đối tượng vào một
trong những lớp đã biết. Ví dụ phân lớp vùng địa lý theo dữ liệu thời tiết. Đối với
hướng tiếp cận này thường áp dụng một số kỹ thuật như học máy (machine
learning), cây quyết định (decision tree), mạng nơ ron nhân tạo (neural
network),…Hay lớp bài toán này còn được gọi là học có giám sát - Học có thầy
(supervised learning).
Phân cụm (clustering/segmentation: Sắp xếp các đối tượng theo từng cụm nhưng
số lượng và tên các cụm chưa biết trước. Lớp bài toán phân cụm còn được gọi là
học không giám sát - Học không thầy (unsupervised learning).
Luật kết hợp (association rules): Là dạng luật biểu diễn tri thức ở dạng khá đơn
giản. Ví dụ: “80% sinh viên đăng kí học môn Cơ sở dữ liệu thì có tới 70% trong số
họ đăng kí học môn Phân tích thiết kế hệ thống thông tin”. Hướng tiếp cận này
được ứng dụng nhiều trong lĩnh vực kinh doanh, y học, tin sinh học, giáo dục,…
Khai phá chuỗi theo thời gian (sequential/temporal patterns): Cũng tương tự như
khai phá dữ liệu bằng luật kết hợp nhưng có thêm tính thứ tự và tính thời gian.
Hướng tiếp cận này được ứng dụng nhiều trong lĩnh vực tài chính và thị trường
chứng khoán bởi chúng có tính dự báo cao.
1.1.7. Các lĩnh vực ứng dụng của khai phá dữ liệu.
Khai phá dữ liệu là một lĩnh vực mới phát triển nhưng thu hút được nhiều
nhà nghiên cứu nhờ vào những ứng dụng thực tiễn của nó. Sau đây là một số lĩnh
vực ứng dụng điển hình:
-

Phân tích dữ liệu và hỗ trợ ra quyết định.

-


Điều trị trong y học: Mối liên hệ giữa triệu chứng, chuẩn đoán và phương
pháp điều trị.

-

Phân lớp văn bản, tóm tắt văn bản và phân lớp các trang Web.
9


-

Tin sinh học: tìm kiếm, đối sánh các hệ gene và thông tin di truyền, mối
liên hệ giữa một số hệ gene và một số bệnh di truyền,…

-

Tài chính và thị trường chứng khoán: Phân tích tình hình tài chính và dự
báo giá cả của các cổ phiếu.

-

Bảo hiểm.

-

Giáo dục.

1.2. Phương pháp khai phá dữ liệu.
1.2.1. Một số phương pháp khai phá dữ liệu phổ biến.
1.2.1.1. Phương pháp suy diễn và quy nạp.

 Phương pháp suy diễn: Rút ra thông tin là kết quả logic từ các thông tin
nằm trong cơ sở dữ liệu dựa trên các quan hệ trong dữ liệu. Phương pháp suy diễn
dựa trên các sự kiện chính xác để suy ra các tri thức mới từ các thông tin cũ. Mẫu
chiết suất được bằng cách sử dụng phương pháp này thường là các luật suy diễn.
 Phương pháp quy nạp: Các thông tin được suy ra từ cơ sở dữ liệu bằng cách
nó tự tìm kiếm, tạo mẫu và sinh ra tri thức chứ không bắt đầu với các tri thức đã
biết trước.
1.2.1.2. Cây quyết định và luật.
Cây quyết định: Cây quyết định là một phương pháp mô tả tri thức dạng
đơn giản nhằm phân phối các đối tượng dữ liệu thành một số lớp nhất định. Các
nút của cây được gán nhãn là tên các thuộc tính, các cạnh được gán nhãn các giá
trị có thể của các thuộc tính, các lá miêu tả các lớp khác nhau. Các đối tượng được
phân lớp theo các đường đi trên cây, qua các cạnh tương ứng với giá trị của các
thuộc tính của đối tượng tới lá.
Tạo luật: Các luật được tạo ra nhằm suy diễn cho một số mẫu dữ liệu có ý
nghĩa về mặt thống kê. Các luật có dạng nếu P thì Q, trong đó P là mệnh đề đúng
với một phần dữ liệu trong cơ sở dữ liệu và Q là mệnh đề dự đoán.
Ví dụ: Ta có mẫu phát hiện được bằng phương pháp tạo luật “ Nếu giảm ngưỡng
chỉ cần học đủ số trình là 120 sẽ được phát chứng nhận tốt nghiệp giai đoạn I thì
số lượng sinh viên đăng ký học tăng lên 30%.
Cây quyết định là phương pháp dùng trong các bài toán phân loại dữ liệu
theo một tiêu chuẩn nào đó dựa trên mức độ khác nhau của thuộc tính. Cây quyết
10


định và luật có ưu điểm là hình thức miêu tả đơn giản, mô hình suy diễn khá dễ
hiểu đối với người sử dụng. Tuy nhiên, giới hạn của nó là miêu tả cây và luật chỉ
có thể biểu diễn được một số dạng chức năng và vì vậy giới hạn cả về độ chính xác
của mô hình.
1.2.1.3. Phát hiện các luật kết hợp.

Các luật kết hợp là một dạng biểu diễn tri thức, hay chính xác là dạng mẫu
của hình thành tri thức. Phương pháp này nhằm phát hiện ra các luật kết hợp giữa
các thành phần dữ liệu trong cơ sở dữ liệu. Một đầu ra của giải thuật khai phá dữ
liệu là tập các luật kết hợp tìm được.
Cho một lược đồ R={A1, A2,…, Ap} với các thuộc tính có miền giá trị
{0,1} và một quan hệ r trên R. Ta gọi một luật kết hợp trên quan hệ r được mô tả
như sau: XB với X  R và B  R\X. Cho WR, đặt s(W,r) là tần số xuất hiện
của W trong r được tính bằng tỉ lệ của các hàng trong r có giá trị 1 tại mỗi cột. Khi
đó ta định nghĩa tần số xuất hiện và độ tin cậy của luật XB trong r như sau:
- Tần số xuất hiện =s(X{B},r).
- Độ tin cậy = s(X{B},r)\s(X,r).
Với X gồm nhiều thuộc tính và B là giá trị không cố định.
Nhiệm vụ của việc phát hiện các luật kết hợp là phải tìm tất cả các luật
XB sao cho tần số xuất hiện của luật không nhỏ hơn ngưỡng σ cho trước và độ
tin cậy của luật không nhỏ hơn ngưỡng θ cho trước.
Khi thiết kế dữ liệu dùng cho kỹ thuật luật kết hợp cần hết sức lưu ý để
giảm thiểu số lượng các thuộc tính đầu vào bởi không gian tìm kiếm các luật sẽ
tăng lên theo hàm mũ của số lượng các thuộc tính đầu vào.
Giải thuật tìm các luật kết hợp được bắt đầu bằng việc tìm tất cả các tập
thường xuyên xuất hiện. Tập thường xuyên xuất hiện là các tập thoả mãn tấn số
xuất hiện lớn hơn ngưỡng tần số được xác định trước. Các luật kết hợp sẽ được tạo
ra bằng cách ghép dần các tập thuộc tính dựa trên mức độ thường xuyên.

11


Ví dụ: Phân tích cơ sở dữ liệu bán hàng nhận được thông tin về những
khách mua các mặt hàng máy vi tính cũng có khuynh hướng mua phần mềm quản
lý tài chính trong cùng lần mua được mô tả bởi luật kết hợp như sau:
“Nếu mua máy tính thì mua phần mềm quản lý tài chính”.

[Độ hỗ trợ: 20%, Độ tin cậy: 60%]
Phương pháp này có ưu thế cơ bản là đơn giản và dễ hiểu đối với con người. Ở ví
dụ trên độ hỗ trợ 20% nghĩa là: 20% của tất cả các giao dịch được phân tích thì chỉ
ra rằng máy tính và phần mềm quản lý tài chính được mua cùng nhau. Còn độ tin
cậy 60% có nghĩa là: 60% các khách hàng mua máy tính thì cũng mua phần mềm.
Đặc biệt, các luật kết hợp được coi là đáng quan tâm nếu chúng thoả mãn cả hai
ngưỡng độ hỗ trợ cực tiểu và độ tin cậy cực tiểu. Những ngưỡng này thường do
người dùng hoặc các chuyên gia trong lĩnh vực xác định.
Nhược điểm cơ bản của phương pháp này là sự gia tăng nhanh chóng khối
lượng tính toán và các thông số. Tuy nhiên với sự phát triển nhanh chóng và mạnh
mẽ của phần cứng thì vần đề này cũng được khắc phục.
1.2.1.4. Phân nhóm và phân đoạn.
Kỹ thuật phân nhóm và phân đoạn là những kỹ thuật phân chia dữ liệu sao
cho mỗi phần hoặc mỗi nhóm giống nhau theo một tiêu chuẩn nào đó. Mối quan
hệ thành viên của các nhóm có thể dựa trên mức độ giống nhau của các thành viên
và từ đó xây dựng nên các luật ràng buộc giữa các thành viên trong nhóm. Một kỹ
thuật phân nhóm khác là xây dựng nên các hàm đánh giá thuộc tính của các thành
phần như là hàm của các tham số của các thành phần. Kỹ thuật này được gọi là kỹ
thuật phân hoạch tối ưu.
Một trong những ứng dụng của kỹ thuật phân nhóm theo độ giống nhau là
cơ sở dữ liệu khách hàng để phân nhóm khách hàng theo các tham số và các nhóm
thuế tối ưu có được khi thiết lập biểu thuế bảo hiểm.
Mẫu đầu ra của quá trình khai phá dữ liệu sử dụng kỹ thuật này là các tập
mẫu chứa dữ liệu có chung những tính chất nào đó được phân tách từ cơ sở dữ
liệu. Khi các mẫu được thiết lập, chúng có thể được sử dụng để tái tạo các tập dữ
liệu dễ hiểu hơn, đồng thời cũng cung cấp các nhóm dữ liệu cho các hoạt động
12


cũng như công việc phân tích. Đối với cơ sở dữ liệu lớn, việc lấy ra các nhóm này

là rất quan trọng.
1.2.1.5. Mạng neural.
Mạng neural là một phương pháp khai phá dữ liệu phát triển dựa trên cấu
trúc toán học với khả năng học trên mô hình hệ thần kinh con người.
Mạng neural có thể đưa ra ý nghĩa từ các dữ liệu phức tạp hoặc không chính
xác và có thể được sử dụng để chiết suất các mẫu và phát hiện xu hướng quá phức
tạp mà con người cũng như các kỹ thuật máy tính khác không thể phát hiện được.
Một trong những ưu điểm phải kể đến của mạng neural 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 được cho nhiều các bài
toán khác nhau đáp ứng được các nhiệm vụ đặt ra của khai phá dữ liệu như phân
lớp, phân nhóm, mô hình hoá, dự báo,…
Mẫu chiết suất bằng mạng neural được thể hiện ở các nút đầu của mạng.
Mạng neural sử dụng các hàm số chứ không sử dụng các hàm biểu tượng để tính
mức tích cực của các nút đầu ra và cập nhật các trọng số của nó.
Đặc điểm của mạng neural là không cần gia công dữ liệu nhiều trước khi
bắt đầu quá trình học như các kỹ thuật khác. Tuy nhiên để có thể sử dụng mạng
neural có hiệu quả cần phải xác định các yếu tố khi thiết kế mạng như:
-

Mô hình mạng là gì?

-

Mạng cần bao nhiêu nút?

-

Khi nào thì việc học dừng?
Ngoài ra còn có rất nhiều bước quan trọng cần phải làm để tiền xử lý dữ


liệu trước khi đưa vào mạng neural để mạng có thể hiểu được.
Mạng neural được đóng gói với những thông tin trợ giúp của các chuyên
gia đáng tin cậy và được họ đảm bảo các mô hình này làm việc rất tốt. Sau khi
học, mạng được coi là một chuyên gia trong lĩnh vực thông tin mà nó vừa được
học.

1.2.1.6. Giải thuật di truyền.
Đây là phương pháp không chỉ phục vụ phát hiện tri thức mà còn phục vụ
rất nhiều bài toán khác. Ví dụ bài toán tối ưu hoá và lập lịch. Tư tưởng của thuật
13


toán là áp dụng quy luật của sự chọn lọc tự nhiên. Người ta mô phỏng tập hợp dữ
liệu ban đầu bằng kí tự nhị phân và gọi là những quần thể xuất phát. Bằng các thao
tác lai ghép, đột biến chúng ta biến đổi quần thể gene ban đầu và loại bỏ đi một số
gene làm cho số lượng gene trong quần thể là không thay đổi. Một hàm thích nghi
được xây dựng để xác định mức độ thích nghi của quần thể theo các giai đoạn.
Quá trình tiến hoá làm cho các quần thể thích nghi ngày càng cao. Về mặt lý
thuyết giải thuật di truyền cho ta lời giải tối ưu toàn cục (khác với phương pháp
mạng neural). Tuy nhiên, người ta cũng hạn chế lời giải với một mức độ thích nghi
nào đó để hạn chế số lượng các bước xây dựng quần thể.
Nói theo một nghĩa rộng thì giải thuật di truyền mô phỏng lại hệ thống tiến
hoá trong tự nhiên, chính xác hơn là các giải thuật chỉ ra tập các cá thể được hình
thành, được ước lượng và biến đổi như thế nào. Ví dụ như xác định xem làm thế
nào để lựa chọn các cá thể tạo giống và lựa chọn các cá thể nào để loại bỏ.
Giải thuật di truyền là một giải thuật tối ưu hoá, nó được sử dụng rất rộng
rãi trong việc tối ưu hoá các kỹ thuật khai phá dữ liệu trong đó có kỹ thuật mạng
Neural. Sự liên hệ của nó với các giải thuật khai phá dữ liệu là ở chỗ tối ưu hoá là
cần thiết để xác định các giá trị tham số nào tạo ra các luật tốt nhất.
1.2.2. Lựa chọn các kỹ thuật khai phá.

Các kỹ thuật khai phá dữ liệu tự động mới chỉ ở giai đoạn phát triển ban
đầu. Hiện nay người ta vẫn chưa đưa ra được một tiêu chuẩn nào trong việc quyết
định sử dụng phương pháp nào vào trong trường hợp nào thì hiệu quả.
Hầu hết các kỹ thuật về khai phá dữ liệu đều là mới trong các lĩnh vực. Hơn
nữa lại có rất nhiều kỹ thuật được sử dụng cho nhiều bài toán khác nhau. Vì vậy
câu hỏi dùng kỹ thuật nào để khai phá không phải là đơn giản. Mỗi phương pháp
đều có những điểm mạnh và điểm yếu riêng của nó, nhưng đa số các điểm yếu đều
có thể khắc phục .
Vậy phải làm như thế nào để áp dụng kỹ thuật một cách đơn giản nhất, dễ
sử dụng, để không cảm thấy sự phức tạp vốn có của kỹ thuật đó và vấn đề là tất cả
các mẫu tìm được đều đáng quan tâm? Đây chính là vấn đề quan trọng đối với một
hệ thống khai phá dữ liệu. Hệ thống khai phá có thể sinh ra hàng nghìn mà thậm
chí có thể hàng triệu mẫu hoặc luật, do vậy với câu hỏi trên thì câu trả lời là: Chỉ
14


có một phần nhỏ trong các các luật là đáng quan tâm và hữu ích với người sử
dụng.
Có một vài câu hỏi thường đặt ra đối với một hệ thống khai phá dữ liệu là:
1. Cái gì tạo ra các mẫu quan tâm?
2. Hệ thống khai phá có thể sinh ra được tất cả các mẫu quan tâm không?
3. Hệ thống khai phá có thể chỉ sinh ra các mẫu quan tâm không?
Để trả lời câu hỏi này ta nên quan tâm đến sự gợi ý sau:
Đối với câu hỏi 1: Mẫu l đáng quan tâm nếu:
 Dễ hiểu đối với con người.
 Hợp lệ hoặc dữ liệu được kiểm tra với độ chắc chắn nào đó.
 Có khả năng (tiềm năng) hữu ích.
 Mới lạ.
Mẫu cũng là đáng quan tâm nếu nó là giả thiết hợp lệ được người dùng xác
nhận. Mẫu quan tâm luôn chứa đựng sự hiểu biết (tri thức).

Có vài độ đo cho các mẫu quan tâm. Nó dựa trên cấu trúc của mẫu đã khai
phá và thống kê chúng. Chẳng hạn độ đo của luật kết hợp dạng XY là độ hỗ trợ
và độ tin cậy của luật. Cụ thể người ta định nghĩa là xác suất P(X U Y) và xác suất
P(X/Y).
Nhìn chung các độ đo này có thể được người dùng điều khiển.
Đối với câu hỏi thứ 2: Có thể tạo ra được tất cả các mẫu đáng quan tâm
không? Vấn đề này liên quan đến tính hoàn thiện của thuật toán khai phá. Nó
thường không thực hiện được và không có khả năng đối với các hệ thống khai phá
dữ liệu để sinh ra tất cả các mẫu có thể có, có thể tồn tại. Thay cho điều đó người
ta tập trung vào mục tiêu tìm kiếm. Khai phá luật kết hợp là một ví dụ, ở đó người
ta sử dụng các độ đo có thể đảm bảo khai phá trọn vẹn, có nghĩa là với ngưỡng độ
hỗ trợ và độ tin cậy nhỏ nhất xác định trước thì có thể tìm được.
Đối với câu hỏi thứ 3: Hệ thống khai phá có thể chỉ sinh ra các mẫu cần
quan tâm không? Đây chính là vấn đề tối ưu trong khai phá dữ liệu. Vấn đề này
còn là thách thức rất lớn đối với các nhà khoa học trong lĩnh vực khai phá dữ liệu.

15


Chương 2
KHAI PHÁ DỮ LIỆU BẰNG LUẬT KẾT HỢP
Khai phá dữ liệu bằng luật kết hợp là một phương pháp quan trọng trong
khai phá dữ liệu. Nó được ra đời và phát triển mạnh mẽ trong những năm gần đây.
Lần đầu tiên được Rakesh Agrawal, Tomasz Imielinski, Arun Swami đề xuất năm
1993. Sau đó năm 1996 được Rakesh Agrawal, Heikki Mannila, Ramakrishnan
Srikant, Hannu Toivonen, A.Inkeri Verkamo tiếp tục phát triển và cải tiến. Đến
nay những nghiên cứu về luật kết hợp tập trung xây dựng thuật toán khai phá luật
kết hợp mới, hiệu quả hoặc cải tiến, phát triển các thuật toán để hiệu quả hơn.
2.1. Ý nghĩa của luật kết hợp.
Luật kết hợp là những luật có dạng như:

- 70% khách hàng mua đường thì mua thêm sữa, 30% giao dịch có mua cả
đường và sữa,
- 70% bệnh nhân có hút thuốc lá và sống ở ven vùng ô nhiễm thì bị ung thư
phổi, trong đó 25% số bệnh nhân vừa hút thuốc lá, sống ven vùng ô nhiễm vừa bị
ung thư phổi.
Ở đây vế trái (tiền đề) của luật là: “Mua đường”, “hút thuốc lá và sống ven
vùng ô nhiễm”, còn “mua sữa” và “ung thư phổi” là vế phải (kết luận) của luật.
Những con số: 30%, 25% là độ hỗ trợ của luật (support - Số phần trăm giao
dịch chứa cả vế trái lẫn vế phải), còn 70% và 75% là độ tin cậy của luật
(confidence - Số phần trăm các giao dịch thoả mãn vế trái thì cũng thoả mãn vế
phải).
Ta thấy tri thức đem lại bởi luật kết hợp ở dạng trên có một sự khác biệt cơ
bản so với thông tin thu được từ các câu lệnh truy vấn dữ liệu thông thường. Đó
16


thường là những tri thức, những mối liên hệ chưa được biết trước và mang tính dự
báo đang tiềm ẩn trong dữ liệu. Những tri thức này không đơn giản chỉ là kết quả
của các phép nhóm, tính tổng, sắp xếp mà là kết quả của một quá trình tính toán
phức tạp và tốn nhiều thời gian.
Tuy luật kết hợp là dạng luật khá đơn giản nhưng lại mang rất nhiều ý
nghĩa. Thông tin mà dạng luật này đem lại là rất đáng kể và hỗ trợ không nhỏ
trong quá trình ra quyết định. Tìm kiếm được những luật kết hợp quý hiếm và
mang nhiều thông tin từ cơ sở dữ liệu tác nghiệp là một trong những hướng tiếp
cận chính của lĩnh vực khai phá dữ liệu. Đây chính là một động lực không nhỏ
thúc đẩy việc tập trung nghiên cứu của nhiều nhà tin học.
2.2. Bài toán khai phá dữ liệu bằng luật kết hợp.
2.2.1. Phát biểu bài toán và các pha thực hiện.
Cho I={i1, i2, ... , in} là tập gồm n mục (thuộc tính).
T={t1, t2, ... ,tm} là tập gồm m giao dịch (bản ghi). Mỗi giao dịch được định

danh bởi TID (Transaction Identification).
Cho ∂ là một quan hệ nhị phân trên I và T (hay   IxT ).
Nếu mục i xuất hiện trong giao dịch t thì ta viết (i,t) .
Một cơ sở dữ liệu D, về mặt hình thức chính là một quan hệ nhị phân ∂ như
trên. Về ý nghĩa, một cơ sở dữ liệu là một tập các giao dịch, mỗi giao dịch t là một
tập mục: t  2I (với 2I là tập các tập con của I)i
Sau đây là một ví dụ về cơ sở dữ liệu quan hệ (dạng giao dịch):
I = {A, C, D, T, W}, T = {1, 2, 3, 4, 5, 6 }.
Bảng 2.1: Ví dụ về một cơ sở dữ liệu giao dịch.
Định danh các giao

Tập mục

dịch (TID)

(ITEMSET)

1

A

2
3

C
C

A

C


T
D

W
W

T

W
17


4

A

C

D

5

A

C

D

T


C

D

T

6

W
W

X I được gọi là tập mục (itemset). Độ hỗ trợ (support) của một tập mục X
được kí hiệu là s(X) – là phần trăm số giao dịch trong cơ sở dữ liệu chứa X. Một
tập mục X được gọi là tập mục phổ biến nếu độ hỗ trợ của nó lớn hơn hoặc bằng
một ngưỡng minsup nào đó được xác định bởi người sử dụng: s(X)  minsup.
Bảng 2.2 sẽ liệt kê tất cả các tập mục phổ biến (frequent – itemset) trong cơ
sở dữ liệu cho ở bảng 2.1 với minsup=50%.
Bảng 2.2
Các tập mục phổ biến

Độ hỗ trợ

C

100%

W, CW

83%


A, D, T, AC, AW, CD, CT, ACW

67%

AT, DW, TW, ACT, ATW, CDW, CTW, ACTW

50%

Một số khái niệm cơ bản
 Luật kết hợp (Association Rule): Một luật kết hợp là một phát biểu dạng
XY, trong đó X và Y là tập mục thoả mãn điều kiện XI, Y I, X  Y = .
Đối với luật kết hợp XY, X gọi là tiên đề, Y gọi là kết quả của luật.
 Độ hỗ trợ của một tập mục (itemset): Độ hỗ trợ (Support) của một tập mục
X trong tập các tác vụ D, kí hiệu: supp(X) là tỷ số giữa các tác vụ T (của D) chứa
X và tổng số các tác vụ của D (hay số phần trăm của các tác vụ trong D chứa X).

sup p( X ) 

T  D T  X 
D
18


 Độ hỗ trợ của một tập mục có giá trị giữa 0 và 1, tức là 0≤supp(X)≤1 với
mọi tập mục X.
 Tập mục phổ biến (frequent itemset): Tập mục X mà thoả mãn điều kiện:
supp(X) ≥ minsup (với minsup là một giá trị cho trước) được gọi là tập mục phổ
biến với độ hỗ trợ cực tiểu minsup.
 Độ hỗ trợ của một luật (Support): Cho luật r = XY, độ hỗ trợ của luật r

kí hiệu là supp(r) được xác định như sau: supp(r) = supp(XY).
 Độ tin cậy của một luật (confidence): Luật r=XY có độ tin cậy c trong D
nếu c là số phần trăm các tác vụ trong D mà chứa X thì cũng chứa Y. Hay đó chính
là xác suất có điều kiện P(Y/X). Ta kí hiệu độ tin cậy của luật r là confi(r). Độ tin
cậy của một luật cũng có giá trị giữa 0 và 1.
Supp(XY) = P(XY)
Conf(XY) = P(Y/X) = supp(XY) /supp(X)
 Luật kết hợp mạnh (strong): Các luật thoả mãn cả hai ngưỡng là độ hỗ trợ
cực tiểu và độ tin cậy cực tiểu được gọi là luật kết hợp mạnh, tức là:
Supp(XY) = P(XY)  minsup
Conf(XY) = P(Y/X) = supp(XY) /supp(X)  minconf
Người ta thường biểu diễn bằng phần trăm thay cho các giá trị từ 0 đến 1.
Bài toán khai phá luật kết hợp (ở dạng đơn giản nhất) có thể phát biểu như
sau:
Cho một cơ sở dữ liệu D: Độ hỗ trợ tối thiểu bằng minsup, độ tin cậy tối
thiểu bằng minconf. Hãy tìm tất cả các luật kết hợp dạng X Y thoả mãn độ hỗ
trợ của luật s(X  Y)  minsup và độ tin cậy của luật là:
c(X Y) = s(X  Y) / s(X)  minconf.
Hầu hết các thuật toán được đề xuất để khai phá dữ liệu nhờ luật kết hợp
đều theo hướng chia bài toán thành hai pha cụ thể như sau:

19


Pha 1: Tìm tất cả các tập mục phổ biến từ cơ sở dữ liệu, tức là tìm tất cả các tập
mục X thoả mãn s(X)  minsup. Đây là pha tốn khá nhiều thời gian của CPU và
thời gian ra vào ổ đĩa.
Pha 2: Sinh các luật tin cậy từ các tập phổ biến đã tìm thấy ở pha thứ nhất. Pha
này tương đối đơn giản và tốn kém ít thời gian so với pha 1. Nếu X là tập phổ biến
c


 X \ X ' , với X’ là tập con khác
thì luật kết hợp sinh ra từ X có dạng X ' 
rỗng của tập X, X \ X’ là hiệu của 2 tập hợp, c là độ tin cậy của luật thoả mãn điều
kiện sau: c ≥ minconf.
2.2.2.Ví dụ.
Cơ sở dữ liệu D được cho trong bảng 2.3 sau:
Bảng 2.3- Cơ sở dữ liệu giao dịch D
Định danh các giao

Tập mục

dịch (TID)

(Itemset)

T1

A

T2
T3

C

D

B
A


B

T4

B

T5

B

E
C

E
E
D

F

Như vậy: Thông qua bảng 2.3 ta rút ra các thông số cho trong bảng như sau:
-

Số các tác vụ: 5

-

Số các mục : 6
Khi đó ta xác định được độ hỗ trợ của các tập mục, cụ thể cách tính độ hỗ
trợ của mục A là:


-

Số tác vụ có chứa mục A là 2.

-

Số tác vụ trong cơ sở dữ liệu là 5.
Do đó: supp(A)=2/5=40%
Bảng sau minh hoạ độ hỗ trợ của các tập mục đối với dữ liệu ở bảng 2.3

20


Bảng 2.4: Độ hỗ trợ của các tập mục đối với CSDL ở bảng 2.3
Tập mục

Số tác vụ chứa mục

Độ hỗ trợ

A

2

40%

B

4


80%

C

2

40%

D

2

40%

E

3

60%

F

1

20%

A,C

2


40%

A,B

1

20%

B,D

1

20%

C,D

1

20%

A,B,C

1

20%

A,B,E

1


20%

A,C,D

1

20%

B,D,F

1

20%

A,B,C,E

1

20%

Với cách tính độ tin cậy của luật đã nêu ở trên, ta hoàn toàn xác định được
độ tin cậy của các luật sinh ra. Cụ thể, đối với tập mục: A, C thì ta có luật kết hợp
là A→C. Trong trường hợp này thì:
conf(AC)=(số các tác vụ chứa cả A và C) / (Số các tác vụ chứa A)
=2 / 2
21


=1
= 100%

Bảng 2.5 dưới đây xác định độ tin cậy của một số luật được sinh ra từ CSDL D đã
cho ở bảng 2.3 ở trên.
Bảng 2.5: Độ tin cậy của một số luật kết hợp sinh ra từ bảng 2.3
Luật kết hợp

Độ tin cậy

AC

100%

AB

50%

BD

25%

CD

50%

A,B  C

100%

A ,C B

50%


C,B  A

100%

2.3. Một số tính chất của tập mục phổ biến và luật kết hợp.
2.3.1.Một số tính chất với tập mục phổ biến:
(1) Tính chất 1 - Độ hỗ trợ của tập con
Nếu A  B với A,B là tập mục phổ biến thì supp(A)  supp(B).
Điều này là hiển nhiên vì tất cả các tác vụ trong D hỗ trợ B thì cũng hỗ trợ A.
(2) Tính chất 2:
Một tập chứa một tập không phổ biến thì cũng là một tập không phổ biến.
Nếu tập A không đủ độ hỗ trợ cực tiểu, tức supp(A) < minsup thì tập B chứa
A cũng không là tập phổ biến vì:
supp(B)  supp(A) < minsup (theo tính chất 1)
(3) Tính chất 3:
22


Các tập con của tập phổ biến cũng là tập phổ biến.
Nếu B là tập phổ biến trong D tức: supp(B)  minsup. Khi đó một tập con A
của B cũng là phổ biến vì supp(A)  supp(B)  minsup (theo tính chất 1). Trường
hợp đặc biệt, nếu tập A={i1,i2,..., ik} là tập phổ biến thì mọi tập con có (k-1) mục
của nó cũng là phổ biến. Lưu ý ngược lại là không đúng.
2.3.2.Một số tính chất với luật kết hợp:
(1) Tính chất 1- Không hợp các luật kết hợp
Nếu X  Z và Y Z trong D thì không nhất thiết XY Z là đúng.
Xét trường hợp XY= và các tác vụ trong D hỗ trợ Z nếu chúng hỗ trợ
chỉ mỗi X hoặc Y, khi đó luật XY Z có độ tin cậy là 0%.
Tương tự: X  Y  X  Z  X  Y  Z

(2) Tính chất 2 - Không tách luật.
Nếu X  Y Z thì X  Z và Y  Z chưa chắc đã xảy ra.
Ví dụ: Trong trường hợp Z có mặt trong một tác vụ khi và chỉ khi cả X và Y
cùng có mặt, tức là supp(X Y)=supp(Z), nếu độ hỗ trợ của X và Y đủ lớn hơn
supp(XY) hay supp(X)>supp(XY) và supp(Y)>supp(XY) thì hai luật riêng
biệt sẽ không đủ độ tin cậy.
Tuy nhiên, đảo lại: X  Y  Z  X  Y  X  Z
(3) 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à Y  Z chúng ta không thể suy ra X  Z.
Ví dụ: Giả sử T(X)T(Y)T(Z) tương ứng là các tập tác vụ chứa X,Y,Z và
độ tin cậy cực tiểu là minconf, conf(XY)=conf(YZ)=minconf.
thế thì: conf(XZ)=minconf2độ tin cậy.
(4) Tính chất 4:

23


Nếu luật A(L-A) không thoả mãn độ tin cậy cực tiểu thì luật B(L-B)
cũng không thoả mãn với các tập mục L,B,A và BA.
Vì supp(B)supp(A) (Theo tính chất 1 và định nghĩa độ tin cậy, chúng ta
nhận được.

conf(B  (L  B)) 

supp(L) supp(L)

 minconf
supp(B) supp( A)


Cũng như vậy: Nếu có luật (L-C)C thì ta cũng có luật (L-D)D, với
D C và D.
Vì D  C nên (L-D)  (L-C), do đó supp(L-D)  supp(L-C)



sup p ( L)
sup p( L)

 min conf
sup p ( L  D ) sup p ( L  C )

Tức là: conf((L-D)D  conf((L- C)  C)  minconf.
Các tính chất này sẽ được sử dụng trong thuật toán mô tả ở các phần sau.
2.2.4. Các loại luật kết hợp.
Trong thực tế có nhiều loại luật kết hợp, các luật kết hợp có thể có các dạng
khác nhau dựa trên các cơ sở sau:
 Luật kết hợp Boolean: là các luật dựa trên các kiểu của các giá trị trong
luật. Hay luật kết hợp quan tâm tới sự có mặt hay không có mặt của các mục. Ví
dụ luật:
“Máy tính  Phần mềm quản lý tài chính” (R1)
 Các luật kết hợp định lượng: Là luật miêu tả sự quan hệ giữa các thuộc tính
hoặc các mục định lượng. Trong các luật này, các giá trị định lượng của các mục
hoặc các thuộc tính là được phân chia thành các khoảng. Luật sau là một ví dụ luật
kết hợp định lượng, ở đó X là biến biểu diễn khách hàng:
Tuổi( X, “30...40”)Thunhập(X, “42T...50T”)Mua(X, “ô tô”)(R2).
Ở đây thuộc tính định lượng là tuổi và thu nhập.
24



 Luật kết hợp đơn chiều: là luật dựa trên chiều của dữ liệu chứa trong luật.
Cụ thể là nếu các mục hoặc các thuộc tính trong luật hợp tham chiếu đến chỉ một
chiều.
Ví dụ: Luật (R1) ở trên có thể viết lại:
Mua(X, “Máy tính”)Mua(X, “Phần mềm quản lý tài chính”) (R3)
Luật này là luật kết hợp đơn chiều vì nó chỉ đề cập đến một chiều đó là Mua.
 Luật kết hợp đa chiều: là luật kết hợp dựa trên chiều của dữ liệu chứa
trong luật. Nếu luật tham chiếu đến nhiều hơn một chiều như Mua, Loại khách
hàng,… thì được gọi là luật kết hợp đa chiều.
Ví dụ: Luật (R2) ở trên có thể coi là luật kết hợp đa chiều vì nó chứa 3
chiều là tuổi, thu nhập, mua.
 Luật kết hợp với các mức trừu tượng khác nhau: Là các luật kết hợp dựa
trên mức độ trừu tượng chứa trong luật. Một số phương pháp khai phá luật kết hợp
có thể tìm các luật với các mức độ trừu tượng khác nhau.
Ví dụ: Giả sử rằng các luật khai phá được bao gồm các luật sau:
Tuổi(X, “30...39”)Mua(X, “máy tính sách tay”)

(R4)

Tuổi(X, “30...39”)Mua(X, “máy tính ”)

(R5)

Trong các luật (R4) và (R5), các mục đã mua là tham chiếu đến các mức
trừu tượng khác nhau. Ví dụ: “máy tính” là sự trừu tượng cao hơn của “máy tính
xách tay”.
Tập luật kết hợp khai phá được gồm các luật kết hợp đa mức. Nếu trong các
luật không tham chiếu đến các mục hoặc các thuộc tính với các mức trừu tượng
khác nhau thì tập đó chứa các luật kết hợp đơn mức.
Khai phá luật kết hợp có thể mở rộng để phân tích sự tương quan, ở đó sự

có mặt hoặc không có mặt của mối tương quan các mục có thể là xác định. Nó có
thể mở rộng để khai phá các mẫu cực đại (mẫu phổ biến cực đại) và các tập mục

25


×