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

Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp

116 0 0
Tài liệu đã được kiểm tra trùng lặp

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Tác giả Nguyen Thanh Tung
Người hướng dẫn PGS. TS. Nguyen Thi Thuy Loan
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Công nghệ thông tin
Thể loại Luận văn Thạc sĩ
Năm xuất bản 2021
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 116
Dung lượng 54,27 MB

Nội dung

Ký hiệu viết tắt | Ý nghĩa tiếng Việt Ý nghĩa tiếng AnhKhai thác tập mục có độ | High Utility Itemset HUIM "¬ DI hữu ích cao Mining HUI Tp mục có độ hữu Ích | 4:9 Utility Itemset CSDL Co

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

NGUYEN THANH TUNG

KHAI THAC TẬP HỮU ÍCH CAO TREN

CO SO DU LIEU PHAN CAP

LUẬN VAN THẠC SĨNGÀNH CÔNG NGHỆ THÔNG TIN

Mã số: 8480201

THÀNH PHO HO CHÍ MINH, NĂM 2021

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

NGUYEN THANH TÙNG

KHAI THÁC TẬP HỮU ÍCH CAO TRÊN

CƠ SỞ DU LIEU PHAN CAP

LUAN VAN THAC SiNGANH CONG NGHE THONG TIN

Mã số: 8480201

NGƯỜI HƯỚNG DẪN KHOA HỌC:

PGS TS NGUYÊN THỊ THÚY LOAN

THÀNH PHÓ HÒ CHÍ MINH, NĂM 2021

Trang 3

Tôi cam đoan rằng luận văn “Khai thác tập hữu ích cao trên cơ sở dữ liệuphân cấp” là nội dung nghiên cứu của chính bản thân.

Luận văn có sử dụng thông tin trích dẫn từ nhiều nguồn khác nhau, các thôngtin được trích dẫn đều ghi rõ nguồn gốc

Không có sản phẩm hay nghiên cứu nào của người khác được sử dụng trongluận văn này mà không được trích dẫn theo đúng quy định

TPHCM, ngày 10 tháng 7 năm 2021

Tác giả

Nguyễn Thanh Tùng

Trang 4

Lời đầu tiên tôi xin chân thành cảm ơn PGS.TS Nguyễn Thị Thúy Loan đãtan tình hướng dẫn tôi trong suốt thời gian thực hiện luận văn.

Tôi xin bay tỏ lòng biết ơn đến quý thầy cô trong Phòng Dao Tạo Sau ĐạiHọc và Khoa Học Công Nghệ trường Đại học Công nghệ Thông tin đã cung cấpnhững kiến thức quý báu cho tôi trong suốt quá trình học tập và nghiên cứu tại

trường.

Xin bày tỏ lòng cảm ơn đến các thành viên trong Nhóm seminar Bảy Loan

đã giúp tôi trong việc nghiên cứu cũng như hoàn thiện luận văn này.

Tôi cũng xin gởi lời cảm ơn đến gia đình, bạn bè và những người thân luônquan tâm và giúp đỡ tôi trong suót thời gian học tập và nghiên cứu dé hoàn thành

luận văn này.

Do thời gian và kiến thức có hạn nên luận văn sẽ không tránh khỏi nhữngthiếu sót nhất định Tôi rất mong nhận được sự góp ý quý báu của quý thầy cô

Trang 5

Danh mục các ký hiệu và chữ viết tắt 22222ccetccvcvvvrrcrrrrrrrer 1

Danh muc cac bang

Danh mục các hình vẽ, đồ thi cccccccssssscssseeessssseccessvescssseeessssveeesseeeeseseeceeseve 4) 027000001075 6CHƯƠNG 1 TONG QUAN VỀ LUẬN VĂN -22cccccccccccccev 81.1 Lý do lựa chọn đề tài e- 555cc 8

1.2 Mục tiêu nghiên cứu

1.3 Đối tượng nghiên cứu c:c¿::¿c¿cc+¿++22222E2EEEEEErrvvvrrrrrrrrree 12

1.4 Phạm vi nghiên cứu của luận văn - ¿55+ 12

1.5 Nội dung nghiên cứu của luận văn -. . -.- |2

1.6 Cầu trúc của luận văn

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 22-cs22sccccsrrcee 142.1 Tổng quan về khai thác dữ liệu - ¿-22222ccz+t2cvvsscccee 142.1.1 Khái niệm về khai thác dữ liệu -::::ccc+rrcecree 14

Dee MỤC HỂU: /2.6.2.622.000100000000100.00300702011/2002009021003000010 000005 14

2.1.3 Quy trình khai thác dữ liệu 55 cc+ccreeerrre+ 15

2.1.4 Các dang CSDL phục vụ cho việc khai thác dữ liệu 18

2.1.5 Các kỹ thuật khai thác dữ liệu -¿-c5ceccccce+ 18

2.1.6 Ứng dụng của khai thác dữ liệu ::ccccccccc-cc e¿ 18

2.1.7 Những thách thức trong khai thác dit liệu 1Ø

Trang 6

2.2.1 Các định nghĩa cơ bản - ¿5c cscsrerrererrrrrrrerrree 19

2.2.2 Khai thác tập phổ biến 22:2cc22222v2vcrrrrrrvrrrrrrrrrr 212.2.3 Khai thác luật kết hợp -2ccvvvvvcvvvvecrrrcrrrrrrree 21

2.3 Bài toán khai thác tập hữu ích cao -. -«e-+ - 22

2.3.1 Các định nghĩa - c5: 25+ct2territtierrrrrrrrrrrrrerrer 23

2.3.2 Phát biêu bài toán khai thác tập hữu ích cao 26

2.3.3 Các nghiên cứu về khai thác tập hữu ích cao

2.3.4 Các nghiên cứu về phân loại, tổng quát hóa 3Í

2.4 Bài toán song song hóa các thuật toán khai thác tập hữu ích cao 34

2.4.1 Các phương pháp song song hóa phô biến 342.4.2 Các thuật toán song song để khai thác tập mục có độ hữu ích cao

3.2 Thuật toán pCLH-Min€r - + + + S+ec‡kEkerkerkrtrkrrkerkrke 51

3.2.1 Thuật toán chỉ tiết

3.2.2 Mô tả thuật toán -ccccc tri 55

Trang 7

4.1 Môi trường thực nghiệm -+55+ccccerseeeeeerexexc-e.c.e OO

Trang 8

Ký hiệu viết tắt | Ý nghĩa tiếng Việt Ý nghĩa tiếng Anh

Khai thác tập mục có độ | High Utility Itemset HUIM "¬ DI

hữu ích cao Mining

HUI Tp mục có độ hữu Ích | 4:9 Utility Itemset

CSDL Co sở dữ liệu Database

FIM Khai thác tập phô biến Frequent Itemset Mining

: Thuật toán khai thác song Parallel Cross-level High

pCLH-Miner | song tập mục có độ hữu Phi :

h ak utility itemset Miner ich cao lién cap

ARM Khai thác luật kết hợp Association Rule Mining

ụ bên SẼ độ hữu ích tôi Minimum utility threshold

thiêu CLHUI Tập mục liên câp có độ Cross-Level High Utility

hữu ích cao Itemset

Tập mục da tang có độ Multiple-Level High

MLHUI hữu ích cao Utility Itemset

KTDL Khai thác dữ liệu Data mining

TID Định danh của giao dịch | Transaction identification

TU Độ hữu ich của giao dịch | Transaction Utility

TWU Trọng số hữu ích của giao | Transaction Weighted

dịch Utility

GTWU Trọng số hữu ích của giao | Genenralized Transaction

địch tông quát 'Weighted Utility

leuel Cấp level

E Mở rộng của tập mục Extension

Trang 9

Ngưỡng chặn trên độ hữu | Upper-bound on the utilityreu ich con lai using the remaining utility

API Giao diện lập trình ứng Application Programming

Trang 10

Bảng 2.1 Ví dụ về CSDL giao dịch D -:¿¿¿222¿¿££2222222222222222222222eccev 24

Bảng 2.2 Độ hữu ích bên ngoài của các hạng mục trong D - 24:

