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

Khai phá luật kết hợp mờ và ứng dụng

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 (2.01 MB, 77 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CNTT & TT
---------***---------

Hoàng Thị Phượng

Khai phá luật kết hợp mờ
và ứng dụng

Luận văn Thạc sĩ khoa học máy tính

Thái Ngun - 2011
Số hóa bởi Trung tâm Học liệu – ĐHTN




Đại học Thái Nguyên
Trường đại học CNTT & TT
---------***---------

Hoàng Thị Phượng

Khai phá luật kết hợp mờ
và ứng dụng
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

Người hướng dẫn khoa học: PGS TS Đồn Văn Ban


.

Thái Nguyên - 2011
Số hóa bởi Trung tâm Học liệu – ĐHTN




i

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 của PGS TS Đoàn Văn Ban. Tất cả các nguồn tài liệu tham khảo đƣợc dùng
đều có xuất xứ rõ ràng, đƣợc trích dẫn hợp pháp.
Tơi xin chịu trách nhiệm và chịu mọi hình thức kỉ luật theo quy định cho lời
cam đoan của mình.
Thái Ngun, 9/2011
Hồng Thị Phƣợng

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




ii

MỤC LỤC
Trang phụ bìa
LỜI CẢM ƠN
LỜI CAM ĐOAN ....................................................................................................... i

MỤC LỤC .................................................................................................................. ii
CÁC KÝ HIỆU VIẾT TẮT ...................................................................................... iv
DANH MỤC CÁC BẢNG..........................................................................................v
DANH MỤC CÁC HÌNH VẼ................................................................................... vi
MỞ ĐẦU .....................................................................................................................1
CHƢƠNG I TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU ............................................4
1.1. Khai phá dữ liệu và phát hiện tri thức .............................................................4
1.1.1. Khai phá dữ liệu .......................................................................................4
1.1.2. Các bƣớc chính trong q trình phát hiện tri thức ....................................4
1.1.3. Khái niệm khai phá dữ liệu ......................................................................7
1.1.4. Kiến trúc của hệ thống khai thác dữ liệu .................................................8
1.2. Ứng dụng của khai phá dữ liệu ......................................................................10
1.2.1. Ƣu thế của khai phá dữ liệu ....................................................................10
1.2.2. Ứng dụng của khai phá dữ liệu...............................................................10
1.3. Hƣớng tiếp cận và các kỹ thuật khai phá dữ liệu ...........................................11
1.3.1. Một số hƣớng tiếp cận chính của khai phá dữ liệu .................................11
1.3.2. Các phƣơng pháp khai phá dữ liệu (data mining) ..................................11
1.4. Khai phá luật kết hợp trong cơ sở dữ liệu......................................................12
1.4.1. Luật kết hợp ............................................................................................12
1.4.2. Một số hƣớng tiếp cận trong khai phá luật kết hợp ................................13
1.5. Phát biểu bài toán khai phá luật kết hợp ........................................................15
1.5.1. Các khái niệm cơ bản .............................................................................15
1.5.2. Phát biểu bài toán luật kết hợp ...............................................................18
1.6. Thuật toán Apriori khai phá luật kết hợp .......................................................19
1.7. Luật kết hợp có thuộc tính số .........................................................................22
1.7.1 Luật kết hợp có thuộc tính số và thuộc tính các hạng mục .....................22
1.7.2. Các phƣơng pháp rời rạc hóa..................................................................23
1.8. Kết luận chƣơng 1 ..........................................................................................25
CHƢƠNG II KHAI PHÁ LUẬT KẾT HỢP MỜ ....................................................27
2.1. Khái niệm về tập mờ (Fuzzy set) ...................................................................27

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




iii

2.1.1. Sơ lƣợc về tập mờ ...................................................................................27
2.1.2. Định nghĩa tập mờ .................................................................................27
2.1.3. Định nghĩa hàm thuộc ...........................................................................28
2.1.4. Các phép toán cơ bản trên tập mờ ..........................................................29
2.2. Khái niệm tập mờ trong lĩnh vực khai phá dữ liệu ........................................31
2.3. Áp dụng tập mờ để rời rạc hóa và các ƣu điểm .............................................31
2.4. Luật kết hợp mờ .............................................................................................34
2.5. Thuật toán khai phá luật kết hợp mờ có thuộc tính số đƣợc đánh trọng số
(David L. Olson) ...................................................................................................36
2.5.1. Giới thiệu thuật toán ...............................................................................36
2.5.2. Chi tiết thuật toán ...................................................................................36
2.6. Thuật toán khai phá luật kết hợp mờ có thuộc tính số (F- APACS)..............39
2.6.1. Giới thiệu thuật toán ...............................................................................39
2.6.2 Những khái niệm .....................................................................................42
2.6.3. Thuật toán F-APACS .............................................................................46
2.6.4. Xác định luật có ích ................................................................................48
2.6.5. Đo độ tin cậy của luật kết hợp ................................................................49
2.7. Kết luận chƣơng II .........................................................................................51
CHƢƠNG III. CÀI ĐẶT THUẬT TOÁN F -APACS TRÊN CƠ SỞ DỮ LIỆU
CƢỚC ĐIỆN THOẠI ...............................................................................................51
3.1. Đặt vấn đề ......................................................................................................51
3.1.1. Phát hiện gian lận (fraud detection)........................................................52
3.1.2. Các ứng dụng quản lý và chăm sóc khách hàng .....................................52

3.1.3. Các ứng dụng phát hiện và cô lập lỗi trên hệ thống mạng viễn thơng
(Network fault isolation) ..................................................................................54
3.2. Các dữ liệu chính trong viễn thơng ...............................................................54
3.3. Cài đặt thuật tốn trên cơ sở dữ liệu cƣớc điện thoại ....................................55
3.4. Kết quả cài đặt thuật toán ..............................................................................58
3.5. Kết luận chƣơng III ........................................................................................65
KẾT LUẬN ...............................................................................................................66
TÀI LIỆU THAM KHẢO .........................................................................................67

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




iv

CÁC KÝ HIỆU VIẾT TẮT
Tên viết tắt
CSDL

Tên đầy đủ
Cơ sở dữ liệu

DL

Dữ liệu

DM

Data Mining (Khai phá dữ liệu)


KDD

Knowledge discovery in database (Phát hiện tri thức
trong cơ sở dữ liệu)

KPDL

Khai phá dữ liệu

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




v

DANH MỤC CÁC BẢNG
Bảng 1.1. Ví dụ về một CSDL dạng giao dịch

15

Bảng 1.2. CSDL giao dịch với độ hỗ trợ

16

Bảng 1.3. Tính độ hỗ trợ và độ tin cậy

17


Bảng 1.4. Các tập phổ biến

18

Bảng 1.5. Luật kết hợp sinh từ tập phổ biến ADE

19

Bảng 1.6. Cơ sở dữ liệu chi tiết của 8 cuộc gọi điện thoại

22

Bảng 1.7. 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

24

Bảng 1.8. Rời rạc hóa thuộc tính thời gian đàm thoại (TGĐT)

24

Bảng 2.1. Cơ sở dữ liệu của 10 cuộc gọi

35

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




vi


DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Q trình khai phá tri thức

5

Hình 1.2. Kiến trúc điển hình của hệ thống khai phá dữ liệu

9

Hình 2.1. Đồ thị hàm thuộc của thuộc tính Thời gian đàm thoại

32

Hình 2.2. Các bƣớc của thuật tốn tìm luật kết hợp từ dữ liệu số

41

Hình 2.3. Đồ thị xác định mức độ thuộc của thuộc tính j

45

Hình 3.1. Nguồn dữ liệu cƣớc điện thoại

56

Hình 3.2. Các bƣớc tiến hành khai phá dữ liệu cƣớc điện thoại

57


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




1

MỞ ĐẦU
Dữ liệu ngày càng nhiều đa dạng và phức tạp. Trong thời đại ngày nay, thời
đại của nền kinh tế tri thức đòi hỏi mỗi hoạt động của con ngƣời phải dựa trên
thông tin tri thức. Những thông tin tiềm ẩn trong kho dữ liệu. Để khai phá các
thông tin hữu ích từ nguồn dữ liệu to lớn này một cách hiệu quả chúng ta cần
những công cụ và kỹ thuật thích hợp. Theo đánh giá của IBM, các phƣơng pháp
khai phá thông tin truyền thống chỉ thu đƣợc 80% thơng tin từ cơ sở dữ liệu, phần
cịn lại bao gồm các thơng tin khái qt, thơng tin có tính quy luật vẫn cịn đang
tiềm ẩn trong cơ sở dữ liệu. Lƣợng thông tin này tuy nhỏ nhƣng là những thơng tin
cốt lõi và cần thiết cho tiến trình quyết định. Vì vậy, chúng ta phải tìm cách để
phân tích dữ liệu tự động, để phân loại dữ liệu tự động, để tổng hợp dữ liệu tự
động, để phát hiện và mơ tả các xu hƣớng trong nó tự động, và để cảnh báo các dị
thƣờng tự động. Đây là một trong những lĩnh vực năng động và thú vị nhất của
cộng đồng nghiên cứu cơ sở dữ liệu (CSDL). Việc tự động phân tích tìm kiếm
những thơng tin tiềm ẩn có giá trị, chƣa đƣợc phát hiện, chính là thực hiện quá
trình phát hiện tri thức trong cơ sở dữ liệu (Knowledge Discovery in Database KDD).
Khai phá dữ liệu (KPDL) là một chủ đề thu hút nhiều sự quan tâm của các nhà
khoa học lẫn những ngƣời làm quản lý. KPDL đã trở thành một trong những hƣớng
nghiên cứu chính trong lĩnh vực khoa học máy tính và công nghệ tri thức. Hàng
loạt nghiên cứu, đề xuất ra đời đã đƣợc thử nghiệm và ứng dụng thành công vào
đời sống.
Thành công của KPDL là sự kết hợp các kỹ thuật từ những lĩnh khác nhau
nhƣ học máy, trí tuệ nhân tạo, lý thuyết thông tin, xác suất thống kê, và tính tốn

hiệu năng cao. Các bài tốn chủ yếu trong KPDL là phân lớp/dự đoán
(classification/prediction), phân cụm (clustering), khai phá luật kết hợp (association

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




2

rules mining), khai phá chuỗi (sequence mining),... Lĩnh vực này cũng là điểm
hội tụ và giao thoa của rất nhiều lĩnh vực khác. Với sự kết hợp của nhiều
thành tựu nghiên cứu trong các lĩnh vực khác, KPDL có đƣợc sự tồn diện và đầy
đủ trong cách tìm kiếm và xử lý thông tin một cách tiên tiến, hiệu quả. KPDL
đã và đang đƣợc ứng dụng thành công vào thƣơng mại, tài chính & thị trƣờng
chứng khốn, sinh học, y học, giáo dục, viễn thông, ...
Khai phá luật kết hợp là một kỹ thuật quan trọng của KPDL đƣợc đề xuất vào
năm 1993 và phát triển mạnh mẽ trong những năm gần đây. Trong thời kỳ đầu
khai phá luật kết hợp chỉ đơn giản là khai phá sự hiện diện của mẫu A thì dẫn đến
sự xuất hiện mẫu B. Sau đó luật kết hợp đƣợc khai phá quan hệ có tính số lƣợng
giữa các mẫu. Những nghiên cứu về luật kết hợp gần đây tập trung xây dựng các
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 từ các thuật tốn đã có.
Ý tƣởng liên kết luật kết hợp với lý thuyết tập mờ đã xuất hiện từ vài năm
trƣớc. Ý tƣởng ban đầu xuất phát từ nỗ lực để xử lý các thuộc tính số trong CSDL,
trong đó việc phân chia các giá trị số vào các tập rõ có thể dẫn đến việc đánh giá
cao hơn hoặc thấp các giá trị ở gần biên. Tập mờ có thể khắc phục vấn đề này bằng
cách cho phép một phần tử có thể thuộc vào các tập khác nhau. Lý thuyết tập mờ
cung cấp những công cụ cần thiết để thực hiện các tính tốn trên các cấu trúc dữ
liệu khác nhau.

Việc sử dụng logic mờ trong mô hình quan hệ cung cấp một cách hiệu quả để
xử lý dữ liệu số với các thơng tin khơng chính xác, không chắc chắn hoặc không
đầy đủ. Lý thuyết tập mờ ngày càng đƣợc sử dụng nhiều và thƣờng xuyên hơn
trong các hệ thống thơng minh bởi vì mối quan hệ của nó với cách lập luận của
con ngƣời. Một số nghiên cứu đã chứng minh đƣợc hiệu suất vƣợt trội của logic
mờ trong KPDL và kho dữ liệu.
Ý thức đƣợc đây là một lĩnh vực nghiên cứu có nhiều triển vọng, tơi đã
Số hóa bởi Trung tâm Học liệu – ĐHTN




3

chọn hƣớng nghiên cứu “Khai phá luật kết hợp mờ và ứng dụng” cho đề tài luận
văn của mình. Phƣơng pháp nghiên cứu chủ yếu của luận văn là khảo sát, phân tích
nội dung các bài báo khoa học về KPDL và khai phá luật kết hợp mờ đƣợc công
bố trong những năm gần đây. Từ các kết quả nghiên cứu lý thuyết kết hợp với
những vấn đề đặt ra trong bài toán thực tế, luận văn cũng đề xuất phƣơng pháp thử
nghiệm giải quyết vấn đề khai phá luật kết hợp trong thực tế.
Bố cục luận văn gồm 3 chƣơng:
Chƣơng I: Tổng quan về khai phá dữ liệu: Tổng quan về KPDL và KDD,
các bƣớc chính trong q trình phát hiện tri thức. Chƣơng này cũng đề cập đến
các hƣớng tiếp cận và kỹ thuật chính trong KPDL cùng với một số phƣơng pháp
KPDL. Ngồi ra, cịn giới thiệu về luật kết hợp, thuật tốn tìm luật kết hợp Apriori,
một số hƣớng mở rộng trong khai phá luật kết hợp. Phần cuối của chƣơng này phác
họa những ƣu thế, ứng dụng chính của lĩnh vực này và những hƣớng nghiên cứu
đang và sẽ đƣợc chú trọng trong thời gian tới.
Chƣơng II: Trình bày về “Khai phá luật kết hợp mờ”. Phần đầu của chƣơng
đề cập đến các khái niệm về tập mờ và tập mờ trong KPDL. Tiếp theo là phƣơng

pháp rời rạc hóa dữ liệu dựa vào tập mờ và ƣu điểm của chúng. Từ đó luật kết hợp
mờ đƣợc đề xuất nhƣ một hƣớng khắc phục các nhƣợc điểm của bài tốn khai phá
luật kết hợp có thuộc tính số. Luận văn trình bày một số thuật toán khai phá luật
kết hợp mờ nhƣ: thuật toán khai phá luật kết hợp mờ đƣợc đánh trọng số của
David L. Olson, thuật toán F-APACS của Keith C.C. Chan và Wai-Ho-Au khai
phá luật kết mờ hiệu quả.
Chƣơng III: Giới thiệu về nguồn dữ liệu cƣớc điện thoại và kết quả cài đặt
thuật toán F-APACS trên CSDL này.
Phần kết luận nêu những kết quả chính và hƣớng phát triển của đề tài.

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




4

CHƢƠNG I TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU
1.1. Khai phá dữ liệu và phát hiện tri thức
1.1.1. Khai phá dữ liệu
Trong những thập kỷ gần đây, các thiết bị lƣu trữ thông tin với dung lƣợng lớn
không ngừng tăng lên. Việc lƣu trữ dữ liệu lớn này ngày càng phát triển và bùng nổ
với tốc độ lớn. Ƣớc tính cứ khoảng 20 tháng lƣợng thơng tin trên tồn cầu lại tăng
gấp đôi.
Theo Fayyad và các cộng sự [4], việc nghiên cứu phát triển lĩnh vực
khai phá dữ liệu (KPDL) và phát hiện tri thức trong CSDL (Knowledge
Discovery in Database:KDD) là nhằm giải quyết tình trạng “ngập tràn thơng
tin mà thiếu thốn tri thức”.
Khai phá dữ liệu (Data mining) là một khái niệm ra đời vào những năm cuối
của thập kỷ 80. Nó bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thơng tin

có giá trị tiềm ẩn trong các tập dữ liệu lớn (các kho dữ liệu). Về bản chất, khai phá
dữ liệu liên quan đến việc phân tích các dữ liệu và sử dụng các kỹ thuật để tìm ra
các mẫu hình có tính chính quy (regularities) trong tập dữ liệu. Ở mức cao – tổng
qt, ta có thể coi mục đích chính của q trình KPDL là mơ tả (description) và dự
đốn (prediction) [1]. Dự đoá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 để 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ả hƣớng tới việc tìm ra các mẫu mơ tả
dữ liệu. Dự đốn và mơ tả có tầm quan trọng khác nhau đối với thuật tốn KPDL.
1.1.2. Các bƣớc chính trong q trình phát hiện tri thức
Năm 1989, Fayyad, Piatestsky-Shapiro và Smyth đã dùng khái niệm Phát hiện
tri thức trong cơ sở dữ liệu (Knowledge Discovery in Database – KDD) để chỉ tồn
bộ q trình phát hiện các tri thức có ích từ các tập dữ liệu lớn. Trong đó, khai phá
dữ liệu là một bƣớc đặc biệt trong toàn bộ quá trình, sử dụng các giải thuật đặc biệt
để chiết xuất ra các mẫu (pattern) (hay các mơ hình) từ dữ liệu.

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




5

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 [4].
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 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).
Quá trình phát hiện tri thức sẽ tiến hành qua 6 giai đoạn nhƣ hình 1.1:
Đánh giá mẫu
Khai phá dữ liệu
Chuyển đổi
Tiền xử lý

