Tải bản đầy đủ (.doc) (26 trang)

Tiểu luận Công nghệ tri thức và ứng dụng Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp

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.03 MB, 26 trang )

Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
Bài thu hoạch môn học
Công nghệ tri thức
Ứng dụng thuật toán Apriori trong khai phá dữ
liệu sử dụng luật kết hợp
GVHD môn học: GS.TSKH. Hoàng Kiếm
Học viên thực hiện: Đặng Thị Thanh Châu
MSHV: CH1201005
Tp. HCM, Tháng 10/2014
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 1
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
MỤC LỤC
MỤC LỤC 2
LỜI GIỚI THIỆU 3
Chương 1: Tổng quan về Data Mining 4
1.1 Data Mining là gì: 4
1.2. Các phương pháp khai phá trong Data Mining: 5
1.2.1. Phân lớp và dự đoán (Classification & Prediction) 5
1.2.2. Hồi quy (Regression) 6
1.2.3. Time Series Analysis (Phân tích chuỗi thời gian) 6
1.2.4. Prediction (Dự đoán) 6
1.2.5. Clustering (Gom nhóm) 6
1.2.6. Summarization (Tổng quát hóa) 7
1.2.7. Luật kết hợp (Association Rules): 7
1.3. Các ứng dụng của Data Mining: 7
1.4. Kết luận: 8
Chương 2: Thuật toán Apriori trong khai phá dữ liệu luật kết hợp 9


2.1. Khái niệm luật kết hợp: 9
2.2. Thuật toán Apriori: 11
2.3. Kết luận: 15
Chương 3: Ứng dụng Khai phá luật kết hợp với Microsoft Association Rule 16
3.1. Mô tả công cụ và CSDL dùng để khai phá luật kết hợp: 16
3.2 Qui trình xây dựng mô hình khai phá dữ liệu với BIDS như sau: 19
3.2.1 Tạo mới 1 project (Analysis Services Project) 19
3.2.2 Tạo Data Source kết nối đến CSDL AdventureWorksDW 19
3.2.3 Tạo một Data Source View: 20
3.2.4 Tạo một Mining Model structure 20
3.3. Kết luận: 25
TÀI LIỆU THAM KHẢO 26
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 2
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
LỜI GIỚI THIỆU

Cùng với sự phát triển nhanh chóng, vượt bậc của ngành công nghiệp máy
tính, nhu cầu của người dùng đối với máy tính ngày một cao hơn. Do đó, người
dùng không chỉ giải quyết những công việc lưu trữ, tính toán bình thường, mà
còn mong đợi máy tính có khả năng thông minh hơn, có thể giải quyết vấn đề
như con người. Và từ đó trí tuệ nhân tạo nói chung và đặc biệt là công nghệ tri
thức ra đời và phát triển.
Công nghệ tri thức đóng vai trò hết sức quan trọng trong việc phát triển Công
nghệ thông tin, nâng cao sự hữu dụng của máy tính, làm cho máy tính có khả
năng tiếp nhận, giải quyết vấn đề giống như con người, thậm chí hơn cả con
người
Hướng nghiên cứu và phát triển của công nghệ tri thức bao gồm:
- Quản lý tri thức (knowledge management): bao gồm tiếp nhận, biểu diễn và

