1. Trang chủ
  2. » Công Nghệ Thông Tin

Tổng luận về khai thác song song tập phổ biến từ dữ liệu giao dịch trên bộ xử lý đa nhân

6 15 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 6
Dung lượng 641,12 KB

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

Nội dung

Bài viết trình bày khảo sát và tổng luận về một số thuật toán khai thác song song tập phổ biến (bước quan trọng của khai thác luật kết hợp) trên bộ xử lý đa nhân. Điều này giúp các nhà nghiên cứu có sự lựa chọn giải pháp kỹ thuật phù hợp khi cần nâng cao hiệu năng trong khai thác dữ liệu lớn.

Trang 1

Tổng Luận về Khai Thác Song Song Tập Phổ Biến

từ Dữ Liệu Giao Dịch trên Bộ Xử Lý Đa Nhân

Phan Thành Huấn1,2, Lê Hoài Bắc3

1Khoa Toán – Tin học, Trường Đại học Khoa học Tự nhiên, ĐHQG.HCM-VN

2Bộ môn Tin học, Trường Đại học Khoa học Xã hội và Nhân văn, ĐHQG.HCM -VN

3Khoa Công nghệ Thông tin, Trường Đại học Khoa học Tự nhiên, ĐHQG.HCM-VN

Email: huanphan@hcmussh.edu.vn, lhbac@fithcmus.edu.vn

Tóm tắt - Trong gần ba mươi năm qua, khai thác luật kết hợp

luôn được nhiều nhà nghiên cứu quan tâm và đề xuất nhiều thuật

toán hiệu quả cho bài toán tìm kiếm các mối tương quan tiềm ẩn

giữa các item trong dữ liệu Cùng với sự bùng nổ của dữ liệu lớn

và phát triển vượt bậc của kỹ thuật phần cứng, một số nhà

nghiên cứu đã nâng cao hiệu năng khai thác luật kết hợp bằng

cách sử dụng môi trường tính toán song song trên các bộ xử lý đa

nhân – giúp giảm thiểu thời gian khai thác đáng kể Trong bài

viết này, chúng tôi khảo sát và tổng luận về một số thuật toán

khai thác song song tập phổ biến (bước quan trọng của khai thác

luật kết hợp) trên bộ xử lý đa nhân Điều này giúp các nhà

nghiên cứu có sự lựa chọn giải pháp kỹ thuật phù hợp khi cần

nâng cao hiệu năng trong khai thác dữ liệu lớn Sau cùng, chúng

tôi đưa ra khuyến nghị và định hướng nghiên cứu của nhóm

trong sự gia tăng như vũ bão của dữ liệu thu thập

Từ khóa – bộ xử lý đa nhân, khai thác song song, luật kết hợp,

tập phổ biến

I GIỚI THIỆU Khai thác luật kết hợp là một kỹ thuật quan trọng trong lĩnh

vực khai thác dữ liệu Mục tiêu khai thác là phát hiện những

mố i tương quan giữa các item trong tập dữ liệu Năm 1993,

Agrawal và đồng sự đề xuất mô hình đầu tiên của bài toán khai

thác luật kết hợp là mô hình nhị phân hay còn gọi là mô hình

cơ bản, phân tích dữ liệu giao dịch, phát hiện các mối tương

quan giữa các mặt hàng đã bán tại các siêu thị Từ đó có kế

hoạch bố trí, sắp xếp, kinh doanh hợp lý, đồng thời tổ chức sắp

xếp các quầy gần nhau như thế nào để có doanh thu trong các

phiên giao dịch là lớn nhất Ngoài ra, có thể áp dụng tri thức

này để dự đoán số lượng các mặt hàng được bán chạy nhất

trong thời gian sắp tới Tổng hợp các tri thức này để lên kế

hoạch cho hoạt động, sản xuất, kinh doanh một cách thuận tiện

hơn nhằm giảm bớt thời gian thống kê, tìm hiểu thị trường,

Các thuật toán tuần tự được đề xuất cho khai thác luật kết

hợp chia thành 2 pha [1-9]:

Pha 1: Tìm tất cả các kết hợp thỏa ngưỡng phổ biến tối

thiểu minsup - pha tốn khá nhiều thời gian xử lý;

Pha 2: sinh luật kết hợp lần lượt từ các kết hợp thỏa minsup

ở pha 1 và các luật kết hợp này phải thỏa ngưỡng tin cậy tối

thiểu minconf

Agrawal đã đề xuất thuật toán Apriori [1] - khai thác tập

phổ biến FI (Frequent Itemset), thuật toán quét dữ liệu nhiều

lần và có độ phức tạp dạng hàm mũ Để cải tiến về mặt thời

gian trong khai thác tập phổ biến, nhiều nhà nghiên cứu đã đề xuất thuật toán khai thác hiệu quả tập phổ biến dựa vào các cấu trúc lưu trữ rút gọn không gian tìm kiếm như SE-Tree, Prefix-Tree, IT-Tree, FP-Tree,… Tuy nhiên, trong thực tế việc phát sinh tập phổ biến tốn nhiều thời gian và có số lượng

itemset rất lớn Vì vậy, một số nhà nghiên cứu đã đề xuất khai

thác tập phổ biến đóng CFI (Closed Frequent Itemset) có số

lượng ít hơn tập phổ biến như thuật toán A-Close [4], Charm [5], Song song đó, một số nhà khoa học khác cũng đề xuất

khai thác tập phổ biến tối đại MFI (Maximal Frequent Itemset) như thuật toán Pincer-Search [6], Mafia [7], …

Ở một số ứng dụng thực tế, việc sử dụng các tập FI, CFI

và MFI tốn rất nhiều chi phí tính toán cũng như s ố lượng