Tri thức

Chọn lựa
Dữ liệu
chuyển đổi

Thu thập

Dữ liệu
đích
Internet,
...

Mẫu
khám
phá

Dữ liệu đã
tiền xử lý

Dữ liệu


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

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




6

Gom dữ liệu (Gathering)
Tập hợp dữ liệu là bƣớc đầu tiên trong quá trình khai phá dữ liệu. Đây là bƣớc
đƣợc khai thác trong một cơ sở dữ liệu, một kho dữ liệu và thậm chí các dữ liệu từ
các nguồn ứng dụng Web.
Trích lọc dữ liệu (Selection)
Ở giai đoạn này dữ liệu đƣợc lựa chọn hoặc phân chia theo một số tiêu chuẩn
nào đó, ví dụ chọn tất cả những ngƣời có tuổi đời từ 25 – 35 và có trình độ đại học.
Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu (Cleansing, Pre-processing
and Preparation)
Giai đoạn thứ ba này là giai đoạn hay bị sao lãng, nhƣng thực tế nó là một
bƣớc rất quan trọng trong quá trình khai phá dữ liệu. Một số lỗi thƣờng mắc phải
trong khi gom dữ liệu là tính khơng chặt chẽ, logic. Vì vậy, dữ liệu thƣờng chứa các
giá trị vơ nghĩa và khơng có khả năng kết nối dữ liệu. Giai đoạn này sẽ tiến hành xử
lý những dạng dữ liệu khơng chặt chẽ nói trên. Bởi vậy, đây là một quá trình rất
quan trọng vì dữ liệu này nếu không đƣợc “làm sạch - tiền xử lý - chuẩn bị trƣớc”
thì sẽ gây nên những kết quả sai lệch nghiêm trọng.
Chuyển đổi dữ liệu (Transformation)
Tiếp theo là giai đoạn chuyển đổi dữ liệu, dữ liệu đƣa ra có thể sử dụng và
điều khiển đƣợc bởi việc tổ chức lại nó. Dữ liệu đã đƣợc chuyển đổi phù hợp với
mục đích khai phá.

