0
Tải bản đầy đủ (.docx) (57 trang)

Tổng kết chương

Một phần của tài liệu PHƯƠNG PHÁP LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU (Trang 30 -35 )

Chương 2 đã trình bày về luật kết hợp trong khai phá dữ liệu, cụ thể là các định nghĩa của luật kết họp như: Định nghĩa luật kết hợp, định nghĩa độ hỗ trợ, độ tin cậy, tập mục thường xuyên và tập mục pho biến.

Trong chương 2 cũng trình bày về bài toán luật kểt hợp, thuật toán phát hiện luật kết hợp như thuật toán Apriori, thuật toán Apriori -TID, thuật toán Apriori - Hybird, phân tắch ưu nhược điếm của các thuật toán đã để cập ở trên.

CHƯƠNG 3. KHAI PHÁ TẬP MỤC CỎ PHẰN CAO TRONG Cơ SỞ DỪ LIỆU

3.1.Tổng quan về khai phá tập mục cổ phần cao

Bài toán khai phá luật kết hợp (hay còn gọi là bài toán nhị phân) do Agrawal, T.Imielinski và A. N. Swami đề xuất và nghiên cứu lần đầu tiên vào năm 1993 [7], mục tiêu của bài toán là phất hiện các tập mục thường xuyên, từ đó tạo các luật kết hợp. Trong mô hình của bài toán nhị phân này, giá trị của mỗi mục dữ liệu trong một giao tác là 0 hoặc 1, tức là chỉ quan tâm mục dữ liệu có xuất hiện trong giao tác hay không. Bài toán cơ bản này có nhiều ứng dụng, tuy vậy, do tập mục thường xuyên chỉ mang ngữ nghĩa thong kê nên nó chỉ đáp ứng được phần nào nhu cầu của thực tiễn.

Để khắc phục những hạn chế của bài toán cơ bản về khai phá luật kết họp, nhiều nhà nghiên cứu đã mở rộng bài toán theo nhiều hướng khác nhau. Trong đó phải kế đến, Hilderman và các cộng sự đã đề xuất bài toán khai phá tập mục cố phần cao (vào năm 1997) [10]. Trong mô hình này, giá trị của mục dữ liệu trong giao tác là một sổ, số đó có thể là số nguyên (chắng hạn như số lượng các mặt hàng đã bán được), cổ phần của một tập mục là số đo tỷ lệ đóng góp của tập mục trong cơ sở dừ liệu. Khai phá tập mục cổ phần cao là khám phá tất cả các tập mục có cổ phần không nhỏ hơn ngưỡng quy định bởi người sử dụng.

Trong bài toán cơ bản, các thuật toán khám phá được xây dựng theo phương pháp tìm kiểm từng hước. Cơ sở của các thuật toán là tắnh chat Apriori của tập mục thường xuyên (hay còn gọi là tắnh chat phản đơn điệu - Anti monotone). Trong mô

hình khai phá tập mục cổ phần cao, tắnh chất này không còn đúng nữa. Vì vậy việc rút gọn không gian tìm kiếm không thể thực hiện được như đối với khai phá tập mục thường xuyên. Một số tác giả đã đề nghị một số thuật toán khai phá tập mục cô phần cao như các thuật toán ZP, ZSP,

SIP, FSM [8-9-10-11], Trong đó, thuật toán FSM trong [11] là một thuật toán nhanh, cho phép khám phá tất cả các tập mục cố phần cao trong cơ sở dữ liệu giao tác cho trước.

Nội dung của chương này bao gồm: Trình bày các khái niệm cơ bản về tập mục cổ phần cao và phát biểu bài toán khai phá nó. Phần hai tóm tắt nội dung và phân tắch ưu nhược điểm của thuật toán FSM, một thuật toán nhanh cho phép khám phá tất cả các tập mục cố phần cao. Phẩn ba trình bày khái niệm Ềtập mục cố phần theo giao tác caoỂ và chứng minh nó có tắnh chất phản đơn điệu (Anti Monotone). Luận văn trình bày thuật toán AFSM dựa trên ỷ tưởng của thuật toán FSM và phương pháp mới tỉa hiệu quả các tập ứng viên sử dụng tắnh chất phản đơn điệu của tập mục cổ phần theo giao tác cao. Phần bốn xây dựng chương trình khai tập mục cổ phần cao theo thuật toán AFSM (.Advanced Fast Share Measure) và kết luận dựa trên việc phân tắch thuật toán và thực nghiệm.