itemset phổ biến rất lớn Bayardo đề xuất khai thác tập phổ

biến có chiều dài tối đa LFI (Maximu m Length Frequent Itemset) đây là tập con của tập phổ biến FI và chỉ chứa các

itemset phổ biến có chiều dài tối đa như thuật toán Max-Miner

[8], DepthProject [9],

Năm 1995, Park đã phát triển thuật toán PDM [10] tựa Apriori chạy trên hệ thống tính toán phân tán (HT3PT) để nâng cao hiệu năng khai thác dữ liệu Những năm sau: Zaki, Agrawal và Han cũng lần lượt đề xuất các thuật toán CCPD

[11], AprioriHybrid [12] và IDD [13] theo hướng tiếp cận tựa Apriori Năm 1997, Zaki đã đề xuất thuật toán Par-Eclat [14] khai thác luật kết hợp trên HT3PT theo hướng tiếp cận trên

cấu trúc dàn (lattice) Đến năm 2003, Chung dựa trên thuật toán Max-Miner [8] của Bayardo và hiệu chỉnh thực hiện trên

HT3PT gọi là thuật toán Par-MaxMiner Tuy nhiên, các HT3PT tồn tại hạn chế lớn là phụ thuộc vào đường truyền trao

đổi thông tin giữa các máy tính Năm 2004, Javed đề xuất

thuật toán PFP [16] dựa trên cấu trúc FP-Tree để khai thác song song tập phổ biến trên máy tính có nhiều Bộ xử lý (BXL), các thuật toán này cũng tồn tại hạn chế về độ trễ cao khi các BXL cần giao tiếp Năm 2005, Intel đã cho ra đời thế

hệ BXL chứa nhiều nhân xử lý (BXLĐN), kéo theo nhiều công trình khai thác hiệu quả tập phổ biến trên BXLĐN như FP-array [17], PLCM [20],… cho đến nay

Phần 2, bài báo trình bày các khái niệm cơ bản về khai thác luật kết hợp, tập phổ biến, thuật toán Apriori và tính toán hiệu năng cao Phần 3, khảo sát về một số thuật toán khai thác song song tập phổ biến trên BXLĐN trong nhiều năm qua theo hướng tiếp cận sử dụng cấu trúc dữ liệu và chiến lược tìm kiếm tương ứng Tổng luận về một số thuật toán khai thác song song tập phổ biến trên BXLĐN trong phần 4; kết luận và hướng phát triển được trình bày trong phần 5

Trang 2

II CÁC KHÁI NIỆM CƠ BẢN

A Khai thác luật kết hợp

Cho I = {i 1 , i 2, , i m } là tập gồ m m thuộc tính, mỗ i thuộc

tính gọi là item Tập các item X ={i 1 , i 2, , i k }, ij I (1 j k)

gọi là itemset, itemset có k item gọi là k-itemset Ɗ là dữ liệu

giao dịch, có n bản ghi phân biệt gọi là tập các giao dịch T =

{t 1 , t 2, , t n }, mỗi giao dịch t k ={i k1 , i k2, , i km }, i kj I (1 k j m)

Định nghĩa 1: Cho X, Y I với X Y = , luật kết hợp là

một mệnh đề kéo theo có dạng X Y, thỏa hai ngưỡng độ đo

cho trước (minsup – độ phổ biến tối thiểu; minconf – độ tin

cậy tối thiểu), trong đó X gọi là tiền đề và Y là kết luận

Định nghĩa 2 : Độ phổ biến (support) của itemset X I, ký

hiệu sup(X) - tỷ lệ giữa số giao dịch trong Ɗ có chứa X và n

giao dịch

Định nghĩa 3: Độ phổ biến của luật kết hợp X Y, ký

hiệu sup(X Y) - tỷ lệ giữa số giao dịch trong Ɗ chứa {X

Y} và n giao dịch

Định nghĩa 4 : Độ tin cậy (confident) của luật kết hợp X

Y, ký h iệu conf(X Y) - tỷ lệ giữa số giao d ịch chứa {X Y}

và số giao dịch chứa X trong Ɗ

Mã giả thuật toán 1: khai thác luật kết hợp

Đầu vào: Dữ liệu Ɗ, minsup, minconf

Đầu ra: Tập luật kết hợp thỏa minsup, minconf

1 FI = { }//tập chứa các kết hợp

2 Với mỗi Z Ƥ1(I), thực hiện:

3 Nếu sup(Z) minsup thì

4 FI = FI Z

5 AR = { }//tập chứa luật kết hợp

6 Với mỗi fi FI, thực hiện:

7 Nếu conf(X {fi \ X}) minconf thì

8 AR = AR (X {fi \ X})

9 Trả về AR

(Ƥ1(I): tất cả các powerset của I có ít nhất một item)

Thuật toán 1 được chia thành 2 pha

Pha 1: (dòng 1 đến 4) đây là pha tìm tất cả các kết hợp

thỏa ngưỡng minsup;

Pha 2 : (dòng 5 đến 8) sinh các luật kết hợp lần lượt từ các

kết hợp thỏa minsup ở pha 1 và các luật kết hợp này phải thỏa

ngưỡng tin cậy tối thiểu minconf (luật kết hợp X {fi \ X} có

tiền đề X và kết luận Y={fi \ X}, X Y = )

Phân tích không gian tìm kiếm thuật toán 1:

Pha 1: dữ liệu giao dịch Ɗ có | I | = m, tất cả các kết hợp

được sinh từ I có ít nhất một item - Ƥ 1(I), chúng ta có không

gian các kết hợp giữa các item được sinh ra từ m item là 2m –

1, đây chính là không gian tìm kiếm ở pha 1 cho v iệc xác đ ịnh