Phát hiện và trích chọn mẫu dữ liệu (Pattern Extraction and Discovery)
Ở giai đoạn này nhiều thuật toán khác nhau đã đƣợc sử dụng để trích ra các
mẫu từ dữ liệu. Thuật toán thƣờng dùng là nguyên tắc phân loại, ngun tắc kết hợp
hoặc các mơ hình dữ liệu tuần tự, ...

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




7

Đánh giá kết quả mẫu (Evaluation of Result)
Đây là giai đoạn cuối trong quá trình khai phá dữ liệu. Các mẫu dữ liệu đƣợc
chiết xuất ra bởi phần mềm KPDL. Không phải bất cứ mẫu dữ liệu nào cũng đều
hữu ích, đơi khi nó cịn bị sai lệch. Vì vậy, cần phải ƣu tiên những tiêu chuẩn đánh
giá để chiết xuất ra các tri thức (Knowlege) cần chiết xuất ra.
Trên đây là 6 giai đoạn trong quá trình khai phá dữ liệu, trong đó giai đoạn 5
là giai đoạn đƣợc quan tâm nhiều nhất.
1.1.3. Khái niệm khai phá dữ liệu
Lĩnh vực KPDL và phát hiện tri thức đã 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ằm hƣớng tới cùng một mục tiêu 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 những gì đã trình bày ở trên, KPDL là q 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.
Nhƣ vậy, khi xét ở mức tổng quát 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 [5].
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 [4].

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