Bảng 2.3 Giao dịch và độ hữu ích của mỗi giao dịch -¿-cczccscc2 25 Bảng 3.1 Bảng băm được khởi tạo trong giao dịch T1 sau khi đọc xong mỗi hạng Bảng 4.1 Thông tin CSDL 52-55522522 2S+‡2xterertirtertrrrrerrerrrrree 60 Bang 4.2 Số lượng tập hữu ích cao liên cấp tìm được trên CSDL Foodmart 61

Bang 4.3 Số lượng tập hữu ich cao liên cap tìm được trên CSDL Fruithut 61

Bang 4.4 Số lượng tập hữu ich cao liên cấp tìm được trên CSDL Liquor 62

Bang 4.5 Số lượng tập hữu ích cao liên cấp tìm được trên CSDL Chainstore 62

Trang 11

Hình 1.1 Minh họa về cây phân cấp -cc2cccccccccrrrrrrrrrrtttrrrrrrrrrer 10

Hình 2.1 Quá trình rút ra tri thức từ dit liệu [36] -. 5-+-c+<+<exexe+ 15

Hình 3.1 Cây phân cấp 7 của các hạng mục ¿- ¿+ ++c+ccccxercrrerrerxrre 4IHình 3.2 Minh họa một phan cây phân cắt

Hình 3.3 Không gian tìm kiếm đã được song song hóa - 53

Hình 4.1 Thời gian chạy trên CSDL Foodmart - ¿5+5 +>c++ec++ 62

Hình 4.2 Thời gian chạy trên CSDL Fruithut -e - O3

Hình 4.3 Thời gian chạy trên CSDL Liquor -. -5 5-5+©5+55+5<++ 63

Hình 4.4 Thời gian chạy trên CSDL ChainstOre - ¿- ¿5552 +55 ++cc+++ 64

Hình 4.5 Tổng kết hiệu suất về thời gian gia tăng của thuật toán 64Hình 4.6 Bộ nhớ tối đa trên CSDL Foodmart -::zcccccsscccz+cccccsscc ÔỐHình 4.7 Bộ nhớ tối đa trên CSDL Fruithut cc:z+ccccssscccscccccse.c 66 Hình 4.8 Bộ nhớ tối đa trên CSDL Liquor ccc:¿ccc-ccccrccccccccccc+ Ổ 7Hình 4.9 Bộ nhớ tối đa trên CSDL Chainstore -.ccczcccccscc- O7Hình 4.10 Kha năng mở rộng về thời gian chạy trên CSDL Foodmart 68 Hình 4.11 Khả năng mở rộng về bộ nhớ sử dụng trên CSDL Foodmart 68Hình 4.12 Khả năng mở rộng về thời gian chạy trên CSDL Fruithut

Hình 4.13 Khả năng mở rộng về bộ nhớ sử dụng trên CSDL Fruithut 69Hình 4.14 Khả năng mở rộng về thời gian chạy trên CSDL Liquor 7ÙHình 4.15 Khả năng mở rộng về bộ nhớ sử dụng trên CSDL Liquor 7Ù

Trang 12

Hình 4.17 Khả năng mở rộng về sử dụng trên CSDL Chainstore

Trang 13

Các thuật toán khai thác các tập mục (tập mẫu) có độ hữu ích cao (HUIM) làcông cụ hữu ích trong lĩnh vực khai thác dữ liệu dé phân tích hành vi của ngườidùng Khác với các giải thuật dùng để khai thác các tập phổ biến (FIM), là các thuậttoán được sử dụng cho việc xác định các tập mục có số lần xuất hiện cùng nhau nhiều lần thì các thuật toán HUIM có thể trả ra thông tin các tập mục mang lại nhiềulợi ích trong cơ sở dit liệu giao dịch, cụ thể là các tập mục có chứa giá trị độ hữu íchcao (HUI) Đề thực hiện hiệu quả việc khai thác thông tin về HUI trong cơ sở dữliệu, một số thuật toán về khai thác tập mục có độ hữu ích cao đã được đề xuất Nhung phan lớn các thuật toán được dé xuất đều bỏ qua các thông tin về mức độtổng quát khác nhau của các hạng mục Thông tin về độ tổng quát được biểu diễndưới cây phân cấp kiểu pha hệ, kiêu biểu diễn này rất thông dụng được sử dụng rấtthông dụng trong các CSDL trong thực tế Do đó, các thuật toán bỏ qua thông tin về

độ tổng quát của các hạng mục này chỉ tìm thấy các HUI ở mức trừu tượng thấp nhất và bỏ sót một số thông tin thú vị từ các mức tổng quát khác.

Dé giải quyết vấn đề về khai thác các tập mẫu có độ hữu ích cao sử dụng thông tin phân cấp các tập mục, Nhóm nghiên cứu của Fournier-Viger đã giới thiệuthuật toán CLH-Miner Thuật toán CLH-Miner đưa ra phương pháp dé giải quyếtcác vấn đề về khai thác HUI ở nhiều mức độ tổng quát hóa Tuy nhiên, thuật toánCLH-Miner được thiết kế dé hoạt động tuần tự, do đó thuật toán không hiệu quả khi không tận dụng hết tiềm năng có sẵn của bộ vi xử lý hiện đại đa lõi Thuật toánCLH-Miner chỉ yêu cầu một bộ vi xử lý đơn (processor) và khai thác ứng viên mộtcách tuần tự trên một bộ vi xử lý đó dẫn đến các phần còn lại của bộ vi xử lý khôngđược sử dụng Do đó dẫn đến thời gian chạy của thuật toán bị kéo dài Luận văn đềxuất thuật toán pCLH-Miner giúp tối ưu thuật toán CLH-Miner về mặt thời gian tính toán bằng cách tận dụng tốt hơn các bộ vi xử lý đơn trên bộ vi xử lý đa lõi sẵn

có giúp giảm thiểu thời gian khai thác Các bộ vi xử lý đơn này được tận dụng để

Trang 14

Luận văn cũng đánh giá dựa trên dữ liệu thực và tập dữ liệu lớn để chứng minh vềhiệu suất cụ thé là thuật toán pCLH-Miner tiêu tốn ít thời gian hơn khi dược so sánhvới thuật toán tuần tự truyền thống là CLH-Miner.

Trang 15

CHƯƠNG 1 TONG QUAN VE LUẬN VĂN

1.1 Lý do lựa chọn đề tài

Một trong những van đề được nghiên cứu rất nhiều trong khai thác tri thức

là khai thác dữ liệu Các giải thuật khai thác dữ liệu có thể khám phá những thông

tin mang lại giá trị cao từ trong CSDL Tri thức được khám phá, được gọi là các

mẫu, có thể giúp hiểu dữ liệu và là cách đề hỗ trợ cho nhiều ứng dụng trong thực tếđưa ra các quyết định [1] Các kiểu mẫu khác nhau có thé được tim thấy trong nhiềuloại dữ liệu khác nhau Một trong những bài toán kinh điển nhất là khai thác tập phôbiến (FIM) [2] Các giải thuật FIM tìm kiếm và đưa ra các tập mẫu từ trong CSDLsao cho tần suất xuất hiện (độ hỗ trợ-support) không nhỏ hơn ngưỡng hỗ trợ

(min_sup) được chỉ định Apriori là một trong những thuật toán FIM [3] Mặc dù,

Apriori áp dụng các tinh chất dé cắt giảm không gian tìm kiếm giúp day nhanh quátrình khai thác mẫu, nhưng Apriori hoạt động kém trong nhiều trường hợp vì thuậttoán duyệt các giao dich rat nhiều lần và có thể kết hợp nhiều tập mục dé có được các tập mục lớn hơn Đề khám phá các tập phỏ biến một cách hiệu quả hơn, một sốthuật toán sau đó đã được thiết kế như FP-Growth [4], Eclat [5] và LCM [6], đã giatăng hiệu suất đáng kể so với Apriori Sau quá trình khai thác các tập phổ biến hoàntất, những tập sau này là đầu vào cho quy trình khai thác luật kết hợp (ARM) dé lấy các quy tắc liên kết giữa các hạng mục.