các kết hợp thỏa ngưỡng minsup

Pha 2: sau kh i xác định được tập các kết hợp hay itemset

thỏa minsup, pha này sinh luật kết hợp lần lượt từ các itemset

Giả sử, cho itemset X có m item, l (1 l m) và r (1 r m-l)

là số item ở tiền đề và kết luận Khi đó, ta có m

l

C số cách chọn tiền đề có l item trên m item từ itemset X và m l

r

C số cách chọn

kết luận có r item trên (m-l) item còn lại từ itemset X Dưới

đây là công thức tính số luật kết hợp đầy đủ được sinh từ

itemset X:

m m l

m m l

Áp dụng tam thức Newton, công thức (1) được viết lại:

1

m m l

Hầu hết các thuật toán khai thác luật kết hợp đã đề xuất

đều tập trung kỹ thuật cải tiến ở Pha 1 (xác định các kết hợp thỏa minsup) Tất cả thuật toán này cho rằng Pha 1 chiếm

nhiều thời gian trong cả quá trình khai thác luật kết hợp Tuy

nhiên, theo phân tích ở trên thì Pha 2 là phức tạp hơn và có

không gian sinh lớn; hay nói khác hơn là thuật toán 1 thì pha nào cũng cần thiết cải tiến và nâng cao hiệu năng tính toán

Chẳng hạn như: ta có itemset X={A, B, C}, m = 3 th ì tổng số luật kết hợp sinh ra từ itemset X được tính là

1 2 1 2 1 3 1 2 3 1 12

X có 3 item thì cần xem xét 12 luật kết hợp có thỏa ngưỡng minconf hay không Tương tự, nếu itemset X có 4 item (m = 4) thì cần xem xét 50 luật kết hợp thỏa minconf Ngoài ra, phân

tích trên cũng cho ta thấy rõ về không gian tìm kiếm ở cả 2

pha đều không phụ thuộc vào số lượng giao dịch của dữ liệu

Ɗ, mà ch ỉ phụ thuộc vào số lượng item (thuộc tính) của dữ

liệu khai thác

Bảng 1 Ước tính không gian sinh các kết hợp

và số lượng luật kết hợp được sinh từ m-itemset

P 1 2 10 -1 2 20 -1 2 30 -1 2 40 -1 2 50 -1 2 60 -1 2 70 -1 2 80 -1

P 2 3 10 -2 11 +1 3 20 -2 21 +1 3 30 -2 31 +1 3 40 -2 41 +1 3 50 -2 51 +1 3 60 -2 61 +1 3 70 -2 71 +1 3 80 -2 81 +1

P 2 /P 1 57 3.325 191x10 3 11x10 6 637x10 6 36x10 9 2x10 12 122x10 12

P1: không gian sinh các kết hợp (2m – 1);

P2: số lượng LKH được sinh từ m-itemset (3m – 2m+1 +1)

Định nghĩa 5 : Cho X I, X gọi là itemset phổ biến –

nếu sup(X) ≥ minsup, trong đó minsup là ngưỡng phổ biến tối

thiểu (do người dùng chỉ định) Ký h iệu FI là tập hợp chứa các

itemset phổ biến

Định nghĩa 6: Cho X I, X được gọi là itemset phổ biến

đóng – nếu X là itemset phổ b iến và không có tập cha cùng độ

phổ biến Ký hiệu CFI là tập hợp chứa các itemset phổ biến

đóng

Định nghĩa 7: Cho X I, X được gọi là itemset phổ biến

tối đại – nếu X là itemset phổ biến và không có tập cha là

itemset phổ biến Ký hiệu MFI là tập hợp chứa các itemset

phổ biến tối đại

Ngoài ra, kh i cần khai thác các luật kết hợp có số thuộc tính nhiều nhất thì các nhà nghiên cứu còn đề xuất khai thác tập phổ biến có chiều dài tối đa – chính là tập con của tập phổ biến tối đại và có chiều dài tối đa

Định nghĩa 8: Cho X FI, X được gọi là itemset phổ

biến có chiều dài tối đa nếu Y FI th ì |X| |Y|, tức là số

lượng item của itemset X lớn hơn hoặc bằng số lượng item

của bất kỳ itemset phổ biến có trong FI Ký hiệu LFI là tập

hợp chứa các itemset phổ biến có chiều dài tối đa

Một số tính chất của itemset phổ biến: đây là các tính

chất nền tảng sử dụng cho việc rút gọn không gian tìm kiếm – các tính chất này được gọi là tính chất Apriori/ bao đóng giảm

(Downward Closure Property - DCP)

Tính chất 1: (độ phổ biến của tập con) Cho X, Y I, nếu X

Y thì sup(X) sup(Y);

Tính chất 2: Một itemset con khác rỗng của một itemset

phổ biến cũng là itemset phổ biến - X Y, sup(Y) ≥ minsup: sup(X) ≥ minsup;

Chứng minh: theo tính chất 1, ta có sup(X) sup(Y) và sup(Y) minsup thì sup(X) minsup ■

Trang 3

Tính chất 3: Một itemset chứa một itemset không phổ biến

cũng là itemset không phổ biến - X Y, sup(X) < minsup:

sup(Y) < minsup

Chứng minh: theo tính chất 1, ta có sup(Y) sup(X) và

sup(X) < minsup thì sup(Y) < minsup ■

B Thuật toán Apriori

Thuật toán do Agrawal đề xuất năm 1993 [1], được đánh

giá mang tính chất lịch sử trong lĩnh vực khai thác 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 Apriori là thuật toán nền tảng để tìm các tập phổ

biến sử dụng phương pháp sinh ứng viên Thuật toán có đặc

