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

Khai phá mẫu dãy có trọng số trong cơ sở dữ liệu dãy

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.87 MB, 161 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

VIỆN HÀN LÂM KHOA HỌC
VÀ CÔNG NGHỆ VIỆT NAM

HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ
-----------------------------

TRẦN HUY DƯƠNG

KHAI PHÁ MẪU DÃY CÓ TRỌNG SỐ
TRONG CƠ SỞ DỮ LIỆU DÃY

LUẬN ÁN TIẾN SĨ NGÀNH MÁY TÍNH

HÀ NỘI – 2021
VIỆN HÀN LÂM KHOA HỌC
BỘ GIÁO DỤC VÀ ĐÀO TẠO
VÀ CÔNG NGHỆ VIỆT NAM


HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ
-----------------------------

Trần Huy Dương

KHAI PHÁ MẪU DÃY CÓ TRỌNG SỐ
TRONG CƠ SỞ DỮ LIỆU DÃY

Chuyên ngành: Hệ thống thông tin
Mã số: 9 48 01 04



LUẬN ÁN TIẾN SĨ NGÀNH MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC:
1. TS. Nguyễn Trường Thắng
2. GS.TS. Vũ Đức Thi

Hà Nội – Năm 2021


1
LỜI CAM ĐOAN

Tơi xin cam đoan đây là cơng trình nghiên cứu của tơi và những kết quả trình
bày trong luận án là mới, trung thực và chưa từng được cơng bố trong bất kỳ cơng
trình của người khác. Những kết quả viết chung với cán bộ hướng dẫn và các tác giả
khác đều được sự đồng ý khi đưa vào luận án. Việc tham khảo các nguồn tài liệu,
bài viết được thực hiện trích dẫn và ghi nguồn tham khảo theo đúng quy định.
Tác giả luận án

NCS. Trần Huy Dương

i


2
LỜI CẢM ƠN

Lời đầu tiên, tôi xin gửi lời cảm ơn sâu sắc tới TS.Nguyễn Trường Thắng và
GS.TS.Vũ Đức Thi đã tận tình hướng dẫn, giúp đỡ tơi trong q trình nghiên cứu,

đăng bài và hồn thành luận án này.
Tơi cũng xin chân thành cảm ơn Ban lãnh đạo Viện Công nghệ thông tin Viện Hàn lâm Khoa học và Công nghệ Việt Nam, lãnh đạo Học viện Khoa học và
Công nghệ đã tạo điều kiện thuận lợi cho quá trình nghiên cứu của tơi, cảm ơn các
cán bộ của phịng Cơng nghệ phần mềm trong quản lý đã nhiệt tình trong cơng tác,
giúp tơi dành thời gian tập trung nghiên cứu và hồn thành luận án.
Cuối cùng, tơi xin cảm ơn gia đình, bạn bè, đồng nghiệp đã ln là nguồn
động viên, ủng hộ, giúp tôi thêm động lực để hoàn thành luận án này.

Người thực hiện

Trần Huy Dương

ii


1

MỤC LỤ
DANH MỤC HÌNH VẼ ............................................................................................
DANH MỤC BẢNG BIỂU .......................................................................................
DANH MỤC CÁC TỪ VIẾT TẮT ..........................................................................
MỞ ĐẦU ....................................................................................................................
CHƯƠNG 1. TỔNG QUAN KHAI PHÁ MẪU DÃY CÓ TRỌNG SỐ TRONG
CƠ SỞ DỮ LIỆU DÃY ............................................................................................
1.1.

Tổng quan tình hình nghiên cứu ...............

1.2.


Khai phá mẫu dãy có trọng số trong CSDL

1.3.

Khai phá mẫu dãy có trọng số trong CSDL
..................................................................

1.4.
gian

Khai phá mẫu dãy lợi ích cao trong CSDL
..................................................................

Kết luận Chương 1 ....................................................................................................
CHƯƠNG 2. KHAI PHÁ MẪU DÃY CÓ TRỌNG SỐ TRONG CƠ SỞ DỮ
LIỆU DÃY CĨ KHOẢNG CÁCH THỜI GIAN .....................................................
2.1.

Giới thiệu ..................................................

2.2.
Thuật tốn khai phá top-k mẫu dãy thườn
thời gian (TopKWFP) ...............................................................................................
2.2.1.

Bài toán đặt ra ............................................

2.2.2.

Ý tưởng thuật toán ....................................


2.2.3.

Thuật toán TopKWFP ...............................

2.2.4.

Phân tích thuật tốn TopKWFP .................

2.2.5.

Thử nghiệm thuật tốn ...............................

Kết luận Chương 2 ....................................................................................................
CHƯƠNG 3. KHAI PHÁ MẪU DÃY LỢI ÍCH CAO TRONG CƠ SỞ DỮ LIỆU
DÃY CÓ KHOẢNG CÁCH THỜI GIAN ...............................................................
3.1.

Giới thiệu ..................................................

3.2.
Thuật toán khai phá mẫu dãy lợi ích
(UIPrefixSpan) ..........................................................................................................
3.2.1.

Bài toán đặt ra ............................................

3.2.2.

Ý tưởng thuật toán ....................................


3.2.3.

Thuật tốn UIPrefixSpan ..........................

3.2.4.

Phân tích thuật tốn UIPrefixSpan ...........


2
3.2.5.

Thử nghiệm thuật toán ...............................

3.3.
Thuật toán khai phá mẫu dãy lợi ích cao có
(HUISP) ...................................................................................................................
3.3.1.

Bài tốn đặt ra ............................................

3.3.2.

Ý tưởng thuật tốn ......................................

3.3.3.

Thuật tốn HUISP ......................................


3.3.4.

Phân tích thuật tốn HUISP .......................

3.3.5.

Thử nghiệm thuật toán ...............................

Kết luận Chương 3 ..................................................................................................
KẾT LUẬN VÀ KIẾN NGHỊ ................................................................................
DANH MỤC CƠNG TRÌNH ĐÃ CƠNG BỐ ........................................................
TÀI LIỆU THAM KHẢO .......................................................................................


3
DANH MỤC HÌNH VẼ
Hình 1.1. Các vấn đề nghiên cứu của luận án ...........................................................
Hình 2.1 Ảnh hưởng của tham số k ..........................................................................
Hình 2.2 Ảnh hưởng của chiến lược tối ưu lên thời gian chạy .................................
Hình 2.3 Ảnh hưởng của chiến lược tối ưu lên số ứng viên tạo ra ...........................
Hình 2.4. So sánh 2 thuật tốn WIPrefixSpan và TopKWFP ...................................
Hình 3.1 Biểu đồ phân phối giá trị lợi nhuận của 1000 mục (UIPrefixSpan) ........
Hình 3.2 Thời gian chạy UIPrefixSpan ...................................................................
Hình 3.3 Bộ nhớ sử dụng UIPrefixSpan .................................................................
Hình 3.4 Số mẫu dãy lợi ích cao UIPrefixSpan ......................................................
Hình 3.5 Biểu đồ phân phối giá trị lợi nhuận của 1000 mục (HUISP) ...................
Hình 3.6 Thời gian chạy HUISP .............................................................................
Hình 3.7 Bộ nhớ sử dụng HUISP ............................................................................
Hình 3.8 Ảnh hưởng của số lượng mẫu dãy với thời gian chạy và bộ nhớ ............