Mặc dù các thuật toán FIM và ARM được ứng dụng rất rộng rãi, tuy nhiên các thuật toán lại bỏ qua tầm quan trọng (độ hữu ích mang lại) của các tập mẫu Đềkhắc phụ vấn đề đã nêu của FIM, các giải thuật dùng trong khai thác các tập hạngmục có độ hữu ích cao (HUIM) [7], [8] đã được dé xuất Trong HUIM, mỗi mặthàng có trong giao dịch được liên kết với hai giá trị số dương: độ hữu ích bên trong(số lượng mua) và độ hữu ích bên ngoài (lợi nhuận đơn vị) Mục đích của HUIM đó

là xác định, tìm kiếm và đưa ra tập hợp các mặt hàng (vật phẩm) có độ hữu ích cao.(mang lại nhiều lợi nhuận) trong CSDL giao dịch định lượng

Trang 16

Giống như FIM, các giải thuật HUIM sử dụng giá trị ngưỡng được chỉ định

để tìm kiếm các tập hợp hạng mục không đáp ứng yêu cầu Ngưỡng này được đặttên là ngưỡng độ hữu ích tối thiểu và đại điện cho độ hữu ích thấp nhất mà một tậpmục phải có để được coi là tập mục có độ hữu ích cao (HUI) Mặc dù HUIM là bài toán được phát triển từ FIM, nhưng HUIM lại gặp phải nhiều vấn đề khó giải quyếthơn FIM vì thuộc tính được sử dụng để đánh giá mức độ hữu ích của một tập mụckhông đáp ứng tính chất của bao đóng giảm (còn được gọi là tính chất chống đơnđiệu) [9] Vì vậy, một tập mục có thể có độ hữu ích nhỏ hơn, bằng hoặc lớn hơn độ

hữu ích của các tập hợp con của nó Bởi vì các thuật toán FIM hiệu quả dựa vào tính

chất bao đóng giảm để thu nhỏ không gian tìm kiếm của các tập phổ biến, chúngkhông thể được áp dụng trực tiếp cho HUIM Do đó, một số thuật toán HUIM chuyên dụng đã được thiết kế như UP-Growth [10], HUI-Miner [11], FHM [12],

EFIM [13], HMiner [14] và iMEFIM [15] Trải qua thời gian, các thuật toán được

đề xuất được cải thiện rất nhiều về hiệu suất của thời gian cũng như bộ nhớ, nhưngtrong CSDL giao dịch trong thực tế các hạng mục thường được tổ chức thành nhiềucấp dưới dạng cây phân cấp Ví dụ, Hình 1.1 cho thấy sự phân loại các mặt hàng

được bán trong một cửa hàng máy tính Các mục :Máy in” và “Máy Scan” được

phân loại là “Thiết bị ngoại vi” trong khi đó :Máy tính xách tay” và :Máy tính débàn” được khái quát là “Máy tính” Hơn nữa, “Thiết bị ngoại vi” và “Máy tinh’ làcác hạng mục con (chuyên môn hóa) của hạng mục “Phần cứng” tổng quát hơn.Phép phân loại là một trong những thông tin rất quan trọng trong quá trình khai tháctập mẫu từ CSDL vì chúng cho phép nhóm các hạng mục theo ngữ nghĩa trong cáctập mục, tức là các tập chứa các hạng mục (danh mục) tổng quát Trong Hình 1.1,các hạng mục tổng quát là “Phần cứng”, “Máy tính” và “Thiết bị ngoại vi” Vì cácthuật toán HUIM truyền thống bỏ qua thông tin phân loại, chúng chỉ có thể khám phá các tập mục chứa các hạng mục xuắt hiện ở cấp thấp nhất của cây phân cấp củaCSDL giao dịch (Máy in, Máy quét, Máy tính xách tay và Máy tính dé ban), nên

Trang 17

không thể tìm thấy các mục như Thiết bị ngoại vi, Máy tính và Phần cứng là đầu ra

của các thuật toán này ngay cả khi chúng là HUI.

May tính Thiết bị ngoại vi Level 1

| May tinh để bàn | | May tính xách tay | Máy in | Máy Scan Ì Level 2

Hình 1.1 Minh họa về cây phân cấpTrong các thuật toán FIM và ARM, một số thuật toán được thiết kế có tínhđến thông tin phân loại và có nhiều ứng dụng [16]-[23] Vì độ hỗ trợ của các tậpphổ biến chống đơn điệu nên các thuật toán được đề xuất có thé tìm các tập phô biến

một cách hiệu quả Tuy nhiên, việc tích hợp thông tin phân loại trong HUIM là thách

thức hơn nhiều vì giá trị độ hữu ích không có tính chất bao đóng giảm, đặc biệt khinói đến khai thác HUI ở các mức trừu tượng khác nhau Năm 2017, Cagliero vàđồng sự đã trình bày một thuật toán có tên ML-HUI-Miner [24] để trích xuất mộtkiểu mẫu mới được gọi là Multiple-level High Utility Itemset (MLHUI) trong CSDLgiao dịch, đó là các tập mang lại nhiều hơn về độ mặt lợi ích và có thé được khaithác từ nhiều mức tổng quát Năm 2020, Fournier-Viger và đồng sự đã xác định mộtvan đề tổng quát hon đó là về khai thác các tập mục có độ hữu ích cao liên cấp(CLHUI) [25] và một thuật toán có tên CLH-Miner [25] CLH-Miner đã giải quyết

được nhược điểm mà các thuật toán HUIM truyền thống, của các nghiên cứu trước

đây bằng các đề xuất các giới hạn mới về độ hữu ích và chiến lược cắt tỉa hiệu quả.Bằng cách cho phép một tập hợp chứa các hạng mục từ các cấp độ tổng quát khácnhau Sự khác biệt của hai thuật toán ML-HUI và CLH-Miner ở chỗ thuật toán ML-HUI chỉ tìm ra các tập mục mà các hạng mục trong đó có cùng một cấp độ (cùng

Trang 18

một tang) trong khi thuật toán CLH-Miner cho phép khai thác các tập mục ở các cấp

độ khác nhau Điều này cho phép tìm ra các mẫu có giá trị mà ML-HUI Miner cũngnhư các thuật toán HUIM truyền thống không thể khám phá Do có lượng ứng viêncần tính toán nhiều hơn mà CLH-Miner có thời gian thực thi lâu hơn đáng ké và tiêutốn nhiều bộ nhớ hơn ML-HUI Miner và HUI-Miner Hơn nữa, thuật toán CLH-Miner được thiết kế để hoạt động một cách tuần tự từng bước, do đó thuật toánkhông hiệu quả khi không tận dụng hết tiềm năng của bộ vi xử lý đa lõi Các tậpmục trong thuật toán CLH-Miner được tìm kiếm một cách có thứ tự Hạng mục phíasau sẽ được tính toán sau khi hạng mục trước đó được tính toán hoàn tất Do đóthuật toán CLH-Miner chỉ yêu cầu một bộ vi xử lý đơn duy nhất đề tính toán toàn

bộ các tập mục được xem xét khiến các phần còn lại của bộ vi xử lý không được sử dụng Thuật toán sẽ chỉ hoàn thành sau khi tất cả hạng mục được khám phá xong Luận văn đề xuất thuật toán pCLH-Miner đề tìm cách tận dụng tối đa bộ vi xử lýsẵn có giúp giảm thiểu thời gian khai thác Các bộ vi xử lý đơn của bộ vi xử lý đalõi được sử dụng đồng thời để duyệt không gian tìm kiếm cũng như tính toán các

tập mục từ đó giảm đi thời gian khám phá.

1.2 Mục tiêu nghiên cứu

Xác định được các phương pháp đã được sử dụng trong HUIM, tìm hiểu cácphương pháp thực nghiệm từ các bài báo uy tín được nhiều tác giả tham khảo Tìmhiểu và đánh giá các thuật toán được sử dụng trong HUIM và các phiên bản song

song của các thuật toán đó.

Nghiên cứu về thông tin của các giải thuật khai thác tập hữu ích cao kết hợpvới CSDL phân cấp Từ đó, luận văn đưa ra thuật toán để tối ưu thuật toán CLH- Miner về giảm thời gian khai thác các tập mục hữu ích cao liên cấp.