điểm là tìm kiếm theo chiều rộng sử dụng tính chất Apriori:

bất kỳ (k-1)-itemset không phổ biến thì nó không thể là tập con

của k-itemset phổ biến

Mã giả thuật toán 2: khai thác tập phổ biến

Đầu vào: Dữ liệu Ɗ, minsup

Đầu ra: Tập FI chứa itemsets thỏa ngưỡng minsup

1 Sinh ứng viên Ck+1 từ k-itemset phổ biến;

2 Quét dữ liệu - tính độ phổ biến của các ứng viên;

3 Thêm các ứng viên vào danh sách (k+1)-itemset

Ưu điểm: Thuật toán dựa trên một nhận xét khá đơn giản

là bất kỳ itemset con nào của itemset phổ biến cũng là itemset

phổ biến (tính chất 2) Do đó, trong quá trình đi tìm tập ứng

viên, thuật toán chỉ dùng đến tập ứng viên vừa xuất hiện ở

bước ngay trước đó, không dùng đến tất cả tập ứng viên (cho

đến thời điểm đó) Nhờ vậy, bộ nhớ được giải phóng đáng kể

Nhược điểm: Thuật toán phải quét dữ liệu (max+1) lần

với max là ch iều dài của itemset phổ biến dài nhất Thuật toán

Apriori giảm không gian dựa vào tính chất Apriori Tuy nhiên,

khi số itemset phổ biến được sinh ra lớn, max lớn hay minsup

nhỏ sẽ dẫn đến việc phát sinh ra rất nhiều tập ứng viên và phải

duyệt dữ liệu rất nhiều lần, thuật toán có chi phí cao Trong

thực tế, cần phải sinh 2100 ứng viên (trong trường hợp xấu

nhất) để tìm itemset phổ biến có kích thước 100

Từ những nhược điểm trên, nhiều nhà nghiên cứu đã đề

xuất các thuật toán tăng hiệu năng sinh các tập phổ biến dựa

trên việc tổ chức lưu trữ dữ liệu và các ch iến lược tìm kiếm

hiệu quả tương ứng

C Tính toán hiệu năng cao

Trong thực tế có nhiều bài toán có độ phức tạp rất lớn mà

sức mạnh siêu máy tính hiện tại cũng chưa giải quyết được Vì

vậy người ta gọi đây là các thách đố Chúng ta có thể tham

khảo [38, 39] để h iểu hơn về các thách đố này Hiện nay có rất

nhiều lĩnh vực khoa học cần khoa học tính toán như hóa học,

vật lý hạt nhân, vũ trụ học, cơ lưu chất, sinh học, y học…

Khoa học tính toán giúp giải quyết nhiều vấn đề trên mô hình

toán để tiên đoán trước kết quả thử nghiệm và như vậy g iúp

rút ngắn quá trình thử nghiệm Nhiều bài toán cần giải quyết

trên môi trường tính toán lưới như trong [40] càng cho thấy sự

cần thiết của sức mạnh tính toán trong lĩnh vực khoa học và

công nghệ phát triển

Nhằm đáp ứng yêu cầu tính toán trong khoa học và công

nghệ, ba giải pháp được đề nghị:

1) Tăng tốc độ tính toán của bộ xử lý;

2) Tìm một giải thuật tốt hơn để giải quyết;

3) Sử dụng kỹ thuật xử lý song song

Giải pháp (1) và (2) đòi hỏi nhiều thời gian để có kết quả

cũng như có nhiều giới hạn Theo công nghệ hiện nay, khả

năng của máy tính có một bộ xử lý đã được chứng minh là

không vượt quá ngưỡng 500.000 MIPS (triệu phép tính trên giây) [41] Để giải quyết các bài toán có khối lượng tính toán lớn đòi hỏi một giải pháp mới; đó chính là giải pháp (3) Chính động lực này đã thúc đẩy việc ra đời các hệ thống máy tính có khả năng tính toán song song mạnh

Các dạng bài toán trong tính toán hiệu năng cao:

- Nặng về Xử lý (co mpute intensive) – Một bài toán duy

nhất đòi hỏi một lượng lớn tính toán;

- Nặng về Bộ nhớ (memo ry intensive) – Một bài toán

duy nhất đòi hỏi một lượng lớn bộ nhớ;

- Nặng về Dữ liệu (data intensive) – Một bài toán duy

nhất hoạt động trên một tập dữ liệu lớn;

- Thông lượng cao (throughput intensive) – Nhiều bài

toán không liên quan được tính toán đồng loạt

Định luật Amdahl:

Định luật g iả đ ịnh kích thước bài toán là cố định và thời gian chạy của các phần tuần tự của chương trình là độc lập với

số lượng BXL Nếu là tỷ lệ thời gian chạy của phần chương trình thực hiện tuần tự (không song song hóa được):

1

S là tỷ lệ tối đa khi song song hóa toàn bộ chương trình, cho dù có thêm vào bao nhiêu BXL Điều này đặt ra một giới hạn về tính hữu ích khi gia tăng BXL

Định luật Gustafson:

Định luật Gustafson là một nguyên lý khác trong tính toán, liên quan chặt chẽ đến định luật Amdahl Mức độ tăng tốc

với P bộ xử lý là

1

S tăng tuyến tính khi số lượng BXL tăng Định luật Gustafson cho thấy: sức mạnh song song thực sự của một hệ thống nhiều BXL chỉ có thể đạt được kh i phần lớn khối lượng công việc của bài toán được xử lý song song

A Khảo sát về cấu trúc dữ liệu và chiến lược tìm kiếm

Ngoài một số thuật toán có hướng tiếp cận theo Apriori, chúng tôi trình bày khảo sát các cấu trúc dữ liệu thông dụng

