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

Luật kết hợp mờ và ứng dụng đối với một số bài toán dự báo

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 (1.65 MB, 72 trang )

ĐẠI HỌC THÁI NGUYÊN
...

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BÙI VĂN THẮNG

LUẬT KẾT HỢP MỜ VÀ ỨNG DỤNG
ĐỐI VỚI MỘT SỐ BÀI TOÁN DỰ BÁO

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

THÁI NGUN - 2014
Số hóa bởi Trung tâm Học liệu

/>

i

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BÙI VĂN THẮNG

LUẬT KẾT HỢP MỜ VÀ ỨNG DỤNG
ĐỐI VỚI MỘT SỐ BÀI TOÁN DỰ BÁO

Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: 60 48 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH



HƢỚNG DẪN KHOA HỌC: TS. VŨ VINH QUANG

THÁI NGUYÊN - 2014

Số hóa bởi Trung tâm Học liệu

/>

ii

LỜI CAM ĐOAN
Tơi xin cam đoan đây là cơng trình nghiên cứu của riêng tôi dưới sự hướng dẫn
trực tiếp của TS. Vũ Vinh Quang.
Mọi trích dẫn sử dụng trong báo cáo này đều được ghi rõ nguồn tài liệu tham
khảo theo đúng qui định.
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin chịu
hoàn toàn trách nhiệm.
Thái Nguyên, ngày27tháng8năm 2014
Tác giả

Bùi Văn Thắng

Số hóa bởi Trung tâm Học liệu

/>

iii

MỤC LỤC

LỜI CAM ĐOAN ...........................................................................................................i
MỤC LỤC ..................................................................................................................... ii
CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ....................................................................... iii
DANH MỤC BẢNG .....................................................................................................iv
DANH MỤC HÌNH VẼ.................................................................................................v
MỞ ĐẦU ......................................................................................................................... 1
CHƢƠNG 1. MỘT SỐ KIẾN THỨC CƠ BẢN VỀ KHAI PHÁ DỮ LIỆU ............3
1.1. Khái niệm cơ bản về khai phá dữ liệu ............................................................... 3
1.1.1.

Giới thiệu .....................................................................................................3

1.1.2.

Khái niệm khai phá dữ liệu .........................................................................4

1.2. Một số hƣớng nghiên cứu trong khai phá dữ liệu ............................................5
1.2.1.

Một số hướng nghiên cứu ...........................................................................5

1.2.2.

Các dạng dữ liệu có thể khai phá ................................................................ 8

1.3. Nhiệm vụ chính của khai phá dữ liệu ................................................................ 8
1.3.1.

Phân lớp (Classification) .............................................................................9


1.3.2.

Hồi quy (Regression) ..................................................................................9

1.3.3.

Khai phá luật kết hợp (Association rule) ....................................................9

1.3.4.

Gom nhóm (Clustering) ..............................................................................9

1.3.5.

Tổng hợp (Summarization) .......................................................................10

1.3.6.

Mơ hình ràng buộc (Dependency modeling) ............................................10

1.3.7.

Dị tìm biến đổi và độ lệch (Change and Deviation Dectection) ..............10

1.4. Bài toán khai phá luật kết hợp .........................................................................10
1.4.1.

Bài toán .....................................................................................................10

1.4.2.


Một số thuật toán cơ bản ...........................................................................15

1.5. Logic mờ .............................................................................................................23
1.5.1.

Định nghĩa tập mờ .....................................................................................23

1.5.2.

Độ cao, miền xác định và miền tin cậy của tập mờ ..................................25

1.5.3.

Các phép toán logic trên tập mờ................................................................ 26

1.5.4.

Biến ngơn ngữ và giá trị của nó ................................................................ 27

1.6. Kết luận ..............................................................................................................28
Số hóa bởi Trung tâm Học liệu

/>

CHƢƠNG 2. KHAI PHÁ LUẬT KẾT HỢP MỜ ....................................................30
2.1. Rời rạc hóa thuộc tính dựa vào tập mờ .......................................................... 30
2.1.1.

Luật kết hợp với thuộc tính số...................................................................30


2.1.2.

Các phương pháp rời rạc hóa ....................................................................30

2.2. Luật kết hợp mờ ................................................................................................ 33
2.2.1.

Rời rạc hóa thuộc tính mờ .........................................................................33

2.2.2.

Luật kết hợp mờ ........................................................................................ 35

2.3. Thuật toán khai phá luật kết hợp mờ dựa trên thuật toán Apriori .............37
2.4. Khai phá luật kết hợp mờ dựa trên thuật toán Fp-Growth .......................... 40
2.4.1.

Thuật toán xây dựng cây CUFP-Tree ....................................................... 40

2.4.2.

Thuật tốn tìm tập phổ biến FP-Growth dựa trên cậy CUFP-Tree ...........41

2.5. Ví dụ thử nghiệm ............................................................................................... 42
2.5.1.

Xây dựng cây CUFP-Tree .........................................................................42

2.5.2.


Thuật tốn tìm tập phổ biến ......................................................................45

2.6. Kết luận ..............................................................................................................46
CHƢƠNG 3. ỨNG DỤNG KHAI PHÁ DỮ LIỆU TRONG MƠ HÌNH DỰ
BÁO .............................................................................................................................. 48
3.1. Mơ hình một số bài tốn dự báo ......................................................................48
3.1.1.

Giới thiệu ...................................................................................................48

3.1.2.

Một mơ hình dự báo là gì? ........................................................................49

3.1.3.

Các kỹ thuật mơ hình hóa dự báo phổ biến ...............................................51

3.2. Xây dựng các luật kết hợp mờ trong mơ hình dự báo ...................................55
3.3. Một số kết quả thực nghiệm .............................................................................55
3.3.1.

Môi trường thử nghiệm .............................................................................55

3.3.2.

Kết quả thử nghiệm với CSDL gồm 20 giao dịch ....................................60

3.3.3.


Kết quả thử nghiệm ...................................................................................61

PHẦN KẾT LUẬN ......................................................................................................62
TÀI LIỆU THAM KHẢO........................................................................................... 63

Số hóa bởi Trung tâm Học liệu

/>

iii

CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
CNTT

Công nghệ thông tin

CSDL

Cơ sở dữ liệu

KPDL

Khai phá dữ liệu

KDD

Knowledge Discovery in Databases

ItemSet

Item

Tập mục
Mục

Số hóa bởi Trung tâm Học liệu