tối ưu hóa cơ sở tri thức…
- Các hệ cơ sở tri thức (knowledge-based systems): tìm hiểu cấu trúc bên
trong của một hệ cơ sở tri thức, phân loại các hệ cơ sở tri thức, và một số hệ cơ
sở tri thức điển hình.
- Khai mỏ dữ liệu, khám phá tri thức (Data mining, knowledge discovery):
nghiên cứu về phương pháp, kỹ thuật để khai mỏ dữ liệu và khám phá tri thức.
……………
Do lĩnh vực nghiên cứu về Công nghệ tri thức rất rộng và sâu, nên bài tiểu
luận môn học của em chỉ đề cập nghiên cứu theo hướng khám phá Công nghệ tri
thức về Khai phá dữ liệu (Data Mining).
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 3
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Chương 1: Tổng quan về Data Mining
1.1 Data Mining là gì:
Data Mining (khai phá dữ liệu) là một khái niệm mô tả 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 các nguồn dữ liệu
lớn, đã có.
Data Mining là một bước của tiến trình KDD (Knowledge discovery in
databases), nhằm:
- Rút trích thông tin hữu ích, chưa biết, tiềm ẩn trong khối dữ liệu lớn
- Phân tích dữ liệu bán tự động
- Giải thích dữ liệu trên các tập dữ liệu lớn
Một tiến trình KDD là một chuỗi lặp gồm các bước:
1) Data cleaning & intergration (làm sạch dữ liệu, tích hợp dữ liệu)
2) Selection & transformation (chọn lựa dữ liệu, biến đổi dữ liệu)
3) Data Mining (khai phá dữ liệu)
4) Evaluation & presentation (đánh giá kết quả mẫu, biểu diễn tri thức).
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005


Trang 4
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Bắt đầu của quá trình KDD là kho dữ liệu thô và kết thúc của quá trình là
kết xuất ra tri thức từ kho dữ liệu mà trong đó khai phá dữ liệu là bài toán quan
trọng nhất.
1.2. Các phương pháp khai phá trong Data Mining:
Thông thường, các bài toán trong Data Mining có thể đưa về 2 nhóm chính:
Các bài toán mang tính dự đoán (Predictive): đưa ra các dự đoán dựa vào các
suy diễn trong cơ sở dữ liệu mẫu, gồm các phương pháp:
- Classification (Phân lớp)
- Regression (Hồi qui)
- Time Series Analysis (Phân tích chuỗi thời gian)
- Prediction (Dự đoán)
Các bài toán mang tính mô tả (Description): đưa ra các tính chất chung nhất
của dữ liệu trong cơ sở dữ liệu mẫu , gồm các phương pháp:
- Clustering (Phân cụm)
- Summarization (Tổng quát hóa)
- Association Rule (Luật kết hợp)
- Sequence Discovery ( Khám phá tuần tự)
Tuỳ theo bài toán xác định được mà ta lựa chọn các phương pháp khai phá dữ
liệu cho phù hợp.
1.2.1. Phân lớp và dự đoán (Classification & Prediction)
Là đặt các mẫu vào các lớp được xác định trước. Nhiệm vụ chính là tìm các
hàm ánh xạ các mẫu dữ liệu một cách chính xác vào trong các lớp.Ví dụ một
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 5
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
ngân hàng muốn phân loại các khách hành của họ vào trong hai nhóm có nợ hay