được sử dụng bởi nhiều nhóm tác g iả cho việc lưu trữ không gian tìm kiếm trong quá trình khai thác song song tập phổ biến

và các chiến lược tìm kiếm phù hợp cùng với không gian lưu trữ Các chiến lược tìm kiếm trên cấu trúc cây: tìm kiếm theo

chiều sâu (Depth First Search - DFS), tìm kiếm theo ch iều rộng (Breadth First Search - BFS) hoặc kết hợp cả hai ch iến

lược trên

1) Cấu trúc dàn - Lattice

Đây là cấu trúc dữ liệu được sử dụng nhiều trong các thuật toán đề xuất Dữ liệu g iao dịch Ɗ có | I | = m, tất cả các kết hợp (powerset) được sinh từ I - Ƥ(I), chúng ta có không gian các kết hợp giữa các item được sinh ra từ m item là 2m, đây

chính là không gian tìm kiếm đầy đủ

Năm 1999, Pasquier đề xuất thuật toán A-Close [4] dựa

trên cấu trúc dàn để khai thác tập phổ biến đóng (gần 2.000 trích dẫn)

Chiến lược tìm kiếm trên dàn: kết hợp cả 2 chiều

(Top-Down và Bottom-Up)

Trang 4

Hình 1 Cấu trúc dàn - Lattice

Ưu điểm: tổ chức lưu trữ đơn giản, đảm bảo khai thác đầy

đủ tập phổ biến và phù hợp cho dữ liệu tăng trưởng;

Nhược điểm: để lưu trữ không gian kết hợp của m item thì

cần 2m kết hợp - chiếm nhiều bộ nhớ trong quá trình khai thác

2) Cây liệt kê - Set Enumeration Tree (SE-Tree)

Năm 1989, Bayardo đề xuất thuật toán Max-Miner [8] dựa

trên cây liệt kê (trên 2.000 trích dẫn) để khai thác tập phổ biến

có chiều dài tối đa Đây là dạng rút gọn của cấu trúc dàn

Hình 2 Cây liệt kê - Set Enumeration T ree (SE-T ree)

Chiến lược tìm kiếm: theo chiều sâu DFS

Ưu điểm: cây b iểu diễn rút gọn các liên kết của cấu trúc

dàn, đảm bảo khai thác đầy đủ tập phổ biến;

Nhược điểm: mất cân bằng trong quá trình khai thác (phụ

thuộc vào độ phổ biến của item)

3) Cây tiền tố (Prefix – Tree)

Năm 2002, Liu đề xuất thuật toán OpportuneProject [3] dựa

trên cấu trúc cây tiền tố (gần 300 trích dẫn) để khai thác nhanh

tập phổ biến

Hình 3 Cây tiền tố (Prefix-T ree)

Tương tự như cây liệt kê, nội dung lưu trữ được rút gọn

thông qua tiền tố

4) Cây IT-Tree (Itemset Tidset Tree)

Năm 1999, Zaki đề xuất thuật toán Charm [5] cùng với cấu

trúc IT-Tree (Itemset Tidset Tree) tương tự cấu trúc cây liệt kê

và kết hợp lưu trữ mã giao dịch của itemset (1.500 trích dẫn)

Hình 4 Cây IT -T ree

Chiến lược tìm kiếm: theo chiều sâu

Ưu điểm: đơn giản, đảm bảo khai thác đầy đủ tập phổ biến

và tính toán nhanh độ phổ biến;

Nhược điểm: mất cân bằng trong quá trình khai thác và

lưu trữ tốn nhiều bộ nhớ

5) Cây FP-Tree (Frequent Pattern Tree)

Năm 2000, Jiawei Han và đồng sự đã đề xuất cấu trúc

FP-Tree [2] (gần 9.000 trích dẫn) và thuật toán FP-gro wth dùng cho việc khai thác các itemset phổ biến Đây là dạng cây mở rộng từ Prefix-Tree, có thêm bảng header lưu trữ item, độ phổ

biến và liên kết đến nút trong cây Từ đây, cấu trúc FP-Tree được nhiều nhà nghiên cứu sử dụng và cải tiến

Hình 5 Cây FP-T ree

Mặc dù, cấu trúc FP-Tree được rút gọn hơn so với các cấu trúc trên, nhưng FP-Tree là dạng mở rộng từ Prefix-Tree, nên vẫn tồn tại nhiều hạn chế tương tự như Prefix-Tree, nghĩa là cây mất cân bằng

B Một số thuật toán khai thác song song tập phổ biến trên

Bộ xử lý đa nhân

Trong phần này, chúng tôi khảo sát cả công trình khai thác tập phổ biến trên HT3PT (1995 – 2003) [10-15]; thuật toán PFP [16] khai thác trên hệ thống nhiều BXL; cùng với sự phát triển mạnh mẽ về kỹ thuật phần cứng cho ra đời các BXL đa nhân thì nhiều thuật toán nâng cao hiệu năng khai thác tập phổ biến trên BXLĐN cũng được công bố như thuật toán FP-array [17], PLCM [20],…

Bảng 2, trình bày mốc thời g ian của một số thuật toán khai

thác song song tập phổ biến từ năm 1995 đến 2020, cùng với

hướng tiếp cận sử dụng cấu trúc dữ liệu và số trích dẫn của công trình [10-37] (Park [10] đến Karthik [37])

Bảng 2 T ổng hợp các công trình khai tháctập phổ biến song song

trên bộ xử lý đa nhân/ Grid

Tác giả

Hướng

#Trích

J S Park PDM Apriori Nodes 389 1995

M J Zaki CCPD Apriori Nodes 200 1996