Trang 19

1.3 Đối tượng nghiên cứu

Các thuật toán được sử dụng đê khai thác các tập hữu ích cao như: phase[9], UP-Growth [10], HUI-Miner [11], FHM [12], EFIM [13], MEFIM [15], iMEFIM [15].

Two-Thuật toán HUIM trên CSDL phân cắp như: ML-HUI [24], CLH-Miner [25]

Các thuật toán sử dụng phương pháp song song giúp tăng hiệu năng của thuật

toán HUIM truyền thống bao gồm: DTWU-Mining [26], pEFIM [27], MCH-Miner

[28], pHAUI-Miner [29], PHUI-Miner [30], P-FHM+ [31], MCML-Miner [32].

Cơ sở dữ liệu: Các CSDL định lượng, CSDL bán hàng có thêm thông tin

phân cấp các hạng mục

Dữ liệu kiêm nghiệm: Dữ liệu chuẩn được nhiều tác giả của các công trình

sử dụng và thử nghiệm: Fruithut, Foodmart, Liquor và Chainstore.

1.4 Phạm vi nghiên cứu của luận văn

Giới hạn trong phạm vi của các nghiên cứu về chủ đề khai thác tập hữu íchcao, khai thác dữ liệu trên CSDL định lượng có thông tin phân cấp các hạng mục và

phương pháp song song giúp tăng hiệu năng của thuật toán HUIM.

1.5 Nội dung nghiên cứu của luận văn

Nghiên cứu về chủ đề HUIM trong CSDL giao dịch

Nghiên cứu về lĩnh HUIM trên CSDL định lượng phân cấp hạng mục.

Sử dụng phương pháp song song để cải tiến thuật toán và cài đặt thuật toán,kiểm định kết quả được trên các CSDL chuẩn đã được đề cập.

1.6 Cấu trúc của luận văn

Luận văn được tổ chức gồm 5 chương cụ thể như sau:

Trang 20

© Chương 1: Giới thiệu tổng quan tình hình thực tiễn và định hướng nghiên

cứu

e _ Chương2: Đưa ra các cơ sở lý thuyết về khai thác dữ liệu, cũng như khảo sát

các bài toán HUIM, và các bài toán song song hóa các thuật toán khai thác tập mục hữu ích cao.

e _ Chương3: Trinh bày thuật toán được sử dụng dé khai thác song song tập hữu

ích cao liên cấp trên CSDL định lượng

e _ Chương4: Trình bày về thông tin của môi trường thực nghiệm, thông tin các

CSDL được sử dụng trong thực nghiệm và so sánh kết quả thực nghiệm giữathuật toán đề xuất và thuật toán đã có.

e Chương 5: Trình bày về kết luận và hướng phát triển.

Trang 21

CHƯƠNG 2 CƠ SỞ LÝ THUYÉT

2.1 Tổng quan về khai thác dữ liệu

2.1.1 Khái niệm về khai thác dữ liệu

Dữ liệu được lưu trên máy tính bằng nhiều dạng khác nhau như só, chuỗi ký

tự, chuỗi bit, v.v và tất cả đều mang thông tin Thông tin là tập hợp của nhữngmảnh dữ liệu đã được chit lọc dùng dé mô tả, giải thích đặc tính của một đối tượng

nào đó [33].

Tri thức là tap hợp những thông tin có liên quan với nhau, có thé xem tri thức

là sự kết tinh từ dữ liệu Tri thức thể hiện tư duy của con người về một vấn đề.

Hệ cơ sở tri thức là hệ thống dựa trên tri thức, cho phép mô hình hóa các tri thức của chuyên gia, dùng tri thức này dé giải quyết van đề phức tạp thuộc cùng lĩnh

vực [34].

Định nghĩa dữ liệu lớn (Big-data) được sinh ra khi mà lượng dit liệu được

sinh ra theo thời gian là rất lớn Lam thé nao đề rút trích ra được những thông tincần thiết và hữu dụng là một bài toán cần thiết và cũng đầy thử thách đối với cánhân cũng như tô chức nắm giữ lượng giữ liệu đó Năm 1980, bài toán về lĩnh vựckhai thác dữ liệu (KTDL) lần đầu được đề xuất, đó là quá trình dùng để khám phátri thức bị ẩn ở bên trong CSDL và và được sử dụng như là một phần của quá trình

khám phá tri thức [35] KTDL còn là quá trình phát hiện ra các mô hình, các dự đoán

khác nhau và các thông tin mang lại nhiều giá trị được lấy từ các CSDL cho trước

[36].

2.1.2 Muc tiéu

Mục tiêu của khai thác đữ liệu nhằm tim ra các mẫu hoặc thông tin có giá trị nhưng không xuất hiện một các trực tiếp hoặc không được biết trước có tiềm năngmang lại lợi ích trong CSDL Từ các dữ liệu tiềm năng này, các cá nhân hoặc tổ

Trang 22

chức sở hữu dữ liệu có thể đưa ra các dự đoán hoặc tìm hướng đi đúng đắn Tùytheo hướng đi, lĩnh vực hoạt động cụ thể mà khai thác dữ liệu theo đúng lĩnh vực cần thiết sẽ đem lại các lợi ích khác nhau cho doanh nghiệp.

2.1.3 Quy trình khai thác dữ liệu

Quá trình rút ra các tri thức có giá trị gồm 5 giai đoạn chính [36], giai đoạnsau sử dụng kết quả của giai đoạn trước:

Là tiền đề và cũng là quá trình quan trọng bậc nhất trong quá trình khai thác

dữ liệu Quá trình khai thác dữ liệu sẽ trở nên lan man hoặc sai mục tiêu nếu nhưkhông xác định được vấn đề cần giải quyết Vì vậy việc xác định vấn đề là bước tiên quyết cần thực hiện tốt nếu muốn toàn bộ quy trình khai thác dữ liệu được hiệu quả.

b) Thu thập và xử lý dữ liệu trước khi kahi thác

Trang 23

Nếu không có dữ liệu thì không thể có thực hiện việc khai thác dữ liệu Vìvậy, khi đã xác định rõ ràng ở giai đoạn 1, cần thu thâp, tìm kiếm các dữ liệu từ nhiều nguồn khác nhau vì vậy tính đúng đắn của đữ liệu phải được đảm bảo và được

xác định rõ ở giai đoạn trước đó.

Những bộ dữ liệu chuẩn, lớn vừa phải và khái quát được nhiều trường hợp

của thuật toán được các nghiên cứu viên trong việc thực nghiệm các thuật toán Tuy

nghiên bộ dữ liệu trong thực tế có rất nhiều phần không như mong muốn, chứa nhiềuphần bị nhiễu, lỗi, sai lệch, không đồng nhất, Vi vậy muốn có được bộ dữ liệu sử dụng tốt cho quá trình khai thác thì việc tiền xử lý các dữ liệu là điều gan như bắt

buộc phải thực hiện.

Có thể chia quá trình thu thập và tiền xử lý thành 6 giai đoạn nhỏ sau:

e Tập hợp dữ liệu: Tập hợp tất cả dữ liệu đã có là giai đoạn dầu tiêntrong cả giai đoạn tiền xử lý dữ liệu Các nguồn đữ liệu có thể có từmột CSDL có sẵn, một kho dữ liệu hoặc có thé từ một ứng dụng

¢ Trích loc dữ liệu : Ở giai đoạn nay tùy theo mục đích sử dụng mà trích

rút lấy dữ liệu cần thiết.

¢ Làm sạch, tiền xử lý và chuẩn bị dữ liệt ây là giai đoạn quan trọng trong quá trình khai thác dữ liệu Một sô lỗi trong khi tập hợp dữ liệu

là dữ liệu chứa các thông tin vô nghĩa và không thể hiện sự kết nốidẫn dư thừa, không đủ chặt chẽ và logic Những thông tin trên đượcxem là dữ liệu không có giá trị và sẽ được xử lý trong bước này Nếukhông được xử lý sẽ dẫn đến những kết quả không mong muốn trong

quá trình khai thác dit liệu.