không nợ, từ đó giúp họ ra quyết định cho vay hay không cho vay.
Trong kỹ thuật phân lớp chúng ta có thể sử dụng các phương pháp như: Cây
quyết định (Decision Tree), K-Láng giềng gần nhất (k-Nearest Neighbor), Mạng
Nơron (Neural networks), Giải thuật di truyền (Genetic algorithms), Mạng
Bayesian(Bayesian networks), Tập mờ và tập thô (Rough and Fuzzy Sets),…
1.2.2. Hồi quy (Regression)
Hồi quy là việc đưa một hàm ánh xạ từ một mẫu dữ liệu thành một biến dự
đoán có giá trị thực. Nhiệm vụ của hồi quy tương tự như phân lớp, điểm khác
nhau chính là ở chỗ thuộc tính để dự báo là liên tục chứ không rời rạc. Việc dự
báo các giá trị số thường được làm bởi các phương pháp thống kê cổ điển chẳng
hạn như hồi quy tuyến tính.
1.2.3. Time Series Analysis (Phân tích chuỗi thời gian)
Dựa trên việc phân tích chuỗi quan sát của một biến duy nhất theo biến số độc
lập là thời gian. Phương pháp dự báo theo chuỗi thời gian là một phương pháp
định lượng, sử dụng những dữ liệu quá khứ theo thời gian, dựa trên dữ liệu lịch
sử để phát hiện chiều hướng vận động của đối tượng phù hợp với một mô hình
bài toán nào đó và đồng thời sử dụng mô hình đó làm mô hình ước lượng. Tiếp
cận định lượng dựa trên giả định rằng giá trị tương lai của biến số dự báo sẽ phụ
thuộc vào xu thế vận động của đối tượng đó trong quá khứ.
1.2.4. Prediction (Dự đoán)
Với mô hình học tương tự như bài toán phân lớp, lớp bài toán dự đoán sẽ lọc
ra các bộ dự đoán. Khi có dữ liệu mới đến, bộ dự đoán sẽ dựa trên thông tin
đang có để đưa ra một giá trị số học cho hàm cần dự đoán. Bài toán tiêu biểu
trong nhóm này là dự đoán giá sản phẩm để lập kế hoạch trong kinh doanh.
1.2.5. Clustering (Gom nhóm)
Mục tiêu chính của việc phân nhóm dữ liệu là nhóm các đối tượng tương tự
nhau trong tập dữ liệu vào các nhóm sao cho mức độ tương tự giữa các đối
tượng trong cùng một nhóm là lớn nhất và mức độ tương tự giữa các đối tượng
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005


Trang 6
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
nằm trong các nhóm khác nhau là nhỏ nhất. Một đối tượng có thể vừa thuộc
nhóm này, nhưng cũng có thể vừa thuộc nhóm khác.
Phân nhóm dữ liệu được sử dụng nhiều trong các ứng dụng về phân đoạn thị
trường, phân đoạn khách hàng, nhận dạng mẫu, phân loại trang Web, … Ngoài
ra phân nhóm dữ liệu còn có thể được sử dụng như một bước tiền xử lý cho các
bài toán khai phá dữ liệu khác.
1.2.6. Summarization (Tổng quát hóa)
Kỹ thuật mô tả khái niệm và tổng quát hóa thường áp dụng trong việc phân
tích dữ liệu có tính thăm dò và báo cáo tự động. Nhiệm vụ chính là sản sinh ra
các mô tả đặc trưng cho một lớp. Mô tả loại này là một kiểu tổng hợp, tóm tắt
các đặc tính chung của tất cả hay hầu hết các mục của một lớp.
1.2.7. Luật kết hợp (Association Rules):
Luật kết hợp là dạng luật biểu diễn tri thức ở dạng tương đối đơn giản. Các
giải thuật tìm luật kết hợp tìm kiếm các mối liên kết giữa các phần tử dữ liệu, ví
dụ như nhóm các món hàng thường được mua kèm với nhau trong siêu thị.
Tuy luật kết hợp là một 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 rất có lợi trong các hệ hỗ trợ ra quyết
định. Tìm kiếm được những luật kết hợp đặc trưng và mang nhiều thông tin từ
CSDL 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.
1.3. Các ứng dụng của Data Mining:
Data Mining liên quan chặt chẽ đến các lĩnh vực sau:
- Statistics (Thống kê): Kiểm định model và đánh giá tri thức phát hiện được
- Machine Learning (Máy học): Nghiên cứu xây dựng các giải thuật trên nền
tảng của trí tuệ nhân tạo giúp cho máy tính có thể suy luận (dự đoán) kết quả
- Databases (Cơ sở dữ liệu): Công nghệ quản trị dữ liệu nhất là kho dữ liệu
- Visualization (Trực quan hóa): Giúp dữ liệu dễ hiểu, dễ sử dụng như chart, map
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005