8

Ngoài ra, theo B. Kovalerchuk và E. Vityaev, Friedman đã tổng hợp một số quan
niệm sau đây liên quan về khái niệm "Khai phá dữ liệu" [6]:
 Q trình khơng tầm thường để nhận biết từ dữ liệu ra các mẫu có giá trị,
mới, hữu dụng và hiểu được (Fayyad).
 Q trình trích lọc các thơng tin chưa biết trước, có thể nhận thức được,
có thể tác động được từ CSDL lớn và sử dụng chúng để tạo ra quyết định
(Zekulin).
 Tập các phương pháp được dùng trong quá trình phát hiện tri thức nhằm
tường minh các quan hệ và các mẫu chưa biết trước chứa trong dữ liệu
(Ferruzza).
 Quá trình hỗ trợ quyết định khi tìm kiếm những mẫu thơng tin chưa biết
và hữu ích từ CSDL lớn (Parsaye).
1.1.4. Kiến trúc của hệ thống khai thác dữ liệu

Kiến trúc điển hình của một hệ KPDL đƣợc trình bày trong hình 1.2 [7].
Trong kiến trúc này, nguồn dữ liệu cho các hệ thống KPDL gồm CSDL, kho dữ
liệu, hoặc World Wide Web, kho chứa dữ liệu kiểu bất kỳ khác. Cơ sở tri thức,
bao chứa các tri thức hiện có, đƣợc sử dụng trong thành phần KPDL để làm tăng
tính hiệu quả. Cơ sở tri thức còn đƣợc sử dụng trong việc đánh giá các mẫu đã khai
phá đƣợc xem chúng có thực sự hấp dẫn hay khơng, trong đó có đối chứng với
các tri thức đã có trong cơ sở tri thức. Nếu mẫu khai phá đƣợc thực sự hấp dẫn thì
đƣợc bổ sung vào cơ sở tri thức để phục vụ cho hoạt động tiếp theo của hệ
thống. Nhƣ vậy, nguồn tri thức bổ sung vào cơ sở tri thức ở đây không chỉ từ lập
luận logic theo các hệ tốn logic để có tri thức mới, khơng chỉ do con ngƣời bổ sung
vào mà còn đƣợc phát hiện một cách tự động từ nguồn dữ liệu [2].

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