R Agarwal AprioriHybrid Apriori Nodes 1.734 1996

M J Zaki Par-Eclat Lattice Nodes 1.872 1997

S M Chung Par-MaxMiner SE-T ree Nodes 16 2003

A Javed PFP FP-T ree Many CPU 99 2004

L Liu FP-array FP-T ree CPU 148 2007

Trang 5

Tác giả

đứng đầu Thuật toán tiếp cận Hướng Xử lý #Trích dẫn Năm

S H Adil Apriori* Apriori GPU 34 2009

B Negrevergne PLCM SE-T ree CPU 48 2010

H Li MG SE-T ree GPU 14 2010

G T eodoro T reeProjection* SE-T ree CPU,GPU 27 2010

F Zhang GPApriori Apriori GPU 61 2011

C Silvestri gpuDCI Lattice GPU 24 2012

B Missaoui P-ST M SE-T ree CPU 2 2013

F Wang GPU-FP-growth FP-T ree GPU 9 2014

B Negrevergne ParaMiner Lattice CPU 56 2014

H Jiang PFP-growth FP-T ree GPU 3 2017

K W Chon GMiner Apriori GPU 16 2018

Y Wang D2P- Apriori Apriori GPU 1 2018

H Phan NPA-CFI Prefix-Tree CPU 2019

Y C Wu GFPG-LLMA FP-T ree GPU 2019

Bảng 2, cho chúng ta thấy các thuật toán khai thác song

song tập phổ biến trên BXLĐN từ năm 2007 đến nay – ngoài

các thuật toán dựa trên thuật toán Apriori, các thuật toán còn

lại đều sử dụng 5 dạng cấu trúc dữ liệu được khảo sát ở trên

(từ Hình 1 đến Hình 5)

SONGSONGTẬP PHỔ BIẾN TRÊN BXLĐN

A Chiến lược tìm kiếm

Khảo sát một số thuật toán ở phần 3, cho thấy: Ngoài các

thuật toán tiếp cận tựa Apriori – áp dụng chiến lược tìm kiếm

BFS Phần lớn các thuật toán sử dụng cấu trúc cây – chiến lược

tìm kiếm DFS Giải thuật DFS thông thường được thiết kế

dạng hàm đệ quy, điều này dẫn đến những hạn chế khi thực

hiện trên BXLĐN – hệ thống dễ treo, khó mở rộng trên dữ liệu

lớn Vì vậy, cần có giải pháp biến DFS thành BFS hoặc sử

dụng vòng lặp để khử đệ quy cho giải thuật này Mặt khác, các

cấu trúc cây được khảo sát ở phần 3 đã thể hiện rõ tính mất cân

bằng của cây – Điều này, cho thấy trong các giải thuật khai

thác song song tập phổ biến cần quan tâm đến vấn đề cân bằng

tải trên các BXL để có một giải thuật thật sự hiệu quả

B Cân bằng tải (Load Balancing) cho tính toán song song

Trong gần 30 công trình được khảo sát, chúng tôi chỉ nêu

một số công trình tương đối nổi bật:

Năm 1996, Zaki đề xuất thuật toán CCPD [11] khai thác

song song tập phổ biến trên hệ thống phân tán dựa trên thuật

toán Apriori và Zaki đã đề xuất giải pháp cân bằng tải bằng

cách lượng giá công việc thực hiện trên mỗi itemset và chọn

lược đồ tốt nhất (ít mất cân bằng nhất) phân bổ vào các node

xử lý khác nhau

Năm 2010, Yu đề xuất thuật toán MATI [23] và LPAS [30]

khai thác song song tập phổ biến trên BXLĐN dựa trên thuật

toán Apriori; nhóm tác g iả đã đề xuất giải pháp cân bằng tải

bằng cách đưa ra khái niệm itemset-block ở bước sinh

k-itemset phổ biến (k > 1) theo item tiền tố; bước sinh

(k+1)-itemset trên từng (k+1)-itemset-block Yu đã cải tiến MATI bằng

cách sắp xếp thứ tự độ phổ biến khi phân chia itemset-block

được gọi là thuật toán LPAS Yu đã thực nghiệm so sánh số

ứng viên sinh ra ở thuật toán LPAS giảm 29% so với MATI

Tuy nhiên, hiệu năng của thuật toán LPAS tối đa chỉ nhanh hơn MATI là 18,11%

Năm 2017, Jiang đề xuất thuật toán PFP-growth [32] khai thác song song tập phổ biến trên BXLĐN dựa trên thuật toán FP-gro wth; phần thực nghiệm trên GeFo rce GTX 980 Ti (2.816 CUDA cores) cho thấy thuật toán chưa hiệu quả trên dữ

liệu có số lượng items lớn (dữ liệu thực mật độ thưa Retail có

16.470 items, trung b ình 10 items/giao dịch và 88.162 g iao dịch – kho dữ liệu UCI) Nhó m tác g iả chưa quan tâm đến g iải pháp cân bằng tải Song song đó, nhóm tác giả Wang đã đề xuất thuật toán D2P-Apriori [34]; phần thực nghiệm trên GeForce GTX 1080 (2.560 CUDA cores) với các ngưỡng

minsup lớn - chưa thể hiện rõ hiệu suất của thuật toán

Năm 2019, Huan đã đề xuất thuật toán NPA-CFI [35] – thuật toán song song khai thác tập phổ biến đóng trên BXLĐN theo hướng tiếp cận giải pháp (2) Thuật toán NPA-CFI, phân chia thành 3 Pha độc lập, tác vụ song song tự nhiên trên Pha 1