Trang 7
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Do đó, Data Mining có nhiều ứng dụng trong thực tế, như:
- Tài chính và thị trường chứng khoán (Finance & stock market): Phân tích
tình hình tài chính và dự đoán giá cổ phiếu.
- Thống kê, phân tích dữ liệu và hỗ trợ ra quyết định
- Điều trị y học và chăm sóc y tế: một số thông tin về chuẩn đoán bệnh lưu
trong các hệ thống quản lý bệnh viện. Phân tích mối liên hệ giữa các triệu
chứng bệnh, chuẩn đoán và phương pháp điều trị (chế độ dinh dưỡng, thuốc,
thời gian )
- Sản xuất và chế biến: Quy trình, phương pháp chế biến và xử lý sự cố.
- Text mining và Web mining: Phân lớp văn bản và các trang Web, tóm tắt
văn bản,
- Lĩnh vực khoa học: Quan sát thiên văn, dữ liệu gene, dữ liệu sinh vật học,
tìm kiếm, so sánh các hệ gene và thông tin di truyền, mối liên hệ gene và một
số bệnh di truyền,
- Mạng viễn thông: Phân tích các cuộc gọi điện thoại và hệ thống giám sát lỗi,
sự cố, chất lượng dịch vụ,
1.4. Kết luận:
Khám phá tri thức và khai phá dữ liệu liên quan đến nhiều ngành, nhiều lĩnh
vực. Tuy đã có rất nhiều các giải pháp và phương pháp được ứng dụng trong
khai phá dữ liệu nhưng trên thực tế quá trình này vẫn gặp không ít khó khăn và
thách thức như:
- Cơ sở dữ liệu lớn
- Số chiều các thuộc tính lớn
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 8
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp

- Thay đổi dữ liệu và tri thức có thể làm cho các mẫu đã phát hiện không còn
phù hợp
- Dữ liệu bị thiếu hoặc bị nhiễu
- Quan hệ giữa các trường phức tạp
- Giao tiếp với người sử dụng và kết hợp với các tri thức đã có
- Tích hợp với các hệ thống khác
Chương 2: Thuật toán Apriori trong khai phá dữ liệu luật kết hợp
2.1. Khái niệm luật kết hợp:
Cho I = {i
1
, i
2
,…, i
n
} là tập hợp các trường gọi là items.
Gọi D: tập các giao tác, có các giao tác T
i
mà T
i
⊆ I. T chứa X nếu
X ⊆T ( X là tập có các phần tử ⊆ I).
Luật kết hợp là tìm ra mối liên hệ điều kiện giữa các items. Những luật kết
hợp này có dạng X =>Y ( nếu X ⊆ I, Y⊆ I và X ∩Y=∅). Với X được gọi
là tiền đề, Y là mệnh đề kết quả.
Hai thông số quan trọng của luật kết hợp là độ hỗ trợ (support) và độ tin cậy
(confidence)
Luật X=> Y có độ support là s nếu có s% số giao tác trong D có chứa X ∪ Y.
Hay là :
Sup(X=>Y) = s% = Card(X∪Y)/ Card(D)%
Luật X=>Y có độ tin cậy là c (confidence) nếu có c% số giao tác trong D

chứa X∪Y so với số giao tác trong D chứa X, khi đó ta có :
Conf(X=>Y) = c %= Card(X∪Y)/Card(X)%
Tâp các hạng mục dữ liệu gọi là ItemSet có độ support lớn hơn hay bằng giá
trị ngưỡng nhỏ nhất (gọi là minsupp) được gọi là Large ItemSet. Các ItemSet
còn lại được gọi là các Small ItemSet.
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 9
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Với mỗi một Large ItemSet - L, và A là một tập con khác rỗng của L, nếu tỉ
lệ % giữa support(L) so với support(A) >= độ tin cậy nhỏ nhất (gọi là minconf)
thì ta có luật kết hợp A => (L\A).
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. Trong đó minsup và minconf là hai giá trị ngưỡng
cho trước. Một tập mục X có độ hỗ trợ vượt qua ngưỡng
minsup được gọi là tập phổ biến.
Minh họa: Cho CSDL sau
Một số loại luật kết hợp:
- Binary association rules (luật kết hợp nhị phân): Apple => Banana
- Quantitative association rules (luật kết hợp định lượng):
weight in [70kg – 90kg] => height in [170cm – 190cm]
- Fuzzy association rules (Luật kết hợp mờ):
weight in HEAVY => height in TALL
Thuật toán phổ biến nhất tìm các luật kết hợp là Apriori sử dụng Binary
association rules
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 10
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp

2.2. Thuật toán Apriori:
Thuật toán Apriori là một thuật toán điển hình áp dụng trong khai phá luật kết
hợp. Thuật toán dựa trên nguyên lý Apriori “Tập con bất kỳ của một tập phổ
biến cũng là một tập phổ biến”.
Mục đích của thuật toán Apriori là tìm ra được tất cả các tập phổ biến có thể
có trong cơ sở dữ liệu giao dịch D. Thuật toán hoạt động theo nguyên tắc quy
hoạch động, nghĩa là từ các tập F
i
= { c
i
| c
i
là tập phổ biến, |c
i
| = 1} gồm mọi tập
mục phổ biến có độ dài i (1 ≤ i ≤ k), đi tìm tập F
k+1
gồm mọi tập mục phổ biến
có độ dài k+1. Các mục i
1
, i
2
,…, i
n
trong thuật toán được sắp xếp theo một thứ tự
cố định.
Thuật toán Apriori:
Input: Cơ sở dữ liệu giao dịch D = {t
1
, t

2
,…, t
m
}.
Ngưỡng tối thiểu minsup > 0.
Output: Tập hợp tất cả các tập phổ biến.
mincount = minsup * |D|;
F
1
= { các tập phổ biến có độ dài 1};
for(k=1; F
k
!= ∅; k++)
{
C
k+1
= Apriori_gen(F
k
);
for each t in D
{
C
t
= { c ∈ C
k+1
| c ⊆ t};
for c ∈ C
t

c.count++;

}
F
k+1
= {c ∈ C
k+1
| c.count > mincount}
}
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 11
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
return
k
k
F
;
Thủ tục con Apriori_gen có nhiệm vụ sinh ra (generation) các tập mục có độ
dài k+1 từ các tập mục có độ dài k trong tập F
k
. Thủ tục này được thi hành thông
qua việc nối (join) các tập mục có chung các tiền tố (prefix) và sau đó áp dụng
nguyên lý Apriori để loại bỏ bớt những tập không thỏa mãn
Trong mỗi bước k, thuật toán Apriori đều phải duyệt cơ sở dữ liệu giao dịch
D. Khởi động thuật toán sẽ tiến hành duyệt D để có được F
1
(loại bỏ những mục
có độ hỗ trợ nhỏ hơn minsup).
Kết quả của thuật toán là tập gồm các tập phổ biến có độ dài từ 1 đến k:
F = F
1

∪ F
2
∪ … ∪ F
k
Để sinh các luật kết hợp thì đối với mỗi tập phổ biến I ∈ F, ta xác định các tập
mục không rỗng là con của I. Với mỗi tập mục con s không rỗng của I ta sẽ thu
được một luật kết hợp s→(I-s) nếu độ tin cậy thỏa mãn:
conf(s→(I-s)) = supp(I)/supp(I-s) ≥ minconf
(minconf là ngưỡng tin cậy cho trước)
Minh họa 1: Giả sử ta có CSDL giao dịch như sau :
Thuật toán Apriori khai phá luật kết hợp được mô tả qua các bước sau
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 12
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Ta có frequent itemsets I ={B,C,E}, với min_conf =80% ta có 2 luật kết hợp
là: {B,C} => {E} và {C,E} => {B}
Minh họa 2: Giả sử ta có CSDL giao dịch bán hàng gồm 5 giao dịch như
sau:
Thuật toán Apriori tìm các luật kết hợp trong giao dịch bán hàng trên như sau:
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 13
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Kết quả ta có các luật kết hợp sau (với min_sup= 40%, min_conf=70%)
R1: Beer => Diaper (support =60%, confidence = 75%)
R2: Diaper =>Beer (support =60%,confidence = 75%)
R3: Milk =>Beer (support =40%, confidence = 100%)
R4: Baby Powder => Diaper (support =40%,confidence = 100%)
Từ kết quả các luật được sinh ra bởi giao dịch bán hàng trên, ta thấy rằng có