/>

iv

DANH MỤC BẢNG
Bảng 1.1: Cơ sở dữ liệu giao tác ...................................................................................11
Bảng 1.2: Kết quả thuật toán Apriori ............................................................................16
Bảng 1.3: Những biến đổi dữ liệu của FP-Growth ........................................................ 19
Bảng 2.1: CSDL thống kế dân số của 10 gia đình [21] .................................................31
Bảng 2.2: Rời rạc hóa thuộc tính số rời rạc hữu hạn hoặc thuộc tính hạng mục ..........31
Bảng 2.3: Rời rạc hóa thuộc tính số“Tuổi" ...................................................................32
Bảng 2.4: Bảng các ký hiệu sử dụng trong thuật toán khai phá luật kết hợp mờ ..........38
Bảng 2.5: Bảng các ký hiệu sử dụng trong thuật toán ...................................................40
Bảng 2.6: Cơ sở dữ liệu mờ ........................................................................................... 42
Bảng 2.7: Kết quả sau khi thực hiện Bước 1 .................................................................42
Bảng 2.8: Header_Table ................................................................................................ 43
Bảng 2.9: CSDL mờ sau khi đã cập nhật ......................................................................43
Bảng 2.10: Tập phổ biến ............................................................................................... 46
Bảng 3.1: Giao tác ví dụ trong CSDL FAM95 .............................................................. 56
Bảng 3.2: CSDL giao tác Bảng 3.1 sau khi mờ hóa ......................................................57

Số hóa bởi Trung tâm Học liệu


/>

v

DANH MỤC HÌNH VẼ
Hình 1.1: Q trình khai phá tri thức trong CSDL .......................................................... 3
Hình 1.2: FP-tree của dữ liệu Bảng 1.1 .........................................................................20
Hình 1.3: Thành phần của FP-tree .................................................................................21
Hình 1.4: Hàm thuộc

của tập kinh điển A ............................................................. 23

Hình 1.5: Hàm thuộc của tập mờ B ...............................................................................24
Hình 1.6: Hàm thuộc của tập mờ C ...............................................................................24
Hình 1.7: Hàm thuộc F(x) có mức chuyển đổi tuyến tính ..........................................25
Hình 1.8: Mơ tả giá trị ngơn ngữ bằng tập mờ .............................................................. 27
Hình 2.1: Hàm thuộc của các tập mờ“Tuổi_trẻ”,“Tuổi_trung_niên”, và“Tuổi_già" ....33
Hình 2.2: Kết quả xử lý giao dịch đầu tiên....................................................................44
Hình 2.3: Kết quả xử lý giao dịch đầu tiên....................................................................45
Hình 2.4: Cây CUFP-TREE .......................................................................................... 45
Hình 3.1: Hai khách hàng và các đặc tính đầu vào của họ. ...........................................50
Hình 3.2: Dữ liệu khách hàng gồm các đặc tính đầu vào và kết quả đầu ra được cung
cấp cho một mơ hình dự báo trong q trình huấn luyện ..............................................50
Hình 3.3: Khung nhìn hai chiều của một siêu phẳng tối ưu chia tách dữ liệu và các vec
tơ hỗ trợ ......................................................................................................................... 52
Hình 3.4: Khung nhìn hai chiều về kết quả của việc phân cụm một tập dữ liệu đầu vào
thành hai cụm: các hình tam giác màu xanh lá cây và các hình vng màu đỏ ............53
Hình 3.5: Mạng nơ-ron hướng thuận với tầng đầu vào, tầng ẩn và tầng đầu ra............54
Hình 3.6: Giao diện chương trình, 20 giao dịch mờ......................................................60
Hình 3.7: Các tập phổ biến tìm được.............................................................................60

Hình 3.8: Luật kết hợp khai phá ....................................................................................61
Hình 3.9: Kết quả thử nghiệm với hai thuật toán Apriori mờ và thuật tốn CUFP ......61

Số hóa bởi Trung tâm Học liệu

/>

1

MỞ ĐẦU
1. Đặt vấn đề
Khai phá dữ liệu là một lĩnh vực nghiên cứu quan trọng trong lý thuyết về cơ sở
dữ liệu, có nhiều ứng dụng trong đời sống xã hội. Mục đích chính là nhằm phát hiện
những thơng tin mới, các luật mới từ cơ sở dữ liệu đã có hay một cách tổng quát hơn là
từ các kho dữ liệu. Rất nhiều lĩnh vực ứng dụng trong thực tiễn đều sử dụng công cụ
khai phát dữ liệu và tìm kiếm tri thức. Trong lý thuyết về khai phá dữ liệu, khai phá
luật kết hợp đang được quan tâm nghiên cứu nhiều trên thế giới. Một số hướng nghiên
cứu đã và đang được các chuyên gia công nghệ thông tin tập chung nghiên cứu là:
nghiên cứu thiết kế các hệ mờ cho các ứng dụng cụ thể như hệ trợ giúp quyết định, hệ
điều khiển dựa trên hệ tri thức luật, hệ phân loại dựa trên hệ tri thức luật, hệ phân loại
dựa trên lập luận dựa trên hệ luật ứng dụng trong các lĩnh vực như: kinh doanh, thị
trường chứng khốn và dự đốn thị trường, cơng nghệ sinh học, giáo dục và đào tạo,…
Một số hƣớng nghiên cứu trong khai phá dữ liệu
-

Luật kết hợp nhị phân: Đây là hướng nghiên cứu đầu tiên của luật kết hợp.
Thuật tốn tiêu biểu là Apriori.

-


Luật kết hợp có thuộc tính số và thuộc tính hạng mục: Nghiên cứu các hệ
CSDL có thuộc tính số hoặc thuộc tính hạng mục bằng cách rời rạc hóa dữ
liệu cho thuộc tính số để chuyển chúng về thuộc tính nhị phân.

-

Luật kết hợp mờ: Phương pháp rời rạc hóa dữ liệu có thuộc tính số và thuộc
tính hạng mục gặp phải vấn đề“điểm biên gãy”. Để khắc phục điều này, các
nhà nghiên cứu đề xuất sử dụng lý thuyết tập mờ và xây dựng các luật kết hợp
dạng mờ.

-

Luật kết hợp có trọng số: Sử dụng phương pháp tính độ hỗ trợ cho các tập
mục dựa trên trọng số của các tập mục.