và Pha 3 Điều này đã làm g ia tăng hiệu năng của thuật toán đáng kể Tuy nhiên, ở Pha 3 của thuật toán vẫn chưa đề cập đến giải pháp cân bằng tải Cùng thời điểm trên, Wu đề xuất thuật toán GFPG-LLMA [36] – thực nghiệm trên GeForce GTX 1070 (1.920 CUDA cores), h iệu suất chưa cao và nhóm tác giả cũng bỏ ngỏ vấn đề cân bằng tải

Nhìn chung, phần lớn các công trình nghiên cứu lựa chọn giải pháp (3) cho bài toán khai thác song song tập phổ biến và chưa thật sự quan tâm đến vấn đề cân bằng tải

C Xác định tới hạn theo định luật Amdahl và Gustafson

Chúng tôi đã khảo sát gần 30 công trình nghiên cứu liên quan khai thác song song tập phổ biến trên BXLĐN, chưa thấy công trình đề cập đến vấn đề tới hạn theo cả 2 định luật

D Đánh giá hiệu năng của giải thuật trên BXLĐN

Các g iải thuật trên chưa tính toán cụ thể hiệu suất khai thác tập phổ biến trên từng nhân xử lý (Core) Chúng tôi khảo sát

và chọn lựa phương pháp tính hiệu năng [35] trên từng nhân

xử lý theo phương trình như sau:

c

T c

T T

M

Trong đó:

- T S: thời gian thực hiện tuần tự

- T M: thời gian thực hiện tính song song trên BXLĐN

- c: số lượng nhân của CPU (số core)

Đây là cơ sở khi so sánh các giải thuật song song theo định

hướng của giải pháp (2) – tìm giải thuật tốt hơn

Trong bài viết này, chúng tôi khảo sát và tổng luận về một

số thuật toán khai thác song song tập phổ biến trên BXLĐN theo hướng tiếp cận phân tích cấu trúc dữ liệu và chiến lược tìm kiếm trên không gian sinh, được sử dụng trong khai thác

song song tập phổ biến trong một số công trình suốt hơn hai mươi năm qua Qua đó, giúp các nhà nghiên cứu trong lĩnh vực

khai thác dữ liệu có đầy đủ cở sở khi lựa chọn giải pháp kỹ thuật phù hợp cho bài toán khai thác song song tập phổ biến trên BXLĐN Bên cạnh đó, tổng luận còn cho thấy chưa có

nhiều đề xuất quan tâm đến vấn đề cân bằng tải và một số công

trình chỉ mang tính thực nghiệm chuyển từ thuật toán tuần tự

sang môi trường tính toán song song – giải pháp (3)

Trang 6

Dựa trên các khảo sát và tổng luận một số thuật toán khai

thác song song tập phổ biến trên BXLĐN được trình bày ở

phần 3 và 4: Tương lai, chúng tôi sẽ nghiên cứu tìm kiếm g iải

thuật tốt hơn để có thể khai thác song song tập phổ biến trên dữ

liệu giao dịch cỡ lớn, có trọng số, cũng như mở rộng trên các

hệ thống tính toán phân tán như Hadoop, Sprak…Ngoài ra,

chúng tôi cũng tập trung quan tâm đến việc tìm kiếm giải pháp

cho vấn đề cân bằng tải để đảm bảo hiệu năng cao nhất khi

thực hiện trên BXLĐN

LỜI CẢM ƠN Nghiên cứu được tài trợ bởi Viện Đào tạo và Nâng cao

TP.HCM trong đề tài có mã số V2019.09

[1] R Agrawal, T Imilienski, A Swami Mining association rules between

sets of large databases Proceedings of the ACM SIGMOD International

Conference on Management of Data, Washington, DC, (1993), 207-216

[2] J Han, J Pei, Y Yin Mining Frequent Patterns without Candidate

Generation SIGMOD Conf 2000, (2000), 1-12 (FP-tree,FI)

[3] J Liu, Y Pan, K Wang, J Han Mining frequent item sets by

opportunistic projection KDD 2002, (2002), 229-238 (Prefix-Tree,FI)

[4] N Pasquier, Y Bastide, R Taouil, L Lakhal Discovering frequent

closed itemsets for association rules Proceecings of the 5th Int Conf on

Database Theory, LNCS, Springer-Verlag, Jerusalem, Israel, (1999),

398–416 (lattice – Aclose)

[5] M.J Zaki, C J Hsiao CHARM: An Efficient Algorithm for Closed

Association Rule Mining (1999), 1-20 (IT-Tree)

[6] D Lin, Z M Kedem Pincer-Search: A New Algorithm for Discovering

the Maximum Frequent Itemset EDBT Conference Proceedings, (1998),

105-110 (Pincer)

[7] D Burdick, M Calimlim, J Gehrke MAFIA: A Maximal Frequent

Itemset Algorithm for Transactional Databases Proc of the ICDE Conf,

(2001), 443-452

[8] R J Bayardo Efficiently mining long patterns from databases in Proc

The ACM SIGMOD Int Conf on Management of data, (1998), 85-93

(SE-T ree)

[9] R Agarwal, C Aggarwal, V V V Prasad Depth First Generation of

Long Patterns In Proc ACM SIGMOD, (2000), 108-118

[10] J S Park, M S Chen, P S Yu Efficient Parallel and Data Mining for

Association Rules CIKM 1995: (1995), 31-36

[11] M J Zaki, M Ogihara, S Parthasarathy, W Li Parallel Data Mining

for Association Rules on Shared-Memory Multi-Processors SC 1996:

(1996), 43

[12] R Agrawal, J C Shafer Parallel mining of association rules in IEEE

Transactions on Knowledge and Data Engineering, vol 8, no 6, pp

962-969, (1996), doi: 10.1109/69.553164

[13] E Han, G Karypis and V Kumar Scalable Parallel Data Mining for