4

DANH MỤC BẢNG BIỂU
Bảng 1.1 Danh sách một số công trình liên quan đến luận án.................................22
Bảng 1.2 CSDL dãy SDB........................................................................................ 26
Bảng 1.3 Trọng số của các mục trong SDB............................................................. 26
Bảng 1.4 CSDL dãy iSDB với khoảng cách thời gian............................................. 33
Bảng 1.5 Trọng số của các mục trong iSDB............................................................ 34
Bảng 1.6 CSDL dãy QiSDB với khoảng cách thời gian.......................................... 48
Bảng 1.7 Trọng số của các mục trong QiSDB......................................................... 49
Bảng 1.8 Bảng lợi ích QiSDB................................................................................. 56
Bảng 1.9 Bảng chỉ mục........................................................................................... 56
Bảng 2.1 CSDL dãy iSDB với khoảng cách thời gian............................................. 75
Bảng 2.2 Trọng số của các mục trong iSDB............................................................ 75
Bảng 2.3 CSDL chiếu của dãy <0,c>...................................................................... 77
Bảng 2.4 Các bộ dữ liệu thực nghiệm..................................................................... 79
Bảng 2.5 Thống kê chi tiết số lượng mẫu dãy ứng viên tạo ra................................. 83
Bảng 3.1 Cơ sở dữ liệu điều kiện với tiền tố <0,a>................................................. 97
Bảng 3.2 Cơ sở dữ liệu điều kiện với tiền tố <0,a><1, b >...................................... 97
Bảng 3.3 Cơ sở dữ liệu điều kiện với tiền tố <0,a><1, b ><2, a>............................98
Bảng 3.4 Cơ sở dữ liệu điều kiện với tiền tố <0,a><1, b ><2, ab>..........................98
Bảng 3.5 Các mẫu dãy ứng viên ứng với tiền tố <0, a>.......................................... 99
Bảng 3.6 Bảng thống kê khai phá mẫu dãy lợi ích cao với khoảng cách thời gian trong

QiSDB................................................................................................................... 100
Bảng 3.7 Lợi ích của mẫu dãy 1 phần tử............................................................... 118


Bảng 3.8 Lợi ích của các dãu đầu vào ....................................................................

Bảng 3.9 Bảng lợi ích của các mẫu dãy 1 phần tử ..................................................
Bảng 3.10 Bảng chỉ mục trong QiSDB ...................................................................
Bảng 3.11 CSDL chiếu của <0,a> QiSDB|<0,a> ....................................................
Bảng 3.12

Bảng lợi ích của

Bảng 3.13

CSDL chiếu của

Bảng 3.14

Bảng lợi ích của

Bảng 3.15

CSDL chiếu của

Bảng 3.16 Bảng lợi ích của các mục ứng viên độ dài 4 với tiền tố <0,a><1,b><2,a>
.................................................................................................................................124

Bảng 3.17

Bảng mẫu dãy lợ

Bảng 3.18

Bảng mẫu dãy lợ


Bảng 3.19 Bảng thống kê số lượng mẫu dãy ứng viên và số mẫu dãy lợi ích cao của
UIPrefixSpan và HUISP .........................................................................................


Từ viết tắt
CSDL
UL

US
PrefixSpan

TopKWFP

WIPrefixSpan

UIPrefixSpan

HUISP

GSP
SDB
iSDB
QiSDB
UCI


7
MỞ ĐẦU
1. Tổng quan
Khai phá dữ liệu được định nghĩa là q trình trích xuất các thơng tin có giá

trị tiềm ẩn bên trong lượng lớn dữ liệu được lưu trữ trong các cơ sở dữ liệu, kho dữ
liệu. Khai phá tập mục thường xuyên là một hướng cơ bản trong khai phá dữ liệu.
Bài toán khai phá tập mục thường xuyên được Agrawal và Srikant giới thiệu trong
[1] với mục đích tìm ra các mục thường xuất hiện cùng nhau trong CSDL giao dịch.
Ví dụ như một tập mục thường xuyên {Máy in; Giấy} thể hiện rằng các sản phẩm
này thường được mua cùng nhau. Các tập mục thường xuyên có dạng đơn giản và
dễ hiểu đối với con người nhưng lại rất hữu ích trong việc ra quyết định.
Từ khi ra đời, lĩnh vực khai phá tập mục thường xuyên đã thu hút rất nhiều nhà
nghiên cứu. Rất nhiều cơng trình đã và đang tiếp tục được cơng bố nhằm phát triển các
kỹ thuật khai phá tập mục thường xuyên cũng như mở rộng bài toán khai phá tập mục
thường xuyên. Tuy nhiên, trong bài toán này, thứ tự của các mục lại bị bỏ qua. Điều này
có thể dẫn tới việc khơng tìm được các tập mục hữu ích hoặc các tập mục được tìm
thấy khơng thực sự hữu ích. Khai phá các mẫu dãy tiềm năng và và hữu ích trong các
cơ sở dữ liệu dãy là một trong những nội dung quan trọng trong khai phá dữ liệu cơ
bản. Những năm gần đây, các xu hướng nghiên cứu các vấn đề khai phá dữ liệu là đề
xuất các thuật toán để khai phá các mẫu dãy trong các loại CSDL dữ liệu dãy. Một
trong những nội dung khai thác dữ liệu phổ biến nhất trên dãy là khai phá các mẫu dãy
tuần tự. Để có thể giải quyết vấn đề này, bài toán khai phá mẫu dãy thường xuyên đã
được Agrawal và Srikant đề xuất trong [2]. Nội dung theo hướng này bao gồm các việc
khai phá các mẫu dãy tiềm năng, hữu ích trong một tập hợp các dãy dữ liệu, trong đó
mức độ hữu ích của một dãy con có thể được tính tốn và xác định theo nhiều tiêu chí
khác nhau như tần suất xuất hiện, độ dài, trọng số, lợi ích của dãy và khoảng thời gian
xuất hiện giữa các dãy. Khai phá các mẫu dãy có rất nhiều ứng dụng trong thực tiễn
hiện nay vì dữ liệu thu thập được cơ bản đã được mã hóa thành các dãy dữ liệu trong
nhiều lĩnh vực như tin sinh học, đào tạo trực


8
tuyến, phân tích thị trường, phân tích mua bán, phân tích văn bản và phân tích thơng
tin nhấp chuột trên trang web.