Ngồi ra, cịn một số hướng nghiên cứu: khai phá luật kết hợp song song, khai
phá luật kết hợp nhiều mức, luật kết hợp tiếp cận theo hướng tập thô,…
Luận văn tập trung nghiên cứu vào khai phá Luật kết hợp mờ và ứng dụng đối
với bài toán dự báo.
Số hóa bởi Trung tâm Học liệu

/>

2

2. Hƣớng nghiên cứu của đề tài
-

Nghiên cứu lý thuyết tập mờ.


-

Nghiên cứu khai phá dữ liệu và khai phá dữ liệu mờ trên CSDL. Tìm hiểu một
số thuật tốn trong khai phá dữ liệu: Apriori mờ, thuật toán FP Growth, thuật
toán biểu diễn dữ liệu giao dịch mờ dựa trên cây FP-Tree.

-

Cài đặt thử nghiệm một số thuật toán khai phá dữ liệu mờ và thử nghiệm trên
một số bộ dữ liệu.Đánh giá kết quả sau khi thử nghiệm.

3. Đối tƣợng nghiên cứu
-

Nghiên cứu phương pháp luận cho phép phát hiện tri thức dạng luật mờ, như
luật kết hợp mờ, luật mờ với thuộc tính có trọng số,… từ các kho dữ liệu.

-

Cơ sở lý thuyết của việc nghiên cứu lập luận xấp xỉ dựa trên lý thuyết tập mờ,
phương pháp tính tốn các thơng tin mờ, đánh giá các phương pháp để lấy
quyết định.

-

Ứng dụng luật kết hợp mờ đối với một số bài toán dự báo.

4. Kết quả đạt đƣợc
-


Tìm hiểu thuật tốn nén dữ liệu giao dịch mờ dựa trên cây FP Tree, khai phá tập
phổ biến dựa trên cây đã xây dựng. Đây là hướng nghiên cứu mới, giúp làm
giảm thời gian khai phá tập phổ biến rất nhiều so với thuật toán Apriori mờ.

-

Cài đặt thử nghiệm thuật toán Apriori mờ và thuật toán khai phá luật kết hợp
mờ dựa trên thuật toán Fp-Growth.

-

Thử nghiệm hai thuật toán trên với một số bộ dữ liệu, so sánh các kết quả đã thu
được sau khi thử nghiệm.

5. Bố cục của luận văn
Phần mở đầu
Chương 1: Một số kiến thức cơ bản về khai phá dữ liệu
Chương 2: Khai phá luật kết hợp mờ
Chương 3: Ứng dụng khai phá dữ liệu trong mơ hình dự báo
Kết luận
Tài liệu tham khảo
Số hóa bởi Trung tâm Học liệu

/>

3

CHƢƠNG 1. MỘT SỐ KIẾN THỨC CƠ BẢN VỀ KHAI PHÁ DỮ LIỆU
1.1. Khái niệm cơ bản về khai phá dữ liệu

1.1.1. Giới thiệu
Khai phá dữ liệu (data mining) là quá trình khám phá các tri thức mới và các tri
thức có ích ở dạng tiềm năng trong nguồn dữ liệu đã có. Đây là q trình cốt lõi trong
khai phá tri thức từ CSDL.
Đánh giá
mẫu và biểu
diễn tri thức

Tri
thức

Khai phá
dữ liệu
Mẫud
ữ liệu

Lựa chọn và
biến đổi
Lọc và
tích hợp

Dữ liệu
thực

Kho dữ
liệu

Dữ liệu để
khai phá


Hình 1.1.Quá trình khai phá tri thức trong CSDL

Quá trình khai phá dữ liệu trải qua 3 bước chính sau:
Bƣớc 1: Chuẩn bị dữ liệu
Do dữ liệu được thu thập từ nhiều nguồn khác nhau nên có thể có những sai sót,
dư thừa và trùng lặp. Vì vậy bước chuẩn bị dữ liệu là bước rất quan trọng. Dữ liệu sau
bước chuẩn bị này sẽ nhỏ hơn, xử lý nhanh hơn. Chuẩn bị dữ liệu bao gồm các công
đoạn sau:
-

Lọc dữ liệu (Data cleaning): Loại bỏ dữ liệu nhiễu, dữ liệu khơng thích hợp.

-

Tích hợp dữ liệu (Data integration): Tích hợp dữ liệu từ các nguồn khác nhau.

Số hóa bởi Trung tâm Học liệu

/>

4

-

Chọn dữ liệu (Data selection): Chọn những phần tửdữ liệu liên quan trực tiếp
đến nhiệm vụ.

-

Chuyển đổi dữ liệu (Data transformation): Chuyển dữ liệu về những dạng phù

hợp cho việc khai phá.
Bƣớc 2: Khai phá dữ liệu
Đây là bước mang tính tư duy của khai phá tri thức. Ở bước này cần trích xuất

thơng tin có ích, các mẫu điển hình trong dữ liệu hay các quy luật liên quan giữa các
yếu tố của dữ liệu. Có rất nhiều các kỹ thuật, thuật toán khác nhau được đề xuất ở
bước này.
Bƣớc 3: Hậu xử lý
Không phải bất cứ mẫu dữ liệu nào được trích xuất ra ở bước khai phá dữ liệu
cũng đều là mẫu hữu ích, đơi khi nó cịn bị sai lệch. Vì vậy cần phải có những tiêu
chuẩn đánh giá phù hợp để trích xuất ra các tri thức thực sự có ích. Bước nàybao gồm
2 cơng đoạn:
-

Đánh giá mẫu (Pattern evaluation): Đánh giá mẫu hoặc tri thức đã thu được.

-

Biểu diễn tri thức (Knowledge Presentation): Biểu diễn những tri thức khai phá
được để người sử dụng dễ hiểu.
Đây là q trình mang tính định tính với mục đích phát hiện tri thức và xây dựng

bài tốn tổng kết.
Những khó khăn cần giải quyết trong bài tốn KPDL là lượng dữ liệu lớn, kích
thước dữ liệu lớn, dữ liệu động và luôn tăng trưởng, các trường dữ liệu không phù hợp,
các giá trị bị thiếu, các trường dữ liệu bị thiếu,…
1.1.2. Khái niệm khai phá dữ liệu
Lĩnh vực KPDL và KDD đã cuốn hút các phương pháp, thuật toán và kỹthuật từ
nhiều chuyên ngành nghiên cứu khác nhau như học máy, thu nhận mẫu, CSDL, thống
kê, trí tuệ nhân tạo, thu nhận tri thức trong hệ chuyên gia,… nhằmhướng tới cùng một