9

Kiến trúc của hệ thống KPDL có thể có các thành phần chính sau [7]:
Giao diện đồ họa ngƣời dùng

Đánh giá mẫu
Cơ sở
tri thức
Thành phần khai phá dữ liệu

Phục vụ CSDL \ kho dữ liệu

Làm sạch và tích hợp dữ liệu


Cơ sở dữ
liệu

Word Wide
Web

Kho chứa dữ
liệu khác

Lọc

Kho dữ
liệu

Hình 1.2 Kiến trúc điển hình của hệ thống khai phá dữ liệu
Trong đó:
- Cơ sở dữ liệu, kho dữ liệu, World wide web: Đó là một hoặc tuyển tập các
cơ sở dữ liệu, kho dữ liệu, … Các kỹ thuật làm sạch dữ liệu, tích hợp, lọc dữ liệu
có thể thực hiện trên dữ liệu.
- Cơ sở dữ liệu hoặc kho dữ liệu phục vụ: Là kết quả lấy dữ liệu có liên quan
trên cơ sở khai phá dữ liệu của ngƣời dùng.
- Cơ sở tri thức: Đó là lĩnh vực tri thức đƣợc sử dụng để hƣớng dẫn việc tìm
hoặc đánh giá các mẫu kết quả thu đƣợc
- Mô tả khai phá dữ liệu: Bao gồm tập các modul chức năng để thực hiện các
nhiệm vụ mô tả đặc điển, kết hợp, phân lớp, phân cụm dữ liệu, …
Số hóa bởi Trung tâm Học liệu – ĐHTN





10