luật có thể tin được (hợp lý) như Baby Powder => Diaper, có luật cần phải
phân tích thêm như Milk =>Beer và có luật có vẻ khó tin như Diaper =>Beer.Ví
dụ này sinh ra các luật có thể không thực tế vì dữ liệu dùng để phân tích
(transaction database) hay còn gọi là tranining data rất nhỏ.
Thuật toán Apriori được dùng để phát hiện các luật kết hợp dạng khẳng định
(Positive Rule X=>Y) nhị phân (Binary Association Rules) chứ không thể phát
hiện các luật kết hợp ở dạng phủ định (Negative Association Rule) chẳn hạn
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 14
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
như các kết hợp dạng “Khách hàng mua mặt hàng A thường KHÔNG mua mặt
hàng B” hoặc “Nếu ủng hộ quan điểm A thường KHÔNG ủng hộ quan điểm
B”. Khai phá các luật kết hợp dạng phủ định (Mining Negative Association
Rules) có phạm vi ứng dụng rất rộng và thú vị nhất là trong Marketing, Health
Care và Social Network Analysis.
2.3. Kết luận:
Thuật toán Apriori là phương pháp tìm ra những tập phổ biến trong CSDL, từ
đó, rút trích được những luật có ích. Tuy nhiên, Apriori cũng có nhiều khuyết
điểm như:
- Phải duyệt CSDL nhiều lần
- Số lượng tập ứng viên rất lớn
- Thực hiện việc tính độ phổ biến nhiều, đơn điệu
Do đó, dẫn đến việc cải tiến Apriori, với ý tưởng chung
- Giảm số lần duyệt CSDL
- Giảm số lượng tập ứng viên
- Qui trình tính độ phổ biến thuận tiện hơn.
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 15

Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Chương 3: Ứng dụng Khai phá luật kết hợp với Microsoft
Association Rule
3.1. Mô tả công cụ và CSDL dùng để khai phá luật kết hợp:
Khai phá luật kết hợp (Association Rule Discovery) là kỹ thuật rất quan trọng
trong lĩnh vực khai phá dữ liệu. Mục đích của việc khai phá luật kết hợp là tìm
ra các mối quan hệ, sự kết hợp hay mối tương quan giữa các đối tượng trong
khối lượng lớn dữ liệu
Công cụ sử dụng khai phá dữ liệu bằng luật kết hợp:
Công cụ xây dựng mô hình khai phá dữ liệu Business Intelligence
Development Studio (BIDS) của Microsoft SQL Server 2008 R2 Enterprise.
BIDS là công cụ cho phép tổ chức quản lý và khai thác kho dữ liệu (Xử lý
phân tích trực tuyến) cũng như xây dựng các mô hình khai phá dữ liệu rất dễ sử
dụng và hiệu quả của Microsoft
BIDS cho phép triển khai các mô hình khai phá dữ liệu sau:
- Micorosft Decision Tree (Cây quyết định)
- Microsoft Clustering (Phân cụm)
- Micorosoft Naive Bayes(Phân lớp với Bayes Rules)
- Micorosoft Time Series (Chuỗi thời gian)
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 16
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
- Micorosoft Association Rule (Luật kết hợp)
- Micorsoft Sequence Clustering (Phân tích chuỗi)
- Microsoft Neural Network (Mạng Neural)
- Micorsoft Linear Regression(Hồi qui tuyến tính)
- Micorsoft Logistics Regression(Hồi qui logistics)
Mô tả dữ liệu sử dụng trong mô hình:
Cơ sở dữ liệu minh họa AdventureWorks lấy bối cảnh trên dữ liệu của 1 công