mục tiêu thống nhất là trích lọc ra được các tri thức từ dữ liệu trong các CSDL khổng
lồ. Tính phong phú và đa dạng đó đã dẫn đến một thực trạng là tồn tại một số quan
niệm khác nhau về lĩnh vực nghiên cứu gần gũi nhất với lĩnh vực này - KDD. Với
Số hóa bởi Trung tâm Học liệu

/>

5

những gì đã trình bày ở trên, chúng ta có thể hiểu một cách sơ lược rằng KPDL là quá
trình tìm kiếm những thơng tin (tri thức) hữu ích, tiềm ẩn và mang tính dự báo trong
các tập dữ liệu lớn. Như vậy, chúng ta nên gọi quá trình này là phát hiện tri thức. Tuy
nhiên các nhà khoa học trong lĩnh vực này đồ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 q
trình phát hiện 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 suốt q 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, một số nhà nghiên
cứu lại cho rằng, KPDL chỉ là một bước trong quá trình khám phá tri thức.
Như vậy, xét ở mức tổng quan thì hai thuật ngữ này là tương đương nhau, nhưng
khi xét cụ thể thì KPDL được xem là một bước trong quá trình khám phá tri thức [7].
Khái niệm 1: Phát hiện tri thức trong CSDL (đơi khi cịn được gọi là KPDL) là
một q trình khơng tầm thường nhận ra những mẫu có giá trị, mới, hữu ích tiềm năng
và hiểu được trong dữ liệu[8].
Là lĩnh vực nghiên cứu và triển khai được phát triển nhanh chóng và rộng lớn, lại
được rất nhiều nhóm nghiên cứu tại nhiều địa điểm khác nhau trên thếgiới đồng thời
quan tâm, cho nên tồn tại rất nhiều cách tiếp cận khác nhau đối với lĩnh vực KDD. Vì lý
do đó mà trong nhiều tài liệu, các nhà khoa học trên thế giới đã sử dụng nhiều thuật ngữ
khác nhau mà chúng được coi là mang cùng nghĩa với KDD như chiết lọc tri thức
(knowledge extraction), phát hiện thông tin(information discovery), thu hoạch thông tin
(information harvesting), khai quật dữ liệu (data archaeology) và xử lý mẫu dữ liệu (data

pattern processing).
Khái niệm 2: Khai phá dữ liệu là một bước trong quá trình phát hiện tri thức
trong CSDL, thi hành một thuật toán KPDL để tìm ra các mẫu từ dữ liệu theo khn
dạng thích hợp [8].
1.2. Một số hƣớng nghiên cứu trong khai phá dữ liệu
1.2.1. Một số hƣớng nghiên cứu
Kể từ khi được R. Agrawal đề xuất vào năm 1993 [3], lĩnh vực khai phá luật kết
hợp đến nay đã được nghiên cứu và phát triển theo nhiều hướng khác nhau. Có những
Số hóa bởi Trung tâm Học liệu

/>

6

đề xuất nhằm vào 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, … Sau đây là một số hướng chính.
- 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ác nghiê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ỉ đượ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. Có nghĩa là việc mua 20 chai bia
và 1 chai bia đượ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 tốn Apriori và các biến thể của nó[4]. Đây là dạng luật đơn giản và như sau
này ta biết các dạng luật khác cũng có thể chuyển về dạng luật này bằng một số
phương pháp như rời rạc hóa, mờ hóa, … Một ví dụ về dạng luật này: “Mua bánh mì =
'yes' AND mua đường= 'yes' => mua sữa = 'yes'AND mua bơ = 'yes', với độ hỗ trợ
20% và độ tin cậy 80%”.
- Luật kết hợp có thuộc tính số và thuộc tính hạng mục (quantitative and
categorical association rule): Các thuộc tính của các CSDL thực tế có kiểu rất đa dạng
(nhị phân - binary, số - quantitative, hạng mục - categorical, …). Để phát hiện luật kết

hợp với các thuộc tính này, các nhà nghiên cứu đã đề xuất một số phương pháp rời rạc
hóa nhằm chuyển dạng luật này vềdạng nhị phân để có thể áp dụng các thuật tốn đã
có[16].
- 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 hóa các thuộc tính số (quantitative attributes), các nhà nghiên
cứu đã đề xuất luật kết hợp mờ nhằm khắc phục những 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ũi hơn với người sử dụng. Một ví dụ về dạng luật
này:“Ho khan = 'yes' AND sốt cao AND đau cơ = 'yes' AND khó thở ='yes' => Bị
nhiễm SARS = 'yes', với độ hỗ trợ 4% và độ tin cậy 85%”. Trong luật trên, điều kiện
sốt cao ở vế trái của luật là một thuộc tính đã được mờ hóa.
- Luật kết hợp nhiều mức (multi-level association rules): Ngoài các dạng luật
trên, các nhà nghiên cứu còn đề xuất một hướng nghiên cứu nữa về luật kết hợp là luật
kết hợp nhiều mức. Với cách tiếp cận này, người ta sẽ tìm kiếm thêm những luật có
dạng“Mua máy tính PC => Mua hệ điều hành AND mua phần mềm tiện ích văn
Số hóa bởi Trung tâm Học liệu

/>

7

phịng, …” thay vì chỉnhững luật q cụ thể như“Mua máy tính IBM PC => Mua hệ
điều hành Microsoft Windows AND mua Microsoft Office, …”. Rõ ràng, dạng luật
đầu là dạng luật tổng quát hóa của dạng luật sau và tổng quát hóa cũng có nhiều mức
khác nhau.
- 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 có vai trị
ngang bằng nhau. Có một số thuộc tính được chú trọng và lúc đó ta nói những thuộc
tính đó 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ề khả
năng lây nhiễm hội chứng SARS, thông tin về thân nhiệt, đường hô hấp rõ ràng là
quan trọng hơn rất nhiều so với thông tin về tuổi tác. Trong quá trình tìm kiếm luật,