© _ Chuyên đổi dữ liệu : Trong giai đoạn chuyên đổi dữ liệu Việc tổ chứclại dữ liệu sẽ làm cho dữ liệu trở nên thích hợp cho mục tiêu ban đầu

của quá trình khai thác dữ liệu.

Trang 24

¢ Phat hiện, trích rút thông tin mẫu dữ liệu: Là giai đoạn được nhiều nhànghiên cứu tập trung nhiều nhất Trong bước này dữ liệu sẽ được cácthuật toán xử lý và trích rút ra các thông tin cần thiết.

¢ Đánh giá các kết quả: Đây là giai đoạn cuối trong khai thác dữ liệu.

Đôi khi dir liệu được trích rút vẫn bị sai lệch hoặc mang các thông tinkhông cần thiết do đó các dữ liệu này cần được xem xét cũng nhưđánh giá về tính đúng đắn hoặc ưu tiên các kết quả có tính chuẩn xác

cao.

©) Khai thác dit liệu

Từ dữ liệu đã được “làm sạch” ở gian đoạn trước đó, các thuật toán được đề

ra sẽ được sử dụng dé trích rút ra các kết quả cần thiết Trong giai đoạn này cần lựa chọn thuật toán phù hợp với CSDL đã có và tìm cách để thuật toán có hiệu suất caonhất

d) Giải thích kết quả thu được

Mỗi giai đoạn trong quá trình khai thác dữ liệu cần được kiểm tra vấn đề vàthực hiện lại nếu cần thiết Tri thức được rút ra đôi khi sẽ có kết quả chưa tốt, do đócần biểu diễn kết quả thu được thành các dạng báo cáo hoặc biểu đồ sẽ giúp ngườithực hiện khai thác dữ liệu có cái nhìn tổng quan đề đưa ra sự cải thiện trong mỗi

giai đoạn đã thực hiện.

e) Sử dụng tri thức phát hiện được

Các tri thức sau khi được rút ra từ dữ liệu có thể được sử dụng tùy mục đích

khác nhau theo từng lĩnh vực khác nhau như dự báo, phân loại, khái quát dữ liệu,

làm đầu vào cho các ứng dụng hỗ trợ đưa ra quyết định

Như vậy, có 5 giai đoạn được sử dụng để khai thác dữ liệu đều quan trọng.Muốn nâng cao được chất lượng tri thức rút ra trong quá trình khai thác dữ liệu thì

Trang 25

2.1.4 Các dạng CSDL phục vụ cho việc khai thác dữ liệu

Một vài dạng CSDL được phé biến trong các quy trình khai thác dữ liệu như:

e CSDL quan hệ.

© CSDL đa chiều.

e CSDL giao dịch.

© CSDL quan hệ hướng đối tượng.

e Di liệu không gian và thời gian.

e CSDL đa phương tiện.

2.1.5 Các kỹ thuật khai thác dữ liệu

Các kỹ thuật khai thác dữ liệu hiện nay được chia theo hai loại:

e Kỹ thuật KTDL mô tả: mô ta về các tính chất hoặc các đặc tính chung

của dữ liệu hiện có.

e Kỹ thuật KTDL dự đoán: Dua ra các dự đoán dựa vào các suy diễn

trên dữ liệu hiện thời

Mặc dù có rất nhiều phương pháp dùng đề khai thác dữ liệu nhưng chỉ một vài phương pháp được ứng dụng phổ biến nhiều đó là: Phân cụm dữ liệu, phân lớp

dữ liệu, phương pháp hồi quy, và khai thác luật kết hợp

2.1.6 Ứng dụng của khai thác dữ liệu

Rất nhiều lĩnh vực có thể sử dụng khai thác dữ liệu như:

e Trong các ứng dụng phân tích dữ liệu sau đó sử dụng trong các hệ

quyết định.

e Yhọc.

©_ Lấy thông tin trên website

e_ Sinh học và tin sinh.

Trang 26

e Nhận dạng.

¢ Bảo hiểm

2.1.7 Những thách thức trong khai thác dữ liệu

Dung lượng đữ liệu quá lớn và đa dạng cũng như có số lượng các thuộc tínhrất nhiều làm tăng thời gian cũng như độ phức tạp của các thuật thoán khai thác dữliệu lên theo thời gian Đi cùng với đó là tri thức thay đổi theo thời gian do đó trithức có được tại thời điểm rút ra được là tri thức khi lấy dữ liệu

Đôi khi đữ liệu thu được bị ảnh hưởng bởi môi trường bên ngoài dẫn đến trithức rút ra được nhiều khi không mang tính khách quan không phản ánh chính xác

được độ chính xác của tri thức mang lại.

2.2 Bài toán khai thác tập phố biến và luật kết hợp

Trong lĩnh vực KTDL thì bài toán FIM là một trong những bài toán rất cơbản Từ bài toán FIM có thé phát triển ra nhiều bài toán khác dé khai thác dữ liệu,

va một trong số đó là khai thác luật kết hop (ARM)

2.2.1 Các định nghĩa cơ bản

Định nghĩa 2.1 - Tập mục.

Cho I = {v4, 0ạ, , Vm} chứa rn hạng mục ( hay item) Một tập hợp A GJ

được gọi là một tập mục (itemset) [1].

Định nghĩa 2.2 - Cơ sở dữ liệu giao dịch, giao dịch và TID.

Một CSDL là một tập chứa các giao dịch {T, Tạ, , Tạ} được kí hiệu là D.

Mỗi giao dịch T„ trong D là một tập các hạng mục và có một chi số giao địch duynhất (TID) c [1].

Trang 27

Định nghĩa 2.3 - Tidset và độ hỗ trợ (support count).

Cho một tập mục A và tập T chứa toàn bộ TID của các giao dịch có chứa A

trong CSDL D được gọi là Tidset của A ký hiệu là Tidset(A)

Tidset(A) = {m | A 6 Tm} [1] (1)

Số lần xuất hiện của tap mục A ở trong CSDL D được gọi là độ hỗ trợ của 4

trong D và được ký hiệu là Sup(A)

Cho một tập mục A là một subset(con) của B, thi Tidset(B) G Tidset(A)

hay |Tidset(B)| < |Tidset(A)|

e A được định nghĩa là tiên đề của luật.

e B được định nghĩa là hệ quả của luật.

Trang 28

Định nghĩa 2.6 - Độ hỗ trợ của một luật kết hợp.

Độ hỗ trợ của một luật kết hợp A > B là một giá trị bằng độ hỗ trợ của tậpmục A U B chia cho số lượng toàn bộ giao dịch có trong CSDL D và được ký hiệu

là Support(A = B).[1]

Sup(AUB)

Định nghĩa 2.7 - Độ tin cậy của một luật kết hợp.

Giá trị độ tin cậy (confidence) là giá trị độ hỗ trợ của tập mục AB chia cho

độ hỗ trợ của A được ký hiệu là confidence(AB) [1]

Khai thác tập phô biến được đặt ra dé giải quyết vấn dé khai thác các tập mục

mà có số lần xuất hiện cùng nhau trong CSDL không nhỏ hơn ngưỡng quy định dongười dùng đưa ra Số lần xuất hiện cần thỏa mãn một ngưỡng được cho sẵn dongười dùng nhập vào gọi là giá trị min_sup Tat cả các hạng mục xuất hiện cùngnhau có số lần không nhỏ hơn min_sup được gọi là tập phổ biến.

Từ khi vấn đề về khai thác tập phổ biến được dé ra có rất nhiều thuật toánđược đề xuất để giải quyết bài toán này Các bài toán phổ biến nhất có thể như

Apriori, Eclat và FP-Growth,

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

Sau khi tìm kiếm ra các tập mục phổ biến thì công việc tiếp theo là sử dụng các tập phổ biến đó dé tìm ra tat cả các luật kết hợp có độ hỗ trợ và độ tin cậy không

Trang 29

nhỏ hơn ngưỡng mà người dùng đưa vào, có hai giá trị cần đưa vào là min_sup vàmin_conf tương ứng với độ hỗ trợ thấp nhất và độ tin cậy thấp nhất.