3.2.Một số định nghĩa khai phá tập mục cố phần cao

Cho tập các mục (item) ỉ ={ii,i2,...,il l}. Một giao tác (transaction) T là một tập con của /, Td. Cơ sở dữ liệu là một tập các giao tác DB ={T] 7T2,...,T }. Mỗi

giao tác được gán một định danh TID. Một tập mục con X c I, gồm k mục phân biệt được gọi là một k-tập mục. Giao tác T gọi là chứa tập mục X nếu X đị.

Ta ký hiệu giá trị của mục ip (measure value) trong giao tác Tq là mvự ,T ),

mvự ,Tq) có giá trị là số tự nhiên (như số lượng đã bán của một mặt hàng trong giao tác), tức là, mvự ,T ) = 0 nếu i ỂỈ và mv{i ,T ) > 1 nếu

iPe T,-

Giá trị của giao tác Tq (transaction measure value) là tống giá tộ các mục dữ liệu trong giao tác, kỷ hiệu là tmv(Tq), tức là tnivịT )= m v ( i T )■

Tổng giá trị (total measure value) các mục dũ liệu trong cơ sở dữ liệu DB, ký hiệu là Tmv, Tmv= Tương tự, với cơ sở dữ liệu con

J,SDSir,s7,

db^DB, Tmv(db) = ỵ ỵmv(i p ,T q ).

Ký hiệu dhx là tập các giao tác chứa tập mục X, dbx =|r I ĩ ẳ DE A X ç T ].

Vắ dụ: Cho cơ sở dữ liệu là bảng giao tác có sổ lượng bảng 3.1, mv(D, ỉdOI)=L

mv(C, id03)=5, tmvịidOỈ)=9, tmv(id03)= 12, tmv(DẼ) = 60,

Định nghĩa 3.1: Cho giao tác Tq chửa tập mục X. Giá trị của tập mục X (itemset measure value) trong Tq, kỹ hiệu ìmvịx,^), là tổng giá trị của các mục ip trong Tq thuộc X, imv(X ,T ) = ^ mv(i ,T ) , với X đị.

Định nghĩa 3.2: Cho tập mục X, dbx là tập các giao tác chứa X. Giá trị của tập mục X (local measure value), ký hiệu ỉmv(X), là tổng giá trị của tập mục X tại

các giao tác trong db , tức là ỉmv(X) = ^ imv(X,T)= ^ ^ mv(i ,r).

T^ediji ýsX

Đ/n/ĩ 3.3: cổ phần (share value) hay đóng góp của tập mục X, kỷ hiệu là Sh(X), là ti số giữa giá trị của tập mục X và tống giá trị của tất cả các mục

trong cơ sở dữ liêu, tức là: Sh{x) = _

Tmv

Sh(Xị cho biết trong tống giá trị của tất cả các mục dữ liệu trong cơ sờ dữ liệu thì giá trị của tập X chiếm bao nhiêu phần trăm.

Vắ dụ: với CSDL giao tác bán hàng, Sh(X)=35% tức là trong tổng số lượng hàng đã bán được thì số lượng các mặt hàng trong X chiểm 35%.

Định nghĩa 3.4: Cho ngưỡng cổ phần (.minimum, share) minShare s% và tập mục X. X được gọi là tập mục cổ phần cao nếu ShịX) > minShare. Trường hợp ngược lại, X được gọi là tập mục cố phần thẩp.

Ký hiệu giá trị co phần tối thiếu (minimum local measure value) là min_lmv,

min_]mv= minShare X Tmv, có thể thay điều kiện Sh(X) > minShare trong định

nghĩa 3.4 bời điều kiện lmv(x) > min = ỉmv .

3

Bảng 3.1. Cơ sở dữ liệu giao tác có số lượng