chúng ta sẽ gán cho các thuộc tính thân nhiệt, đường hơ hấp các trọng số lớn hơn so
với trọng số của thuộc tính tuổi tác. Đây là một hướng nghiên cứu rất thú vị và đã
được một số nhà nghiên cứu đề xuất cách giải quyết bài tốn này. Với luật kết hợp có
thuộc tính được đánh trọng số, chúng ta sẽ khai phá được những luật mang rất nhiều ý
nghĩa, thậm chí là những luật“hiếm” (tức có độ hỗ trợ thấp, nhưng mang một ý nghĩa
đặc biệt).
- 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ình tìm kiếm
tập phổ biến từ CSDL. Người ta chứng minh rằng, chỉ cần tìm kiếm những tập phổ
biến cực đại (maximal frequent Itemsets) là đủ đại diện cho tập tất cả các tập phổ biến
[15](thuật toán MAFIA), hoặc chỉ cần tìm tập các tập phổ biến đóng (Closed Itemset)
là đủ[17]. Những thuật toán này cải thiện đáng kể vềmặt tốc độ do áp dụng được
những chiến lược cắt tỉa“tinh xảo” hơn các thuật tốn trước đó.
- Khai phá 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 với các thuật toán tuần tự, các nhà làm tin học cũng tập
trung vào nghiên cứu các thuật tốn song song cho q trình phát hiện luật kết hợp.
Nhu cầu song song hóa và xử lý phân tán là cần thiết bởi kích thước dữ liệu ngày càng
lớ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 tốn song song khác nhau đã được đề xuất, chúng có thể phụ
thuộc hoặc độc lập với cấu hình phần cứng.
Số hóa bởi Trung tâm Học liệu

/>

8

- Luật kết hợp tiếp cận theo hướng tập thô (mining association rules based on
rough set): Tìm kiếm luật kết hợp dựa trên lý thuyết tập thơ.
Ngồi ra, cịn một số hướng nghiên cứu khác về khai phá luật kết hợ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ối trực tuyến đến các kho

dữ liệu đa chiều (multidimensional data, data warehouse) thông qua công nghệ OLAP
(Online

Analysis Processing),

MOLAP

(Multidimensional

OLAP),

ROLAP

(Relational OLAP), ADO (ActiveX Data Object) for OLAP,…
1.2.2. Các dạng dữ liệu có thể khai phá
Do KPDL được ứng dụng rộng rãi nên nó có thể làm việc với rất nhiều kiểu dữ
liệu khác nhau. Sau đây là một số kiểu dữ liệu điển hình.
- CSDL quan hệ (relational databases).
- CSDL đa chiều (multidimensional structures, data warehouses).
- CSDL dạng giao dịch (transactional databases).
- CSDL quan hệ - hướng đối tượng (object-relational databases).
- Dữ liệu không gian và thời gian (spatial and temporal data).
- Dữ liệu chuỗi thời gian (time-series data).
- CSDL đa phương tiện (multimedia databases) như âm thanh (audio), hình ảnh
(image), phim ảnh (video), …
- Dữ liệu Text và Web (text database & www).
1.3. Nhiệm vụ chính của khai phá dữ liệu
Rõ ràng rằng mục đích của khai phá dữ liệu là các tri thức chiết xuất được sẽ
được sử dụng cho lợi ích cạnh tranh trên thương trường và các lợi ích trong nghiên cứu
khoa học.Do đó, ta có thể coi mục đích chính của khai thác dữ liệu sẽ là mơ tả và dự

đốn. Các mẫu mà khai phá dữ liệu phát hiện được nhằm vào mục đích này.
Dự đốn liên quan đến việc sử dụng các biến hoặc các trường trong cơ sở dữ liệu
để chiết xuất ra các mẫu là các dự đoán những giá trị chưa biết hoặc những giá trị
trong tương lai của các biến đáng quan tâm.
Mô tả tập trung vào việc tìm kiếm các mẫu mơ tả dữ liệu mà con người có thể
hiểu được.
Số hóa bởi Trung tâm Học liệu

/>

9

Để đạt được hai mục đích này, nhiệm vụ chính của khai phá dữ liệu là:
- Phân lớp (Classification).
- Hồi qui (Regression).
- Khai phá luật kết hợp (Association rule).
- Gom nhóm (Clustering).
- Tổng hợp (Summarization).
- Mơ hình ràng buộc (Dependency modeling).
- Dị tìm biến đổi và độ lệch (Change and Deviation Dectection).
1.3.1. Phân lớp (Classification)
Phân lớp là việc phân loại một mẫu dữ liệu vào một trong số các lớp đã xác
định.Mục tiêu của thuật tốn phân lớp là tìm ra các mối quan hệ nào đó giữa các thuộc
tính dự báo và thuộc tính phân lớp, từ đó sử dụng mối quan hệ này để dự báo lớp cho
các bộ dữ liệu mới khác cùng khuôn dạng.
1.3.2. Hồi quy (Regression)
Hồi quy là việc lọc một hàm ánh xạ từ một mẫu dữ liệu thành một biến dự đốn
có giá trị thực. Có rất nhiều ứng dụng khai phá dữ liệu với nhiệm vụ hồi quy, ví dụ
như biết các phép đo vi sóng từ xa, đánh giá khả năng tử vong của bệnh nhân khi biết
các kết quả xét nghiệm chẩn đoán, dự đoán nhu cầu tiêu thụ một sản phẩm mới bằng

một hàm chỉ tiêu quảng cáo, …
1.3.3. Khai phá luật kết hợp (Association rule)
Trong lĩnh vực Data Mining, mục đích của luật kết hợp (Association Rule - AR)
là tìm ra các mối quan hệ giữa các đối tượng trong khối lượng lớn dữ liệu. Nội dung cơ
bản của luật kết hợp sẽ được trình bày kỹ hơn trong phần sau.
1.3.4. Gom nhóm (Clustering)
Là việc mơ tả chung để tìm ra các tập xác định các nhóm hay các loại để mơ tả
dữ liệu. Các nhóm có thể tách riêng nhau hoặc phân cấp hoặc gối lên nhau. Có nghĩa là
một dữ liệu có thể vừa thuộc nhóm này, vừa thuộc nhóm kia. Các ứng dụng khai phá
dữ liệu có nhiệm vụ gom nhóm như: Phát hiện tập các khách hàng có phản ứng giống
Số hóa bởi Trung tâm Học liệu

/>

10