Giá trị ngưỡng min_sup để lọc ra toàn bộ các tập mục mà có giá trị độ hỗtrợ không nhỏ hơn min_sup Trong khi đó ngưỡng min_conf dé lọc ra toàn bộ luậtkết hợp có độ tin cậy không nhỏ ngưỡng này.

2.3 Bài toán khai thác tập hữu ích cao

Kể từ khi thuật toán FIM được dé xuất, các thuật toán khác cũng được trìnhbay để giải quyết van đề một cách hiệu quả Các thuật toán này khai thác tinh chấtbao đóng giảm dé giảm không gian tìm kiếm Tuy nhiên, FIM có nhược điểm lớn là

bỏ qua tầm quan trọng của các mặt hàng cũng như số lượng của các mặt hàng được giao dịch trong từng giao dịch Do đó, FIM có thể tìm thấy nhiều tập mục phổ biếnxuất hiện trong các giao dịch nhưng mang lại lợi nhuận thấp, trong khi bỏ qua nhiềutập mục không phổ biến nhưng mang lại lợi nhuận rất lớn Do đó bài toán HUIM được dé xuất dé giải quyết các hạn chế này của FIM bằng cách đính kèm giá trị độ

hữu ích (utility) của mỗi hạng mục vào trong mỗi giao dịch

Thông số độ hữu ích gồm hai loại là độ hữu ích bên trong (internal utility) và

độ hữu ích bên ngoài (external utility), trong đó:

e Độ hữu ích bên trong: Là độ hữu ích cho trước của một hạng mục

được xét trong một giao dịch, nó cho biết giá trị của một hạng mục

trong một giao dịch xác định.

e D6 hữu ích bên ngoài: Là độ hữu ích cho trước của một hạng mục khi

xét trên CSDL.

Ví dụ: CSDL giao dịch của một siêu thị có chứa rất nhiều các giao dịch, trong

mỗi giao dịch chứa dit liệu về các mặt hàng đã được giao dịch và số lượng mà khách

đã mua Với mỗi một mặt hàng sẽ có thông tin về giá mà người mua cần thanh toán

Trang 30

và lợi nhuận mà mỗi sản phẩm trong siêu thị đó mang lại Trong trường hợp đó tacó:

e_ Mỗi giao dịch trong CSDL chứa thông tin về các sản phẩm mà khách

hàng đã thực hiện giao dịch.

¢ _ Mỗi một sản phẩm trong giao dịch được gọi là một hạng mục

¢ Độ hữu ích bên trong tương đương với số lượng tương ứng của sảnphẩm mà siêu thị đã bán được

¢ Loi nhuận mà mỗi mặt hàng mang lại được gọi là độ hữu ích bên

ngoài.

2.3.1 Các định nghĩa

Định nghĩa 2.8 - Độ hữu ích bên ngoài (external utility)

Cho một tập mục phân biệt chứa các hạng mục I = {Øạ, 0ạ, , Vm} Mỗihạng mục v € / được gắn với một số nguyên dương cho biết giá trị quan trọng(tương đối) của nó được gọi là độ hữu ích bên ngoài (external utilty), được ký hiệu p(v).[7]

Định nghĩa 2.9 - Độ hữu ích bên bên trong (internal utility)

Trong mỗi giao dịch T, trong D mỗi hạng mục 0 € T, có một số nguyên

đương được gọi là độ hữu ích bên trong của v trong T, được kí hiệu là q(ø, T,) Độ

hữu ich trong dé chỉ số lượng sản phẩm giao dich được của v.[7]

Định nghĩa 2.10 - Tập k hạng mục (k-itemset)

Một tập mục X gồm k hạng mục phân biệt {i,, i2, , í„} được gọi là một tap

k hạng mục (k-itemset), trong đó i,j € I; 1 < j < k, k là số phần tử trong tập mụcX,k = |X| X được gọi là chứa toàn bộ trong một giao dịch T, nếu X © T;.[1]

Vi dụ về một CSDL giao dịch sau:

Trang 31

Dựa vào CSDL giao dịch định lượng D ở Bảng 2.1 Các hang mục được đại

diện bởi các chữ cái viết thường CSDL có 8 giao dịch (T¡, T;, , Tg) Trong đó thì

giao dịch T; chứa các hạng mục a,b,c, đ,e và có độ hữu ích nội bộ là 1, 5, 1, 3 và

1 Độ hữu ích ngoài của các hạng mục tương ứng có giá trị là 5, 3, 1, 2 và 3, chotrong Bảng 2.2 Độ hữu ích ngoài của mỗi hạng mục được sử dụng chung với hạngmục tương ứng trong toàn bộ CSDL.

X = {a,c} là tập 2 hạng mục (2-itemset) và X € T¡

Định nghĩa 2.11 - Độ hữu ích của một hạng mục trong một giao dịch

Mỗi hạng mục v trong giao dịch T, có một giá trị độ hữu ích được ký hiệu là

u(y, Tz) và được tính bằng công thức: [7]

(w,T,) = q(0,T,) x p(v) (2.6)

Vi du:

Trang 32

u(a,T3) = p(a) x q(4,T;) = 5 x 1 = 5

Định nghĩa 2.12 - Độ hữu ích của một giao dich (Transaction utility)

Mỗi giao dịch T„ đều mang giá trị về độ hữu ích được gọi là độ hữu ích củamột giao dịch được định nghĩa bằng công thức: [7]

TUŒ,) = Ler, U(x, Te) (2.7)

Vi du:

TU(T;) = » on u(x,T,) = u(a,T,) + u(c,T,) tu(d,T,) =5+1+2=8

Sau khi tính toán TU cho các giao dich trong CSDL D tại Bang 2.1 với các

giá trị hữu ích bên ngoài Bảng 2.2, kết quả được trình bày ở Bảng 2.3:

Bảng 2.3 Giao dịch và độ hữu ích của mỗi giao dịch

Dinh nghĩa 2.13 - Độ hữu ích của một tập mục (utility)

Một tập mục X (X € ỷ) trong một giao dich T, có một giá trị độ hữu ích được

kí hiệu là w(X, T) và được tính bằng công thức: [7]

Trang 33

u(X, Te) = Lvex u(v, Te) (2.8)

U(X) = 3r„egœ (0, Te) (2.9)

Trong đó g(X) là tập những giao dịch chứa X trong CSDL D.

Ví dụ:

u({a,e}) = » cranny hT) = (5+1) + 0+6) + 6 +1) =28

Định nghĩa 2.14 - Tập hữu ích cao (High Utility Itemset)

Một tập mục X được gọi là tập hữu ích cao (HUI) nếu u(X) = ụ Với w là một ngưỡng cho trước do người dùng đưa ra và được gọi là ngưỡng độ hữu ích tối thiểu (minimum utility) [7]

Vi dụ: Với „ = 25, thi tập {a, c} là tập hữu ích cao vì: z({a, c}) = 28 > pw.

2.3.2 Phát biểu bài toán khai thác tập hữu ích cao

Cho một CSDL giao dịch D cùng với độ hữu ích bên trong và độ hữu ích bên

ngoài của các hạng mục và độ hữu ích tối thiểu Vấn đề cần được giải quyết là đưa

ra tat cả các tập mục có độ hữu ích không nhỏ hơn ngưỡng do người dùng đưa vào

Đầu vào:

© _D có chứa các giao dịch định lượng T, mỗi giao dịch có chứa các hạng

mục v và đỗ hữu ích bên trong q(v, T,)

© Cac độ hữu ích bên ngoài p(v).

Trang 34

¢ _ Ngưỡng độ hữu ích tối thiểu p.

để tính toán Do đó việc nghiên cứu dé tăng hiệu suất của công việc khai thác dữ liệu luôn có được sự quan tâm rất lớn Các nghiên cứu xoay quanh giải quyết haivan dé chính:

© Giam số lượng tập mục X dé xét duyệt

¢ Giam số lần duyệt CSDL.

Các thuật toán HUIM có thể được phân loại thành hai nhóm chính gồm:

© Nhom thuật toán một pha (one-phase) là nhóm thuật toán duyệt CSDL

trong một giai đoạn để tính toán thông tin cần thiết Một số thuật toán