ty hư cấu có tên Adventure Works Cycles. Đây được cho là 1 công ty sản xuất
đa quốc gia có qui mô lớn. Công ty sản xuất và kinh doanh xe đạp làm từ kim
loại và các chất liệu tổng hợp. Thị trường của công ty này bao gồm cả khu vực
Bắc Mỹ, Châu Âu và Châu Á. Trong khi trụ sở chính của công ty lại được đặt ở
Bothell, Washington gồm có 290 nhân viên, công ty cũng có 1 vài nhóm nhân
viên kinh doanh khu vực ở các thị trường hoạt động của mình.
Vào năm 2000, công ty Adventure Works Cycles có mua lại 1 nhà máy sản
xuất nhỏ là Importadores Neptuno ở Mexico. Nhà máy này tham gia sản xuất 1
vài thành phần thiết yếu trong toàn bộ dây chuyền sản xuất ra thành phẩm của
công ty. Các thành phần được nhà máy này sản xuất sẽ được chuyển tới trụ sở
chính ở Bothell để lắp ráp thành thành phẩm. Năm 2001, Importadores Neptuno
trở thành nhà máy duy nhất sản xuất phà phân phối dòng sản phẩm xe đạp du
lịch.
Kết thúc 1 năm tài chánh thành công, công ty Adventure Works Cycles đang
tìm cách mở rộng thị phần bằng cách tập trung vào các hoạt động bán hàng cho
các khách hàng quan trọng nhất của họ, mở rộng thông tin sản phẩm thông qua
hệ thống Website đồng thời tiết giảm chi phí bán hàng bằng cách giảm chi phí
sản xuất.
Mô hình sử dụng 2 view chứa dữ liệu về bán hàng (xe đạp) của công ty là
vAssocSeqOrders và vAssocSeqLineItems. Cấu trúc 2 views như sau:
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 17
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
vAssocSeqOrders
vAssocSeqLineItems
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 18
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp

3.2 Qui trình xây dựng mô hình khai phá dữ liệu với BIDS như sau:
Tạo mới 1 project (Analysis Services Project)
Tạo một Data Source
Tạo một Data Source View
Tạo một Mining Model structure.
Tạo các Mining Models.
Khai thác Mining Models.
Kiểm tra độ chính xác của Mining Models.
Sử dụng Mining Models để dự đoán.
3.2.1 Tạo mới 1 project (Analysis Services Project)
Khởi động SQL Server Business Intelligence Development Studio tạo 1 project mới có tên
“DataMing”
3.2.2 Tạo Data Source kết nối đến CSDL AdventureWorksDW
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 19
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
3.2.3 Tạo một Data Source View:
Trong Data Source View chọn dữ liệu lấy từ View là vAssocSeqOrders và
vAssocSeqLineItems
3.2.4 Tạo một Mining Model structure.
Trong cửa sổ Solution Explorer, bấm phải chuột trên mục Mining
Structures chọn New Mining Structure. Sau đó chọn mô hình khai phá dữ liệu
là Microsoft Association Rules.
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 20
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Bấm Next và chọn Data Source View đã tạo là AdventureWorksDW. Bấm
Next và chọn Case là vAssocSeqOrders và Nested là vAssocSeqLineItems.