Mối quan tâm đến các kỹ thuật khai phá mẫu dãy đến từ khả năng phát hiện
ra các mẫu dãy có thể ẩn bên trong cơ sở dữ liệu dãy lớn và con người có thể giải
thích được và rất hữu ích cho việc hiểu dữ liệu và ra các quyết định phù hợp. Ví dụ,
một mẫu dãy {Sữa, bánh quy} có thể được sử dụng để hiểu hành vi của khách hàng
và đưa ra các quyết định chiến lược để tăng doanh số bán hàng, chẳng hạn như đồng
quảng cáo sản phẩm và giảm giá.
Một số kỹ thuật khai thác theo mẫu dãy như kỹ thuật khai thác tập mục phổ biến
thường xuyên [1], [3], [4], [5], [6], [7] và khai phá các luật kết hợp [1] nhằm phân tích
dữ liệu, trong đó thứ tự tuần tự của các sự kiện xuất hiện các mục khơng được tính đến.
Do đó, nếu các kỹ thuật khai phá mẫu dãy như vậy áp dụng trên các dữ liệu có thơng
tin về thời gian hoặc thứ tự tuần tự thì các thơng tin này sẽ bị bỏ qua. Điều này có thể
dẫn đến việc không khai phá ra được các mẫu dãy quan trọng trong dữ liệu hoặc tìm
kiếm các mẫu có thể khơng hữu ích vì chúng bỏ qua mối quan hệ tuần tự giữa các sự
kiện hoặc các phần tử của dữ liệu. Trong nhiều lĩnh vực, thứ tự của các sự kiện là đặc
biệt quan trọng. Ví dụ, để phân tích các văn bản, cần phải xem xét thứ tự của các từ
trong câu [8]. Trong phát hiện xâm nhập mạng, thứ tự của các sự kiện xảy ra rất quan
trọng [9]. Một số phương pháp chính phân tích và khai phá dữ liệu mẫu dãy tuần tự [2],
[10], [11], [12], [13], [14], [15], [16], [17], [18], [19], [20], [21], [22], [23] trong các
phương pháp này bao gồm việc khám phá các dãy con tiềm năng và có ý nghĩa trong
một tập hợp các dãy, trong đó mức độ tiềm năng của một dãy con có thể được đo lường
theo các tiêu chí khác nhau như tần suất xuất hiện, độ dài và lợi nhuận của dãy, khoảng
cách thời gian. Khai phá mẫu dãy tuần tự có nhiều ứng dụng trong đời thực do dữ liệu
được mã hóa tự nhiên dưới dạng dãy ký hiệu trong nhiều lĩnh vực như tin sinh học [24],
e-learning [25], [26], phân tích thị trường [10], phân tích văn bản [8], tiết kiệm năng
lượng trong smarthomes [27], phân tích luồng nhấp chuột trên các trang web [28]. Hơn
nữa, khai phá các mẫu dãy cũng có thể được áp dụng cho chuỗi thời gian (ví dụ: dữ liệu
cổ phiếu), khi việc tùy chỉnh các tham số được thực hiện như một bước tiền xử lý [29].


9

Thông thường, khai phá mẫu dãy thường xuyên được khai phá trong bài tốn
mua sắm thực hiện như ví dụ sau: một dãy dữ liệu <ab,b,bc> tương đương với tình
huống khi khách hàng mua mặt hàng b sau khi đã mua mặt hàng a và b, sau đó họ
mua tiếp mặt hàng b,c sau khi mua mặt hàng b. Tuy nhiên, người quản lý bán hàng
không biết được thời gian mà khách hàng đã mua các sản phẩm trên nếu chỉ thực
hiện khai phá mẫu dãy thường xuyên mà không có thêm các thơng tin mở rộng
khác. Trong thực tế, khoảng cách thời gian giữa các thành phần trong dãy cũng
đóng vai trị rất quan trọng. Dãy <ab,b> với khoảng cách thời gian là 1 ngày sẽ có ý
nghĩa hơn rất nhiều dãy <ab,b> mà có khoảng cách là 1 năm. Cũng với ví dụ trên,
một dãy dữ liệu <(0,ab), (1,b), (30,bc)> tương đương với tình huống khách hàng
mua mặt hàng a và b, sau đó 1 ngày khách hàng mua mặt hàng b, và sau 30 ngày
tiếp theo khách hàng mua mặt hàng b và c. Khi đó thơng tin mở rộng của khai phá
dãy có khoảng cách thời gian có ý nghĩa cho phép người quản lý bán hàng phân tích
xem sau khoảng thời gian bao lâu, khách hàng sẽ mua các mặt hàng tiếp theo.
Mặt khác, các giải thuật khai phá mẫu dãy sử dụng một ngưỡng hỗ trợ nhằm
thu nhỏ khơng gian tìm kiếm các mẫu dãy thường xuyên. Tuy nhiên, sau khi có mẫu
dãy thường xun, khơng có cách nào để điều chỉnh số các dãy thường xuyên thông
qua phản hồi của người sử dụng, ngoại trừ sự thay đổi ngưỡng hỗ trợ tối thiểu. Một
trong những hạn chế chính của phương pháp tiếp cận truyền thống các các thuật
toán khai phá dãy thường xuyên là các mục trong dãy đều có giá trị như nhau, tuy
nhiên trong thực tế, các mục lại có các mức độ quan trọng khác nhau. Với ví dụ
trên, với một dãy dữ liệu có thơng tin khoảng cách thời gian <(0,ab), (1,b), (30,bc)>,
việc người sử dụng đưa thêm các giá trị trọng số của từng mục a, b, c khác nhau
phản ánh mức độ quan trọng của mục dữ liệu trong dãy đó, bởi vì nếu mục a là mặt
hàng máy in (có giá trị cao, thơng thường có số lượng mua ít) và mục b là mặt hàng
giấy in (có giá trị ít hơn, thơng thường có số lượng mua nhiều) và mục c là mặt hàng
hộp mực in (có giá trị trung bình, có số lượng mua trung bình) thì việc đưa trọng số
của a (máy in) cao hơn trọng số của c (hộp mực in) và trọng số của b (giấy in) cho
phép người sử dụng cân bằng được độ hỗ trợ (tần suất mua) và trọng số (mức độ
quan trọng) của các mục (mặt hàng) đó.



10
Năm 1995, Agrawal và Srikant phát triển bài toán khai phá mẫu dãy thường
xuyên và đề nghị thuật toán AprioriAll [2], một thuật toán dựa trên thuật toán Apriori
để khai thác mẫu dãy thường xuyên. Cũng giống như Apriori, AproiriAll duyệt CSDL
nhiều lần và dựa vào phương pháp sinh ứng viên nên tốn thời gian khai phá.

