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

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

25 1,1K 6

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

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

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

Nội dung

ĐẠ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:

Trang 1

ĐẠ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

Trang 2

MỤC LỤC

MỤC LỤC 1

LỜI GIỚI THIỆU 2

Chương 1: Tổng quan về Data Mining 3

1.1 Data Mining là gì: 3

1.2 Các phương pháp khai phá trong Data Mining: 4

1.2.1 Phân lớp và dự đoán (Classification & Prediction) 4

1.2.2 Hồi quy (Regression) 5

1.2.3 Time Series Analysis (Phân tích chuỗi thời gian) 5

1.2.4 Prediction (Dự đoán) 5

1.2.5 Clustering (Gom nhóm) 5

1.2.6 Summarization (Tổng quát hóa) 6

1.2.7 Luật kết hợp (Association Rules): 6

1.3 Các ứng dụng của Data Mining: 6

1.4 Kết luận: 7

Chương 2: Thuật toán Apriori trong khai phá dữ liệu luật kết hợp 8

2.1 Khái niệm luật kết hợp: 8

2.2 Thuật toán Apriori: 9

2.3 Kết luận: 14

Chương 3: Ứng dụng Khai phá luật kết hợp với Microsoft Association Rule 15

3.1 Mô tả công cụ và CSDL dùng để khai phá luật kết hợp: 15

3.2 Qui trình xây dựng mô hình khai phá dữ liệu với BIDS như sau: 18

3.2.1 Tạo mới 1 project (Analysis Services Project) 18

3.2.2 Tạo Data Source kết nối đến CSDL AdventureWorksDW 18

3.2.3 Tạo một Data Source View: 19

3.2.4 Tạo một Mining Model structure 19

3.3 Kết luận: 24

TÀI LIỆU THAM KHẢO 25

Trang 3

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áytí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ườidù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ệ trithứ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ôngnghệ 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ả conngườ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êntrong 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ơ

Trang 4

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ệulớn, đã có

Data Mining là một bước của tiến trình KDD (Knowledge discovery indatabases), 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)

Trang 5

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 quantrọ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

Trang 6

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âyquyết định (Decision Tree), K-Láng giềng gần nhất (k-Nearest Neighbor), MạngNơron (Neural networks), Giải thuật di truyền (Genetic algorithms), MạngBayesian(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ácnhau 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ẳnghạ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ố độclậ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ìnhbài toán nào đó và đồng thời sử dụng mô hình đó làm mô hình ước lượng Tiếpcậ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ểutrong 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 đốitượ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

Trang 7

nằm trong các nhóm khác nhau là nhỏ nhất Một đối tượng có thể vừa thuộcnhó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ácbà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ântí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 racá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ắtcá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ácgiả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 khaiphá 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

Trang 8

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íchtì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ưutrong 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ệuchứ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ắtvă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

- Cơ sở dữ liệu lớn

- Số chiều các thuộc tính lớn

Trang 9

- 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ònphù 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 = {i1, i2,…, in} 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 Ti mà Ti  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

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 Dchứ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 ItemSetcòn lại được gọi là các Small ItemSet

Trang 10

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 TALLThuật toán phổ biến nhất tìm các luật kết hợp là Apriori sử dụng Binaryassociation rules

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”

Trang 11

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 quyhoạch động, nghĩa là từ các tập Fi = { ci | ci là tập phổ biến, |ci| = 1} gồm mọi tậpmục phổ biến có độ dài i (1 ≤ i ≤ k), đi tìm tập Fk+1 gồm mọi tập mục phổ biến

có độ dài k+1 Các mục i1, i2,…, in 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 = {t1, t2,…, tm}

Ngưỡng tối thiểu minsup > 0

Trang 12

qua việc nối (join) các tập mục có chung các tiền tố (prefix) và sau đó áp dụngnguyê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 F1 (loại bỏ những mục

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

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}

Trang 13

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:

Trang 14

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

Trang 15

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ọngtrong 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 trongkhố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 IntelligenceDevelopment 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)

Trang 16

- 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ừ kimloạ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ựcBắ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ânviê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ảnxuất nhỏ là Importadores Neptuno ở Mexico Nhà máy này tham gia sản xuất 1và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ủacô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 Neptunotrở 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 dulịch

Kết thúc 1 năm tài chánh thành công, công ty Adventure Works Cycles đangtì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 chocá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:

Ngày đăng: 20/05/2015, 10:27

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w