- Đánh giá mẫu: Thành phần này sử dụng các độ đo và tƣơng tác với modul
khai phá dữ liệu để tập trung vào tìm các mẫu quan tâm.
- Giao diện ngƣời dùng: Đây là modul giữa ngƣời dùng và hệ thống khai phá
dữ liệu. Cho phép ngƣời dùng tƣơng tác với hệ thống trên cơ sở những truy vấn
hay tác vụ, cung cấp thơng tin cho việc tìm kiếm.
1.2. Ứng dụng của khai phá dữ liệu
1.2.1. Ƣu thế của khai phá dữ liệu
Khai phá dữ liệu là một lĩnh vực liên quan tới nhiều ngành học khác nhƣ: hệ
CSDL, thống kê, trực quan hoá, … Hơn nữa, tuỳ vào cách tiếp cận đƣợc sử dụng,
khai phá dữ liệu còn có thể áp dụng một số kỹ thuật nhƣ mạng nơ ron, lý thuyết tập
thô, tập mờ, biểu diễn tri thức, … So với các phƣơng pháp này, khai phá dữ liệu có
một số ƣu thế rõ rệt.
 So với phƣơng pháp học máy, khai phá dữ liệu có lợi thế hơn ở chỗ, khai
phá dữ liệu có thể sử dụng với các CSDL chứa nhiều nhiễu, dữ liệu không đầy đủ
hoặc biến đổi liên tục. Trong khi đó phƣơng pháp học máy chủ yếu đƣợc áp dụng
trong các CSDL đầy đủ, ít biến động và tập dữ liệu khơng quá lớn.
 Phƣơng pháp hệ chuyên gia khác với KPDL ở chỗ các ví dụ của chuyên gia
thƣờng ở mức cao hơn nhiều so với các dữ liệu trong CSDL, và chúng thƣờng chỉ
bao hàm đƣợc các trƣờng hợp quan trọng. Hơn nữa các chuyên gia sẽ xác nhận giá
trị và tính hữu ích của các mẫu phát hiện đƣợc.
 Phƣơng pháp thống kê là một trong những nền tảng lý thuyết của khai phá
dữ liệu, nhƣng khi so sánh hai phƣơng pháp với nhau ta có thể thấy các phƣơng
pháp thống kê cũng tồn tại một số điểm yếu mà khai phá dữ liệu khắc phục đƣợc.
1.2.2. Ứng dụng của khai phá dữ liệu
Với nhƣng ƣu điểm đó, khai phá dữ liệu hiện đang đƣợc áp dụng một
cách rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác nhau nhƣ:
- Thƣơng mại: Phân tích dữ liệu bán hàng và thị trƣờng, phân tích đầu tƣ,

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




11

quyết định cho vay, phát hiện gian lận, …
- Thông tin sản xuất: Điều khiển và lập kế hoạch, hệ thống quản lý, phân
tích kết quả thử nghiệm, …
- Thơng tin khoa học: dự báo thời tiết, CSDL sinh học: Ngân hàng gen, …
khoa học địa lý: dự báo động đất, …
- Trong y tế, marketing, ngân hàng, viễn thông, du lịch, Internet…
1.3. Hƣớng tiếp cận và các kỹ thuật khai phá dữ liệu
1.3.1. Một số hƣớng tiếp cận chính của khai phá dữ liệu
- Phân lớp và dự đoán (classification & prediction): Là xếp đối tƣợng vào một
trong các lớp đã biết trƣớc. Ví dụ: phân lớp loại cƣớc hoặc loại dịch vụ dựa trên số
máy bị gọi của cuộc gọi, phân lớp khu vực dựa trên số máy chủ gọi, phân lớp giờ
cao điểm, thấp điểm dựa trên giờ bắt đầu đàm thọai,...
- Luật kết hợp (association rules): Là dạng luật biểu diễn tri thức ở dạng tƣơng
đối đơn giản. Luật kết hợp có khả năng ứng dụng trong nhiều lĩnh vực khác nhau
trong đó có lĩnh vực viễn thông.
- Khai thác mẫu tuần tự (sequential/temporal patterns): Tƣơng tự nhƣ khai phá
luật kết hợp nhƣng có thêm tính thứ tự và tính thời gian. Một luật mơ tả mẫu tuần tự
có dạng tiêu biểu X -> Y, phản ánh sự xuất hiện của biến cố X sẽ dẫn đến việc xuất
hiện biến cố Y. Hƣớng tiếp cận này có tính dự báo cao.
- Phân cụm (clustering/segmentation): Sắp xếp các đối tƣợng theo từng cụm
(số lƣợng và tên của cụm chƣa đƣợc biết trƣớc). Các đối tƣợng đƣợc gom cụm sao
cho mức độ tƣơng tự giữa các đối tƣợng trong cùng một cụm là lớn nhất và mức độ
tƣơng tự giữa các đối tƣợng nằm trong các cụm khác nhau là nhỏ nhất. Phân cụm

còn đƣợc gọi là học khơng có giám sát (unsupervised learing).
1.3.2. Các phƣơng pháp khai phá dữ liệu (data mining)
Quá trình khai phá dữ liệu là q trình phát hiệ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 nhƣ trong [6 ]:
Số hóa bởi Trung tâm Học liệu – ĐHTN




12