Hiện nay trên thế giới có nhiều nhóm tác giả nghiên cứu đề xuất các thuật
toán với các phương pháp tiếp cận khai phá mẫu dãy khác nhau như GSP [10],
Spade [11], Spam [30], PrefixSpan [31]
Các thuật toán khai phá mẫu dãy nêu ở trên không quan tâm tới mức độ quan
trọng của từng mục dữ liệu trong dãy (trọng số của dãy). Tuy nhiên trên thực tế, mỗi
dãy dữ liệu đều có độ quan trọng khác nhau. Một số cơng trình đã nghiên cứu về
trọng số, đưa các giá trị trọng số khác nhau đến các mục trong dãy như MWSP [32],
Wspan [33], WSPM [34]
Tuy nhiên trên thực tế, mỗi dãy dữ liệu xuất hiện đều có thơng tin về khoảng
cách thời gian giữa các dãy. Có 2 hướng tiếp cận chính được các nhà nghiên cứu đề
xuất trong khai phá mẫu dãy có khoảng cách thời gian: tiếp cận dựa trên ràng buộc
cSpade [35], Prefix-growth [14] và tiếp cận dựa trên việc mở rộng cơ sở dữ liệu dãy
[36] [37] [38] [39] [40] [41]. Một số cơng trình tiêu biểu như cSpade [35], Prefixgrowth [14], I-PrefixSpan [38] [39], TGSP [41], TiWS [36], Nhóm tác giả Y. Hirate
và cộng sự [37].
Tuy nhiên, đến nay chưa có nhiều các nghiên cứu về khai phá mẫu dãy có
trọng số trong CSDL dãy có khoảng cách thời gian trong đó quan tâm đến cả đến
trọng số của mỗi mục trong dãy dữ liệu và khoảng cách thời gian giữa các dãy. Việc
phát hiện top-k mẫu dãy thường xuyên trên CSDL dãy được thực hiện bằng việc
nghiên cứu giải quyết của thuật toán TKS [21] do Fournier-Viger và cộng sự đề

xuất thực hiện khai phá top-k mẫu dãy thường xuyên trong CSDL dãy sử dụng biểu
diễn CSDL theo chiều dọc và nghiên cứu Dương và cộng sự [40] đã đề xuất thuật

toán khai phá mẫu dãy thường xuyên trọng số chuẩn hóa với khoảng cách thời gian
trong CSDL dãy có khoảng cách thời gian và thuật tốn WIPrefixSpan để khai phá
mẫu dãy này. Nhằm tiếp tục phát triển dựa trên các kết quả giải thuật TKS [21] và


11
WIPrefixSpan [40] trong việc khai phá mẫu dãy trọng số trong CSDL dãy có
khoảng cách thời gian, NCS đề xuất nội dung nghiên cứu và phát triển thuật toán
trong Nội dung thứ 1.
Nội dung thứ 1 trong việc xác định vấn đề nghiên cứu của luận án là phát
triển và đề xuất thuật toán khai phá top-k mẫu dãy thường xuyên trọng số với
khoảng cách thời gian trong đó quan tâm đến cả đến trọng số của mỗi mục trong
dãy dữ liệu và khoảng cách thời gian giữa các dãy trong CSDL dãy có khoảng cách
thời gian và số lượng top-k mẫu dãy khai phá được.
Bài toán khai phá mẫu dãy lợi ích cao là một mở rộng của bài tốn khai phá mẫu
dãy có trọng số. Trong khai phá mẫu dãy lợi ích cao, các mục có thể có các giá trị khác
nhau trong các lần xuất hiện khác nhau. Ví dụ, xét một dãy dữ liệu như sau ><a[2] b[6] d[2]>, mẫu dãy a nhận 2 giá trị khác nhau (lần lượt là 3 và 2) trong
2 lần xuất hiện thể hiện mục a được mua với số lượng 3 và 2 trong 2 lần giao dịch liên
tiếp. CSDL dãy có chứa các giá trị số lượng như vậy được gọi là CSDL dãy định

lượng. Một số công bố tiêu biểu như UL, US [42], Uspan [43], PHUS [44], HuspExt
[45], HUS-Span [46], HUSPM [47] .
Tuy nhiên, đến nay chưa có nhiều các nghiên cứu về khai phá mẫu dãy lợi
ích cao trong CSDL dãy định lượng có khoảng cách thời gian trong đó quan tâm đến
cả đến trọng số của mỗi mục trong dãy dữ liệu, giá trị định lượng của các mục xuất
hiện và khoảng cách thời gian giữa các dãy trong CSDL dãy định lượng có khoảng
cách thời gian. Năm 2018, Phương và cộng sự [48] đề xuất thuật toán FSPFTIM
phát hiện mẫu dãy cổ điển mờ với khoảng cách thời gian mờ trong các CSDL định
lượng bằng cách sử dụng lý thuyết mờ đề chuyển đổi các thuộc tính định lượng,

khoảng cách thời gian thành các khái niệm mờ và thực hiện khai phá giống như
thuật tốn Apriori, từ đó tìm ra các mẫu dãy mờ với khoảng cách thời gian mờ.
Nhằm phát triển các giải thuật khai phá mẫu dãy lợi ích cao với khoảng cách thời
gian trong CSDL dãy định lượng có khoảng cách thời gian, NCS đề xuất nội dung
nghiên cứu và phát triển thuật toán trong Nội dung thứ 2.


12
Nội dung thứ 2 trong việc xác định vấn đề nghiên cứu của luận án là phát
triển và đề xuất các thuật tốn khai phá mẫu dãy lợi ích cao trong CSDL dãy định
lượng có khoảng cách thời gian trong đó quan tâm cả đến trọng số của mỗi mục
trong dãy dữ liệu, giá trị định lượng của mỗi mục dữ liệu và khoảng cách thời gian
giữa các dãy trong CSDL dãy định lượng có khoảng cách thời gian.
Luận án này nhằm giải quyết 02 nội dung được xác định ở trên. Việc nghiên
cứu giải quyết những vấn đề đó là thực sự cần thiết không chỉ ở phương diện phát
triển lý thuyết mà cả ở phương diện ứng dụng thực tế. Đó là động lực để tác giả luận
án thực hiện nghiên cứu đề tài “Khai phá mẫu dãy có trọng số trong Cơ sở dữ liệu
dãy”. Cụ thể luận án đề xuất và giải quyết các vấn đề về khai phá các mẫu dãy
thường xun có tính đến trọng số của từng mục dữ liệu, khoảng cách thời gian giữa
các dãy và giá trị định lượng của các mục dữ liệu xuất hiện trọng dãy.
2. Mục tiêu của luận án
Mục tiêu của luận án là đề xuất giải pháp khai phá các mẫu dãy có trọng số
có khoảng cách thời gian giữa các dãy trong các CSDL dãy có khoảng cách thời
gian và CSDL dãy định lượng có khoảng cách thời gian.
Cụ thể luận án tập trung đề xuất các giải pháp nhằm:


Phát hiện các mẫu dãy có trọng số trong các CSDL dãy khoảng cách

thời gian. Các mẫu dãy tìm được khi đó được gọi là mẫu dãy thường

xuyên trọng số với khoảng cách thời gian.


Phát hiện các mẫu dãy có trọng số trong các CSDL dãy định lượng

có khoảng cách thời gian. Các mẫu dãy tìm được khi đó được gọi là mẫu
dãy thường xuyên lợi ích cao với khoảng cách thời gian.
NCS tập trung vào nghiên cứu đề xuất các thuật toán mới để khai phá các
mẫu mẫu dãy thường xuyên; chứng minh tính đúng đắn và tính đầy đủ, phân tích độ
phức tạp tính tốn của các thuật tốn; thử nghiệm và phân tích ý nghĩa của mẫu dãy
thường xuyên khai phá được.
3. Đối tượng nghiên cứu