TI D A B c D E F G H tm id OỈ 2 2 1 1 1 0 1 1 9 id 02 0 0 0 0 0 4 0 3 7 id 03 0 4 5 3 0 0 0 0 12 04 0 0 4 0 1 0 0 0 5 id 05 0 3 0 2 0 0 0 0 5 id 06 0 3 2 1 0 0 0 0 6 Ỉd 07 0 3 4 1 2 0 0 0 10 id 08 4 0 0 0 0 1 1 0 6 Im v 6 15 16 8 4 5 2 4 60

Vắ dụ: Xét cơ sở dữ liệu cho ở bảng 3.1 và minShare=35% . Bảng 3.2 là giá trị của các mục dữ liệu và cổ phần của chúng.

Xét X={BCDỊ, giá trị của tập mục X là:

lmv(X) - imv(X, idOl) + imv(X, id 03) + imv(X, id06) + ìmv(X,idOT) = 4 + 12 + 6 + 8 = 30

Cổ phần của tâp mue X ỉà: Sh(X) = = Ồ = 0,50 > min_share =

35%

Tmv 60 Do vậy tập X={BCD} là tập mục cổ phần cao.

Bảng 3.3 biểu diễn tất cả các tập mục cổ phần cao của cơ sở dữ liệu bảng 3.1.

Định nghĩa 3.5: Cho cơ sở dữ liệu giao tác DB và ràng buộc ngưỡng cổ phần tối thiếu minShare, khai phá tập mục cố phần cao là tìm tập HS (High Share), chứa tất cả các tập mục cố phẩn cao, tức là tập:

HS = {x I X ệ I,Sh(X) > minShare } .

- Dữ liệu cho khai phá tập mục thường xuyên là trường hợp đặc biệt của dữ liệu cho khai phá cổ phần cao khi tất cả các mục dữ liệu trong các giao tác có giá trị là 0 hoặc 1.

- Tập mục cố phần cao mang ý nghĩa khác với tập mục thường xuyên. Tập mục thườnẹ xuyên chi quan tâm đến số lần xuất hiện của tập mục trong các giao tác, trong khi đó tập mục cỗ phần cao quan tâm đến tống giá trị các mục dữ liệu của tập mục trong các giao tác. Tập mục thường xuyên quan tâm xem nhóm mặt hàng X (tập mục) có bán được hay không mà bỏ qua các tham sổ rất quan trọng là tổng số lượng mặt hàng đã bán được hoặc tổng lợi nhuận mang lại là bao nhiêu.

Ngưỡng cổ phần (mindsharej cho trước, một tập mục X có thể chỉ chứa trong

3

Bảng 3.2. Giá trị ỉmv và cổ phần của các mục dữ liệu trong CSDL bảng 3.1.

Mục dữ liệu A B c D E F G H Tổn g sổ ỉmvựp) 6 1 5 1 6 8 4 5 2 4 60 Sh(ỉp) 10, 0% 25, 0% 26,6 7% 13,3 3% 6,6 7% 8,33 % 3,33 % 6,6 7% 100 % Bàng 3,3. Các tập mục cổ phần cao của CSDL bảng 3.1. Tập mục cồ phần cao BC BD BCD ỉmv(X) 24 23 30 Sh(X) 40,0% 38,33% 50,0%

một sổ ắt giao tác của CSDL nhưng lại là tập mục cổ phần cao nếu cổ phần Sh(X) của nó vượt ngưỡng minShare. Kể cả khi khai phá trên tập dữ liệu có giá trị nhị phân (0 hoặc ] ) thì khai phá tập mục cổ phần cao cũng cho kểt quả khác với khai phá tập mục thường xuyên.

- Tắnh chất cơ bản được khai thác đề xây dựng các thuật toán khai phá tập mục thường xuyên là tắnh chất Apriori. De thấy, tắnh chất này không còn đúng với ràng buộc cổ phần.

Do đó không thế ấp dụng các thủ pháp sử dụng tắnh chất Apriori vào việc khai phá tập mục cổ phần cao. Đã có nhiều công trình nghiên cứu các thuật toán tìm tập mục cổ phần cao, các tấc giả đã đề xuất một số thuật toán như thuật toán ZP, ZSP, SIP, FSM [8-9-10-11],.... Trong số các thuật toán đó, thuật toán FSM trong [11] là một thuật toán hiệu quả. Phần tiếp theo dưới đây trình bày nội dung cơ bản của thuật toán FSM cùng một số nhận xét.