- Phƣơng pháp quy nạp
- Cây quyết định và luật
- Phát hiện các luật kết hợp
- Các phƣơng pháp phân lớp và hồi quy phi tuyến
- Phân nhóm và phân đoạn
- Các phƣơng pháp dựa trên mẫu
- Mơ hình phụ thuộc dựa trên đồ thị xác suất
- Mơ hình học quan hệ
- Khai phá dữ liệu văn bản
- Mạng neuron
- Thuật giải di truyền
1.4. Khai phá luật kết hợp trong cơ sở dữ liệu
1.4.1. Luật kết hợp
Khai phá luật kết hợp là một kỹ thuật quan trọng của KPDL đƣợ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,
Tomas Imielinski, Arun Swami đề xuất năm 1993 [8]. Sau đó năm 1996 đƣợc
Rakesh Agrawal , Heikki Mannila, Ramakrishnan Srikant, Hanno Toivonen,
A.Inkeri Verkamo tiếp tục phát triển cải tiến. Những nghiên cứu về luật kết hợp
gần đây tập trung xây dựng các 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 từ các thuật tốn đã có [9].
Chức năng của khai phá dữ liệu gồm phân lớp, phân cụm, dự đốn và tìm luật
kết hợp. Trong đó, khai phá luật kết hợp là lĩnh vực quan trọng giúp chúng ta tìm
đƣợc các mối liên hệ giữa các mục dữ liệu (items – thuộc tính) của CSDL. Các
thơng tin “bề nổi” có thể tìm thấy một cách nhanh chóng nhờ ngơn ngữ truy vấn dữ
liệu SQL. Các thông tin “tiềm ẩn” phản ánh các mối quan hệ nhân quả giữa các
thành phần dữ liệu khả năng một biến cố xảy ra trong tƣơng lai, … Chẳng hạn,
trong ngành viễn thông các loại dịch vụ cung cấp cho khách hàng ngày càng nhiều,
do đó chúng ta có thể tìm mối liên kết giữa việc sử dụng các loại dịch vụ để phục vụ

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




13

cho việc quảng cáo , tiếp thị. Ví dụ nhƣ: “ 85% khách hàng mua điện thoại di động
thì mua thêm simcard, 30% mua cả điện thoại và simcard” hoặc “70% khách hàng
gọi liên tỉnh và sống ở các huyện thì gọi điện thoại IP 171 liên tỉnh, trong số 25% số
khách hàng vừa gọi liên tỉnh và sống ở các huyện vừa gọi điện thoại IP 171 liên
tỉnh”.
Vậy “mua điện thoại di động” hay “ gọi liên tỉnh và sống ở các huyện” đƣợc
xem là tiền đề của luật, còn “mua simcard” hay “gọi IP 171 liên tỉnh” là kết luận
của luật. Các con số 30% hay 25% là độ hỗ trợ của luật (support-số phần trăm các
giao tác chứa cả vế trái và vế phải của luật), còn 85% hay 70% là độ tin cậy của luật
(confidence- số phần trăm các giao tác thỏa mãn vế trái thì cũng thỏa mãn vế phái).
Luật có dạng tổng quát là: “if X then Y”, ở đây X là giả thiết, Y là kết luận. Hơn
nữ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
q trình ra quyết định. Tìm kiếm đƣợc các luật kết hợp “quý hiếm” và mang nhiều

thông tin từ CSDL 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.
1.4.2. 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 đã đƣợc nghiên cứu và phát triển
theo nhiều hƣớng khác nhau. Có những đề xuất nhằm cải tiến thuật tốn, có đề xuất
tìm kiếm những luật có ý nghĩa hơn và có một số hƣớng chính sau đây:


Luật kết hợp nhị phân (binary association rule) hay luật kết hợp

boolean (boolean association rule): Là hƣớng nghiên cứu đầu tiên của luật kết hợp
[8]. Theo dạng luật kết hợp này thì các thuộc tính (items) 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ề “tần suất”
hay mức độ xuất hiện. 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ó [10]. Đây là dạng luật đơn giản và 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: “gọi liên tỉnh = „yes‟ AND gọi di

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




14

dộng = „yes‟ => gọi quốc tế = „yes‟ AND gọi dịch vụ 1080 = „yes‟, với độ hỗ trợ
20% và độ tin cậy 80%”.


Luật kết hợp có thuộc tính số (quantitative and categorical association


rule): Để khai phá 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ó [11]. Một ví dụ về dạng luật này:
“phƣơng thức gọi = „tự động‟ AND giờ gọi  ‟23:00:39..23:00:59‟ AND
thời gian đàm thoại  „200..300‟ => gọi liên tỉnh = „có‟, với độ hỗ trợ 23.53%,
độ tin cậy 80%”.


Luật kết hợp với thuộc tính được đánh trọng số (association rule with

weighted items): Các thuộc tính trong CSDL thƣờng khơng có vai trị nhƣ nhau.
Có một số thuộc tính đƣợc chú trọng 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ề bài tốn tính cƣớc điện thoại, các thông tin về thời
điểm bắt đầu gọi và thời gian đàm thoại rõ ràng là quan trọng hơn rất nhiều so với
thông tin về đối tƣợng gọi. Trong quá trình tìm kiếm luật, chúng ta sẽ gán cho các
thuộc tính thời điểm bắt đầu gọi và thời gian đàm thoại các trọng số lớn hơn so với
trọng số của thuộc tính đối tƣợng gọi. Đâ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 toán này [12] [13].


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ô.


Luật kết hợp nhiều mức (multi-level association rules): 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 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, …”.


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 giải thuật tuần tự, các nhà làm tin học cũng
tập trung vào nghiên cứu các giải thuật song song cho quá trình phát hiện luật kết

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




15