13
Dữ liệu có giá trị trọng số trong Cơ sở dữ liệu dãy có khoảng cách thời gian.
Dữ liệu có giá trị trọng số trong Cơ sở dữ liệu dãy định lượng có khoảng cách
thời gian.
Các thuật tốn khai phá các mẫu mẫu dãy có trọng số, có tính đến khoảng
cách thời gian trong các CSDL dãy có khoảng cách thời gian và CSDL dãy định
lượng có khoảng cách thời gian.
4. Phạm vi nghiên cứu
Luận án nghiên cứu các mẫu dãy, trọng số của các mục trong dãy, khoảng
cách thời gian giữa các dãy, các CSDL dãy có khoảng cách thời gian và CSDL dãy
định lượng có khoảng cách thời gian.
Các nghiên cứu, thuật toán và phương pháp khai phá mẫu dãy hiện nay trên
CSDL dãy, CSDL dãy định lượng có các yếu tố khoảng cách thời gian, trọng số, lợi
ích cao.
5.


Phương pháp nghiên cứu
Phương pháp nghiên cứu của luận án là nghiên cứu lý thuyết và nghiên cứu

thực nghiệm. Về nghiên cứu lý thuyết: các định lý, mệnh đề trong luận án được
chứng minh chặt chẽ dựa vào các kiến thức cơ bản và các kết quả nghiên cứu đã
công bố. Về nghiên cứu thực nghiệm: luận án thực hiện cài đặt các thuật toán, chạy
thử nghiệm thuật toán với các bộ số liệu lấy từ kho dữ liệu UCI, so sánh và đánh giá
kết quả thực nghiệm so với kết quả nghiên cứu lý thuyết, từ đó kết luận tính đúng
đắn của kết quả nghiên cứu. Về nghiên cứu đánh giá độ phức tạp thuật toán được sử
dụng để thiết kế thuật toán giải quyết bài toán cụ thể được đặt ra trong luận án và
ước lượng độ phức tạp tính tốn của các thuật tốn này và việc đánh giá tính hiệu
quả các thuật tốn dựa vào các kết quả thực nghiệm.
6.

Các đóng góp chính của luận án
Những đóng góp chính của luận án là đề xuất và giải quyết các vấn đề sau:


14


Đề xuất 01 thuật toán khai phá top-k mẫu dãy có tính đến trọng số của các

mục và khoảng cách thời gian trong các CSDL dãy có khoảng cách thời gian.
Kết quả cơng trình được đăng trong kết quả tại [CT1].


Đề xuất 02 thuật toán khai phá mẫu dãy lợi ích cao có tính đến trọng số của

các mục, giá trị định lượng của mỗi mục và khoảng cách thời gian trong các

CSDL dãy định lượng có khoảng cách thời gian. Kết quả cơng trình được đăng
trong kết quả tại [CT2], [CT3], [CT4], [CT5]
7. Bố cục luận án
Luận án gồm phần mở đầu, 03 chương nội dung và phần kết luận:


Phần mở đầu: Trình bày tổng quan của luận án; mục tiêu, đối tượng,

phạm vi nghiên cứu; phương pháp nghiên cứu; những đóng góp chính và
cấu trúc của luận án.


Chương 1: Tổng quan tình hình nghiên cứu và các vấn đề liên quan

trong khai phá mẫu dãy có trọng số trong CSDL dãy, trong CSDL dãy có
khoảng cách thời gian và trong CSDL dãy định lượng có khoảng cách thời
gian. Chương này trình bày các khái niệm, định nghĩa và các phương pháp
khai phá các mẫu dãy liên quan của các nghiên cứu trước đó.


Chương 2: Khai phá mẫu dãy có trọng số trong CSDL dãy có

khoảng cách thời gian. Chương này đặt vấn đề và đề xuất thuật toán khai
phá top-k mẫu dãy thường xuyên trọng số trong CSDL dãy có khoảng cách
thời gian. Tính đúng đắn và đầy đủ của thuật toán, việc thực nghiệm thuật
toán trên các bộ dữ liệu thực và so sánh với các nghiên cứu trước đó.


Chương 3: Khai phá mẫu dãy lợi ích cao trong CSDL dãy định


lượng có khoảng cách thời gian. Chương này này đặt vấn đề và đề xuất thuật
toán khai phá mẫu dãy lợi ích cao trong CSDL dãy định lượng có khoảng
cách thời gian. Tính đúng đắn và đầy đủ của thuật toán, việc thực nghiệm
thuật toán trên các bộ dữ liệu thực và so sánh với các nghiên cứu trước đó.
 Phần kết luận: Trình bày một số kết luận những đóng góp của luận án,
hướng phát triển và những vấn đề quan tâm của NCS.


15
CHƯƠNG 1. TỔNG QUAN KHAI PHÁ MẪU DÃY CÓ TRỌNG SỐ TRONG
CƠ SỞ DỮ LIỆU DÃY
Chương này trình bày tổng quan tình hình nghiên cứu và những định nghĩa
cơ bản những vấn đề khai phá các mẫu dãy có trọng số trong các CSDL dãy, mẫu
dãy có trọng số trong CSDL dãy có khoảng cách thời gian, mẫu dãy lợi ích cao
trong CSDL dãy định lượng có khoảng cách thời gian. Chương này cũng chỉ ra các
khoảng trống chưa được giải quyết để từ đó xác định vấn đề nghiên cứu của luận án.

1.1. Tổng quan tình hình nghiên cứu
Khai phá mẫu dãy là nhiệm vụ thực hiện tìm kiếm tất cả các mẫu dãy con
thường xuyên trong cơ sở dữ liệu dãy. Một dãy s được cho là một mẫu dãy thường
xuyên nếu và chỉ khi độ hỗ trợ sup (s) ≥ minsup, vì ngưỡng minsup do người dùng
đặt [10]. Nhiệm vụ khai phá mẫu dãy là một bài tốn liệt kê nhằm mục đích liệt kê
tất cả các mẫu dãy con có độ hỗ trợ khơng thấp hơn ngưỡng hỗ trợ tối thiểu do
người dùng đặt ra. Do đó, ln có một kết quả đúng duy nhất cho một bài toán khai
phá mẫu dãy thường xuyên. Để thực hiện khai phá các mẫu dãy thường xuyên, cách
tiếp cận đơn giản là tính tốn hỗ trợ của tất cả các mẫu dãy con có thể có trong cơ
sở dữ liệu dãy để sau đó chỉ đưa ra những mẫu dãy đáp ứng ràng buộc hỗ trợ tối
thiểu do người dùng đặt ra. Tuy nhiên, với cách tiếp cận như vậy sẽ ít hiệu quả vì
thơng thường số lượng dãy con tìm được có thể rất lớn. Ví dụ như một dãy chứa q
q


