Nghiên cứu này tập trung vào bài toán khai thác các tập phô biện trên cơ sở dữ liệu được đánh trọng số, với mục tiêu chính là phát triển thuật toán khai thác Top-rank- k tập phố biến, tậ
Trang 1TONG LIEN DOAN LAO DONG VIET NAM
TRUONG DAI HOC TON DUC THANG
KHOA CONG NGHE THONG TIN
r—/ LỄ
DO AN CUOI Ki MON PHAN TICH VA THIET KE GIAI
THUAT
Mining top-rank-k frequent weighted
itemsets using WN-list
structures and an early pruning strategy
Người hướng dân: GV NGUYÊN CHI THIEN Người thực hiện NGUYÊN TRIỆU VI— 52100143
TRAN THANH DAT -— 52100879
Khoá : K25
THÀNH PHÓ HÒ CHÍ MINH, NĂM 2023
Trang 2TRUONG DAI HOC TON DUC THANG
KHOA CONG NGHE THONG TIN
r—/ LỄ
DO AN CUOI Ki MON PHAN TICH VA THIET KE GIAI
THUAT
Mining top-rank-k frequent weighted
itemsets using WN-list
structures and an early pruning strategy
Người hướng dẫn: GV NGUYÊN CHÍ THIỆN
Người thực hiện: NGUYEN TRIỆU VI
TRẢN THÀNH ĐẠT
Khoá : K25
THÀNH PHÓ HÒ CHÍ MINH, NĂM 2023
Trang 3LOI CAM ON
Chúng em xin gửi lời cảm ơn chân thành đến thầy cô đã hướng dẫn và hỗ trợ chúng em trong quá trình hoàn thành báo cáo môn học về Phân tích và thiết kế giải thuật Sự kiên nhẫn và kiến thức của thầy đã giúp em nắm bắt một cái nhìn rõ ràng về chủ đề này
Em cũng xin cảm ơn bạn bè đã hỗ trợ trong suốt quá trình nghiên cứu và thảo
luận
Lời cảm ơn này dành tặng thầy và các bạn đã đóng góp cho báo cáo này Chung em xin chan thành cảm ơn
Trang 4TẠI TRƯỜNG ĐẠI HỌC TỒN ĐỨC THẮNG
Tôi xin cam đoan đây là sản phẩm đồ án của riêng chúng tôi và được sự hướng dẫn của TS Nguyễn Chí Thiện; Các nội dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa công bồ dưới bất kỳ hình thức nào trước đây Những số liệu trong các bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá được chính tác giả thu thập từ các nguồn khác nhau có ghi rõ trong phần tài liệu tham khảo
Ngoài ra, trong đồ án còn sử dụng một số nhận xét, đánh giá cũng như số liệu của các tác giả khác, cơ quan tô chức khác đều có trích dẫn và chú thích nguồn gốc
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm
về nội dung đồ án của mình Trường đại học Tôn Đức Thắng không liên quan đến những vi phạm tác quyền, bản quyền do tôi gây ra trong quá trình thực hiện (nếu có)
TP Hồ Chí Minh ngày tháng năm
Tác giả (ý tên và ghỉ rõ họ tên)
Nguyễn Triéu Vi
Thanh Đạt
Trang 5PHAN XAC NHAN VA DANH GIA CUA GIANG VIEN
Phần xác nhận của GV hướng dẫn
Tp Hồ Chí Minh ngày tháng năm
(kí và ghi họ tên)
Phần đánh giá của GV chấm bài
Tp Hồ Chí Minh ngày tháng năm
(kí và ghi họ tên)
Trang 6Nghiên cứu này tập trung vào bài toán khai thác các tập phô biện trên cơ sở dữ liệu được đánh trọng số, với mục tiêu chính là phát triển thuật toán khai thác Top-rank-
k tập phố biến, tập trung vào việc xử lý dữ liệu có trọng sô Các thuật toán phô biến nhu Apriori, FP-growth, Eclat va các phương pháp dựa trên cấu trúc N-list đã được đề xuất trước đó Tuy nhiên, việc khai thác tập phố biến tạo ra một lượng lớn các tập phố biến, làm cho việc hiểu và khai thác các quy tắc trở nên khó khăn Một giải pháp cho vấn đề này là sử dụng biểu diễn rút gọn giảm kích thước tổng thể của bộ mẫu và quy
tắc Hai dạng biểu diễn chính là tập phố biến đóng (FCIs) và tập phố biến tôi đa
(MEIs) Một bộ sưu tập của FCIs hoặc MEFIs có thê được sử dụng dé suy luận tất cả các
tập phô biến Số lượng FCIs hoặc MFIs ít hơn số lượng tập phố biến, giảm thiểu không gian lưu trữ và yêu cầu thời gian tính toán
Nghiên cứu này giới thiệu vấn đề khai thác Top-rank-k tập phố biến, sử dụng
hai cấu trúc dữ liệu tiên tiến là tidset và diffset Ba thuật toán cơ bản cho vấn đề này
được phát triển, bao gồm TFWIT, TEWID và TFWIN TEWIT và TFWID sử dụng cau trúc tidset và diffset để khai thác Top-rank-k tập phố biến Tuy nhiên, chúng chia sẻ hạn chế về nén dữ liệu, dẫn đến thời gian thực hiện lớn Do đó, thuật toán TEWIN
(Top-rank-k tập phố biến sử dụng cấu trúc N-list có trọng số) được phát triển Nghiên cứu này áp dụng chiến lược cắt tia động vào thuật toán TEWIN để khai thác Top-rank-
k tập phố biến một cách hiệu quả hơn, từ đó đề xuất thuật toán TEWIN+ Cuối cùng,
nghiên cứu tiễn hành một thử nghiệm thực nghiệm đề so sánh thời gian chạy và sử dụng bộ nhớ giữa các phương pháp thử nghiệm Kết quả thử nghiệm chỉ ra rằng TFWIN+ la thuật toán tốt nhất cho việc khai thác Top-rank-k tập phố biến
Trang 7MUC LUC 909.) 00 hố 1
1.1 Khai thác dữ liệu (Data min1ng) 1211211111111 11111110111 11 111111 11 n1 H1 HH àu 8
4.80 0 (on .ỶẩẲỶÝẢ §
1.2.2 Khai thác tap pho bién (Mining frequent weighted iteMSet) .c.cccccccccccccctcccescsscsssee 9
P2 Giao Ÿ 0n . 12 CHƯNG 3 -~ FREQUENT WEIGHTED ITEMSET c2 2 2122211 12151 t1 HH He 3
3.1 Định nghĩa về Top-rank-k tập được đánh trọng phô biến 2 2252 222212212222, 3
CHƯNG 4-~ TIDSET AND DIFFSET STRUCTURES FOR MINING FWE 3
l9 ca 0:i-(adiađiẢÝẢÝÝỶ 3
“số sẽ ố ốốốẽố ốốốố.ố 6
4.2 Thuật toán khai thác tập F'WIs sử dụng cấu trúc Tidset và Diffset ác nen re, 9
CHUONG 5 — WN-List structure for mining FWIs Implement JAVA with TFWIN &
15.2 Ẽ ẼêẼẼÊ AãAãa _ - ai 22 5.1 Dinh nghĩa CAU tric WN-LiSti CC :I 22
5.2 Vi dy cau tritc WN-List cc cccccccscsssseessessssnsesssssnsseessninseessssnsscssseesssessnensessressevsstn 22
5.3 Thuat toan TFWIN: Tim kiém tap FWIs xép hang thir k str dung cau trúc WN-list 25
5.3.1 Gidi thiéu thuGt tot Ge THÃ ĐÌỦ: SH HH HH H1 1n 1x HH nhà Hà 25 5.3.2 Triển khai thuật toán VỚI (JAVÑL cc c HH n1 1111011111111 1 11111 xxx 26 5.3.3 Kết GUA CU TAUGLTOGIE hgẶ., 30
5.3.4 Phân tích độ phức tạp của thuật lOÁH nh HH HH HH nà 32
Trang 83.4.1 Giới thiệu thuật tOÁH (Ñ THÃ ĐÌỦ: LH HH nh tt Hà HH xà Hà 34 5.4.2 Triển khai thuật toán VỚI (JAVđL c1 1111011111111 1 11111 xx 35
3.4.3 Kế! quả của thuật fOÁH: 55 511 2111111121122 2112111211112 38 3.4.4 Phân tích độ phức tạp của thuật lOÁH- nh HH HH He nà 40
CHUONG 6 — EMPIRICAL EVALUATION c1 1 12 1n HH HH HH Hà, 42 08) /Huì( y§:.:iaiadiaiiiiiiiiiiả 43 6.2 Memory Usage 353A 44
Trang 9CHƯƠNG 1— MỞ ĐẦU
1.1 Đặt vấn đề
Trong thời đại sô hóa ngày nay, việc khai thác thông tm từ cơ sở dữ liệu đang
trở thành một thách thức ngày càng lớn, đặc biệt là khi muốn tìm hiểu mối quan hệ
giữa các sản phâm trong danh mục có đánh trọng số Điều này đặt ra câu hỏi về cách
thức hiệu quả nhất đề khai thác thông tin từ dữ liệu có tính chất này
Các thuật toán khai thác truyền thống như Apriori, FP-growth, và Eclat đã chứng minh được sự hiệu quá trong việc khai thác tập phô biến từ cơ sở dữ liệu Tuy
nhiên, khi dữ liệu được đánh trọng SỐ, Sự phức tạp tăng lên, đặt ra thách thức trong việc
xử lý thông tin trọng số của từng sản phẩm một cách hiệu quả
Đề giải quyệt van đề này, để tài này tập trung vào bài toán khai thác Top-rank-k
tập pho biến từ cơ sở đữ liệu được đánh trọng số Sự tiếp cận này đặt ra nhu cầu phát
trién thuật toán mà không chỉ xử lý dữ liệu trọng số mà còn giảm thiêu lượng kết quả tạo ra, tăng tính hiệu quả trong việc hiểu và áp dụng thông tin
Để đối mặt với thách thức này, nghiên cứu giới thiệu hai cấu trúc dữ liệu tiên
tiền là tidset và diffset Bằng cách sử dụng những cấu trúc này, ba thuật toán cơ bản
(TFWIT, TFWID, TFWIN, TFWIN+) duoc phat triển đê khai thác Top-rank-k tập phố
biến Mục tiêu là vượt qua những hạn chế của các thuật toán truyền thống, đồng thời
cải thiện thời gian thực hiện và khả năng nén dữ liệu
Những nghiên cứu này không chỉ đề cập đến vấn đề lý thuyết mà còn tập trung vào sự thực tế và tính ứng dụng của việc khai thác thông tin từ cơ sở dữ liệu có đánh trọng số Kết quả của thử nghiệm thực nghiệm sẽ cung cấp cái nhìn rõ ràng về sự hiệu quả của các phương pháp đề xuất và mở ra hướng nghiên cứu tương lai trong lĩnh vực nảy
Trang 10Tổng quan: Đề tai nay tập trung vào lĩnh vực khai thác thông tin từ cơ sở dữ liệu
có tính chất đặc biệt, khi dữ liệu được đánh trọng số Mục tiêu chính của nó là phát
triển thuật toán khai thác Top-rank-k tập phố biến, nơi tập trung vào xử lý thông tin có trọng số, giúp tìm ra những mẫu thông tin quan trọng mà không phải xử lý tất cả các kết quả có thể xuất hiện
Data mining — khai phá dữ liệu là quá trình phân loại, sắp xếp các tập hop dtr
liệu nhất định đề xác định xu hướng, các mẫu và thiết lập các mối liên hệ hữu ích nhằm giải quyết các vấn đề nhờ phân tích dữ liệu
Mục tiêu: cho phép các doanh nghiệp có thể dự đoán được xu hướng tương lai,
nhằm đưa ra các quyết định được hỗ trợ dữ liệu từ các tập dữ liệu khong 16
Trọng số của một giao dịch được tính bằng trung bình của trọng số của các mục trong giao dịch đó Mức hỗ trợ có trọng số của một tập mục (hoặc tập mục) được xác định bằng tý lệ của tổng trọng số của các giao dịch chứa tập mục đó trên tổng trọng số của tất cả các giao dịch Điều này giúp đo lường sự quan trọng của một tập mục cụ thê
trong dữ liệu, đặc biệt khi dữ liệu có sự biến đổi về trọng sé
Ví dụ: nếu bạn có một tập dữ liệu về mua sắm và mỗi sản phâm có một trọng số dựa trên giá trị của nó, bạn có thé tinh trong số của mỗi giao dịch bằng cách lay trung
bình của trọng số của các sản phâm trong giao dịch đó Sau đó, mức hỗ trợ có trọng số cho một tập mục cụ thể sẽ đo lường mức độ phô biến của tập mục đó trong các giao dịch dựa trên tổng trọng số của các giao dịch mà tập mục đó xuất hiện
Trang 111.2 Khai phá luật kết hợp
Khai thác luật kết hợp là một phương pháp trong lĩnh vực khám phá tri thức từ
dữ liệu (Knowledge Discovery in Databases - KDD) Nó nhằm mục đích tìm kiếm các mồi quan hệ kết hợp giữa các mục (items) trong cơ sở dữ liệu
Mục đích của luật kết hợp (Association Rule - AR) là tìm ra các mỗi quan hệ giữa các đôi tượng trong khối lượng lớn dữ liệu
Ví dụ: Xét CSDL khảo sát tiện nghĩ sử dụng ở các hộ gia đình:
Hộ Tiện nghi sở hữu
1 Tivi, maylanh
Tulanh, maylanh Tivi, Tulanh, Maylanh Tivi, Maygiat, Maylanh
Khai thác luật kết hợp được chia làm hai giai đoạn:
1 Khai thác tập phố biến (FIs — Frequent Itemsets)
2 Sinh luật từ các tập phố biến (ARs — Association Rules)
Trang 121.2.2 Khai thác tập phố biến (Mining ƒrequent weighted itemset)
Được đề xuất bởi Agrawal năm 1993 Bài toán khai thác tập phé bién (frequent itemset) là lớp bài toán rat quan trọng trong lĩnh vực khai phá dữ liệu Mục tiêu của nó
là tìm tất cả các tập mẫu, liên kết, tương quan hoặc cầu trúc nhân quả có độ phô biến
cao trong tập hợp tất cả các hạng mục hoặc đối tượng trong cơ sở dữ liệu giao dịch, cơ
sở đữ liệu quan hệ và các kho thông tin dữ liệu khác
Đến nay, có nhiều phương pháp được phát trién như:
1 Phuong phap Apriori (Agrawal et al., 1994) @
2 Phuong phap IT-tree (Zaki et al., 1997) @
3 Phuong phap FP-tree (Han et al., 2000)
Bai toán tăng lợi nhuận:
° - Một cơ sở đữ liệu giao dich
D= {{butter, bread, milk, sugar};
{butter, flour, milk, sugar};
{butter, eggs, milk, salt};
— Cac mat hang nao sé thudng dugc mua chung véi : © € : {milk} ị
— Cai thién cach bé tri ctia hang (buttermilk, sugar} 3
= Tiếp thị chéo
— Tập trung đính kèm thư / bán hàng bổ sung
— => Duy trì các don hàng
(Các cửa hàng nên làm gì để tăng doanh sốc)
— Đồ điện tử gia dung =** (Các cửa hàng nào nên trữ các sản phẩm nào trong kho)
Bài toán khai thác các tập phô biến được ứng dụng trong rất nhiều vấn đề, nỗi tiếng nhất là Basket data analysis (dự đoán, gợi ý các món hàng thường được cho cùng vào giỏ hàng với món đồ A đã được chọn mua trước đó) Ngoài ra nó còn được ứng dụng trong lớp các bài toán: tiếp thị chéo, thiết kế danh mục, phân tích thua lỗ, phân
Trang 1311
cum, phan loai, hé thống khuyến nghị, v.v Và đặc biệt nó còn thê ứng dụng cho thiết
kế các dịch vụ tiện ích trong nhà thông minh
“> Tap hang muc (Itemset):
Tập hữu hạn I: Là một tập hữu hạn chứa các phần tử được gọi là hạng mục (Item)
Tap hang muc X: La m6t tap con của tập hữu han I, tire la X chứa một hoặc nhiéu hang muc tv tap I
Tập hạng mục mức k (k_1femset): Là một tập hạng mục X mà nó chứa chính xác
k hạng mục
Ví dụ: [= {abc de}; a, b, c, d, e là các hạng mục; X = ƒa d e} là một tập hạng
mục mức 3
Nếu bạn đang làm việc với một cơ sở dữ liệu bán hàng và I là tập hữu
hạn của các sản phẩm có săn, thì một k_itemset có thé là tập hạng mục X gồm 3 sản phẩm: {san pham A, san pham B, san pham C}, va đây là một ví dụ về k_itemset mức
3
“ Dộ hỗ trợ (Support- Sup)
Độ hỗ trợ của một itemset cho biết tỷ lệ phần trăm (hoặc tần suất) của các giao
dich trong tập dữ liệu chứa 1temset đó
Độ hỗ trợ (Sup) của một itemset X được tính bằng cách chia số lần mà X xuất hiện trong tập dữ liệu cho tông số giao dịch trong tập dữ liệu Thường được biểu thị dưới dạng phần trăm
_ SỐ lần X xuất hiệntrong tập dữ liệu
Tổng số giao dịch trong tập dữ liệu
Công thức: ¿(X)
Ví dụ: nếu một itemset X có độ phô biến (Sup) là 5%, điều này có nghĩa rằng itemset X xuất hiện trong 5% các giao dịch trong tập dữ liệu
Trang 14Độ hỗ tro (Support - Sup) cua một luật kết hợp X= Y trong khai thác dữ liệu (data mining) là độ phô biến của cả itemset X và Y kết hợp lại với nhau trong tập dữ
liệu
Số lầnitemset X U Y xuất hiệntrong tập dữ liệu
ô we: 6(X 5 Y)= = - =
Công thức : ) Tổng số giao dịch trong tập đữ liệu
Trong đó: itemset X và Y xuất hiện cùng một lúc trong cùng một giao dịch
% Độ tin cậy (Confidence - Conf)
Độ tin cậy là một thước đo quan trọng trong lĩnh vực khai thác dữ liệu (data mining), đặc biệt khi bạn xem xét các luật kết hợp (association rules) hoặc quy tắc kết hợp giữa các mục (Items) trong tập dữ liệu
Độ tin cậy của một luật kết hợp X= Y (nghĩa là nếu X xuất hiện, thì Y cũng
thường xuất hiện)
Số lần Iemset X UY xuất hiện trong tập dữ liệu
Công thức: Conf ( Số lần itemset X xuất hiện trong tập đữ liệu
Ví dụ: độ tin cậy của {bơ}——>{trứng} là 80% có nghĩa là 80% khách hàng mua {bơ} cũng mua {trứng}
=> Đề thu được các luật kết hợp, ta thường áp dụng 2 tiêu chí: độ hỗ trợ tối thiêu
minsup và độ tin cậy tối thiêu minconf là hai giá trị ngưỡng tối thiêu cho trước
Luật kết hợp X— Y được coi là một mẫu có giá trị nếu xảy ra đồng thời minSup và minConf Một tập X có độ hỗ trợ vượt quá ngưỡng minsup được gọi là một tập phô
rãi trong lĩnh vực khai thác dữ liệu để tìm kiếm mẫu phố biến và luật kết hợp Nó đã
đánh dấu một bước quan trọng trong lĩnh vực này và là một phần quan trọng của nền tảng khai thác dữ liệu ngày nay
Trang 1513
Tư tưởng chính của thuật toán Apriori là sử dụng các tính chất quan trọng để tối
ưu hóa quá trình tìm kiếm các mẫu phô biến và luật kết hop trong tập dữ liệu lớn Các tính chất quan trọng này bao gồm tính kết hợp, tính đóng, tính đặc biệt và tính lặp
4 Tính chất:
1 Mọi tập con của một tập hạng mục (itemset) phố biến đều phô biến
2 Mọi tập mẹ của một tập không phố biến đều không phố biến
$ Thuật toán gồm hai bước:
1 Sinh ra các tập mục phố biến có độ hỗ tro > minsup
2 Sinh ra các luật kết hợp:
> Từ môi tập mục phô biên, sinh ra tât cả các luật có độ tin cay cao (> minconf)
> M6i luat là một phân tách nhị phân của một tập mục pho bién
Bước sinh ra các tập mục phô biến có độ phức tạp cao, chúng ta tập trung vào tìm tập mục phô biến (các tập có độ hỗ trợ > minsup)
5 A,B, E,C,D
o(A)=4 o(B)=6
Trang 1715
Trang 22CHUONG 3 - FREQUENT WEIGHTED ITEMSET
Frequent Weighted Itemset la một khái niệm trong khai thác dữ liệu, nó mở rộng ý tưởng của Frequent Itemset bằng cách tính toán trọng số cho mỗi mục (item) trong mỗi giao dịch Các mục có thể có trọng số khác nhau, và một tập hợp được coi là Frequent Weighted Itemset néu tong trong số của nó đạt hoặc vượt qua một ngưỡng cụ thé
3.1 Định nghĩa về Top-rank-k tập được đánh trọng phố biến:
Top-rank-k tập (Top-k set) được đánh trọng pho bién (weighted popularrty) là một khái niệm trong lĩnh vực tìm kiểm thông tin và xếp hạng Đây là một cách đề xác định một tập hữu ích của k mục tiêu (top-k items) từ một danh sách lớn dựa trên các yếu tố đánh trọng, thể hiện sự ưa thích hoặc quan trọng của mỗi mục tiêu Các yếu tô đánh trọng này có thê đến từ nhiều nguồn khác nhau, chẳng hạn như sự tương tác của người dùng,
số lượt xem, đánh giá, hoặc thông tin phân loại
Top-rank-k tập được đánh trọng phô biến thường đảm bảo rằng các mục tiêu nằm trong tập top-k không chỉ phù hợp với yêu cầu cơ bản của người dùng mà còn được sắp xếp dựa trên mức độ quan trọng của chúng Điều này có thê giúp cải thiện trải nghiệm của người dùng khi họ tìm kiểm thông tin hoặc sản phẩm trên các nền tảng trực tuyến
Cho cơ sở dữ liệu giao dịch của tập được đánh trọng số (D) bao gồm: một tập hợp các giao dich T = {t1,t2, ,tm} ; mét tap các 1tem I = {1l,12, ,in} và một tập hợp các trọng số W = ƒwl ,w2 , ,wn} tương ứng với mỗi một item có trong I
Cho một cơ sở dữ liệu giao dich (D) va mét tapX (XC I) Rank cia X, RX duoc dinh
nghia nhu sau = RX |{WSY C I va WSY >=WSX } | trong đó |Y| là số phần tử có
trong Y
Frequent weighted itemset la tập hợp các item có tổng trọng số lớn hơn hoặc bằng
một giá trị được thiết lập trước đó
Trang 2322
Vi du: Gia sử bạn đang quản lý cơ sở dữ liệu giao dịch cho một cửa hàng trực tuyến Mỗi đơn đặt hàng được biều thị bằng một tập hợp các sản phẩm, và mỗi sản phẩm có
giá trị trọng số dựa trên doanh số bán hàng hoặc lợi nhuận Frequent weighted 1temset
sẽ giúp bạn xác định các tập hợp sản phẩm mà thường được mua cùng nhau với tông trọng số cao hơn một ngưỡng cụ thể Điều này có thể giúp cửa hàng tối ưu hóa việc đề
xuất sản phâm tương tự hoặc thiết kế chiến dịch tiếp thị mục tiêu
Trọng số giao dịch của một giao dịch (transaction weight — tw)t¿ được gọi là tw va được nghĩa là tỉ số của tổng các trọng số của các item được mua chia cho số item:
Khai thác tập được đánh trọng phố biến quan tâm đến trọng số (weighted hay benefit) của các mặt hàng và chưa quan tâm đến số lượng mua
Dựa vào vắng ta tính được trọng số giao dịch như sau:
Taco Tl = {A, B,D,E} tương ứng với WA= 0.6, WB= 0.1, WC= 0.9, WD =0.2
Ta có tw((l)được tính như sau:
_ WA+WB+WD+WE_ 0.6+0.1+0.9+0.2
Rank của một tập được đánh trọng số (RX):
— Rank của một tập được đánh trọng số X trong cơ sở đữ liệu D
—_ RX được tính bằng số lượng các giao dịch t sao cho trọng số của sản phẩm ¡ trong X không lớn hơn trọng số tương ứng wi trong cơ sở dữ liệu D
Top-rank-k của tập được đánh trọng số: X thuộc Top-rank-k nêu RX không lớn hơn
k, nghĩa là số lượng giao dịch thỏa mãn điều kiện trọng số không vượt quá k Ngưỡng trọng số hỗ trợ tối thiểu (minws): Là ngưỡng mà trọng số của một sản phẩm phải vượt qua để được xem xét trong việc đánh giá một tập được đánh trọng số là phố
biến
Tim Top-rank-k: Để tìm Top-rank-k của một cơ sở dữ liệu giao dịch có trọng số, cần
xác định tất cá các tập được đánh trọng số mà Rank của chúng không vượt quá k, đồng thời thỏa mãn ngưỡng trọng số hỗ trợ tôi thiêu
Trang 24
Cac giao dich(T)
Trọng số của mỗi giao dịch:
Tính trọng số giao dich (transaction weight):tw(tk)
» Mỹ
tw(tk) =i
Ie
Trang 2524
Trong dé: tw(tk) la gia tri trung binh đại diện cho tat ca giá trị trọng số của giao dich
Xét bảng trên: Tính trọng số giao dịch của TÌ:
T1={Wil, Wi3,Wi4,Wi6} ứng với Wil=0,2; Wi3=0,3; Wi4=0,4; Wi5=0,1; Wi6=0,9
Trang 26Item weight support
PWIs=| X CIV ws(X)>min,,}
Trang 27sẻ cùng một tiền tố (prefix) là ABC, trong khi ABCD và ABDE không thuộc cùng một lớp tương đương do ABC khác ABD
Tidset của một tập mục X, ký hiệu là t(X), được định nghĩa như sau: t(X)={t€T:X€t}
T la tap hop cac giao dich (transactions), va t(X) la tap hop cac giao dich trong T ma chứa ít nhất một lần tất cả các mục trong tập mục X
Ví dụ: Nếu X={A,B,C}, thì t(X) sẽ là tất cả các giao dịch trong T mà chứa ít nhất một
Trang 28tw(t) la trong s6 ctia giao dịch , và TTW là tông trọng số của tất cả các giao dịch trong
T
Giải thuật khai thác các tập được đánh trọng số dựa trên cấu trúc WIT-tree (Weighted
Itemset-Tidset), cau trúc này là phần mở rộng dựa trên cấu trúc cây ITtree
Ví dụ: Tiến hành khai thác các tập được đánh trọng phố biến dựa trên Bảng với ngưỡng
trọng số hỗ trợ tối thiểu minws = 0.4
Ta có: ws(il) = 0.41, ws(i2) = 0.64, ws(i3) = 0.52, ws(i4) = 0.73, ws(15) = I,ws(i6) = 0.52
Trang 29Ta ghép il_13 voiil_ 15 ta được 1Í 13 15
x1 ix4135)) (®xíi4)] [2x23] [4x124))(ï5xI12345
[ose | (“ose | [Pose | [ore |]
041
Trang 30
Ta tiễn hành thực hiện tiếp đối với các nút còn lại, để tìm ra tất cả các tập FWI thỏa
điêu kiện minws
4.1.2 Cau tric Diffset
Cho d(PXY) là sự khác nhau giữa tập PX và PY
d(PXY)=d(PY)\d(PX) la difference set gitta PY va PX
ws(PXY) là hỗ trợ có trọng số của PXY dya trén difference set d(PXY)
Trang 3130
Dé tiét kiém bé nho cho viéc luu tre Diffset va thoi gian cho viéc tinh toán Diffset, sắp
xếp tập itemsets in tập lớp tương đương tăng dẫn theo trọng số hỗ trợ
Ví dụ: Thuật toán WLT-EWI-DIFE với minws = 0.4
Sắp xếp theo tứ tự tang dan:
Ta co: ws(il) = 0.41, ws(i3) = 0.52,ws(i6) = 0.52, ws(i2) = 0.64, ws(i4) = 0.73, ws(i5)
Trang 3332
4.2 Thuật toán khai thác tập FWIs sử dụng cấu trúc Tidset và Diffset
Đề khai thác tập FWIs sử dụng cấu trúc tidset và diffset, ta có hai thuật toán TFWIT va
TFWID
Trong do, thuat toan TFWIT str dung cau tric tidset dé tim tap FWIs Ma gia duoc biéu diễn như sau:
Trang 34
Input: a weighted database WD and a threshold k
Output: the complete set of top-rank-k FWIs (TR)
1 Let TR «- Ø and Cụ - Ø
2 Scan WD to compute the weighted support (ws) and diffset of cach item denoted by 7¡
3 Sort J; in weighted support ascending order to prioritize itemset with high ws
4 For ƒ = Ö to 7,.cownf - ¡ do
5 If TR.count > 0 and TR.Jast_entry.ws = j:[/].ws then
6 Add /;[/] to TR.Jast_entry.list and [,[/] to C,
7 Else
8 Let R is new rank, R.ws = /\[/].ws and R.fis.add(/:[/])
9 Add R to TR and /i[j] to Cy
3 For each c, 6 C¿ with w< v do
5 c.tidset = c,.tidset (> cy.tidset
Trang 3534
private void findFWIs(List<FWIset> is, Map<Integer, Float> hashTwOfTrans, int rank, float ttw) throws IOException
if
// Danh sách chứa các item FWI
List<FWIset> candidateK = new ArrayList<>();
// Duyét qua danh sách FWT da săó xê6 giảm dâà
for (int i = 0; i < is’size(); i++)
if
// Nêú danh sách FWT hàng đâù không rôhg va FWI
hiện tại có trọng sô bằng với
// PWT cuôí cùng trong danh sách