Association Rules Proc ACM Special Interest Group on Management

of Data (SIGMOD), (1997)

[14] M J Zaki, S Parthasarathy, M Ogihara, W Li Parallel Algorithms for

Discovery of Association Rules Data Min Knowl Discov 1(4): (1997),

343-373

[15] S.M Chung, C Luo Parallel mining of maximal frequent itemsets from

databases Tools with Artificial Intelligence 2003 Proceedings 15th

IEEE International Conference on, (2003), 134-139

[16] A Javed, A Khokhar Frequent pattern mining on message passing

multiprocessor systems Distributed and Parallel Databases, 16(3),

(2004), 321-334

[17] L Liu, E Li, Y Zhang, Z Tang Optimization of Frequent Itemset

Mining on Multiple-Core Processor VLDB ’07: (2007), 1275–1285

[18] S H Adil, S Qamar Implementation of association rule mining using

CUDA 2009 International Conference on Emerging Technologies,

Islamabad, (2009), 332-336

[19] J Zhou, K M Yu*, B C Wu Parallel Frequent Patterns Mining Algorithm on GPU IEEE International Conference on Systems Man and

Cybernetics (SMC2010), (2010), 435-440

[20] B Negrevergne, A T ermier, J F Méhaut, T Uno Discovering Closed Frequent Itemsets on Multicore: Parallelizing Computations and Optimizing Memory Accesses HPCS’10 IEEE: (2010), 521–528 [21] H Li, N Zhang Mining maximal frequent itemsets on graphics processors Fuzzy Systems and Knowledge Discovery (FSKD) 2010

Seventh International Conference on, vol 3, (2010), 1461-1464

[22] G T eodoro, N Mariano, J W Meira, R Ferreira Tree Projection-Based Frequent Itemset Mining on Multicore CPUs and GPUs 2010

22nd Int Symposium on Computer Architecture and High Performance Computing, Petropolis, (2010), 47-54

[23] K M Yu, S H Wu An Efficient Load Balancing Multi-core Frequent Patterns Mining Algorithm 10th Int Conf on Trust, Security and Privacy

in Computing and Communications, Changsha, (2011), 1408-1412

[24] F Zhang, Y Zhang, J Bakos Gpapriori: Gpu-accelerated Frequent Itemset Mining Proc of the 2011 IEEE International Conference on

Cluster Computing, (2011), 590-594

[25] C Silvestri, S Orlando gpuDCI: Exploiting GPUs in Frequent Itemset Mining Parallel Distributed and Network-Based Processing (PDP) 2012

20th Euromicro International Conference on, (2012), 416-425

[26] B Missaoui, K Arour, Y Slimani Parallel Binary Approach for Frequent Itemsets Mining International Journal of Computer and

Communication Engineering, (2013), 230

[27] D Nguyen, B Vo, B Le Efficient strategies for parallel mining class association rules Expert Syst Appl 41(10): (2014), 4716-4729 [28] F Wang, B Yuan Parallel Frequent Pattern Mining without Candidate Generation on GPUs Data Mining Workshop (ICDMW) 2014 IEEE

International Conference on, (2014), 1046-1052

[29] B Negrevergne, A T ermier, M C Rousset, J F Méhaut ParaMiner: A Generic Pattern Mining Algorithm for Multi-Core Architectures Data

Min Knowl Disc 28(3): (2014), 593–633

[30] Ö M Soysal, E Gupta, H Donepudi A sparse memory allocation data structure for sequential and parallel association rule mining The

Journal of Supercomputing, (2015)

[31] K M Yu, S H Liu, L W Zhou, S H Wu Apriori-based High Efficiency Load Balancing Parallel Data Mining Algorithms on Multi-core Architectures Int Journal of Grid and HPC, 7, (2015), 77 [32] H Jiang, H Meng A Parallel FP-Growth Algorithm Based on GPU

e-Business Engineering (ICEBE) IEEE 14th Int Conf on, (2017), 97-102

[33] K W Chon, S H Hwang, M S Kim Gminer: A fast gpu-based frequent itemset mining method for large-scale data Information

Sciences, 439-440, (2018), 19 – 38

[34] Y Wang, T Xu, S Xue, Y Shen D2P-Apriori: A deep parallel frequent itemset mining algorithm with dynamic queue 10th Int Conf on

Advanced Computational Intelligence, Xiamen, (2018), 649-654

[35] H Phan An Efficient Mining Algorithm of Closed Frequent Itemsets on Multi-core Processor In: Li J., Wang S., Qin S., Li X., Wang S (eds)

Adv Data Mining and Applications ADMA 2019: (2019), 107-118

[36] Y C Wu, M Y Yeh, T W Kuo Fast Frequent Pattern Mining without Candidate Generations on GPU by Low Latency Memory Allocation

Big Data (Big Data) IEEE Int Conf on, (2019), 1407-1416

[37] P Karthik, J B Saira Frequent Item Set Mining of Large Datasets Using CUDA Computing In: Das K., Bansal J., Deep K., Nagar A.,

Pathipooranam P., Naidu R (eds) Soft Computing for Problem Solving AISC, Springer, 1057, (2020), 739-747

[38] Grand Challenges to Computational Science Future Generation Computer Systems 5, Special Double Issue, No 2&3, (1989)

[39] San Diego Supercomputer Center (SDSC) Grand Challenge Equations University of California San Diego, (1999)

[40] I Foster, C Kesselman The Grid 2 – Blueprint for a new computing infrastructure the 2nd edition, Morgan Kaufmann, (2004)

[41] A.S T anenbaum Distributed Operating Systems Prentice Hall, (1990)

Ngày đăng: 27/11/2021, 10:48

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