nhau trong cơ sở dữ liệu tiếp thị, xác định các loại quang phổ từ các phương pháp đo
tia hồng ngoại.
1.3.5. Tổng hợp (Summarization)
Nhiệm vụ tổng hợp là việc sản sinh ra các mô tả đặc trưng cho một lớp. Các mơ
tả này là một kiểu tổng hợp, tóm tắt mơ tả các đặc tính chung của tất cả các bộ dữ liệu
thuộc một lớp.
Các mô tả đặc trưng thể hiện dưới dạng các luật thường có khn dạng:“Nếu
một bộ dữ liệu thuộc về một lớp đã chỉ ra trong tiền đề, thì bộ dữ liệu đó có tất cả các
thuộc tính đã nêu trong kết luận”. Những luật này có những đặc trưng khác biệt so với
các luật phân lớp. Luật phát hiện đặc trưng cho một lớp chỉ được sản sinh khi các bộ
dữ liệu thuộc về lớp đó.
1.3.6. Mơ hình ràng buộc (Dependency modeling)
Bao gồm việc tìm kiếm một mơ hình mơ tả sự phụ thuộc đáng kể giữa các biến.
Các mơ hình phụ thuộc tồn tại dưới hai mức: Mức cấu trúc của mơ hình xác định các

biến nào là phụ thuộc cục bộ với nhau, mức định lượng của một mơ hình xác định độ
mạnh của sự phụ thuộc theo một thước đo nào đó.
1.3.7. Dị tìm biến đổi và độ lệch (Change and Deviation Dectection)
Tập trung vào khai thác những thay đổi đáng kể nhất trong dữ liệu từ các giá trị
chuẩn hoặc được đo trước đó.
Vì các nhiệm vụ khác nhau này u cầu số lượng và các dạng thông tin rất khác
nhau nên chúng thường ảnh hưởng đến việc thiết kế và chọn thuật tốn khai phá dữ
liệu khác nhau. Ví dụ như thuật toán tạo cây quyết định tạo ra được một mô tả phân
biệt được các mẫu giữa các lớp nhưng khơng có các tính chất và đặc điểm của lớp.
1.4. Bài toán khai phá luật kết hợp
1.4.1. Bài toán
Trong lĩnh vực Data Mining, mục đích của luật kết hợp (Association Rule - AR)
là tìm ra các mối quan hệ giữa các đối tượng trong khối lượng lớn dữ liệu.

Số hóa bởi Trung tâm Học liệu

/>

11

Bài toán giỏ mua hàng trong siêu thị: Giả định chúng ta có rất nhiều mặt hàng,
ví dụ như “bánh mì”, “sữa”,…(coi là tính chất hoặc trường). Khách hàng khi đi siêu
thị sẽ bỏ vào giỏ mua hàng của họ một số mặt hàng nào đó, và chúng ta muốn tìm hiểu
các khách hàng thường mua các mặt hàng nào đồng thời, thậm chí chúng ta khơng
cần biết khách hàng cụ thể là ai. Nhà quản lý dùng những thông tin này để điều chỉnh
việc nhập hàng về siêu thị, hay đơn giản là để bố trí sắp xếp các mặt hàng gần nhau,
hoặc bán các mặt hàng đó theo một gói hàng, giúp cho khách đỡ mất cơng tìm kiếm.
Bảng 1.1: Cơ sở dữ liệu giao tác
Giao tác


Mục dữ liệu

t1

A, B, E

t2

B, D

t3

B, C

t4

A, B, D

t5

A, C

t6

B, C

t7

A, C


t8

A, B, C, E

t9

A, B, C, G

Khai phá luật kết hợp được mô tả như sự tương quan của các sự kiệnnhững sự kiện xuất hiện thường xuyên một cách đồng thời. Nhiệm vụ chính
của khai phá luật kết hợp là phát hiện ra các tập con cùng xuất hiện trong một
khối lượng giao dịch lớn của một cơ sở dữ liệu cho trước. Nói cách khác,
thuật tốn khai phá luật kết hợp cho phép tạo ra các luật mô tả các sự kiện xảy
ra đồng thời (một cách thường xuyên) như thế nào. Các thuật toán này trải
qua 2 pha: pha một:Đi tìm các sự kiện xảy ra thường xuyên, pha hai là tìm luật.
Cho I= {I1, I2, …, Im} là tập hợp của m tính chất riêng biệt. Giả sử D là
CSDL, với các bản ghi chứa một tập con T các tính chất (có thể coi như T

I), các bản

ghi đều có chỉ số riêng. Một luật kết hợp là một mệnh đề kéo theo có dạng X Y, trong
đó X, Y

I, thỏa mãn điều kiện X Y=

. Các tập hợp X và Y được gọi là các tập

hợp tính chất (itemset). Tập X gọi là nguyên nhân, tập Y gọi là hệ quả.
Số hóa bởi Trung tâm Học liệu

/>


12

Có 2 độ đo quan trọng đối với luật kết hợp: Độ hỗ trợ (support) và độ tin cậy
(confidence), được định nghĩa như phần dưới đây.
Độ hỗ trợ:
Định nghĩa 1.1: Độ hỗ trợ của một tập hợp X trong cơ sở dữ liệu D là tỷ số giữa
các bản ghi

có chứa tập X và tổng số bản ghi trong D (hay là phần trăm của các

bản ghi trong D có chứa tập hợp X), ký hiệu là support(X) hay supp(X) (support sẽ tự
sinh ra khi cài thuật tốn).
(1.1)
Ta có: 0 ≤ supp(X) ≤ 1 với mọi tập hợp X.
Định nghĩa 1.2: Độ hỗ trợ của một luật kết hợp X Y là tỷ lệ giữa số lượng các
bản ghi chứa tập hợp

, so với tổng số các bản ghi trong D - Ký hiệu supp(X Y)
(1.2)

Khi chúng ta nói rằng độ hỗ trợ của một luật là 50%, có nghĩa là có 50% tổng số
bản ghi chứa

. Như vậy, độ hỗ trợ mang ý nghĩa thống kê của luật.

Trong một số trường hợp, chúng ta chỉ quan tâm đến những luật có độ hỗ trợ cao
(Ví dụ như luật kết hợp xét trong cửa hàng tạp phẩm). Nhưng cũng có trường hợp, mặc
dù độ hỗ trợ của luật thấp, ta vẫn cần quan tâm (ví dụ luật kết hợp liên quan đến
nguyên nhân gây ra sự đứt liên lạc ở các tổng đài điện thoại).

Độ tin cậy:
Định nghĩa 1.3: Độ tin cậy của một luật kết hợp
bản ghi trong D chứa

là tỷ lệ giữa số lượng các

với số bản ghi trong D có chứa tập hợp X. Ký hiệu độ tin