thuộc nhóm này như: HUI-Miner [4], FHM [12], EFIM [13], MEFIM [15], iMEFIM [15], v.v

e Nhóm thuật toán hai pha (two-phase) là nhóm các thuật toán được

chia thành hai giai đoạn chính, mỗi lần duyệt CSDL để tính toán cácthông tin riêng biệt Một số thuật toán thuộc nhóm này có thể kể đến

như: Two-Phase [9], UP-Growth [10], v.v

a) Thuật toán Two-Phase

Trang 35

Liu và các đồng sự đã đề xuất thuật toán Two-Phase [9] là một trong nhữngthuật toán đầu tiên Thuật toán này giới thiệu một giới hạn trên của độ hữu ích là trong số độ hữu ích của giao dịch (TWU - Transaction Weighted Utility) bằng cách

bỏ qua các hạng mục không có tiềm năng để loại bỏ đi một số lượng tập mục được

ra trong khi khai thác.

Định nghĩa 2.15 - Trọng số độ hữu ích của giao dịch (Transaction

Weighted Utility).

TWU của một tập X là tổng độ hữu ích của giao dịch có chứa tập mục X, kýhiệu là TWU(X) được định nghĩa bằng công thức: [9]

TWU(X) = Xr„caœ TUŒC,) (2.10)

Ví dụ: TWU ({a}) = X„etr,x„r;r;) TU (Te) = TUŒ,) + TU(T2) +

Thuật toán Two-Phase chia thành hai giai đoạn chính sau:

© Giai đoạn 1: Tìm và loại bỏ tất cả các tập mục X có TWU(X) < ụ.Nhưng tập mục thỏa mãn tính chất của TWU sẽ được giữ lại và tiếptục khai thác ở giai đoạn tiếp theo

© Giai đoạn 2: Tiếp tục duyệt CSDL dé tiếp tục tính toán chính xác độ

hữu ich của các hạng mục không bị loại bỏ ở giai đoạn 1.

Nhận xét: Thuật toán Two-Phase cho phép bỏ các tập mục không tiềm nănggiúp đây nhanh quá trình khai thác Tuy nhiên, Two-Phase vẫn có thê có thời gian

Trang 36

thực hiện dài vì thuật toán thực thi nhiều lần duyệt toàn bộ CSDL và có thể tạo racác tập mục không ton tại trong CSDL.

b) Thuật toán HUI-Miner

Việt duyệt toàn bộ CSDL quá nhiều lần là một trong những nhược điểm củaTwo-phase cũng như UP-Growth dẫn đến tiêu tốn thời gian đề thực thi Bên cạnh

đó việc sử dụng một giới hạn trên không chặt chẽ dẫn đến việc không giảm đượckhông gian tìm kiếm nhiều.

Đối mặt với vấn đề này, năm 2012 Liu và Qu [11] đã giới thiệu thuật toán cótên HUI-Miner là thuật toán khai thác một pha đầu tiên giúp tránh việc duyệt CSDL nhiều lần Thuật toán cũng đưa ra khái niệm về giới hạn độ hữu ích còn lại và cầutrúc danh sách hữu ích và sử dụng thông tin trên cấu trúc này để khám phá ra các

HUI.

Dinh nghĩa 2.16 - Các hang mục đứng sau tập mục X trong giao dịch T.

Cho tập mục X và giao dịch T sao cho X G T Tập hợp tat cả các hạng mục

đứng sau X trong giao dịch 7 được ký hiệu là T/X [11]

Trong thuật toán HUI-Miner thì các hạng mục sẽ được sắp xếp theo thứ tựtăng dần của giá trị TWU

Định nghĩa 2.17 - Độ hữu ích còn lại của tập mục X trong giao dịch T

(Remaining utility of itemset X in transaction T)

Độ hữu ich còn lại của một tập mục X trong một giao dich T được ký hiệu

re(X,T) và được định nghĩa bằng công thức [11]

re(X,T) = X¡eq/x) u(,T) (2.11)

Trang 37

Tổng độ hữu ích còn lại của tập mục X trong toàn bộ CSDL ký hiệu làre(X),thé hiện độ hữu ích tối da mà các tập mục được tạo ra từ tập mục X có thé đạt

được Giá trị này được tính bởi công thức: [11]

re(X) = Yrjoxre(X, Tj) (2.12)

Thuật toán HUI-Miner cũng đề xuất một chiến lược cắt tỉa dựa trên giá trị độhữu ích còn lại Một tập mục X có tổng hộ hữu ích và độ hữu ích còn lại trên CSDLnhỏ hơn p thì X va tất cả các tập mục được tạo từ X không là một HUI

Dé có thể lưu trữ các giá trị như độ hữu ích và độ hữu ích còn lại của mỗi tậpmục trên mỗi giao dịch từ đó không cần phải duyệt CSDL thì HUI-Miner cũng đềxuất một cấu trúc tên là danh sách hữu ích (Utility-List) Mỗi Utility-List của mộttập mục bao gồm một danh sách các phần tử Mỗi phần tử chứa các thông tin gồm(tid, iutil, rutil) tương ứng với mỗi giao dịch chứa tập mục X Trong đó:

-_ Trường tid chưa chỉ mục đánh dau vị trí của giao dịch T chứa X

- Trường iutil chứa giá trị độ hữu ích của X trong T

- Trường rutil chứa giá trị độ hữu ích còn lại của X trong T

Khi cần tính kết quả của độ hữu ích và độ hữu ích còn lại của tập mục trongCSDL thì chỉ cần tinh tổng giá trị iwtil cũng như rutil của các phan tử trong Utility-

List.

c) Thuật tán FHM

Phillipe và các đồng sự đã đề xuất thuật toán FHM [12] vào năm 2014 Thuậttoán FHM là mở rộng của thuật toán HUI-Miner để khám phá ra các tập HUI kếthợp với sử dụng cấu trúc EUCS- (Estimated Utility Co-occurrence Structure) vàchiến lược EUCP (Estimated Utility Co-occurrence Pruning) giúp giảm đi số lượng

ứng viên được tạo ra.

Trang 38

Định nghĩa 2.18 - Cấu trúc EUCS

Cấu trúc EUCS là một mảng 2 chiều và các giá trị trong mảng được tính bằng

công thức: [12]

EUCS[i,j] = TWU(X = {i,j}) (2.12)

Chiến lược EUCP sử dụng các giá trị trong EUCS để cắt giảm số lượng ứngviên cần tính toán Chiến lược sử dụng tính chất của TWU Nếu một tập mục gồm

2 hạng mục X có giá trị nhỏ hơn p thì mọi tập mục được tao từ X là một HUI.

d) Thuật toán EFIM

Thuật toán EFIM [13] là thuật toán một pha và đưa ra hai giới hạn trên dựa trên hữu ich mới, đó là độ hữu ích cục bộ (local utility) và độ hữu ich cây con (sub-

tree utility) Hơn nữa, EFIM đã giới thiệu hai chiến lược mới và hiệu quả để giảmchỉ phí duyệt CSDL và nâng cao hiệu quả của HUIM, đó là phép chiếu CSDL có độhữu ích cao (HDP) và hợp nhất giao dịch có độ hữu ích cao (HTM) EFIM tiêu thụ

ít bộ nhớ hơn và có độ phức tạp gần như tuyến tính với số lượng giao dịch

e) Thuật toán MEFIM và iMEFIM

Thuật toán MEFIM [15] và iMEFIM [15] được đề xuất bởi Nguyen và các đồng sự vào năm 2019 là thuật toán mở rộng của EFIM để giảm hơn nữa chỉ phíduyệt CSDL tránh duyệt các giao dịch dư thừa bằng cấu trúc chiếu ngược P-set Bêncạnh đó, các tác giả cũng đề xuất một phương pháp mới đề xử lý tốt các CSDL giaodịch có chứa các hạng mục có giá trị hữu ích động ở mỗi giao dịch thay vì có định

trên toàn bộ CSDL.

2.3.4 Các nghiên cứu về phân loại, tổng quát hóa

Mặc dù HUIM là một lĩnh vực có được rất nhiều nhà ngiên cứu quan tâm,không có thuật toán nào đã được nêu ra ở trên có sử dụng thông tin phân cấp của