mục dữ liệu trong một CSDL dãy có thể có tối đa 2 -1 các mẫu dãy con riêng biệt.
Do đó, để giải quyết vấn đề khai phá các mẫu dãy con đối với hầu hết các cơ sở dữ
liệu dãy có trong thực tế là phức tạp và khó khăn. Vì vậy, các nghiên cứu và phát
triển các thuật toán hiệu quả khai phá mẫu dãy cần hạn chế phải khai phá khơng
gian tìm kiếm của tất cả các dãy con có thể có trong CSDL dãy.
Hiện nay có nhiều thuật tốn đã được đề xuất để khai phá các mẫu dãy trong cơ
sở dữ liệu dãy. Một số thuật toán phổ biến nhất là GSP [10], Spade [11], PrefixSpan
[31], Spam [30], Lapin [18], CM-Spam và CM-Spade [17]. Tất cả các thuật toán khai
thác mẫu dãy này lấy đầu vào là cơ sở dữ liệu dãy và ngưỡng hỗ trợ tối thiểu (do người
dùng chọn) và trả kết quả là tập hợp các mẫu dãy thường xun và ln chỉ có một


16
kết quả đúng cho nhiệm vụ khai phá mẫu dãy (đối với cơ sở dữ liệu dãy và giá trị
ngưỡng). Do đó, tất cả các thuật tốn khai phá mẫu dãy luôn trả về cùng một kết quả
là tập hợp các mẫu dãy nếu chúng được chạy với cùng một tham số trên cùng một
cơ sở dữ liệu. Sự khác biệt giữa các thuật tốn khác nhau khơng phải là đầu ra của
chúng, mà là cách mỗi thuật toán thực hiện khai phá ra các mẫu dãy. Các thuật toán
khác nhau sử dụng các chiến lược và cấu trúc dữ liệu khác nhau để tìm kiếm và khai
phá các mẫu dãy một cách hiệu quả, một số thuật toán hiệu quả hơn những thuật
tốn khác trong cùng mục đích khai phá mẫu dãy. Hiện nay, các thuật toán khai phá
mẫu dãy có thể được phân thành 02 loại là thuật tốn tìm kiếm theo chiều sâu hoặc
thuật tốn tìm kiếm theo chiều rộng.
AprioriAll là thuật toán khai phá mẫu dãy đầu tiên được đề xuất [2]. Các tác
giả của AprioriAll sau đó đã đề xuất một phiên bản cải tiến được gọi là GSP [10].
Các thuật toán AprioriAll và GSP được đề xuất theo phương pháp của thuật toán
Apriori nhằm khai phá tập mục thường xuyên [1]. Đối với các thuật tốn tìm kiếm
theo chiều rộng như GSP tiến hành như sau. Đầu tiên duyệt cơ sở dữ liệu để tìm
mẫu dãy thường xun có độ dài 1 (các mẫu dãy chứa một mục). Sau đó, sẽ thực

hiện sinh ra mẫu dãy có độ dài 2 bằng cách thực hiện phần ghép cặp của các mẫu
dãy độ dài 1. Sau đó mẫu dãy có độ dài 3 tiếp tục được tạo ra từ việc ghép cặp các
mẫu dãy có độ dài 2 .v.v. cho đến khi khơng cịn mẫu dãy nào có thể được tạo ra
nữa. Có thể thấy rằng với phương pháp tìm kiếm theo chiều rộng này thì khơng gian
tìm kiếm có thể rất lớn. Giả sử rằng dãy dài nhất trong cơ sở dữ liệu chứa m mục thì
các thuật tốn khai phá mẫu dãy thực hiện tìm kiếm theo chiều rộng trong trường
hợp xấu nhất là tất cả các mẫu dãy có thể chứa m mục hoặc ít hơn. Nếu một cơ sở
m

dữ liệu dãy chứa m mục, thì các mẫu dãy phải khai phá có thể thể lớn hơn 2 .
Trong những năm gần đây, nhiều thuật toán đã được chứng minh là hiệu quả hơn
GSP do GSP thực hiện nhiều lần duyệt cơ sở dữ liệu để tính tốn sự hỗ trợ của các mẫu
dãy ứng viên. Điều này có thể rất tốn kém tài nguyên đối với các cơ sở dữ liệu lớn,
ngay cả khi một số tối ưu hóa có thể được thực hiện để giảm chi phí đó (ví dụ: bằng
cách sắp xếp các dãy theo kích thước của chúng để tránh so sánh các mẫu dài với các
dãy ngắn). Mặt khác GSP có thể tạo ra các mẫu khơng tồn tại trong cơ sở


17
dữ liệu do việc tạo ra các ứng viên bằng cách kết hợp các mẫu nhỏ hơn mà không cần
truy cập cơ sở dữ liệu. GSP có thể tốn nhiều thời gian kiểm tra nhiều mẫu không tồn tại
trong cơ sở dữ liệu. Một vấn đề khác của thuật toán GSP là phải sử dụng bộ nhớ lớn vì
tại bất kỳ thời điểm nào thuật toán cũng phải giữ tất cả các mẫu dãy thường xuyên có
độ dài k trong bộ nhớ để có thể tạo ra các mẫu dãy có độ dài k + 1.

Các thuật tốn tìm kiếm theo chiều sâu như Spade [11], PrefixSpan [31],
Spam [30], Lapin [18], CM-Spam và CM-Spade [17] thực hiện khai phá không gian
tìm kiếm của các mẫu dãy bằng các cách khác nhau. Bắt đầu từ các mẫu dãy chứa
các mục đơn lẻ, sau đó thực hiện đệ quy đối với các mở rộng của các mẫu dãy này
để tạo ra các mẫu dãy lớn hơn. Sau đó, khi một mẫu dãy khơng thể được mở rộng

nữa, thuật tốn sẽ quay trở lại để tạo các mẫu dãy khác.
Thuật toán Spade [11] là một thuật tốn sử dụng phương pháp tìm kiếm theo
chiều sâu và tránh một số nhược điểm của thuật toán GSP. Thuật toán Spade được thực
hiện theo phương pháp từ thuật toán Eclat [4] để khai phá tập mục thường xuyên.
Spade sử dụng biểu diễn cơ sở dữ liệu dọc thay thế biểu diễn cơ sở dữ liệu ngang ban
đầu. Biểu diễn theo chiều dọc của cơ sở dữ liệu dãy cho biết các tập hợp mục mà mỗi
mục i xuất hiện trong cơ sở dữ liệu dãy. Đối với một mặt hàng nhất định, thông tin này
được gọi là IDList của mặt hàng đó. Bằng cách sử dụng biểu diễn CSDL dọc, các thuật
toán như Spade [11], Spam [30], CM-Spam và CMSpade [17] khai phá tồn bộ khơng
gian tìm kiếm của các mẫu dãy bằng cách đọc cơ sở dữ liệu chỉ một lần để tạo IDLists
duy nhất mặt hàng. Sau đó, các IDLists của bất kỳ mẫu dãy nào gặp phải khi duyệt
khơng gian tìm kiếm thu được bằng cách thực hiện phép nối các IDLists, cho phép tính
tốn hỗ trợ của mẫu dãy. Vì vậy tất cả các mẫu dãy thường xuyên có thể được liệt kê
mà không cần duyệt liên tục cơ sở dữ liệu và khơng cần duy trì một số lượng lớn các
mẫu dãy trong bộ nhớ (trái ngược với các thuật toán tìm kiếm theo chiều rộng). Cách
tiếp cận này được xem là một trong những cách hiệu quả để khai thác mẫu dãy hơn so
với các thuật toán theo tiếp cận tìm kiếm theo chiều rộng.
Bên cạnh thuật tốn tìm kiếm theo chiều rộng và thuật toán khai thác theo chiều
sâu sử dụng CSDL dọc, một phương pháp quan trọng khác để khai phá mẫu dãy là các
thuật toán tăng trưởng mẫu dãy. Các thuật toán tăng trưởng mẫu dãy thực hiện tìm