cậy của một luật là conf(r). Ta có

.

Nhận xét: Độ hỗ trợ và độ tin cậy có xác suất sau:

Có thể định nghĩa độ tin cậy như sau:
Định nghĩa 1.4: Độ tin cậy của một luật kết hợp X Y là tỷ lệ giữa số lượng các
bản ghi của tập hợp chứa X Y, so với tổng số các bản ghi chứa X.
Số hóa bởi Trung tâm Học liệu

/>

13

Nói rằng độ tin cậy của một luật là 90%, có nghĩa là có tới 90% số bản ghi chứa
X chứa ln cả Y. Hay nói theo ngơn ngữ xác suất là: “Xác suất có điều kiện để xảy ra
sự kiện Y đạt 85%”. Điều kiện ở đây chính là: “Xảy ra sự kiện X”.
Như vậy, độ tin cậy của luật thể hiện sự tương quan (correlation) giữa X và Y.
Độ tin cậy đo mức độ tin cậy của luật, và người ta hầu như chỉ quan tâm đến những
luật có độ tin cậy cao. Ví dụ, một luật kết hợp đi tìm các ngun nhân dẫn tới hỏng hóc
của hệ thống tổng đài, hay đề cập đến những mặt hàng thường hay được khách hàng

mua kèm với mặt hàng chính mà độ tin cậy thấp sẽ khơng có ích cho công tác quản lý.
Việc khai thác các luật kết hợp từ CSDL chính là việc tìm tất cả các luật có độ hỗ
trợ và độ tin cậy do người sử dụng xác định trước. Các ngưỡng của độ hỗ trợ và độ tin
cậy được ký hiệu là minsup và mincof. Ví dụ: Khi phân tích giỏ hàng của người mua
hàng trong một siêu thị ta được luật kiểu như: 85% khách hàng mua sữa thì cũng mua
bánh mì, 30% thì mua cả hai thứ. Trong đó: “mua sữa” là tiền đề cịn “mua bánh mì”
là kết luận của luật. Con số 30% là độ hỗ trợ của luật còn 80% là độ tin cậy của luật.
Chúng ta nhận thấy rằng tri thức đem lại bởi luật kết hợp dạng trên có sự khác
biệt rất nhiều so với những thơng tin thu được từ các câu lệnh truy vấn dữ liệu thơng
thường như SQL. Đó là những tri thức, những mối liên hệ chưa 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 là kết quả
của phép nhóm, tính tổng hay sắp xếp mà là của một q trình tính toán khá phức tạp.
Tập hợp:
Định nghĩa 1.5: Tập hợp X được gọi là tập hợp thường xuyên (Frequents
, với minsup là ngưỡng độ hỗ trợ cho trước.Kí

itemset) nếu có
hiệu tập này là FI.
Tính chất 1.1: Giả sử

là hai tập hợp với

thì

.
Như vậy, những bản ghi nào chứa tập hợp B thì cũng chứa tập hợp A.
Tính chất 1.2:Giả sử A, B là hai tập hợp
xuyên và

, nếu B là tập hợp thường


thì A cũng là tập hợp thường xun.

Số hóa bởi Trung tâm Học liệu

/>

14

Thật vậy, nếu B là tập hợp thường xuyên thì

, mọi tập hợp

A là con của tập hợp B đều là tập hợp thường xun trong CSDL D vì
(Tính chất 1.1).
Tính chất 1.3: Giả sử A, B là hai tập hợp,

và A là tập hợp khơng thường

xun thì B cũng là tập hợp không thường xuyên.
Định nghĩa 1.6: Một tập mục X được gọi là đóng (closed) nếu khơng có tập cha
nào của X có cùng độ hỗ trợ với nó, tức là khơng tồn tại một tập mục X' nào mà
và t(X) = t(X') (với t(X) và t(X') tương ứng là tập các giao chứa tập mục X và
X'). Ký hiệu tập phổ biến đóng là FCI.
Định nghĩa 1.7: Nếu X là phổ biến và không tập cha nào của X là phổ biến, ta
nói rằng X là một tập phổ biến lớn nhất (maximally frequent itemset). Ký hiệu tập tất
cả các tập phổ biến lớn nhất là MFI. Dễ thấy

.


Khai phá luật kết hợp là công việc phát hiện ra (tìm ra, khám phá, phát hiện) các
luật kết hợp thỏa mãn các ngưỡng độ hỗ trợ ( ) và ngưỡng độ tin cậy ( ) cho trước.
Bài toán khai phá luật kết hợp được chia thành hai bài tốn nhỏ, cịn gọi là hai pha:
Pha 1: Tìm tất cả các tập phổ biến (tìm FI) trong CSDL T.
Pha 2: Sử dụng tập FI tìm được ở pha 1 để sinh ra các luật tin cậy (interesting
rules). Ý tưởng chung là nếu gọi ABCD và AB là các tập mục phổ biến, thì chúng ta
có thể xác định luật AB CD với tỷ lệ độ tin cậy:
(1.3)
Nếu conf

minconf thì luật được giữ lại (và thỏa mãn độ hỗ trợ tối thiểu vì

ABCD là phổ biến).
Trong thực tế, hầu hết thời gian của quá trình khai thác luật kết hợp là thực hiện
ở pha 1. Nhưng khi có những mẫu rất dài (mẫu chứa nhiều mục) xuất hiện trong dữ
liệu, việc sinh ra toàn bộ các tập phổ biến (FI) hay các tập đóng (FCI) là khơng thực tế.
Hơn nữa, có nhiều ứng dụng mà chỉ cần sinh tập phổ biến lớn nhất (MFI) là đủ, như
khám phá mẫu tổ hợp trong các ứng dụng sinh học.
Có rất nhiều nghiên cứu về các phương pháp sinh tất cả các tập phổ biến và tập
phổ biến lớn nhất một cách có hiệu quả. Khi các mẫu phổ biến (frequent pattern) dài
Số hóa bởi Trung tâm Học liệu

/>

15

có từ 15 đến 20 items) thì tập FI, thậm chí cả tập FCI trở nên rất lớn và hầu hết các
phương pháp truyền thống phải đếm quá nhiều tập mục mới có thể thực hiện được.
Các thuật tốn dựa trên thuật toán Apriori – đếm tất cả 2k tập con của mỗi k-itemset
mà chúng quét qua, và do đó khơng thích hợp với các itemset dài được. Các phương