hợp. Có rất nhiều thuật tốn song song khác nhau đã đƣợc đề xuất [11] [14], chúng
có thể phụ thuộc hoặc độc lập với nền tảng phần cứng.


Luật kết hợp mờ (fuzzy association rule): Với những khó khăn gặp phải

trong q trình rời rạc hóa các thuộc tính số, 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 [15] [16].
1.5. Phát biểu bài toán khai phá luật kết hợp
1.5.1. Các khái niệm cơ bản
Trƣớc khi tìm hiểu về luật kết hợp ta có một số khái niệm sau:
Cơ sở dữ liệu giao dịch (Transaction DB):
Ví dụ 1.1:

Giao tác (TID)

Tập mục (itemset)

1

A, B, D, E

2

B, C, E

3

A, B, D, E

4

A, B, C, E

5

A, B, C, D, E

6

B, C, D

Bảng 1.1. Ví dụ về một CSDL dạng giao dịch
+ Tập các hạng mục (itemset): I = {i1, i2, … , im}

Theo bảng trên ta có: I = {A, B, C, D, E}
+ Giao dịch t = {t1, t2, … , tn} sao cho các ti  I
t = {1, 2, 3, 4, 5, 6}
t1 = {A, B, D, E}
+ CSDL giao dịch T là gồm tập các giao dịch T = {t1, t2, … , tn}, với ti = {ii1, ii2, …
, iik} và iij  I.
+ Giao dịch t chứa X nếu X là tập các hạng mục trong I và X  t.
Số hóa bởi Trung tâm Học liệu – ĐHTN




16

X = {B, D}
Độ hỗ trợ (support):
Ký hiệu: - count(X): số giao dịch trong T có chứa X.
- T: tổng số giao dịch trong T.
Độ hỗ trợ của tập các mục X (ký hiệu supp(X) trong CSDL T là tỷ lệ giữa số các
giao dịch trong T chứa X trên tổng số giao dịch trong T.
supp(X) = count(X) / T
Ví dụ 1.2: Xét CSDL giao dịch ví dụ 1.1: T= 6
Tính tốn độ hỗ trợ cho các tập 1 mục suy ra bảng độ hỗ trợ sau:
X = {A} thì count(X) = 4 nên ta có supp(X) = 4/6 = 66,7%
Mục

Count(X)

Độ hỗ trợ supp(X)


A

4

66,7%

B

5

83,3%

C

4

66,7%

D

4

66,7%

E

5

83,3%


Bảng 1.2. CSDL giao dịch với độ hỗ trợ
Luật kết hợp:
Một luật kết hợp là một biểu thức có dạng X Y, trong đó X, Y là các tập
mục (X  I, Y I) và X  Y = .
Đối với luật kết hợp X Y, X gọi là tiền đề, Y là kết luận của luật.
Hai thông số quan trọng của luật kết hợp là độ hỗ trợ (support) và độ tin cậy
(confident). Đó là hai thƣớc đo cho tính tin cậy và mức độ chính xác của luật.
Độ hỗ trợ của luật kết hợp:
Độ hỗ trợ đo tính tin cậy của luật bằng tỷ lệ giữa số các giao dịch trong T chứa
X  Y (ký hiệu count(X Y )) trên tổng số giao dịch trong T.
Độ hỗ trợ của luật X Y ký hiệu là supp(X Y) và đƣợc tính bằng:
Số hóa bởi Trung tâm Học liệu – ĐHTN




17

supp(X Y) = supp(X  Y)
Hay supp(X Y) = count(X  Y) / T
Độ tin cậy của luật kết hợp:
Độ tin cậy đo mức độ chính xác của luật bằng tỷ lệ tập giao dịch có chứa
XY so với tập giao dịch có chứa X. Độ tin cậy của luật X Y, ký hiệu conf(X
Y) và đƣợc tính bằng:
conf(X Y) = supp(X  Y) / supp(X)
Hay conf(X Y) = count(X  Y) / count(X)
Từ định nghĩa ta có: 0 ≤ supp(XY) ≤ 1 và 0 ≤ conf(XY) ≤ 1. Theo
quan niệm xác suất, độ hỗ trợ là xác suất xuất hiện tập mục X  Y, còn độ tin cậy là
xác suất có điều kiện xuất hiện Y khi đã xuất hiện X.
Luật kết hợp XY đƣợc coi là một “tri thức” (“mẫu có giá trị”) nếu xảy ra

đồng thời: supp(XY)  minsup và conf(XY)  minconf, với minsup và
minconf là hai ngƣỡng tối thiểu do ngƣời sử dụng đƣa ra làm tiêu chuẩn cho quá
trình khai phá các luật kết hợp.
Ví dụ 1.3: Tính supp và conf của các luật kết hợp trong CSDL giao dịch ở ví dụ 1.1
T=6
Dạng luật XY

count(X)

Count(XY)

Supp(XY)

Conf(XY)

AC

4

2

2/6=33,3%

2/4=50%

CA

4

2


2/6=33,3%

2/4=50%

CB

4

4

4/6=66,7%

4/4=100%

BC

5

4

4/6=66,7%

4/5=80%

BD

5

4


4/6=66,7%

4/5=80%

Bảng 1.3. Tính độ hỗ trợ và độ tin cậy

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




×