Luật kết hợp đa cấp của các item trong CSDL giao dịch như trong bảng 1 có thể được khai thác từ các tập phổ biến hoặc tập phổ biến đóng.. [14] và cross-level [17], [23] đã được các nhà n
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
Trang 3TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
Cán bộ hướng dẫn khoa học : PGS TS Lê Hoài Bắc
Luận văn Thạc sĩ được bảo vệ tại Trường Đại học Công nghệ TP HCMngày11 tháng 04 năm 2015
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:
Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã đượcsửa chữa (nếu có)
Chủ tịch Hội đồng đánh giá LV
PGS TS Lê Trọng Vĩnh
Trang 4PHÒNG QLKH – ĐTSĐH Độc lập – Tự do – Hạnh phúc
TP HCM, ngày 18 tháng 03 năm 2015
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: VÕ MINH QUÂN Giới tính: Nam
Ngày, tháng, năm sinh: 02/10/1980 Nơi sinh: Phú Quốc – Kiên Giang
Chuyên ngành: Công nghệ Thông tin MSHV: 1341860017
I- Tên đề tài:
KHAI THÁC LUẬT KẾT HỢP TỐI THIỂU SỬ DỤNG DÀN TẬP ĐÓNG
II- Nhiệm vụ và nội dung :
- Tập trung tìm hiểu, đánh giá và đề xuất hướng tiếp cận hiệu quả thuật toánkhai thác luật kết hợp cross-level sử dụng dàn tập đóng
- Khảo sát phương pháp khai thác luật kết hợp cross -level sử dụng dàn tập đónghiện có
- Định hướng đề xuất hướng tiếp cận mới khai thác luật kết hợp cross-leveldùng dàn tập đóng
III- Ngày giao nhiệm vụ:18/08/2014
IV- Ngày hoàn thành nhiệm vụ: 14/03/2015
V- Cán bộ hướng dẫn: PGS.TS LÊ HOÀI BẮC
PGS.TS LÊ HOÀI BẮC
Trang 5LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Các số liệu, kết quả
nêu trong Luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trìnhnào khác
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này
đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc
Học viên thực hiện Luận văn
Võ Minh Quân
Trang 6LỜI CÁM ƠN
Trong suốt quá trình học tập và hoàn thành luận văn này, tôi đã nhận được sựhướng dẫn, giúp đỡ quý báu của quý thầy cô, gia đình, bạn bè và đồng nghiệp Vớilòng kính trọng và biết ơn sâu sắc tôi xin được bày tỏ lời cảm ơn chân thành tới:
Khoa Công Nghệ Thông Tin, Phòng Quản lý Khoa học - Đào tạo sau Đại họctrường Đại Học Công Nghệ Thành Phố Hồ Chí Minh đã tạo mọi điều kiện thuận lợigiúp đỡ tôi trong quá trình học tập và hoàn thành luận văn này
Thầy hướng dẫn Phó Giáo sư - Tiến sĩ Lê Hoài Bắc, thầy đã truyền đạt những
kiến thức rất bổ ích cho tôi trong quá trình học tập, đã hết lòng tạo điều kiện cũng như
giúp đỡ tôi trong quá trình hoàn thành luận văn này
Anh Lương Hữu Phúc, đã hết lòng giúp đỡ, hướng dẫn cho tôi trong quá trình thực
hiện luận văn này
Toàn thể quý thầy cô đã nhiệt tình giản g dạy và truyền đạt những kiến thức bổ íchcho tôi trong suốt khóa học vừa qua
Cuối cùng xin cảm ơn đến tất cả những người thân trong gia đình, bạn bè và đồngnghiệp đã giúp đỡ tôi trong suốt quá trình học tập và thực hiện luận văn này
Võ Minh Quân
Trang 7MỤC LỤC
MỞ ĐẦU 1
Chương 1 TỔNG QUAN 4
Chương 2 CƠ SỞ LÝ THUYẾT 9
2.1 Khai thác tập phổ biến 9
2.1.1 Một số định nghĩa 9
2.1.2 Thuật toán khai thác tập phổ biến Apriori 9
2.2 Khai thác tập phổ biến đóng 11
2.2.1 Một số định nghĩa 11
2.2.2 Thuật toán khai thác tập phổ biến đóng (CHARM) [31] 12
2.3 Dàn tập phổ biến đóng 15
2.3.1 Định nghĩa 15
2.3.2 Một số thuật toán khai thác dàn tập phổ biến đóng 15
2.3.2.1 Thuật toán CHARM-L [31] 15
2.3.2.2 Thuật toán xây dựng dàn tập đóng [2] 17
2.4 Tập sinh tối tiểu (minimal Generator – mG) [30] 19
2.5 Khai thác luật kết hợp tối thiểu không dư thừa từ dàn tập đóng 20
2.5.1 Một số định nghĩa 20
2.5.2 Thuật toán khai thác MNAR từ dàn tập đóng [26] 20
Chương 3 THUẬT TOÁN MMCAR 22
3.1 GIỚI THIỆU 22
3.1.1 Tính toán độ phổ biến của 1 item 22
3.1.2 Xây dựng dàn tập đóng mức xác định 23
3.1.3 Các luật kết hợp tối thiểu không dư thừa cross-level 23
3.1.3.1 Dàn ứng cử viên 25
3.1.3.2 Tính toán mG, TidList và độ hỗ trợ tối thiểu 32
3.1.3.3 Sinh các luật kết hợp cross-level từ dàn tập đóng 33
3.2 MÔ TẢ THUẬT TOÁN MMCAR 33
Trang 83.3 ĐỀ XUẤT HƯỚNG TIẾP CẬN MỚI 45
Chương 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ 50
4.1 MÔ TẢ CHIẾN LƯỢC VÀ DỮ LIỆU THỰC NGHIỆM 50
4.2 SO SÁNH, ĐÁNH GIÁ KẾT QUẢ THỰC NGHIỆM 53
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 58
TÀI LIỆU THAM KHẢO 59 PHỤ LỤC
Trang 9DANH MỤC CÁC KÍ HIỆU, TỪ VIẾT TẮT
CCL Cross-level Closed-Itemset Lattices Dàn tập đóng cross-level
CFCI Cross-level Frequent Closed Itemsets Tập phổ biến đóng cross-level
FCI Frequent Closed Itemsets Tập phổ biến đóng
FCI-List Frequent Closed Itemsets List Danh sách tập phổ biến đóngFIL Frequent Itemsets Lattice Dàn tập phổ biến
FCIL Frequent Itemsets Lattice Dàn tập phổ biến đóng
MFIL Modification of Frequent Itemset
Lattice
Dàn tập phổ biến thay đổi
MMCAR Minimal Non-redundent Multilevel
and Cross-level Assocication Rules
Luật không dư thừa tối thiểu đacấp và cross-level
MNAR Minimal Non-redundent Assocication
Rule(s)
Luật không dư thừa tối thiểu
mFI Multilevel Frequent Itemsets Tập phổ biến đa cấp
mFCI Multilevel Frequent Closed Itemsets Tập phổ biến đóng đa cấp
minConf Minimum Confidence Độ tin cậy tối thiểu
Tid(TID) Transaction identifier Danh định các giao dịch
TidList Transaction identifier List Danh sách các danh định giao dịch
Trang 11DANH MỤC CÁC BẢNG
Bảng 1 CSDL giao dịch 1
Bảng 1.1 Mối quan hệ giữa các item ở mức 1 và mức 2 6
Bảng 1.2 Mối quan hệ giữa các item ở mức 2 và mức 3 7
Bảng 1.3 CSDL giao dịch đã được mã hóa 8
Bảng 2.1 Kết quả chạy từng bước của thuật toán Apriori 10
Bảng 2.2 Danh sách các tập phổ biến với minSup = 3 11
Bảng 2.3 Tập các FCI thỏa minSup=3 14
Bảng 2.4 Danh sách các tập phổ biến đóng sau khi được sắp xếp 18
Bảng 4.1 Đặc tính của CSDL giao dịch 50
Bảng 4.2 Kết quả thực nghiệm trên bộ dữ liệu Mushroom 51
Bảng 4.3 Kết quả thực nghiệm trên bộ dữ liệu Chess 51
Bảng 4.4 Kết quả thực nghiệm trên bộ dữ liệu Retail 52
Bảng 4.5 Kết quả thực nghiệm trên bộ dữ liệu Pumsb 52
Trang 12DANH MỤC HÌNH ẢNH
Hình 1.1 Cấu trúc phân cấp của các itemset 7
Hình 2.1 Thuật toán Apriori 10
Hình 2.2 Thuật toán CHARM 13
Hình 2.3 Minh họa thuật toán CHARM với minSup=3 14
Hình 2.4 Thuật toán CHARM-L 16
Hình 2.5 Minh họa quá trình cập nhật dàn bằng CHARM -L 17
Hình 2.6 Thuật toán xây dựng dàn tập đóng (FCIL) từ FCI 18
Hình 2.7 Minh họa quá trình xây dựng FCIL từ các FCI của bảng 2.3 19
Hình 2.8 Thuật toán khai thác MNAR từ dàn tập đóng 21
Hình 3.1 Định dạng dữ liệu dọc và quá trình xây dựng dàn mức 1 35
Hình 3.2 Định dạng dữ liệu dọc và quá trình xây dựng dàn mức 2 36
Hình 3.3 Định dạng dữ liệu dọc và quá trình xây dựng dàn mức 3 37
Hình 3.4 Giao nút 1 st của 2 dàn L 2 và L 3 38
Hình 3.5 Giao nút1 st của dàn L 2 với nút2 nd của dàn L 3 38
Hình 3.6 Giao nút1 st của dàn L 2 với nút3 rd của dàn L 3 38
Hình 3.7 Giao nút3 rd của dàn L 2 với nút2 nd của dàn L 3 39
Hình 3.8 Dàn L (2,3) 39
Hình 3.9 Các dàn với lực lượng k=2 40
Hình 3.10 Dàn với lực lượng k=3 40
Hình 3.11 Cắt tỉa các nútdư thừa 41
Hình 3.12 Dàn tập đóng cross-level 42
Hình 3.13 Mã giả của thuật toán MMCAR 44
Hình 3.14 Quá trình xây dựng các tập phổ biến đóng mức 1 46
Hình 3.15 Quá trình xây dựng các tập phổ biến đóng mức 2 47
Hình 3.16 Quá trình xây dựng các tập phổ biến đóng mức 3 47
Hình 3.17 Danh sách các tập phổ biến đóng cross-level 48
Hình 4.1 Thời gian xây dựng dàn từ bộ dữ liệu Mushroom với các giá trị khác nhau của minSup và số nhó m 53
Trang 13Hình 4.2 Thời gian xây dựng dàn từ bộ dữ liệu Chess với các giá trị khác nhau của minSup và số nhóm 53 Hình 4.3 Thời gian xây dựng dàn từ bộ dữ liệu Pumsb với các giá trị khác nhau của minSup và số nhóm 54 Hình 4.4 Thời gian xây dựng dàn từ bộ dữ liệu Retail với các giá trị khác nhau của minSup và số nhóm 54 Hình 4.5 Lượng bộ nhớ cần thiết để xây dựng dàn từ bộ dữ liệu Mushroom với các giá trị khác nhau của minSup và số nhóm 55 Hình 4.6 Lượng bộ nhớ cần thiết để xây dựng dàn từ bộ dữ liệu Chess với các giá trị khác nhau của minSup và số nhóm 55 Hình 4.7 Lượng bộ nhớ cần thiết để xây dựng dàn từ bộ dữ liệu Pumsb với các giá trị khác nhau của minSup và số nhóm 56 Hình 4.8 Lượng bộ nhớ cần thiết để xây dựng dàn từ bộ dữ liệu Retail với các giá trị khác nhau của minSup và số nhóm 56
Trang 14MỞ ĐẦU
Khai thác mối quan hệ kết hợp và phân tích các đặc điểm mua bán của tậpCSDL giao dịch trở thành vấn đề quan trọng trong giới kinh doanh, từ cửa hàng tạp
hóa đến trung tâm mua sắm lớn Việc mua hoặc bán một mặt hàng có thể làm tăng bán,
giảm mua các mặt hàng khác Ví dụ, trong cửa hàng tạp hóa với một số lượng lớn cácmặt hàng thực phẩm, gồm: Energy biscuit, Marry bisc uit, Coccola biscuit, Potato chips,Lays chips, Chocolate cake, Apple juice, Fanta, Sprite, Water, Mangoes và
Bananas.Bảng 1 chứa một ví dụ về CSDL giao dịch của cửa hàng Nhà quản lý cần
phải áp dụng một chiến lược sắp đặt các mặt hàng theomột cách nào đó để việc bán các
mặt hàng được tăng lên Giả sử, nếu biết rằng có 30% khách hàng mua Potato chips và
Energy biscuit, cũng sẽ mua Fanta hoặc Sprite; hoặc có 40% khách hàng sẽ mua Energy biscuit và Fanta nếu họ chỉ mua Potato chips Tương tự, cũng có thể nói là nếu
khách hàng mua bất kỳ chips và biscuits, thì có 50% cơ hội họ sẽ mua bất kỳ loại nước giải khát nào; hoặc nếu một khách hàng mua bất kỳ loại chips nào, anh ta cũng sẽ mua
Energy biscuit và bất kỳ loại nước giải khát nào Cách nói thứ hai cung cấp nhiều
thông tin hơn, có ích hơn cho nhà quản lý cửa hàng hơn cách một
Bảng 1 CSDL giao dịch
1 Energy, Potato, Apple-Juice, Fanta
2 Energy, Apple-Juice, Sprite, Banana
3 Marry, Lays, Fanta
4 Energy, Potato
5 Energy, Lays, Apple-Juice, Fanta
6 Coccola, Mango
Do đó, khai thác các luật kết hợp tối thiểu giữa các mặt hàng sẽ cho biết thông
tin tối đa với các thông tin tối thiểu, cho phép phân tích sâu hoàn cảnh sống thực tế vàthiết kế cách sắp đặt các mặt hàng cho doanh nghiệp một cách hiệu quả
Luật kết hợp đa cấp của các item trong CSDL giao dịch (như trong bảng 1) có
thể được khai thác từ các tập phổ biến hoặc tập phổ biến đóng Vì số lượng các luậtphân cấp được tạo ra rất lớn, khái niệm khai thác các luật kết hợp tối thiểu không dưthừa trở thành một lĩnh vực quan tâm mới Mặc dù các luật tối thiểu đơn cấp, đa cấp
Trang 15[14] và cross-level [17], [23] đã được các nhà nghiên cứu chủ yếu giải quyết bằn g
phương pháp dùng tập phổ biến (tập phổ biến đóng), một số ít dùng dàn tập phổ biếnđóng để khai thác các luật kết hợp đơn cấp [26]
Tuy nhiên, một giải thuật có tên là DELIS[17] đã được đề xuất để khai thác các luật kết hợp không dư thừa đa cấp DELIS dùng Apriori, dựa trên sự kết nối và cắt tỉa
để tính toán tập phổ biến và sau đó khai thác tập phổ biến đóng gồm nhiều tập đa cấp
dùng một định nghĩa chuyên ngành “tập phổ biến đóng đa cấp” và một định lý dựa trêntính chất của tập phổ biến đóng đa cấp Không phân biệt phương pháp tiếp cận để khai
thác tập phổ biến đóng để khai thác các luật kết hợp không dư thừa, DELIS về cơ bản
là áp dụng phương pháp “sinh và thử” dựa trên các ứng viên Apriori để tính toán tậpphổ biến Trong giai đoạn tính toán ban đầu, phương pháp này tính tất cả các tập phổbiến có thể của các item cấp đầu tiên trong tập phân loại dùng phương pháp Apriori cơbản Giai đoạn này có thể tạo thêm gánh nặng cho việc tính toán trong trường hợp cáccấu trúc khác nhau của hệ thống phân cấp Ví dụ, nếu mức đầu tiên chứa hầu hết cácitem hoặc nếu thương số của các item mức trên lớn hơn các item mức thấp hơn, tổng sốtính toán sẽ tăng lên do tiến trình khai thác mẫu phổ biến dựa trên Apriori
Ngoài những hạn chế của việc áp dụng dựa trên phương pháp Apriori, DELIS có
hạn chế trong việc khai thác tập phổ biến đóng trong trường hợp một số lớn các itemsetkhác nhau của bộ dữ liệu và số lượng lớn các tập ứng viên phổ biến để kiểm tra sự gần
gũi Theo DELIS, với mọi n ứng viên, có m số item khác nhau và số l trung bình của
các item trong tập các ứng viên, thì số lượng tập con cần kiểm tra trong danh sách giao
dịch cố định sẽ bằng xấp xỉ n*(m-l), và điều này thì không thể thực hiện được trong
trường hợp n và m lớn.
Với các phương pháp và hạn chế nêu trên, luận văn tập trung tìm hiểu và đánhgiá một thuật toán đã được đề xuất để khai thác các luật kết hợp tối thiểu đa cấp vàcross-level dựa trên dàn tập đóng [22] Từ đó đề xuất phương pháp hướng tiếp cận hiệuquả, qua đó góp phần đáng kể trong việc khai thác các luật kết hợp tối thiểu đa cấp vàcross-level
Trang 16Luận văn gồm 4 chương, với các nội dung:
Chương 1 TỔNG QUAN
Tổng quan về khai thác dữ liệu, tập phổ biến, tập phổ biến đóng, khái niệmdàn và luật kết hợp Một số khảo sát về các công trình nghiên cứu liên quan
đến đề tài
Chương 2 CƠ SỞ LÝ THUYẾT
Trình bày cơ sở lý thuyết liên quan đến khai thác tập phổ biến, tập phổbiến đóng, các thuật toán tìm tập phổ biến đóng, các thuật toán xây dựng
dàn tập đóng, các thuật toán khai thác luật kết hợp hiện có.
Chương 3.THUẬT TOÁN MMCAR
Giới thiệu thuật toán MMCAR, đề xuất hướng tiếp cận hiệu quả dựa trênthuật toán MMCAR
Chương 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ
Giới thiệu cài đặt phương pháp, kết quả thực nghiệm và đánh giá
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Kết luận và hướng phát triển của luận văn trong tương lai
Trang 17Chương 1 TỔNG QUAN
Khai thác dữ liệu có nghĩa là trích lọc các mẫu thích hợp từ số lượng lớn
dữ liệu để khám phá tri thức ẩn trong tập dữ liệu Trong đó, khai thác mẫu phổ biến, khai thác luật kết hợp và khai thác sự tương quan giữa dữ liệu được nghiên cứu nhiều nhất trong lĩnh vực này.
Bài toán khai thác luật kết hợp [4,6] được phát biểu như sau: Cho trước tập n
item I={i1, i2, …, in} và tập các giao dịch D trong đó mỗi giao dịch t ⊆ I có một định
danh (Tid – Transaction identifier) duy nhất Luật kết hợp là biểu thức có dạng,
\ ( ⊂ ) trong đó p là độ phổ biến và q là độ tin cậy của luật.
Đã có nhiều cách tiếp cận khác nhau để giải bài toán khai thác luật kết hợpnhưng điểm chung của các thuật toán là chia bài toán thành hai giai đoạn:
i) Khai thác tất cả các tập phổ biến (FI – Frequent Itemsets) hay tập phổ
biến đóng (FCI – Frequent Closed Itemsets)
ii) Sinh luật kết hợp từ FI/FCI của giai đoạn i)
Khai thác tập phổ biến là việc quan trọng và mất nhiều thời gian trong quá trìnhkhai thác luật kết hợp Trong hầu hết các thuật toán khai thác luật, các tác giả đặc biệt
chú ý đến vấn đề làm thế nào khai thác nhanh tập phổ biến (hay tậ p phổ biến đóng)
Tập phổ biến đóng là một tập phổ biến thỏa điều kiện không tồn tại tập phổ biến
cha có cùng độ phổ biến với nó
Khai thác luật kết hợp là sinh các luật từ CSDL D thỏa ngưỡng phổ biến và
ngưỡng tin cập do người dùng chỉ định Vì vậy, các nhà nghiên cứu đã đề xuất nhiềuphương pháp để khai thác các luật kết hợp [29] Ngoài việc khai thác các luật đơn cấp,
việc khai thác các luật kết hợp đa cấp cũng được tập trung vào để có được tri thứcchuyên sâu và thông tin chung về các mối liên hệ tồn tại giữa các mục phân cấp Do
đó, phương pháp Apriori [5] và phương pháp dựa trên FP-tree [9],[19],[27] đã được đề
xuất để khai thác các luật kết hợp đa cấp Vì hầu hết các phương pháp tiếp cận làm việc
Trang 18với tập phổ biến, do đó số lượng các luật kết hợp được tạo ra vô cùng lớn Các phươngpháp tiếp cận này phải đối mặt với vấn đề dư thừa và yêu cầu một thời gian lớn.
Để cắt tỉa các luật dư thừa, các nhà nghiên cứu đã quan tâm đến việc dùng tập
phổbiến đóng trong việc khám phá các luật kết hợp Để giảm số l ượng luật kết hợp,
việc khai thác các luật kết hợp tối thiểu không dư thừa ( MNAR) từ các FCI đã được đề
xuất trong [10], và chỉ quan tâm khai thác các luật kết hợp với tiền đề tối thiểu và hiệusuất tối đa, cũng như phân biệt hai kiểu luật dựa trên giá trị của độ tin cậy: luật kết hợptối thiểu chính xác và gần đúng Các luật kết hợp chính xác tối thiểu với độ tin cậy là100% và các luật tối thiểu với độ tin cập nhỏ hơn 100% nhưng lớn hơn độ tin cậy tốithiểu do ngườ i dùng chỉ định được gọi là “các luật kết hợp tối thiểu gần đúng” Hai căncứchung cho các luật kết hợp chính xác và thông tin cơ bản cho các luật kết hợp gần
đúng đã được đề xuất trong [10]
Năm 2004, MNAR – Luật kết hợp tối thiểu không dư thừa đã được g iới thiệu
trong một phương pháp khác [ 30] Trong [30] tập phổ biến đóng được xem là nguồn đểtạo các luật kết hợp Các luật kết hợp với tiền đề tối thiểu và hiệu suất tối thiểu trên cảhai mặt được định nghĩa là các luật kết hợp tối thiểu không dư thừa Dự a trên kháiniệm sự hỗ trợ của một tập phổ biến, tập sinh tối tiểu của bất kỳ tập đóng được chọn làtiền đề và hệ quả của các luật kết hợp Vì độ hỗ trợ và độ tin cậy của các luật kết hợp
đạt được từ tập phổ biến đóng thì bằng độ hỗ trợ và độ tin cậy của c ác luật kết hợp với
tiền đề và hệ quả tối thiểu, do đó không có thông tin bị mất
Với một giao dịch và phân loại, các phương pháp thống kê liên quan đến việccắt tỉa các luật kết hợp tạo ra ở nhiều mức đã được dùng và định nghĩa các luật kết quả
như các luật kết hợp tổng quát trong [6] Một phương pháp để làm giảm ngưỡng hỗ trợ
để cắt tỉa nhiều luật phân cấp dư thừa đã được đề xuất trong [14] Họ khai thác các tập
phổ biến đa cấp dùng phương pháp top-down theo chiều sâu dựa trên nguyên tắc
Apriori Hơn nữa, họ dùng một số phép đo để khai thác các luật kết hợp cross -level
Tuy nhiên tất cả các phương pháp tiếp cận làm việc với phân loại tập phổ biến để khaithác các luật kết hợp Sau đó, một phương pháp mới để tạo các luật kết hợp đã được đềxuất trong [17] Đầu tiên, tác giả khai thác các tập phổ biến đóng đa cấp (mFCI) từ tậpphổ biến đa cấp (mFI) Vì vậy số lượng các mFCI có độ lớn nhỏ hơn số lượng các mFI,
có sự giảm đáng kể số lượng lớn các luật kết hợp đa cấp Một lần nữa, họ cũng theo
Trang 19chiến lược được đ ề xuất trong [10] để khai thác các luật kết hợp tối thiểu không dưthừa đa cấp với hệ quả tối đa cho tiền đề tối thiểu.
Vấn đề thời gian trong việc tạo các MNAR được giải quyết với nhiều phương
pháp tiếp cận gần đây dựa trên dàn nhằm làm giảm thời gian kh ai thác, như là, Dàn tậpphổ biến (FIL) [24], Dàn tập phổ biến thay đổi (MFIL) [27] và Dàn tập phổ biến đóng(FCIL) [26] Xây dựng dàn chính là xây dựng mối quan hệ cha – con trực tiếp giữa cáctập phổ biến (hay tập phổ biến đóng) với nhau giúp cho quá trình sinh luật diễn ra
nhanh hơn và trực quan hơn Một dàn tập phổ biến đóng (FCIL) bao gồm nhiều FCI,
thể hiện mối quan hệ cha-con giữa các tập bằng cách duy trì cấu trúc siêu tập
(superset)tối thiểu – tập con(subset) tối đại Các luật kết hợp có thể được khai thác
trong một thời gian rất ngắn khi khai thác hành vi của dàn Các tác giả trong [22] đã
đưa ra phương pháp khai thác các luật kết hợp thông qua khai thác hành vi của dàn tậpđóng, nhưng có khuyết điểm là tốn nhiều không gian nhớ để lưu trữ các nút của dàn và
thời gian để duyệt dàn
Để thuận tiện trong việc tìm hiểu các thuật ngữ và phương pháp tiếp cận đa cấp
và cross-level, ta cần phân loại các item của CSDL trong Bảng 1 vào các nhóm dựa vào mối quan hệ và thuộc tính của nó Ví dụ như Bảng 1.1 và Bảng 1.2 sau:
Bảng 1.1 Mối quan hệ giữa các item ở mức 1 và mức 2
Dry Food Biscuit, Chips, CakeLiquid Juice, Drinks, WaterFruit Seasonal fruit, Non-seasonal fruit
Trang 20Bảng 1.2 Mối quan hệ giữa các item ở mức 2 và mức 3
Dựa vào cách phân loại như trong Bảng 1.1 và Bảng 1.2, Hình 1.1thể hiện mối
quan hệ tổng thể giống như một cây và minh họa quá trình tạo mã cho mọi item dựavào các mức của nó Sau khi tạo mã cho mọi item, ta xây dựng và mã hóa CSDL giao
dịch, như trong Bảng 1.3, bằng phương pháp mã hóa được giới thiệu trong [12].
Hình 1.1 Cấu trúc phân cấp của các itemset
Để thể hiện mọi item của mọi mức cho bộ dữ liệu có hướng n-mức, ta cần một
mã n số Do đó, cho CSDL trong Bảng 1 với 3 mức, ta cần các mã 3 số để thể hiện mọi
item Chữ số thứ nhất thể hiện các item ở mức trên nhất, mức 1, chữ số thứ 2 thể hiệnitem mức 2 và chữ số thứ 3 mã hóa các item ở mức lá Ví dụ, item {1 -1-3} thuộc nhóm
1 của mức 1, nhóm 1 của mức 2 và item thứ 3 của mức lá Bây giờ, CSDL giao dịch
của Bảng 1 được biến đổi thành CSDL được liệt kê trong Bảng 1.3.
Trang 21Bảng 1.3 CSDL giao dịch đã được mã hóa
a) Định dạng dữ liệu ngang b) Định dạng dữ liệu dọc mức 3 (mức lá)
Trang 22Chương 2 CƠ SỞ LÝ THUYẾT
2.1 Khai thác tập phổ biến.
2.1.1 Một số định nghĩa.
a) Cơ sở dữ liệu giao dịch.
CSDL giao dịch D gồm một bộ đôi {I, T} trong đó I = {i1, i2,…, in} là tập tất cảcác item và T = {t1, t2, …, tm} là tập tất cả các giao dịch
b) Độ phổ biến.
Cho CSDL giao dịch D và một itemset X ⊆ I Độ phổ biến của Xtrong D, kí
hiệu (X), là số giao dịch mà X xuất hiện trong D
Ví dụ: Xét CSDL của Bảng 1.3b, ta có ({1-1-1}) = 4vì {1-1-1} chứa trong 4giao dịch là {1, 2, 4, 5}, ({1-1-1, 2-1-1}) = 3 vì {1-1-1, 2-1-1} chứa trong các giaodịch {1, 2, 5}
c) Tập phổ biến.
Tập X ⊆I được gọi là tập phổ biến nếu (X) ≥minSup (với minSup là giá trị do
người dùng chỉ định)
Ví dụ: Xét CSDL của Bảng 1.3b với minSup = 3 thì các tập {2-1-1}, {1-1-1} và
{1-1-1, 2-1-1} là các tập phổ biến, do các tập đó độ phổ biến tương ứng là 3, 4 và 3,
thỏa minSup.
2.1.2 Thuật toán khai thác tập phổ biến Apriori.
a) Ý tưởng của thuật toán.
Thuật toán Apriori thực hiện lặp đi lặp lại việc đếm tần suất xuất hiện của item
trong CSDL và phát sinh ứng viên gồm k+1 item dựa vào những item thỏa minSup.
Ban đầu, thuật toán bắt đầu với tập hợp 1-itemset tìm thấy trong CSDL và chọn những
itemset thỏa minSup để phát sinh tập hợp 2-itemsets, tương tự cho tập k-itemset đến khi
không thể phát sinh được nữa thì dừng
b) Mô tả thuật toán.
Đầu vào: CSDL D và ngưỡng phổ biến minSup.
Kết quả: FI chứa các tập phổ biến thỏa minSup trong CSDL D.
Trang 23Hình 2.1 Thuật toán Apriori
c) Minh họa thuật toán.
Xét CSDL ở Bảng 1.3a, tất cả các tập phổ biến thỏa minSup = 3 như sau:
Bảng 2.1 Kết quả chạy từng bước của thuật toán Apriori
Trang 24Ta có danh sách các tập phổ biến được trình bày trong Bảng 2.2
Bảng 2.2 Danh sách các tập phổ biến với minSup = 3
Ví dụ: xét CSDL trong Bảng 1.4b, với minSup = 3, thì các tập {2-1-1}, {1-1-1}
và {1-1-1, 2-1-1} là các tập phổ biến, do các tập đó có độ phổ biến tương ứng là 3, 4 và
3, thỏa minSup Tuy nhiên, các tập {1-1-1} và {1-1-1, 2-1-1} là tập phổ biến đóng bởi
vì hai tập đó không có siêu tập có cùng độ phổ biến, trong khi đó tập {2 -1-1} chỉ là tậpphổ biến
b) Tập phổ biến đóng mức xác định.
Tập chứa các item cùng một mức đáp thỏa minSup của mức tương ứng được gọi
là tập phổ biến mứcxác định[12] Tập phổ biến ở mứcxác định được coi là tập phổ
Ví dụ: Xét CSDL trong Bảng 1.3c, với minSup = 3, thì các tập {1-1-*},
{2-2-*) và {1-1-*,2-2-*} là các tập phổ biến, do các tập đó có độ phổ biến tương
ứng là 6, 4 và 4, thỏa minSup Ngoài ra, chúng nó thuộc về mức 2, cùng một
Trang 25mứcnhư trong trong Hình 1.1 Tuy nhiên, tập {1-1-*, 2-2-*} chỉ là tập phổ biến
đóng bởi vì nó không có siêu tập với cùng độ hỗ trợ, trong khi đó hai tập còn lại
thì là tập phổ biến đóng mứcxác định bởi vì chúng có các item cùng mức.
c) Tập phổ biến đóng cross-level.
Tập chứa các item từ các mức khác nhau trừ tập có cặp tổ tiên – hậu duệ, thỏa minSup được gọi là tập phổ biến cross -level [14].Tập phổ biến cross-level được coi là
đóng nếu không tồn tại siêu tập có cùng độ phổ biến.
Ví dụ: Xét CSDL trong Bảng1.3c và 1.3d, với minSup = 3, thì các tập
{1-*-*,2-1-*}, {1-*-*, 2-2-*} và {1-*-*,2-1-*,2-2-*} là các tập phổ biến, do có độ
phổ biến tương ứng là 3, 4 và 3, thỏa minSup Ngoài ra, chúng nó thuộc về mức
1 và mức 2, như trong Hình 1.1 trừ cặp tổ tiên – hậu duệ Tuy nhiên, chỉ các
itemset {1-*-*, 2-2-*} và {1-*-*,2-1-*,2-2-*} là tập phổ biến đóng cross-level bởi vì nó không có siêu tập với cùng độ hỗ trợ và các item được lấy từ mức 1 và mức 2.
2.2.2 Thuật toán khai thác tập phổ biến đóng (CHARM) [31].
a) Ý tưởng của thuật toán.
Cho 2 tập phổ biến X, Y⊆ I, nếu (X) = (Y), thì X và Y sẽ thuộc về cùng tập
phổ biến đóng có tiền tố là X ∪ Y Như vậy ta không cần xét bất cứ tập cha nào của cả
X lẫn Y ngoài X ∪ Y Quá trình tiếp tục khám phá đệ qui bằng cách tiếp tục xét các tập
cha của X ∪ Y
b) Mô tả thuật toán.
Đầu vào: CSDL D và ngưỡng phổ biến minSup.
Kết quả: tập C gồm tất cả các tập phổ biến đóng của CSDL.
Trang 27c) Minh họa thuật toán
Xét CSDL được trình bày ở Bảng 1.3c Hình 2.3 minh họa quá trình khai
thác FCI thỏa minSup=3.
Hình 2.3 Minh họa thuật toán CHARM với minSup=3
Kết quả khai tác tập FCI thỏa minSup=3 từ CSDL ở Bảng 1.3c theo thứ tự
đệ qui được trình bày ở Bảng 2.3
Bảng 2.3 Tập các FCI thỏa minSup=3
(2-1-*,2-2-*,1-1-*)
(2-2-*,1-2-*)x135(2-2-*,1-2-*,1-1-*)(2-2-*,1-1-*) (1-2-*,1-1-*)
Trang 282.3 Dàn tập phổ biến đóng.
2.3.1 Định nghĩa.
Tất cả các tập đóng có thể được sắp xếp trong dàn theo mối quan hệ tập con Có
1 cạnh nối 2 tập đóng X và Y, nếu và chỉ nếu X ⊂ Y và ∄Z, màX ⊂ Y ⊂ Z Các lớp của
dàn tương ứng với chiều dài của các tập Như vậy, các tập nhỏ hơn (với độ hỗ trợ cao)
ở trên và các tập lớp hơn (với độ hỗ trợ thấp) ở dưới Mối quan hệ giữa tập con tối đại
và siêu tập tối thiểu có được xem qua dàn tập phổ biến đóng này (FCIL)
Cấu trúc dàn được định nghĩa đầu tiên trong [15] để khai thác các tập phổ biến
đóng Các tác giả đã định nghĩa nhiều tính chất của dàn như sau:
* Các thành phần của dàn là các tập phổ biến đóng
* Tất cả các tập phổ biến đóng có các tidset khác nhau
* Mọi nhánh đơn bắt đầu từ gốc và kết thúc ở lá thể hiện mối quan hệ giữa tậpcon – siêu tập giữa các nút trong nhánh
* Mọi cặp kết nối của nút, tồn tại 1 mối quan hệ cha – con (tập con tối đại –siêu tập tối thiểu)
* Các siêu tập tối thiểu nằm trên các nút cha của bất kỳ nút cụ thể Các tập contối đại nằm trên các nút con của bất kỳ nút cụ thể
2.3.2 Một số thuật toán khai thác dàn tập phổ biến đóng.
2.3.2.1 Thuật toán CHARM-L [31].
a) Ý tưởng của thuật toán.
Khi một tập đóng mới X được tìm thấy, chúng ta xác định ngay tất cả các tập
đóng cha của nó S = {Y | Y ∈C ∧ X ⊂ Y} Các phần tử nhỏ nhất trong S được tạo
thành nhằm xác định các liên kết từ X đến các phần tử này
b) Mô tả thuật toán.
Đầu vào: CSDL D và ngưỡng phổ biến minSup
Kết quả: dàn FCI chứa tất cả các tập phổ biến đóng của CSDL D
Trang 29Hình 2.4 Thuật toán CHARM-L
c) Minh họa thuật toán.
Xét CSDL được trình bày ở Bảng 1.3c Hình 2.5 minh họa quá trình cập
nhật dàn tập phổ biến mỗi khi có một tập đóng mới thêm vào (thứ tự của các tập phổ biến đóng được xét theo bảng 2.3 ).
Trang 30Hình 2.5 Minh họa quá trình cập nhật dàn bằng CHARM-L
2.3.2.2 Thuật toán xây dựng dàn tập đóng [2].
a) Ý tưởng của thuật toán
Đầu tiên, sử dụng một trong các thuật toán khai thác tập đóng để tìm tất cả các
tập đóng Sau đó, mỗi tập đóng X sẽ được chèn vào dàn (đã được xây dựng từ các tập
đóng trước X) theo thứ tự tăng của số lượng itemset
b) Mô tả thuật toán.
Đầu vào:tập FCI thỏa ngưỡng hỗ trợ minSup
Kết quả: dàn FCI chứa tất cả các tập phổ biến đóng của CSDL D
Trang 31Hình 2.6 Thuật toán xây dựng dàn tập đóng (FCIL) từ FCI
c) Minh họa thuật toán.
Xét CSDL trong Bảng 1.3c, với minSup = 3 (50%), thì các tập đóng theo thuật
toán CHARM sau khi được sắp xếp như sau:
Bảng 2.4 Danh sách các tập phổ biến đóng sau khi được sắp xếp
Quá trình xây dựng dàn được minh họa trong hình 2.7
Trang 32Hình 2.7 Minh họa quá trình xây dựng FCIL từ các FCI của bảng 2.3.
Đầu tiên, nút gốc dàn được khởi tạo rỗng ( ∅ hay {}) Sau đó tập đóng {1-1-*}được xử lý đầu tiên Nó được chèn trực tiếp thành nút con của {} Kế tiếp, tập đóng {1 -
1-*, 1-2-*} được xử lý Do nút gốc có một con là {1 -1-*} và {1-1-*}⊂ {1-1-*,1-2-*},
thuật toán sẽ gọi đệ qui để chèn {1 -1-*, 1-2-*} vào dàn với nút gốc là {1 -1-*}, {1-1-*,1-2-*} được kết nối trực tiếp với {1-1-*} vì {1-1-*} không có nút con Quá trình xử lý
tương tự cho các nút còn lại
2.4 Tập sinh tối tiểu (Minimal Generator – mG) [30]
Cho tập X là tập phổ biến đóng Thì, X’ được gọi là generator của X khi và chỉ
khi:
ii) σ(X) = σ(X’)
Trang 33Cho G(X) là tập generator của X, thì X’ ∈ G(X) là một tập sinh tối tiểu mG(X),
nếu X’ không có tập con trong G(X), có nghĩa là ∀a X a ⊂ X’, X a ∉ G(X) Theo định nghĩa
thì mG(X) ≠ Ø.
Ví dụ: Xét CSDL trong Bảng1.3b và 1.3c, nếu minSup = 3 thì tập item
I={1-1-1,2-1-*} với TidList={1,2,5} là tập phổ biến đóng cross-level được xây dựng bằng các item {1-1-1} và {2-1-*} với TidList(1-1-1)= {1,2,3,4,5} và TidList(2-1-*)={1, 2, 5}.
Do đó, tập các generator của tập phổ biến đóng I là G(I)={{2-1-*},{1-1-1, 2-1-*}}, nhưng minimal generator là {2-1-*} bởi vì nó không có tập con trừ tập Ø trong tập
(2-b) Luật dư thừa [27]
Cho tập R = {R 1 , R 2 , , R n } là tập các luật có cùng độ phổ biến và độ tin cậy.
Luật R jlà dư thừa nếu∃R i R:R i ∝ R j (i ≠ j).
Định lý 1 [27] MNAR với độ tin cậy = 100% chỉ được tạo ra từ X’ → X (ⱯX’
1-cậy như nhau với X 1 ⊂X 2 và Y 2 ⊂Y 1
2.5.2 Thuật toán khai thác MNAR từ dàn tập đóng.[26]
Đầu vào: Dàn tập phổ biến đóng với nút gốc L r và ngưỡng tin cậy minConf
Kết quả: tập MNAR thỏa minConf
Trang 3417 conf = L.sup / L c.sup
18 if conf ≥ minConf then
19 FIND_RULE(L c ,L,conf)
20 for all L s ∈ L c Children do
21 if L sis not marked then
26 MNAR=MNAR⋃ {Z→L s itemset \ Z(L s.sup, conf)}
Hình 2.8 Thuật toán khai thác luật kết hợp tối thiểu không dư thừa từ dàn tập đóng
Trang 35Chương 3 THUẬT TOÁN MMCAR
3.1 GIỚI THIỆU
Thuật toán MMCAR giải quyết bài toán sau:
Cho CSDL giao dịch D, phân loại l-mức của D, một tập ngưỡng hỗ trợ tối thiểu
minSup i (1 ≤ i ≤ l) và một ngưỡng tin cậy tối thiểu minConf, tập dàn tập phổ biến đóng
cross-level (CCL) và các luật kết hợp tối thiểu cross-levelcó dạng A ⇒Bđược khai thác,
trong đó:
- A,B ∈T j , T j∈t CCL i (1 ≤i ≤|CCL| và 1 ≤j ≤|T j∈t CCL[i]| )
- support(T j ) ≥ minSup X , minSup X = MIN(minSup(l 1 , l 2 , …)) ( {l 1 ,l 2 , } là các
mức tương ứng của dàn)
Để khai thác được các luật kết hợp tối thiểu cross-level, thuật toán thực hiện quacác giai đoạn sau:
1 Tính toán độ phổ biến từng item cho mọi mức
2 Xây dựng dàn tập đóng cho mứcxác định
* Xây dựng dàn tập đóng bằngCHARM-L với các độ phổ biến item đơn
được cung cấp
* Khai thác MG bằng MG-CHARM.
3 Xây dựng dàn tập đóng cross -level và các luật kết hợp
* Khai thác tập phổ biến cross-level bằng cách duyệt ngang qua tất cảcác cặp có thể của các dàn từ các mức khác nhau
* Khai thác MG của các tập đóng cross-lelvel
* Xây dựng dàn bằng CHARM-L Tạo các luật kết hợp tối thiểu không
dư thừa
3.1.1 Tính toán độ phổ biến của 1 item
Để làm việc với dữ liệu cross -level và đa cấp, ta cần trích xuất các item đơn ở
mọi mức Để làm như vậy, đầu tiên ta phải phân loại các item của mức lá dựa trên các
đặc tính hoặc thuộc tính tương tự Khi xác định phân loại tập it em và xây dựng dàn, có
một quy ước như sau: các item thuộc mức đỉnh (gần nút gốc nhất) thì được liệt kê trong
Trang 36mức 1 và theo cách này, số mức sẽ tăng lên theo chiều sâu của item Kết quả là, các nútmức lá thuộc về mức có số liệt kê cao nhất.
Phương pháp ngưỡng hỗ trợ giảm dần được dùng để xác định ngưỡng hỗ trợ tốithiểu cho mọi mức Theo quy trình này, người dùng chỉ định ngưỡng hỗ trợ tối thiểucho bất kỳ mức nào thì thường nhỏ hơn ngưỡng hỗ trợ tối thiểu của mức cao hơn Luônluôn có khả năng là các Tidmức cao hơn có thể xuất hiện thường xuyên hơn so với cácmức thấp hơn
Các Tidlist (danh sách Tid) của các item mức cao hơn có thể được tính toán thôngqua sự kết hợp các Tidlist của các item mức thấp hơn Đơn giản, ta có thể nói là các
Tidlist cha được tính toán thông qua sự kết hợp các Tidlist con, và cả các item thườngxuyên và không thường xuyên có thể đóng vai trò để xác định Tidlist của các item cha;
vì vậy, nút cha có thể được chọn như là item thường xuyên ở mức cao hơn cho dù nútcon của nó là thường xuyên hay không thường xuyên Nói cách khác, các item thường
xuyên và không thường xuyên cũng góp phần vào việc xác định item cha thường
xuyên Vì, một item có thể không thường xuyên ở cấp riêng của mình, nhưng nó có thểgóp phần là item cha thường xuyên của mức cha Ta có thể nói là các Tidlist cha đượctính toán thông qua sự liên kết các Tidlist con Ví dụ, xét hệ thống phân cấp item trình
bày trong Hình 1.1, ở đây Tidlist (1-1-*) = Tidlist (1-1-1) ∪ Tidlist (1-1-2) ∪ Tidlist
(1-1-3) = {1, 2,4, 5}∪ {3} ∪ {6} = {1, 2, 3, 4, 5, 6}
3.1.2 Xây dựng dàn tập đóng mức xác định
Mục đích của giai đoạn này là tạo dàn tập đóng cho mọi mức Đầu tiên, mọi
item đơn phổ biến cùng với TidList của nó được tính toán trong suốt quá trình quét
CSDL giao dịch, sau đó thông qua CHARM-L, dàn tập đóng cho mọi mức tương ứng
được xây dựng Trong giai đoạn này, tập sinh tối tiểu cũng được tạo ra bằng MG
-CHARM [30]
3.1.3 Các luật kết hợp tối thiểu không dư thừa cross -level.
Giai đoạn này tạo các luật kết hợp cross -level giữa các item từ các mức khác
nhau Để sinh các luật kết hợp cross-level cần tạo dàn tập phổ biến đóng cross -level từmọi khả năng có thể của các mức để lấy tất cả thông tin liên kết giữa các item
Để tạo dàn tập phổ biến đóng cross-level, cần xem xét các định nghĩa và kỹ
thuật sau
Trang 37Định nghĩa 1 Lực lượng của dàn.
Số kbiểu diễn số mức kết hợp trong dàn , ,…, được gọi là lực lượng của
dàn, với sốa ibiểu diễn mức chứa các item
Ví dụ: dàn L 1,2,3 có lực lượng k=3 và chứa các item từ các mức 1, 2 và 3 Tương
tự, cả hai dàn L 1,2 và L 2,3 có lực lượng k=2 và chứa các item của mức 1 và 2, 2 và 3
tương ứng
Để xây dựng dàn tập đóng cross -level,một hoạt động được xem xét qua một
trong những dàn tìm thấy trước đó Nhìn chung, qua hai dàn mức m, L m và n, L n sẽ tạo
một dàn cross -level mức m và n, L m,n Giả sử các dàn ở mứcxác định là các dàn có lực
lượng là 1, vì thế thông tin của các dàn đó là từ một mức đơn xác định Kết quả là, giao
nhau của hai dàn mứcxác định sẽ tạo một dàn có lực lượng là 2 và qua hai dàn có lực
lượng là 2 sẽ tạo dàn có lực lượng là 3, … Tổng quát, giao của hai dàn với lực lượng
là k sẽ tạo dàn có lực lượng là k+1 Việc giao nhau sẽ được lặp lại cho tới khi không có nhiều hơn 1 dàn c ó lực lượng là k+1 được tạo ra.
Hơn nữa, trong mỗi lần lặp lại, các dàn có lực lượng là k+1được tạo ra, trong đó
chứa các item liên quan giữa các item của k+1mức Ví dụ, xét với và với, chứa các item của các mức a1, a2 và mức a2, a3, chúng ta có được các dàn , và, Do đó, bằng cách xét , và , , dàn , , sẽ được tạo ra, nó chứa cácitem của các mức a1, a2và a3
Khi xem xét qua tất cả các dàn có thể có lực lượng là k để tạo các dàn có lực
lượng là k+1 với k ≥2, một số không gian tìm kiếm đã được cắt tỉa và không cần phải
xem xét qua tất cả các cặp có thể của các dàn Bổ đề 1 đảm bảo tính đúng đắn của việccắt tỉa
Trang 38, ,…, , và , ,…, , , qua đó tạo điều kiện thực hiện mối quan hệ tổ tiên -hậuduệ giữa các item của các mức khác nhau để phản ánh cấu trúc phân loại của các item.
Ví dụ: giao 2 dàn L 1 và L 2 (L 1 × L 2 ) sẽ tạo ra L 1,2 , với L 1 chứa các item của tập
phổ biến đóng cross-level của mức 1và L 2 chứa các item của tập phổ biến đóng
cross-level của mức 2 Tương tự, mọi nút của L 1,2 chứa tập phổ biến đóng cross-level cho
mức 1 và mức 2 Kết quả là, L 1,3 = L 1 × L 3 và L 2,3 = L 2 × L 3, chứa các item của các mức
tương ứng là { mức-1, mức-3} và {mức-2, mức-3}, và xét qua cả hai dàn đó sẽ tạo ra
dàn L 1,2,3 với L 1,2,3 = L 1,2 × L 2,3 bởi vì trong cả hai trường hợp, một dàn sẽ được tạo ra
mà ở đó mọi nút sẽ chứa các itemset từ các mức 1,2 và 3
3.1.3.1 Dàn ứng cử viên.
Để xây dựng dàn có lực lượng là k+1, chúng ta phải xét qua hai dàn có lực lượng là k Từ các thuộc tính của dàn, chúng ta có thể xem một dàn như một tập các
nút được sắp xếp theo một cách mà mối quan hệ cha -con giữa các nút được duy trì và
các quan hệ của nút được thực hiện bằng các cạnh kết nối ch úng Mọi nútT gồm ba
phần: (1) một tập phổ biến đóng, tập phổ biến đóng cross-level CFCI với k ≥2, (2) một
danh sách các danh định giao dịch TID và (3) tập mG từ tập CFCI, gọi là MG T =
{CFCI,TID,MG}.
Do đó, giao nhau của dàn , ,…, , và , ,…, , , có nghĩa là giao nhau
của các nútT 1 và T 2 tương ứng, với T 1={ , , }∈t , ,…, , và
T 2={ , , }∈t , ,…, , Do mối quan hệ giữa các nút trong dàn,chúng ta nên duy trì một trình tự duyệt nút và ưu tiên siêu tập giao nhau dài nhất của
item đầu tiên Bổ đề 2 sau đây cho thấy một thứ tự duyệt tối ưu của các nút trong dàn
Bổ đề 2 Khi duyệt một tập các nútT của dàn , ,…, , để giao nó với dànkhác, nút đầu tiên được xét trong thứ tự duyệt theo chiều sâu (Depth First Search -DFS) sẽ được thực hiện đầu tiên, nó sẽ đảm bảo là tập phổ biến đóng lớn nhất được
khai thác đầu tiên
Ví dụ: xét L 1 chứa hai nútvới các itemset {1-*-*} và {1-*-,2-*-*}, và L 3 chứa ba
nútvới các itemset {1-1-1}, {1-1-1, 2-1-1} và {2-2-1} trong Hình 3.1 và Hình 3.3 Khi
thực hiện L 1 × L 2 , nếu chúng ta theo trình tự duyệt DFS và xem xét nútđầu tiên sâu
nhất, thì hai nútứng viên đầu tiên có thể sẽ là *,2-*-*} × {1-1-1,2-1-1} hoặc
Trang 39{1-*-*,2-*-*} × {2-2-1} Tuy nhiên, trong cả hai trường hợp siêu tập dài nhất có thể chứacác item sẽ được chọn đầu tiên để giao nhau.
Lợi ích của việc duyệt có thứ tự nằm trong việc cắt tỉa hiệu quả không gian tìmkiếm một cách hiệu quả, đó là, xây dựng tập phổ biến đóng lớn nhất đầu tiên và loại bỏ
các subset của nó với cùng độ phổ biến ở các giai đoạn sau.
Việc cắt tỉa các ứng viên được thực hiện theo chiến lược sau: itemset CFCI Tcủa
mọi nútT được chia làm ba đoạn: đoạn itemset xung đột CFCI con, đoạn itemset so khớp
CFCI mat và đoạn itemset phân biệt CFCI dis Do đó, các đoạn itemset của CFCI T, sẽ
được xem xét để tạo ra một dàn có lực lượng cao hơn, có thể được xem như hội của
CFCI con , CFCI mat và CFCI dis , X={CFCI con ∪ CFCI mat ∪ CFCI dis } Đặc biệt là X ⊆
CFCI T và có thể có vài item là CFCI spare = CFCI T \X, không tham gia vào việc xây
dựng dàn có lực lượng cao hơn
Dưới đây là một vài điều kiện và định nghĩa cần thiết để thực hiện chiến lược
trên
Định nghĩa 2 Itemset tổ tiên và Itemset hậu duệ.
vớiI i là item của cấp lev p và I j là item của cấp lev q , nếu prefix(I i )=prefix(I j ) ≠ ∅ và
lev p <lev q, thì itemset được gọi là tổ tiên của các item I j , ký hiệu là ANC(I j), vàitemset được gọi là hậu duệ của các item I i , ký hiệu là DESC(I i) Ở đây, item bất
kỳ I được biểu diễn bằng cách mã hóa như đã trình bày ở Chương 1.
Ví dụ: xét nútchứa itemset {1-*-*,2-*-*} trong dàn L 1 và nútchứa itemset
{1-1-*, 2-1-{1-1-*, 2-2-*} trong dàn L 2 trong Hình 3.1 và Hình 3.2 Prefix của item {1-*-*} là
item {1-1-*} Do đó, {1-*-*}=ANC({1-1-*}) và {1-1-*}=DESC({1-*-*}) Tương tự, {2-*-*}=ANC({2-1-*,2-2-*}), {2-1-*}=DESC({2-*-*}) và {2-2-*}=DESC({2-*-*}).
Vì vậy, tập tổ tiên là {1-*-*,2-*-*} và tập hậu duệ là {1 -1-*,2-1-*,2-2-*} Có nghĩa là