pháp khác sử dụng “lookaheads” để giảm số lượng tập mục được đếm. Tuy nhiên, hầu
hết các thuật toán này đều sử dụng tìm kiếm theo chiều rộng, ví dụ: tìm tất cả các kitemsets trước khi tính đến các (k+1)-itemsets.
Cách làm này hạn chế hiệu quả của lookaheads, vì các mẫu phổ biến dài hơn mà
hữu ích vẫn chưa được tìm ra.
1.4.2. Một số thuật tốn cơ bản
1.4.2.1. Thuật tốn Apriori
Thuật toán Apriori được Agrawal và Srikant phát biểu năm 1994[3]. Apriori là
thuật tốn phổ biến nhất để tìm luật kết hợp, được coi là một sự cải tiến lớn trong lịch
sử khai phá luật kết hợp vì đã vượt xa tầm của các thuật toán quen thuộc trong lĩnh vực
này. Thuật toán dựa trên một nhận xét đơn giản là bất kỳ tập con nào của tập thường
xuyên cũng là tập thường xun. Do đó, trong q trình đi tìm tập ứng viênk Itemset,
chỉ cần dùng đến các tập thường xuyên k-1 Itemset đã tìm thấy ở bước trước đó. Nhờ
vậy, bộ nhớ được giải phóng đáng kể.
Thuật tốn Apriori có hai bước để tìm ra tất cả các tập mục dữ liệu thường
xuyên:
- Bƣớc 1: Duyệt qua CSDL để tìm ra tất cả các mục dữ liệu thường xuyên bằng
cách đếm số lần xuất hiện của từng mục trong tất cả các giao tác (Bảng 1.2.a), sau đó
loại bỏ những mục dữ liệu có độ hỗ trợ nhỏ hơn Minsup, được tập L1. Tập L1 gọi là tập
các mục dữ liệu thường xuyên một mục dữ liệu (Bảng 1.2.b). Trong bước 2, mỗi lần
duyệt CSDL tiếp theo ta chỉ cần xét các mục dữ liệu trong bảng này.
- Bƣớc 2: Gọi Ck là tập các tập ứng viênkItemset, Lk là tập các tập thường xuyên
k Itemset. Quá trình tìm tập Lk trải qua ba cơng đoạn nhỏ:

Số hóa bởi Trung tâm Học liệu

/>

16

a) C'k là tập các tập k Itemset có được bằng cách hợp từng hai tập k-1 Itemset

thường xuyên trong Lk-1 có k-2 mục dữ liệu đầu tiên giống nhau, mục thứ k-1 khác
nhau (Bảng 1.2.c, Bảng 1.2.f).
b) Tìm tập ứng viên Ck bằng cách loại bỏ những tập trong C'k có chứa một tập
con k-1 Itemset nhưng khơng là tập k-1 Itemset thường xuyên (Bảng 1.2.d, Bảng
1.2.g).
c) Ứng với mỗi tập ứng viên trong Ck, duyệt qua CSDL, đếm số giao tác chứa tập
ứng viên này để xem tập này có phải là tập thường xun hay khơng, ta được tập Lk
(Bảng 1.2.e, Bảng 1.2.h).
Lặp lại bước 2 cho đến khi tập Lk là rỗng.
Chạy thuật toán Apriori với dữ liệu cho ởBảng 1.1 với Minsup S0=2.
Bƣớc 1:
Bảng 1.2: Kết quả thuật toán Apriori
a) C1
Mục dữ liệu Độ hỗ trợ
A
6
B
7
C
6
D
2
E
2
G
1

b) L1
1-Itemset
A

B
C
D
E

Bƣớc 2:
- Lần lặp thứ nhất: Mọi tập trong C'2 đều có tập con một mục dữ liệu là phần tử
của L1 nên C2 = C'2. Như vậy, tại bước này chưa sử dụng lợi ích của thuật tốn Apriori.
c) C'2
2 Itemset
A, B
A, C
A, D
A, E

d) C2

e) L2

Itemset

Support

2 Itemset

A, B
A, C
A, D
A, E


4
4
1
2

A,B
A,C
A,E
B,C

Số hóa bởi Trung tâm Học liệu

/>

17

B, C
B,D
B,E
C,D
C,E
D,E

B, C
B,D
B,E
C,D
C,E
D,E


4
2
2
0
1
0

B,D
B,E

- Lần lặp thứ hai: Tập C'3 được tính tốn bằng cách hợp từng 2 tập của L2. Tập C3
được tính bằng cách loại bỏ trong C'3 các tập {A, C, E}, {B, C, D}, {B, C, E}, {B, D,
E} do lần lượt chứa các tập con {C, E}, {C, D}, {C, E}, {D, E} không thuộc L2 (không
là tập thường xuyên).
g) C'3
3 Itemset
A, B, C
A, B, E
A, C, E
B, C, D
B, C, E
B, D, E

h) C3
3 Itemset
Support
A, B, C
2
A, B, E
2


i) L3
3 Itemset
A,B, C
A,B,E

- Lần lặp thứ 3: C'4= {{A,B,C,E}}, chứa {A, C, E} không là tập thường xuyên
C4 =

L4 =

. Ngừng lặp.

Thuật toán Apriori phát sinh số lượng lớn tập ứng viên. Có quá nhiều lần duyệt
tồn bộ CSDL để tính độ hỗ trợ của các mục dữ liệu. Thuật tốn khơng thể giải được
khi số mục dữ liệu lớn. Dựa vào thuật toán Apriori, nhiều thuật toán mới được thiết kế
với những sửa đổi hoặc cải tiến. Nói chung có hai cách tiếp cận: một là sẽ giảm bớt số
lần duyệt qua toàn bộ CSDL, hai là thay thế toàn bộ CSDL với chỉ một bộ phận của nó
dựa vào tập mục dữ liệu thường xuyên hiện thời. Cách tiếp cận khác là dùng kỹ thuật
xén bớt để làm cho số tập ứng viên nhỏ đi.
1.4.2.2. Thuật toán Partition
Năm 1995, Ashok Savasere và đồng nghiệp ở Viện tính tốn trường Đại học kỹ
thuật Georgia, Atlanta, Hoa Kỳ đề xuất thuật toán Partition để phân dữ liệu thành
nhiều phần nhỏ, mỗi phần có thể đưa vào bộ nhớ trong để xử lý [6].

Số hóa bởi Trung tâm Học liệu

/>


×