Trang 39

các hạng mục Dù vậy thông tin phân cấp và cây phân cấp hạng mục đã có sẵn trongnhiều ứng dụng thực tế và có thể cung cấp những tri thức có giá trị.

a) Các nghiên cứu liên quan đến phân cấp và tổng quát hóa

Các bài toán về phân cấp, tổng quát hóa và cây phân cấp hạng mục đã đượcđưa ra trong những ngày đầu nghiên cứu về FIM và ARM bởi Skirant và Agrawal[22] Họ đã thiết kế thuật toán Cumulate là thuật toán đầu tiên dé khai thác các luậtkết hợp (ARM) trong CSDL Cumulate có thể tìm các luật chứa các hạng mục từ các mức tông quát khác nhau trong CSDL giao dịch Sau đó, Hipp và đồng sự đãtạo ra một thuật toán tìm kiếm theo chiều sâu (DFS) có tên là Prutax [37] dé pháthiện các tập phé biến liên cắp một cách hiệu quả bằng cách sử dụng biểu diễn CSDLdoc và hai chiến lược tỉa bớt dựa trên phân loại các hạng mục để loại bỏ các tập mụckhông phé biến Sriphaew và Theeramunkong đã đề xuất một thuật toán có tên SET[38], thực hiện tim kiếm dựa trên cách liệt kê và áp dụng các ràng buộc khác nhautrên các tập mục tổng quát đề tăng tốc quá trình khám phá Vo và Le đã phát triểnmột thuật toán mới có tên MMS_ GIT-Tree [17] , thuật toán này chỉ yêu cầu một lầnduyệt CSDL để khai thác các luật kết hợp tổng quát Các tác giả đã trình bày một phiên bản cải tiến của cầu trúc IT-Tree [39], được đặt tên là GIT-tree, dé lưu trữCSDL phân cấp Thuật toán cũng đưa một cấu trúc gọi là tidsets vào sử dụng để

hỗ trợ tính toán nhanh hơn cho các tập phổ biến tổng quát Wu va đồng sự đã dé xuất các thuật toán GMAR và GMFI để khai thác các luật kết hợp tổng quát [18].

n,

Trong khi GMFI tạo luật kết hợp tổng quát bằng cách tim tất cả các tập phổ ẪGMAR trực tiếp tạo luật kết hợp tổng quát Cả hai phương pháp đều áp dụng cầutrúc FCET (bảng liệt kê phổ biến đóng) Dựa trên cấu trúc FP-Tree do Han và đồng

sự dé xuất [4], Pramudiono và đồng sự đã đề xuất thuật toán FP-tax [40] dé khaithác các luật kết hợp đa mức bằng cách thực hiện chuyển động hai chiều của cây đãxây dựng Cả hai phương pháp đều được chứng minh là tốt hơn Cumulate Baralis

và đồng sự đã đề xuất một phương pháp là CoGAR [21], sử dụng nhiều đơn vị phânloại đề khai thác các luật kết hợp tổng quát bằng cách sử dụng các ràng buộc, chẳng

Trang 40

hạn như lược đồ và các ràng buộc về độ tin cậy Han và đồng sự đã mở rộng vấn đềkhai thác tập mục đa mức bằng cách kết hợp nó với nhiều ngưỡng hỗ trợ tối thiểu [16] sao cho một ngưỡng có thé được chỉ định cho mỗi mức tổng quát trên cây phânloại Các tac giả đã giới thiệu phương pháp tìm kiếm theo chiều rộng (BFS) dé phântích đệ quy CSDL giao dịch, bắt đầu từ các tập phổ biến tổng quát nhất Lui và đồng

sự đã trình bày một phương pháp khai thác các mẫu đa mức sử dụng nhiều ngưỡng

hỗ trợ tối thiểu [41] Thuật toán được để xuất xem xét khoảng cách phân loại và duyệt các giao dịch ban đầu k + 1 lần, trong đó k là độ dài của tập phổ biến lớnnhất Các thuật toán HUIM trên CSDL có thông tin đa mức có hai thuật toán được

đề xuất bao gồm thuật toán ML-HUI Miner [24] và thuật toán CLH-Miner [25]

b) Thuật toán ML-HUI Miner

Thuật toán ML-HUI Miner được Cagliero đề xuất nằm 2017 [24], đã đưa rakhái niệm về các tập mục có độ hữu ích cao đa tầng bằng cách sử dụng cấu trúc câyphân cấp (taxonomy) của các hạng mục ML-HUI Miner dựa trên thuật toán HUI-Miner, loại bỏ các ứng cử viên bằng cách sử dụng cấu trúc EUCS Tuy nhiên, thuật

toán chỉ khai thác các tập mục mà các mục có cùng một mức.

c) Thuật toán CLH-Miner

Thuật toán thứ hai, được đề xuất vào năm 2020 bởi Fournier-Viger và đồng

sự, được đặt tên là CLH-Miner [21] Các tác giả đã xác định một vấn dé tổng quáthơn là khai thác các HUI liên cấp dé giải quyết một số van đề của ML-HUI Miner.Thuật toán đề xuất không gian tìm kiếm cũng như cấu trúc danh sách hữu ích phâncấp để phục vụ cho việc khám phá các tập mục có độ hữu ích cao liên cấp Năm

2020, Nouioua và các đồng sự đã đề xuất một phiên bản top-k đề khai thác top-kcác tập mục có độ hữu ích cao liên cấp [42].

Ngày đăng: 08/11/2024, 17:37

HÌNH ẢNH LIÊN QUAN

Hình 4.17. Khả năng mở rộng về sử dụng trên CSDL Chainstore - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.17. Khả năng mở rộng về sử dụng trên CSDL Chainstore (Trang 12)
Hình 1.1. Minh họa về cây phân cấp - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 1.1. Minh họa về cây phân cấp (Trang 17)
Hình 2.1. Quá trình rút ra tri thức từ dữ liệu [36] - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 2.1. Quá trình rút ra tri thức từ dữ liệu [36] (Trang 22)
Bảng 2.1. Ví dụ về CSDL giao dịch D - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Bảng 2.1. Ví dụ về CSDL giao dịch D (Trang 31)
Bảng 2.3. Giao dịch và độ hữu ích của mỗi giao dịch - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Bảng 2.3. Giao dịch và độ hữu ích của mỗi giao dịch (Trang 32)
Hình 3.1. Cây phân cấp 7 của các hạng mục - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 3.1. Cây phân cấp 7 của các hạng mục (Trang 48)
Hình 3.3. Không gian tìm kiếm đã được song song hóa - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 3.3. Không gian tìm kiếm đã được song song hóa (Trang 60)
Bảng 4.1. Thông tin CSDL - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Bảng 4.1. Thông tin CSDL (Trang 67)
Hình 4.1. Thời gian chạy trên CSDL Foodmart - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.1. Thời gian chạy trên CSDL Foodmart (Trang 69)
Hình 4.3. Thời gian chạy trên CSDL Liquor - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.3. Thời gian chạy trên CSDL Liquor (Trang 70)
Hình 4.4. Thời gian chạy trên CSDL Chainstore - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.4. Thời gian chạy trên CSDL Chainstore (Trang 71)
Hình 4.7. Bộ nhớ tối đa trên CSDL Fruithut - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.7. Bộ nhớ tối đa trên CSDL Fruithut (Trang 73)
Hình 4.6. Bộ nhớ tối đa trên CSDL Foodmart - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.6. Bộ nhớ tối đa trên CSDL Foodmart (Trang 73)
Hình 4.8. Bộ nhớ tối đa trên CSDL Liquor - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.8. Bộ nhớ tối đa trên CSDL Liquor (Trang 74)
Hình 4.10. Khả năng mở rộng về thời gian chạy trên CSDL Foodmart - Luận văn thạc sĩ Công nghệ thông tin: Khai thác tập hữu ích cao trên cơ sở dữ liệu phân cấp
Hình 4.10. Khả năng mở rộng về thời gian chạy trên CSDL Foodmart (Trang 75)

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

TÀI LIỆU LIÊN QUAN

w