3.3.Thuật toán FSM

Năm 2005, Yu-Chiang Li và đồng nghiệp tại Khoa Khoa học máy tắnh và Kỹ thuật thông tin của Đại học Chung Chen, Đài Loan giới thiệu thuật toán FSM (Fast Share Measure) [11], đây là một thuật toán hiệu quả tìm ra tẩt cả các tập mục cố phần cao. Thay vì khai thác tắnh chất Apriori, thuật toán FSM sử dụng một số tắnh chất của tập mục cố phần cao đế rút gọn các tập mục ứng viên.

Ký hiệu:

Giá trị cố phẩn tối thiếu (minimum local measure value) là min_lmv,

min_ỉmv= minShare X Tmv;

Độ dài cực đại (maximum length) của các giao tác trong cơ sờ dữ liệu là ML,

ML = maxỊr 11T e OB)',

Giá trị cực đại (maximum value) của tất cả các mục trong cơ sở dữ liệu là MV,

MV = maxjmvCi^r ) I ip Ể ^ A Ỉ Ễ DB}. Cho minShare và k-tập mục X không là tập mục cổ phần cao. Nếu:

l m v { X ) + x M Y x ( M L Ồ k ) < min_/mv

к

thì tat cả các tập cha cúa X không là tập mục cố phẩn cao.

Đặt CF(X) = lmv(X) + x(ML-ỉc), CF(X) gọi là hàm tới hạn.

к

Mệnh đề trên đảm bảo rằng: nếu X không là tập mục cổ phần cao và CF(X )<

minjmv thì không có tập cha nào của X là tập mục cổ phần cao.

Thuật toán FSM dựa vào mệnh đề này để tỉa các tập mục ứng viên.

Nội dung cơ bản của thuật toán FSM có thể tóm tắt như sau:

Thuật toán duyệt nhiều lẩn CSDL, ở lẩn duyệt thử k, Q lưu các tập mục ứng viên, RC/t lưu các tập mục nhận được sau khi kiếm tra hàm tới hạn CF, Ft lưu các tập mục cổ phần cao nhận được.

Giống như thuật toán Apriori, ban đầu mỗi mục dữ liệu là một ứng viên. Trong lần duyệt thứ nhất, thuật toán duyệt cơ sở dữ liệu, tắnh giá trị cúa mỗi mục dữ liệu. Mỗi ứng viên 1- tập mục X sẽ bị tỉa nếu CF(X)< min_ỉmv. Trong mỗi lần duyệt tiếp theo, các tập mục ứng viên được tạo ra bằng cách nối hai (k-l)-tập mục trong

RCìc.ị nếu chúng có (k-2) mục đầu giống nhau và nhận được k-tập mục, kết nạp vào

tập ck (giả sử các mục của cơ sở dữ liệu đã được sắp thứ tự). Tất cả к tập con với độ

dài (k-1) của mỗi k-tập mục trong ck là phải thuộc RCk-1, nếu không k-tập mục này

sẽ bị tỉa. Sau khi ck được sinh ra, xóa tập RCk_i. Tiếp theo, thuật toán duyệt cơ sở dữ liệu để tìm tập mục cố phần cao. Với mỗi tập mục X trong Cb nếu tập mục này có

ỉmv(x) > min_ỉmv thì X là Cập mục cổ phần cao và được thêm vào Fk\ Ngược lại,

xét hàm tới hạn CF, nếu CF{X)<minJmv thì tập ứng viên X bị loại khỏi RCk. Quá

trình trên cứ lặp cho đến khi không có tập mục ứng viên nào được sinh ra.

Thuật toán FSM

Input: Cơ sở dữ liệu giao tác DB, ngưỡng cố phần minShare (s%). Output: Tập F gồm các tập mục co phần cao.

Method: 1. k:=l,F,:=0,C,:=I;

Một phần của tài liệu PHƯƠNG PHÁP LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU (Trang 30 -35 )

×