18
kiếm theo chiều sâu, được thiết kế để giải quyết một hạn chế của các thuật tốn
được mơ tả trước đó vì có thể tạo ra các mẫu ứng cử viên không tồn tại trong cơ sở
dữ liệu ban đầu. Lý do là các thuật tốn theo phương pháp tìm kiếm theo chiều rộng
và thuật toán khai thác theo chiều sâu sử dụng CSDL dọc có thể tạo ra các mẫu dãy
khơng xuất hiện trong cơ sở dữ liệu vì việc thực hiện tạo ra các mẫu dãy ứng viên
bằng cách kết hợp các mẫu dãy nhỏ hơn nhưng quá trình này khơng liên quan đến
việc truy cập cơ sở dữ liệu.

Các thuật toán theo phương pháp tăng trưởng mẫu dãy bằng cách duyệt đệ quy
cơ sở dữ liệu để tìm các mẫu dãy lớn hơn, vì vậy chỉ thực hiện khai phá các mẫu dãy
thực sự tồn tại trong cơ sở dữ liệu. Tuy nhiên, việc thực hiện duyệt cơ sở dữ liệu nhiều
lần có thể gây tốn kém tài nguyên. Để giảm chi phí duyệt cơ sở dữ liệu, thuật tốn tăng
trưởng mẫu dãy có đưa ra khái niệm cơ sở dữ liệu chiếu theo tiền tố nhằm mục đích
giảm kích thước của cơ sở dữ liệu vì các mẫu lớn hơn được tìm kiếm theo chiều sâu.

Thuật toán khai phá mẫu dãy tăng trưởng đầu tiên được đề xuất là FreeSpan
[13], sau đó cùng một nhóm nghiên cứu đề xuất thuật toán PrefixSpan [31] theo
phương pháp của thuật toán FPGrowth cho khai thác tập mục thường xuyên.
PrefixSpan thực hiện khai phá khơng gian tìm kiếm của các mẫu dãy bằng cách sử
dụng phương pháp tìm kiếm theo chiều sâu. Bắt đầu từ các mẫu dãy chứa một mục
và khai phá các mẫu dãy lớn hơn bằng cách nối đệ quy các mục vào các mẫu dãy
này để tạo ra các mẫu dãy lớn hơn. Đầu tiên PrefixSpan sẽ duyệt cơ sở dữ liệu dãy
ban đầu để tính toán hỗ trợ của các mục đơn lẻ và xác định các mục thường xun
(những mục có hỗ trợ khơng thấp hơn ngưỡng minsup). Sau đó, PrefixSpan xuất ra
từng mục này dưới dạng các mẫu dãy thường xuyên và coi các mẫu này là gốc để
thực hiện tìm kiếm theo chiều sâu. Trong quá trình tìm kiếm theo chiều sâu, đối với
một mẫu dãy có độ dài k, PrefixSpan trước tiên tạo cơ sở dữ liệu chiếu của mẫu dãy
tiền tố gốc. Sau đó, PrefixSpan duyệt cơ sở dữ liệu chiếu đó để đếm sự hỗ trợ của
các mục để tìm các mục có thể được nối vào tiền tố gốc để tạo thành (k + 1)-mẫu
dãy. Quá trình này sau đó được lặp lại một cách đệ quy để thực hiện tìm kiếm theo
chiều sâu để tìm tất cả các mẫu dãy thường xuyên.


19
Phương pháp tăng trưởng theo mẫu của PrefixSpan có ưu điểm là chỉ khai
phá các mẫu dãy tổn tại trong cơ sở dữ liệu. Tuy nhiên, một nhược điểm của
PrefixSpan và các thuật toán tăng trưởng theo mẫu dãy khác là tốn kém tài nguyên
về thời gian chạy khi thực hiện duyệt cơ sở dữ liệu liên tục và tạo các cơ sở dữ liệu

chiếu. Mặt khác việc tạo các cơ sở dữ liệu chiếu có thể tiêu tốn một lượng lớn bộ
nhớ, như trong trường hợp xấu nhất có thể yêu cầu sao chép gần như toàn bộ cơ sở
dữ liệu cho mỗi phép chiếu trên cơ sở dữ liệu.
Độ phức tạp về thời gian của các thuật toán khai phá mẫu dãy phụ thuộc vào
số lượng mẫu dãy trong khơng gian tìm kiếm và chi phí của các bước để tạo và xử
lý từng tập hợp các mục. Các thuật tốn tăng trưởng mẫu dãy có lợi thế hơn các
thuật toán khác là chỉ xem xét các mẫu thực sự tổn tại trong cơ sở dữ liệu. Tuy
nhiên, trên một số loại CSDL thì có thể thuật tốn theo phương pháp tăng trưởng
mẫu dãy chưa hiệu quả bằng phương pháp khác do chi phí duyệt cơ sở dữ liệu và
thực hiện các phép chiếu là khá cao.
Có ba loại chính của các thuật tốn khai phá mẫu dãy: thuật tốn theo chiều
rộng thực hiện tạo ứng viên (ví dụ: AprioriAll và GSP), thuật tốn tìm kiếm theo
chiều sâu thực hiện tạo ứng viên bằng cách sử dụng cấu trúc IDList và các biến thể
của nó (ví dụ: Spade, Spam, BitSpade, Fast, CM-Spam, CM-Spade) và các thuật
toán tăng trưởng theo mẫu (ví dụ: FreeSpan, PrefixSpan). Hầu hết các thuật toán
khai thác mẫu là mở rộng theo ba cách tiếp cận chính này.
Số lượng mẫu dãy trong khơng gian tìm kiếm phụ thuộc vào cách người dùng
đặt ngưỡng minsup và mức độ tương tự của các mẫu dãy trong cơ sở dữ liệu dãy.
Khi ngưỡng minsup giảm, số lượng các mẫu dãy được tìm thấy bởi các thuật tốn
khai thác mẫu dãy có thể tăng theo cấp số nhân. Khơng gian tìm kiếm cho khai phá
mẫu dãy có thể rất lớn ngay cả đối với cơ sở dữ liệu dãy nhỏ chứa một vài mẫu dãy.
Ví dụ, một cơ sở dữ liệu dãy chỉ chứa hai dãy gồm 100 mục giống nhau có thể chứa
tới 2