Thiết chọn các thuộc tính Key, Input và Predictable cho mô hình như sau:
Màn hình Mining Models như sau:
Hiệu chỉnh tham số cho mô hình: Trong cửa sổ Mining Models, bấm phím
phải chuột vào Microsoft_Association_Rules và chọn Set Algorithm Parameters
và thiết lập giá trị 2 tham số MINIMUM_PROBABILITY là 0.1 và
MINIMUM_SUPPORT là 0.01 như sau:
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 21
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Thực hiện Mining Models
Sau khi hiệu chỉnh các tham số của Mining Models, bấm F5 để thực hiện
mô hình
Khám phá Mining Models
Kết quả của Microsoft Association Rules thể hiện trong Tab Mining
Models Viewer bởi 3 nội dung chính là Itemsets, Rules, và Dependency Net
- Itemsets: Itemsets cho biết các thông tin quan trọng của luật kết hợp như
Support (độ hỗ trợ của luật kết hợp), Size (Số items trong Itemsets). Để hiển thị
các Itemsets có chứa một item nào đó (ví dụ mẫu xe Sport-100) thì nhập Sport-100
trong ô Filter Itemset.
Hình trên với Itemsets có Support là 590 gồm 2 items đó là Road Tire
Tube và Sport-100 có nghĩa là trong tất cả các giao dịch thì có 590 giao dịch
trong đó khách hàng mua loại xe Road Tire Tube thì cũng mua loại xe Sport-
100.
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 22
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
- Rules Tab: Phần này trình bày các luật kết hợp được phát hiện bởi mô
hình. Các thông tin về luật kết hợp bao gồm:

Probability: Cho biết xác suất xảy ra của luật.
Importance: Đo lường tính hữu dụng của luật, giá trị này càng cao thì luật
kết hợp càng tốt.
Rules: Phần này thể hiện các luật kết hợp dạng x==>Y
Các luật này cho biết sự kết hợp giữa các items trong cở sở dữ liệu giao
dịch. Chẳng hạn luật kết hợp thứ 3 cho bạn biết rằng nếu một khách hàng nào đó
mua các sản phẩm là xe đạp model ML Road Tire và Sport-100 thì người đó
luôn mua Road Tire Tube với xác suất 100%.
- Dependency Net (Mạng phụ thuộc):
Sử dụng Dependency Net cho phép bạn hiểu được sự tác động của các
items khác nhau trong Model. Mỗi Node trong Dependency Net thể hiện một
Item, bằng cách chọn một item bạn sẽ thấy được các items khác được xác định
bởi Item đã chọn (hoặc dùng để xác định Item đã chọn) trong model.
Bạn có thể kéo thanh trượt (Slile) bên phải để xem các mức độ kết hợp
(mạnh hay yếu) giữ các Items trong model.
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 23
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
Trong Dependency Net, nếu chọn Node Mountain bottle Cage ta sẽ thấy
rằng Item Mountain bottle Cage có thể được dự đoán bởi 2 items khác đó
là Water bottle và Mountain-200 hoặc Mountain bottle Cage được dùng để
dự đoán 2 Items water bottle và Mountain-200 (Dấu mũi tên 2 chiều, xem hình
dưới).
Điều này có nghĩa là những sản phẩm này có khả năng được mua cùng
nhau. Nếu khách hàng nào đó mua xe đạp thì có khả năng họ mua kẹp để bình
đựng nước và bình đựng nước.
Các thông tin này có thể giúp cho bộ phận bán hàng đặt các sản phẩm có
khả năng mua cùng nhau cạnh nhau để giúp cho khách hàng khỏi mất công tìm
kiếm cũng như xây dựng các chiến lược marketing hiệu quả.

Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 24
Ứng dụng thuật toán Apriori trong khai phá dữ liệu sử dụng luật kết hợp
3.3. Kết luận:
BIDS là công cụ rất tốt trong việc xây dựng các Mining Models bởi tính dễ sử
dụng, tính trực quan cao nên dễ hiểu và dễ giải thích kết quả của mô hình (đây là
yêu cầu rất quan trọng đối với việc xây dựng các Mining Models). Ngoài ra
BIDS lấy dữ liệu từ các hệ quản trị cơ sở dữ liệu quan hệ nên việc thu thập dữ
liệu cho Mining Models rất thuận tiện.
Một số hệ thống khai phá dữ liệu khác:
- Intelligent Miner (IBM)
- Oracle Data Mining
- Enterprise Miner (SAS Institute)
- Weka
Học viên thực hiện : - Đặng Thị Thanh Châu CH1201005

Trang 25

×