100

mẫu dãy con.


20

Để giảm số lượng các mẫu dãy được khai phá và tìm thấy các mẫu hữu ích
hơn, các nhà nghiên cứu cũng đã đề xuất bổ sung và tích hợp các ràng buộc trong
khai thác mẫu dãy [49]. Ràng buộc là một tập hợp các tiêu chí bổ sung mà người
dùng cung cấp để chỉ ra chính xác hơn các loại mẫu dãy được tìm thấy. Nhiều loại
ràng buộc đã được nghiên cứu và đề xuất và cơ bản có hai cách để áp dụng các ràng
buộc. Cách thứ nhất là áp dụng ràng buộc như một bước xử lý hậu kỳ trên tập hợp
tất cả các mẫu dãy để lọc bớt các mẫu không thỏa mãn ràng buộc. Tuy nhiên, một
vấn đề với cách tiếp cận này là việc liệt kê tất cả các mẫu dãy có thể tiêu tốn rất
nhiều thời gian và yêu cầu một lượng lớn bộ nhớ trong quá trình khai phá. Cách thứ
hai để giải quyết vấn đề này là đẩy các ràng buộc vào sâu trong q trình khai phá
các mẫu dãy. Nói cách khác, các ràng buộc được áp dụng trong quá trình tìm kiếm
các mẫu dãy nhằm để giảm khơng gian tìm kiếm. Các thuật tốn áp dụng cách tiếp
cận này có thể nhanh hơn và tạo ra các mẫu dãy ít hơn nhiều so với các thuật toán
khai thác mẫu dãy truyền thống, tùy thuộc vào các ràng buộc được sử dụng.
Một trong những thuật toán khai phá mẫu dãy đầu tiên có tích hợp các ràng buộc
là GSP [10]. GSP đưa ra các ràng buộc về lượng thời gian tối thiểu và tối đa giữa hai
tập hợp mục liên tiếp trong các mẫu dãy (ràng buộc khoảng cách thời gian), cũng như
khoảng thời gian tối đa cho mỗi mẫu dãy. Việc tích hợp các ràng buộc khoảng cách thời
gian cũng là chủ đề của thuật toán Hirate và Yamana [37] và thuật toán Fournier-Viger
[25], đã mở rộng thuật toán PrefixSpan và BIDE với các ràng buộc về khoảng cách thời
gian. Pei và cộng sự đã nghiên cứu và tích hợp các ràng buộc khác nhau trong các thuật
toán tăng trưởng theo mẫu dãy, chẳng hạn như các mặt hàng sẽ xuất hiện hoặc không
xuất hiện trong các mẫu dãy (ràng buộc mặt hàng), số lượng mặt hàng tối thiểu/tối đa
trên mỗi mẫu dãy (ràng buộc theo độ dài dãy) và các ràng buộc tổng hợp về giá của các
mặt hàng trong dãy chẳng hạn như trung bình, tối thiểu, tối đa, tổng và độ lệch chuẩn
của giá cả (các ràng buộc tổng hợp) [49].
Pei và cộng sự [49] và các nhà nghiên cứu khác đã nghiên cứu đặc điểm của các
ràng buộc có thể được đẩy sâu vào quá trình khai thác các mẫu dãy và các loại mẫu
khác. Ba loại ràng buộc chính thơng thường được sử dụng như ngưỡng hỗ trợ tối thiểu,
giới hạn độ dài và khoảng cách thời gian là cách phổ biến để tích hợp trong các



21
thuật tốn khai thác mẫu dãy, vì có thể được sử dụng nhằm tỉa bớt khơng gian tìm
kiếm bằng cách áp dụng tính chất bao đóng (phản đơn điệu) trong quá trình khai
phá. Ràng buộc ngắn gọn là một ràng buộc có thể được kiểm tra cho một mẫu dãy
bằng cách chỉ xem xét các mục mà mẫu dãy chứa. Ví dụ, ràng buộc rằng tổng trọng
số của một mẫu dãy không được lớn hơn hoặc không nhỏ hơn một giá trị nhất định
có thể được kiểm tra bằng cách chỉ cần thêm trọng số của các mục của dãy.
Một phần mở rộng khác của khai phá mẫu dãy là khai thác mẫu dãy top-k
[21] nhằm khai phá k mẫu dãy thường xuyên nhất trong cơ sở dữ liệu dãy. Lý do
cho vấn đề này là người dùng thường khó đặt ngưỡng minsup bằng cách sử dụng
các thuật toán khai thác mẫu dãy truyền thống nếu người dùng khơng có kiến thức
nền tảng về cơ sở dữ liệu. Nếu ngưỡng minsup được đặt quá thấp, quá nhiều mẫu
dãy có thể được tìm thấy và các thuật tốn có thể trở nên rất chậm và nếu ngưỡng
minsup được đặt quá cao, có thể tìm thấy q ít mẫu dãy. Các thuật toán khai thác
mẫu dãy top-k giải quyết vấn đề này bằng cách cho phép người dùng trực tiếp chỉ ra
số lượng mẫu k được tìm thấy thay vì sử dụng tham số minsup. Khai phá mẫu dãy
top-k là một vấn đề khó hơn khai phá mẫu dãy thơng thường [21].
Khai phá mẫu dãy có trọng số là một phần mở rộng của khai thác mẫu dãy
trong đó các trọng số (thường được giả định là trong khoảng [0,1]) được gắn với
mỗi mục dữ liệu để chỉ ra tầm quan trọng tương đối của chúng [36], [33], [50]. Mục
tiêu của khai phá mẫu dãy có trọng số là tìm các mẫu dãy có sự cân bằng giữa trọng
số và độ hỗ trợ đáp ứng ngưỡng tối thiểu.
Khai phá mẫu dãy lợi ích cao (HUSP) là một phần mở rộng của khai thác mẫu
dãy có trọng số, trong đó khơng chỉ xem xét trọng số của mặt hàng mà còn xem xét số
lượng mặt hàng trong dãy [42], [43], [44], [45]. Thông thường khai phá mẫu dãy với
đầu vào là cơ sở dữ liệu dãy trong đó số lượng mua là nhị phân, tức là mỗi mặt hàng có
xuất hiện trong một tập phổ biến của một dãy hay không. Đối với một số ứng dụng, giả
định này không đúng hoặc chưa đầy đủ. Ví dụ: Một cơ sở dữ liệu dãy các giao dịch của

khách hàng trong đó khách hàng có thể đã mua 0, một hoặc một số đơn vị của mỗi sản
phẩm. Khơng xem xét số lượng mua có thể dẫn đến việc phát hiện ra các mẫu dãy sai
lệch. Để giải quyết hạn chế này, HUSP tổng quát hóa vấn đề khai thác


×