HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
----------------------------------
Nguyễn Trọng Thắng
KHAI PHÁ TẬP MỤC LỢI ÍCH CAO VÀ ỨNG
DỤNG TẠI CÔNG TY CỔ PHẦN SIÊU THỊ VHSC
LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)
HÀ NỘI – 2018
HỌC VIÊN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
----------------------------------
Nguyễn Trọng Thắng
KHAI PHÁ TẬP MỤC LỢI ÍCH CAO VÀ ỨNG
DỤNG TẠI CÔNG TY CỔ PHẦN SIÊU THỊ VHSC
Chuyên ngành: Hệ thống thông tin
Mã số: 8.48.01.04
LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)
NGƯỜI HƯỚNG DẪN KHOA HỌC
GS.TS. VŨ ĐỨC THI
HÀ NỘI – 2018
i
LỜI CAM ĐOAN
Tôi xin cam đoan nội dung và kết quả trong luận văn "Khai phá tập mục lợi
ích cao và ứng dụng tại công ty Cổ phần siêu thị VHSC" này là công trình của riêng
tôi dưới sự hướng dẫn của GS.TS Vũ Đức Thi là trung thực và không trùng lặp với
các đề tài khác. Trong toàn bộ luận văn, những điều được trình bày là của cá nhân
hoặc là được tổng hợp từ nhiều nguồn tài liệu. Tôi cũng xin cam đoan tất cả các tài
liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp.
Hà nội, tháng 10 năm 2017
Tác giả
Nguyễn Trọng Thắng
ii
LỜI CẢM ƠN
Lời đầu tiên tôi xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới GS.TS.
Vũ Đức Thi - Viện trưởng Viện Công nghệ Thông tin - Trường Đại học Quốc gia Hà
nội, người thầy đã chỉ bảo và hướng dẫn tận tình cho tôi trong suốt quá trình hướng
dẫn nghiên cứu khoa học và thực hiện luận văn này.
Tôi xin chân thành cảm ơn các thầy, cô giáo Khoa công nghệ thông tin 1- Học
viện Bưu chính Viễn thông đã tham gia giảng dạy, tạo mọi điều kiện cho tôi được học
tập, nâng cao trình độ kiến thức để phục vụ cho công tác của tôi hiện tại và sau này.
Tôi xin cảm ơn Ban lãnh đạo, các cán bộ chuyên môn phòng ban chức năng
tại Công ty cổ phần siêu thị VHSC, đã tạo điều kiện cho tôi tiếp xúc trực tiếp tìm hiểu
các thông tin liên quan đến chuyên môn trong ngành và giúp tôi tiếp cận với kho dữ
liệu bán hàng tại Công ty .
Cuối cùng, tôi xin gửi lời cảm ơn tới gia đình, bạn bè, đồng nghiệp đã luôn
động viên, hỗ trợ tôi trong quá trình học tập và nghiên cứu đề tài.
Mặc dù đã rất cố gắng, song luận văn này không thể tránh khỏi những thiếu
sót, kính mong được sự chỉ dẫn, góp ý của các Quý thầy cô và các bạn.
Tôi xin trân trọng cảm ơn !
Hà nội, tháng 10 năm 2017
Tác giả
Nguyễn Trọng Thắng
iii
MỤC LỤC
Trang phụ bìa
Trang
LỜI CAM ĐOAN ............................................................................................. i
LỜI CẢM ƠN .................................................................................................. ii
MỤC LỤC ....................................................................................................... iii
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT .................................. v
DANH SÁCH BẢNG .................................................................................... vii
DANH SÁCH HÌNH VẼ .............................................................................. viii
MỞ ĐẦU .......................................................................................................... 1
Chương 1 - CƠ SỞ LÝ THUYẾT.................................................................. 4
1.1. Mở đầu ...................................................................................................... 4
1.1.1. Quy trình khai phá dữ liệu và phát hiện tri thức ............................................4
1.1.2. Các phương pháp chính trong khai phá dữ liệu .............................................5
1.1.3. Các cơ sở dữ liệu có thể khai phá ..................................................................6
1.1.4. Kiến trúc của một hệ thống khai phá dữ liệu .................................................7
1.1.5. Khai phá dữ liệu và một số lĩnh vực liên quan ..............................................8
1.1.6. Một số ứng dụng của khai phá dữ liệu ..........................................................9
1.1.7. Các vấn đề về cơ sở dữ liệu ...........................................................................9
1.2. Giới thiệu bài toán khai phá tập mục lợi ích cao ................................ 11
1.2.1. Khai phá tập mục thường xuyên ..................................................................11
1.2.2. Giới thiệu bài toán khai thác tập lợi ích cao ................................................12
1.2.3. Cách tiếp cận trong khai thác tập lợi ích cao ...............................................13
1.3. Các định nghĩa và quy ước trong khai thác tập mục lợi ích cao........ 13
1.4. Kết luận chương 1 .................................................................................. 16
Chương 2 - THUẬT TOÁN KHAI PHÁ TẬP MỤC LỢI ÍCH CAO ..... 17
2.1. Thuật toán FHM .................................................................................... 17
2.1.1. Đặt vấn đề ....................................................................................................17
2.1.2. Nội dung thuật toán FHM ............................................................................18
2.2. Thuật toán FHN ..................................................................................... 22
iv
2.2.1. Đặt vấn đề ....................................................................................................22
2.2.2. Nội dung thuật toán FHN ............................................................................26
2.3. Thuật toán PHM .................................................................................... 31
2.3.1. Đặt vấn đề ....................................................................................................31
2.3.2. Nội dung thuật toán PHM ............................................................................37
2.4 .Thuật toán FOSHU ................................................................................ 41
2.4.1. Đặt vấn đề ....................................................................................................41
2.4.2. Nội dung thuật toán FOSHU .......................................................................45
2.5. Kết luận chương 2 .................................................................................. 52
Chương 3 - CÀI ĐẶT ỨNG DỤNG THỬ NGHIỆM ................................ 53
3.1. Phát biểu bài toán................................................................................... 53
3.2. Thông tin cơ sở dữ liệu mẫu .................................................................. 53
3.3. Lựa chọn công cụ phát triển ................................................................. 54
3.4. Quy trình xây dựng ứng dụng khai phá tập mục lợi ích cao ............. 56
3.5. Áp dụng khai phá tập mục lợi ích cao.................................................. 57
3.5.1. Lựa chọn dữ liệu giao dịch ..........................................................................57
3.5.2. Thu thập và tiền xử lý dữ liệu ......................................................................57
3.5.3. Thực hiện chương trình khai phá lợi ích cao ...............................................59
3.5.4. Kết quả thu được khi sử dụng thuật toán .....................................................60
3.5.5. Đánh giá kết quả chương trình ....................................................................64
3.6. Kết luận chương 3 .................................................................................. 65
KẾT LUẬN .................................................................................................... 66
TÀI LIỆU THAM KHẢO ............................................................................. 67
v
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
Viết tắt
ALC
Tiếng Anh
Tiếng Việt
Abandoning List
Ngừng xây dựng danh sách lợi ích
Construction early
của một tập nếu một điều kiện cụ thể
DataBase (DB)
được đáp ứng
Cơ sở dữ liệu
Estimated Average
Phương pháp ước lượng chu kì trung
EAPP
Periodicity Pruning
Estimated Utility
bình
Phương pháp ước lượng giá trị
EUCP
Cooccurrence Pruning
Estimated Utility Co-
lợi ích đồng thời
Cấu trúc ước lượng giá trị lợi ích
EUCS
occurrence Structure
đồng thời
Faster High-Utility Itemset
Tên thuật toán khai thác tập mục lợi
Mining us Estimated Utility
ích cao sử dụng phương pháp cắt tỉa
Co-occurrence Pruning
đồng thời
Efficient Mining of High-
Khai phá hiệu quả tập mục lợi ích
FHN
Utility Itemsets with
cao với lợi nhuận đơn vị dương và
FIM
Negative Unit Profits.
âm
Frequent Itemset Mining
Khai phá tập mục xuyên
Faster On-Shelf High Utility Khai phá hiệu quả tập mục lợi ích
FOSHU
Itemset Mining – with or
CSDL
FHM
cao có yêu tố thời gian bán với lợi
without Negative Unit Profit nhuận đơn vị dương và âm
HOUs
High on-shelf utility itemset
Tập mục lợi ích cao có yếu tố thời
HUIs
High utility itemsets
gian
Tập mục lợi ích cao
HUIM
High utility itemset mining
Khai thác tập mục lợi ích cao
ITEMSET
Itemset
Tập mục
vi
ITEM
Item
Mục
Knowledge Discovery and
Kỹ thuật khám phá tri thức và
KDD
Data Mining
khai thác dữ liệu
KPDL
Data Mining
Khai thác dữ liệu
MIUTI
Minimum item utility
Độ lợi ích tối thiểu
MINULTI
Min utility
Giá trị ngưỡng tối thiểu
PFP
Periodic frequent patterns
Mẫu thường xuyên định kỳ
PHM
Mining Periodic High-Utility Khai thác tập mục lợi ích cao theo
Itemsets
chu kỳ
PHUIs
Periodic high-utility itemsets Tập mục lợi ích cao theo chu kỳ
TID
Transaction Item Database
Giao tác
TU
Transaction Utility
Độ lợi ích của giao tác
Transaction-weighted
TWDCP
Downward Closure Property Trọng số giao dịch đóng giảm
Transaction – Weighted
TWU
UL
Utilization
Utility-list
Trọng số độ lợi ích của giao tác
Danh sách giá trị lợi ích
UP – Growth Utility Pattern Growth
Thuật toán UP – Growth
UP – Tree
Utility Pattern Tree
Cây Up – tree
Weighted Itemset – Tidset
Cây WIT – Tree
Tree
Transaction-Weighted
Giao dịch có trọng số giảm
WIT – Tree
TWD
vii
DANH SÁCH BẢNG
Bảng 1.1: Cơ sở dữ liệu (trái) và giá trị lợi ích bên ngoài (phải) ..............................13
Bảng 1.2: Lợi ích giao tác (trái), các giá trị TWU (giữa) và EUCS (phải) ...............14
Bảng 2.1: Cơ sở dữ liệu (trái) và giá trị lợi ích bên ngoài (phải) ..............................23
Bảng 2.2: Lợi ích giao tác (trái), giá trị TWU mục đơn (giữa), EUCS (phải) ..........25
Bảng 2.3: Tập các PHUI ...........................................................................................35
Bảng 2.4: Cơ sở dữ liệu giao tác ...............................................................................41
Bảng 2.5: Giá trị lợi nhuận ngoài (lợi nhuận theo đơn vị) ........................................42
Bảng 3.1: Bảng mẫu hóa đơn bán lẻ .........................................................................54
Bảng 3.2: Cơ sở dữ liệu giao dịch mẫu .....................................................................54
Bảng 3.3: Dữ liệu sau khi lọc thông tin ....................................................................58
Bảng 3.4: Dữ liệu đầu vào (mẫu) cho các thuật toán FHN, FHM,PHM...................58
Bảng 3.5: Dữ liệu đầu vào thuật toán FOSHU..........................................................59
Bảng 3.6: Dữ liệu đầu ra thuật toán FHM .................................................................61
Bảng 3.7: Dữ liệu đầu ra thuật toán FHN .................................................................61
Bảng 3.8: Bảng dữ liệu đầu ra thuật toán PHM ........................................................62
Bảng 3.9: Dữ liệu đầu ra thuật toán FOSHU ............................................................63
viii
DANH SÁCH HÌNH VẼ
Hình 1.1: Quy trình phát hiện tri thức .........................................................................4
Hình 1.2: Kiến trúc của một hệ khai phá dữ liệu điển hình ........................................7
Hình 1.3: Khai phá dữ liệu và các lĩnh vực có liên quan ............................................9
Hình 2.1: Thuận toán FHM .......................................................................................18
Hình 2.2: Thuật toán Seach .......................................................................................20
Hình 2.3: Thuật toán Construct .................................................................................21
Hình 2.4: Thuật toán FHN ........................................................................................26
Hình 2.5:Thuật toán Seach ........................................................................................27
Hình 2.6: Thuật toán Construct .................................................................................30
Hình 2.7: Thuật toán PHM ........................................................................................37
Hình 2.8: Thuật toán Seach .......................................................................................39
Hình 2.9: Thuật toán Construct .................................................................................40
Hình 2.10: Thuật toán FOSHU .................................................................................47
Hình 2.11: Thuật toán Seach .....................................................................................48
Hình 2.12: Thuật toán Construct ...............................................................................50
Hình 3.1: Giao diện chính chương trình ...................................................................55
Hình 3.2: Giao diện chọn tệp dữ liệu đầu vào với các thuật toán .............................55
Hình 3.3: Quy trình ứng dụng khai phá tập mục lợi ích cao .....................................56
Hình 3.4: Chương trình với thuật toán FHM ............................................................59
Hình 3.5: Chương trình với thuật toán FHN .............................................................60
Hình 3.6: Chương trình với thuật toán PHM ............................................................60
Hình 3.7: Chương trình với thuật toán FOSHU ........................................................60
1
MỞ ĐẦU
1.Lý do chọn đề tài
Phân tích qua trình bán hàng, mua sắm của khách hàng là một trong yêu cầu
quan trọng trong lĩnh vực hoạt động bán lẻ. Trong đó, thông tin giao dịch thể hiện qua
từng hóa đơn và dữ liệu trên các hóa đơn là rất quan trọng để các nhà quản lý rút ra được
thông tin có giá trị về qua trình hàng bán ra, nhu cầu mua sắm của khách hàng để xây
dựng chiến lược khác nhau trong quá trình hoạt động sản xuất kinh doanh. Vấn đề làm
thế nào để có thể rút ra được những thông tin có giá trị từ dữ liệu hóa đơn bán hàng
với số lượng hóa đơn lên tới hàng triệu hóa đơn là quá trình dễ sai sót và tốn quá
nhiều thời gian nếu như thực hiện thủ công. Vì vậy, tác giả tập trung tìm hiểu, phân
tích các quá trình giao dịch bán hàng dựa trên các tập dữ liệu giao dịch tìm ra các
nhóm mặt hàng được bán, theo chu kỳ, định kỳ, và tìm ra được các nhóm mặt hàng
đưa ra lợi nhuận.
Từ ý nghĩa khoa học và thực tiễn nêu trên tác giả chọn đề tài: “Khai phá tập
mục lợi ích cao và ứng dụng tại công ty Cổ phần siêu thị VHSC” .
2.Tổng quan về vấn đề nghiên cứu
Sự phát triển nhanh chóng của các ứng dụng công nghệ thông tin và Internet
vào nhiều lĩnh vực đời sống xã hội như quản lý kinh tế, quản lý nhân sự, khoa học kỹ
thuật…đã mở ra nhiều cơ hội cho các tổ chức, doanh nghiệp trong việc thu thập và
xử lý thông tin. Để khai thác có hiệu quả nguồn thông tin từ các cơ sở dữ liệu khổng
lồ, yêu cầu cấp thiết đặt ra là cần phải có những kỹ thuật, công cụ để chuyển đổi kho
dữ liệu khổng lồ thành những tri thức có ích. Từ đó các kỹ thuật khai phá dữ liệu
trở thành một lĩnh vực được đặc biệt quan tâm trong ngành Công nghệ thông tin.
Trong lĩnh vực kinh doanh siêu thị việc phát hiện phân tích lợi nhuận dựa trên
giao dịch hóa đơn khách hàng là vô cùng cấp thiết. Trên cơ sở đó, luận văn xác định
một số nội dung trọng tâm cần giải quyết như sau:
2
- Cần tìm ra những thuật toán hiệu quả cho việc phát hiện các nhóm hàng bán
ra đem lại lợi nhuận cao dựa trên hóa đơn giao dịch.
- Cần tìm ra những thuật toán hiệu quả cho việc phát hiện nhu cầu mua hàng
của khách hàng thường xuyên đem lại lợi nhuận cao dựa trên hóa đơn giao dịch .
- Nghiên cứu, khả năng ứng dụng tại công ty Cổ phần siêu thị VHSC.
3.Mục tiêu nghiên cứu
Mục tiêu tổng quát:
Nghiên cứu tập mục lợi ích cao.
Khảo sát các nhu cầu thực tế tại Cổ phần siêu thị VHSC như: các mặt
hàng bán được với lợi nhuận thu được dựa trên giao dịch, chu kỳ bán hàng hóa
đem lại lợi nhuận thông qua các giao dịch…. qua đó đưa ra phương pháp khai phá
tập mục lợi ích cao phù hợp.
Mục tiêu cụ thể:
Tìm hiểu thuật toán khai phá tập mục lợi ích cao có thể áp dụng vào
nhu cầu thực tế tại Công ty Cổ phần siêu thị VHSC.
Cài đặt chương trình thử nghiệm khai phá tập mục lợi ích cao.
4.Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu:
Một số vấn đề cơ bản khai phá tập mục lợi ích cao.
Một số thuật toán khai phá các tập mục lợi ích cao như: thuật toán FHM,
thuật toán FHN, thuật toán PHM, thuật toán FOSHU và khả năng áp dụng tại công
ty cổ phần Siêu thị VHSC.
Phạm vi nghiên cứu
Vì có nhiều khó khăn và hạn chế khách quan, nên giai đoạn này tác giả
tìm hiểu các thuật toán khai phá tập mục lợi ích cao trên dữ liệu tĩnh. Việc xử lý
dữ liệu theo hướng tập trung (chưa nghiên cứu hướng phân tán).
Nghiên cứu khả năng ứng dụng các thuật toán khai phá tập mục lợi ích
cao tại công ty cổ phần Siêu thị VHSC như: Thuật toán FHM, thuật toán FHN,
thuật toán PHM, thuật toán FOSHU.
3
Không đi sâu nghiên cứu chi tiết và đánh giá hiệu suất các thuật toán.
5.Phương pháp nghiên cứu
Nghiên cứu lý thuyết:
Luận văn sử dụng phương pháp thu thập, phân tích, tổng hợp thông tin
các kiến thức nền tảng, các công bố khoa học và các ứng dụng của vấn đề khai phá
tập mục lợi ích cao từ các nguồn tài liệu trên Internet và các nguồn tài liệu khác
như các bài báo khoa học trên các kỷ yếu hội thảo, tạp chí chuyên ngành…
Nghiên cứu thực nghiệm:
Cài đặt thực nghiệm thuật toán.
Đánh giá khả năng áp dụng khai phá các thuật toán khai phá tập mục
lợi ích cao tại Công ty cổ phần Siêu thị VHSC.
6. Kết cấu của luận văn
Ngoài phần mở đầu, kết luận. Luận văn được cấu trúc thành 3 chương với nội
dung như sau:
Chương 1- Cơ sở lý thuyết: Trình bày tổng quan về khai phá dữ liệu, khái quát
về khai phá tập mục thường xuyên, khai phá dữ liệu lợi ích cao, định nghĩa đối với
bài toán khai phá tập mục lợi ích cao.
Chương 2 - Thuật toán khai phá tập mục lợi ích cao: Trình bày các thuật toán
khai phá tập mục lợi ích cao như thuật toán FHM, thuật toán FHN, thuật toán PHM
và thuật toán FOSHU .
Chương 3 - Cài đặt ứng dụng thử nghiệm: Xây dựng ứng dụng trên cơ sở các
thuật toán đã trình bày, kiểm tra với mẫu số liệu cụ thể, đánh giá khả năng ứng dụng
và áp dụng tại Công ty cổ phần siêu thị VHSC.
4
Chương 1 - CƠ SỞ LÝ THUYẾT
1.1. Mở đầu
Trong kỷ nguyên bùng nổ công nghệ thông tin, các công nghệ lưu trữ dữ liệu
ngày càng phát triển tạo điều kiện cho việc thu thập, lưu trữ dữ liệu tốt hơn. Đặc biệt
trong lĩnh vực kinh doanh, các doanh nghiệp đã nhận thức được tầm quan trọng của
việc nắm bắt và xử lý thông tin, nhằm giúp các chủ doanh nghiệp trong việc vạch ra
các chiến lược kinh doanh, kịp thời mang lại lợi nhuận to lớn. Từ đó, khiến các tổ
chức doanh nghiệp xây dựng một lượng dữ liệu khổng lồ cho riêng mình. Các kho dữ
liệu ngày càng lớn thì trong đó càng tiềm ẩn nhiều thông tin có ích.
Khai phá dữ liệu (Data mining) là quá trình trích xuất các thông tin có giá trị
tiềm ẩn bên trong khối lượng lớn dữ liệu được lưu trữ trong các cơ sở dữ liệu, kho dữ
liệu. Hiện nay, ngoài thuật ngữ khai phá dữ liệu người ta còn dùng một số thuật ngữ
khác có ý nghĩa tương tự như: Khai phá tri thức từ CSDL (Knowledge mining from
databases), trích lọc dữ liệu (Knowledge extraction), phân tích dữ liệu/mẫu
(data/pattern analysis)…
1.1.1. Quy trình khai phá dữ liệu và phát hiện tri thức
Hình 1.1: Quy trình phát hiện tri thức
Từ dữ liệu thô quá trình khám phá tri thức có thể phân thành các bước sau:
Bước thứ nhất: Lựa chọn dữ liệu. Là bước tuyển chọn những tập dữ liệu cần
5
được khai phá từ các tập dữ liệu lớn (databases, data warehouses, data repositories)
ban đầu theo một số tiêu chí nhất định.
Bước thứ hai: Thu thập và tiền xử lý dữ liệu. Là bước làm sạch dữ liệu (xử lý
dữ liệu thiếu, dữ liệu nhiễu, dữ liệu không nhất quán, ...), tổng hợp dữ liệu, rời rạc
hóa dữ liệu, Biến đổi dữ liệu. Đây được xem là bước quan trọng và tiêu tốn thời gian
nhất của toàn bộ quá trình KDD. Sau bước tiền xử lý này, dữ liệu sẽ nhất quán, đầy
đủ, được rút gọn và rời rạc hóa.
Bước thứ ba: Khai phá dữ liệu. Là bước áp dụng những kỹ thuật phân tích
(phần nhiều là các kỹ thuật học máy) nhằm khai thác dữ liệu, trích lọc những mẫu tin
(information patterns), những mối quan hệ đặc biệt trong dữ liệu.
Bước thứ tư: Đánh giá và biểu diễn tri thức. Những mẫu thông tin và mối quan
hệ trong dữ liệu đã được phát hiện ở bước khai phá dữ liệu được đánh giá theo những
tiêu chí nhất định và được biểu diễn ở dạng gần gũi với người sử dụng như đồ thị,
cây, bảng biểu, luật, ....
Bước thứ năm: Tri thức. Là hiểu tri thức đã tìm được, đặc biệt là làm sáng tỏ
các mô tả và dự đoán.
Các bước trên có thể lặp đi lặp lại một số lần, kết quả thu được có thể được
lấy trung bình trên tất cả các lần thực hiện.
1.1.2. Các phương pháp chính trong khai phá dữ liệu
Các phương pháp chính trong KPDL có thể được phân chia theo chức năng
hay lớp các bài toán khác nhau như sau:
-
Phân lớp và dự đoán (classicfication and prediction): Xếp một đối tượng
vào một trong những lớp đã biết trước. Hướng tiếp cận này thường sử dụng các kỹ
thuật như học máy (Machine learning), cây quyết định (Decision tree), mạng nơ ron
nhân tạo (Neural network)...Với phương pháp này còn được gọi là học có giám sát.
-
Luật kết hợp (Association rules): Là dạng luật biểu diễn tri thức ở dạng
khá đơn giản. Mục tiêu của phương pháp này là phát hiện và đưa ra các mối liên hệ
giữa các giá trị dữ liệu trong cơ sở dữ liệu. Luật kết hợp được ứng dụng nhiều trong
lĩnh vực kinh doanh, y học, tin sinh học, tài chính, thị trường chứng khoán...
6
- Khai phá chuỗi theo thời gian: Tương tự như khai phá dữ liệu bằng luật
kết hợp nhưng có thêm tính thứ tự và tính thời gian. Hướng tiếp cận này được ứng
dụng nhiều trong lĩnh vực tài chính và thị trường chứng khoán bởi vì chúng có tính
dự báo cao.
-
Phân cụm và phân đoạn: Sắp xếp các đối tượng theo từng cụm dữ liệu
tự nhiên (số lượng và tên của cụm chưa được biết trước). Các đối tượng được gom
cụm sao cho mức độ tương tự giữa các đối tượng trong cùng một cụm là lớn nhất và
mức độ tương tự giữa các đối tượng nằm trong các cụm khác nhau là nhỏ nhất. Lớp
bài toán phân cụm còn được gọi là học không giám sát (Unsupervised learning).
- Khái niệm và tổng hợp hóa: Liên quan đến các phương pháp tìm kiếm một
mô tả cho một tập con dữ liệu. Các kỹ thuật tóm tắt thường được áp dụng cho các
phân tích dữ liệu tương tác có tính thăm dò và tạo báo cáo tự động.
1.1.3. Các cơ sở dữ liệu có thể khai phá
KPDL được ứng dụng rộng rãi nên có rất nhiều dạng dữ liệu khác nhau có thể
khai phá. Sau đây là một số dữ liệu điển hình:
-
Cơ sở dữ liệu quan hệ: Là cơ sở dữ liệu tác nghiệp được tổ chức theo mô
hình quan hệ, có cấu trúc cao, dữ liệu được mô tả bởi một tập những thuộc tính và
lưu trong những bảng.
- Cơ sở dữ liệu giao tác: Cơ sở dữ liệu giao tác là tập hợp những bản ghi
giao tác, trong đa số các trường hợp chúng là những bản ghi các dữ liệu hoạt động
của doanh nghiệp, tổ chức.
-
CSDL đa chiều: Là các kho dữ liệu được tập hợp, chọn lọc từ nhiều nguồn
khác nhau. CSDL đa chiều có mang tính lịch sử (mang tính thời gian) và chủ yếu
phục vụ cho quá trình phân tích cũng như khai phá tri thức nhằm hỗ trợ quá trình
ra quyết định.
- CSDL hướng đối tượng: Dữ liệu cũng được lưu trữ trong các bảng dữ liệu
nhưng các bảng có bổ sung thêm các tính năng hướng đối tượng như lưu trữ thêm
các hành vi, nhằm thể hiện hành vi của đối tượng....
-
CSDL không gian: Bao gồm hai phần: Phần thứ nhất là dữ liệu quan hệ
7
hay giao tác, phần thứ hai là thông tin định vị hoặc thông tin địa lý. Những luật kết
hợp trên cơ sở dữ liệu không gian mô tả mối quan hệ giữa các đặc trưng trong cơ sở
dữ liệu không gian..
- CSDL có yếu tố thời gian: Giống như cơ sở dữ liệu không gian, cơ sở dữ
liệu có yếu tố thời gian bao gồm hai phần: Phần thứ nhất là dữ liệu quan hệ hay giao
tác, phần thứ hai là thông tin về thời gian xuất hiện dữ liệu ở phần thứ nhất. Những
luật kết hợp có yếu tố thời gian có nhiều thông tin hơn những luật kết hợp cơ bản.
-
CSDL đa phương tiện: CSDL được tích hợp gồm nhiều dạng khác nhau
như: âm thanh, hình ảnh, văn bản.
1.1.4. Kiến trúc của một hệ thống khai phá dữ liệu
Hình 1.2: Kiến trúc của một hệ khai phá dữ liệu điển hình
Kiến trúc của một hệ thống KPDL điển hình có thể có thành phần được mô tả
trong hình Hình 1.2
CSDL, kho dữ liệu hoặc các lưu trữ thông tin khác: một hay một tập các CSDL,
các kho dữ liệu, các trang tính hay các dạng lưu trữ thông tin khác. Kỹ thuật làm sạch
dữ liệu và tích hợp dữ liệu có thể được thể hiện trên những dữ liệu này.
Máy chủ CSDL hay máy chủ kho dữ liệu: Máy chủ này có trách nhiệm lấy
8
những dữ liệu thích hợp dựa trên các yêu cầu khai phá của người dùng.
Cơ sở tri thức: Đây là miền tri thức được dùng để hướng dẫn việc tìm kiếm
hay đánh giá độ quan trọng của các hình mẫu kết quả.
Máy KPDL: Một hệ thống KPDL cần phải có một tập các modun chức năng
để thực hiện công việc như: đặc trưng hoá, kết hợp, phân lớp, phân cụm, phân tích sự
tiến hoá.
Modun đánh giá mẫu: Bộ phận này tương tác với các modun KPDL để duyệt
tìm các mẫu đáng được quan tâm. Nó có thể dùng các ngưỡng về độ quan tâm để lọc
mẫu đã khám phá được. Cũng có thể modun đánh giá mẫu được tích hợp vào modun
khai phá, tuỳ theo sự cài đặt của phương pháp khai phá được dùng.
Giao diện đồ họa người dùng: Bộ phận này cho phép người dùng giao tiếp với
hệ thống KPDL. Ngoài ra, bộ phận này còn cho phép người dùng xem các lược đồ
CSDL, lược đồ kho dữ liệu (hay các cấu trúc dữ liệu), các đánh giá mẫu và hiển thị
các mẫu trong khuôn dạng khác nhau.
1.1.5. Khai phá dữ liệu và một số lĩnh vực liên quan
Khai phá dữ liệu được coi là trung tâm của nhiều ngành khoa học, nó liên quan
đến rất nhiều ngành, nhiều lĩnh vực khác nhau như tài chính, ngân hàng, thương mại,
y tế, giáo dục, thống kê, máy móc, trí tuệ nhân tạo, cơ sở dữ liệu, thuật toán, tính toán
song song, thu nhận tri thức trong các hệ chuyên gia, quan sát dữ liệu.
Lĩnh vực học máy và nhận dạng mẫu là giống nhau trong khai phá dữ liệu
nghiên cứu các lý thuyết và thuật toán của hệ thống trích ra các mẫu và mô hình dữ
liệu. Khai phá dữ liệu tập trung vào việc mở rộng lý thuyết và thuật toán cho các vấn
đề về tìm ra các mẫu đặc biệt, đây được coi là những mẫu hữu ích hoặc tri thức quan
trọng tập dữ liệu lớn.
Đặc biệt, phát hiện tri thức và khai phá dữ liệu rất gần gũi với lĩnh vực thống
kê, sử dụng các phương pháp thống kê để mô hình dữ liệu và phát hiện các mẫu,
luật…, kho dữ liệu và các công cụ xử lý trực tuyến (OLAP – online analytical
processing) tập trung vào phân tích dữ liệu đa chiều, tốt hơn SQL trong tính toán và
phân tích thống kê đa chiều cũng liên quan chặt chẽ đến khai phá dữ liệu. Các phương
9
pháp khai phá dữ liệu không có gì là mới và hoàn toàn dựa trên các phương pháp cơ
bản đã biết. Nhưng có một số điểm khác biệt và ưu thế hơn so với các phương pháp
cơ bản như sau:
+ Học máy
+ Phương pháp hệ chuyên gia
+ Phát kiến khoa học
+ Phương pháp thống kê
Thống kê
Cơ sở dữ liệu
Thương mại
Khai phá dữ liệu
Máy móc, trí tuệ
nhân tạo
Tài chính,
ngân hàng
Y tế
Giáo dục
Các ngành khoa học
khác
Thuật toán
Hình 1.3: Khai phá dữ liệu và các lĩnh vực có liên quan
Đặc trưng của hệ thống khai phá dữ liệu là nhờ vào các phương pháp thuật
toán và kỹ thuật từ những lĩnh vực khác nhau, với mục đích cuối cùng là trích rút ra
tri thức có ích trong CSDL khổng lồ.
1.1.6. Một số ứng dụng của khai phá dữ liệu
+ Phân tích dữ liệu gen và sinh học y học
+ Phân tích dữ liệu tài chính
+ Phân tích các mẫu gian lận và xác định các mẫu khác thường.
1.1.7. Các vấn đề về cơ sở dữ liệu
Dữ liệu lớn: Cho đến nay, các cơ sở dữ liệu với hàng trăm trường và bảng,
hàng triệu bản ghi và với kích thước đến gigabytes đã là chuyện bình thường. Hiện
nay đã bắt đầu xuất hiện các cơ sở dữ liệu có kích thước tới terabytes. Các phương
10
pháp giải quyết hiện nay là đưa ra một ngưỡng cho cơ sở dữ liệu, lấy mẫu, các phương
pháp xấp xỉ, xử lý song song (Agrawal et al, Holsheimer et al).
Kích thước lớn: không chỉ có số lượng bản ghi lớn mà số các trường trong cơ
sở dữ liệu cũng nhiều. Vì vậy mà kích thước của bài toán trở nên lớn hơn. Một tập dữ
liệu có kích thước lớn sinh ra vấn đề làm tăng không gian tìm kiếm mô hình suy diễn.
Hơn nữa, nó cũng làm tăng khả năng một giải thuật khai phá dữ liệu có thể tìm thấy
các mẫu giả.
Dữ liệu động: Đặc điểm cơ bản của hầu hết các cơ sở dữ liệu là nội dung của
chúng thay đổi liên tục. Dữ liệu có thể thay đổi theo thời gian và việc khai phá dữ
liệu cũng bị ảnh hưởng bởi thời điểm quan sát dữ liệu. Vậy thay đổi dữ liệu nhanh
chóng có thể làm cho các mẫu khai thác được trước đó mất giá trị. Hơn nữa, các biến
trong cơ sở dữ liệu của ứng dụng đã cho cũng có thể bị thay đổi, bị xóa hoặc là tăng
lên theo thời gian.
Các trường không phù hợp: Một đặc điểm quan trọng khác là tính không thích
hợp của dữ liệu, nghĩa là mục dữ liệu trở thành không thích hợp với trọng tâm hiện
tại của việc khai thác. Một khía cạnh khác đôi khi cũng liên quan đến độ phù hợp là
tính ứng dụng của một thuộc tính đối với một tập con của cơ sở dữ liệu.
Các giá trị bị thiếu: Sự có mặt hay vắng mặt của giá trị các thuộc tính dữ liệu
phù hợp có thể ảnh hưởng đến việc khai phá dữ liệu. Trong hệ thống tương tác, sự
thiếu vắng dữ liệu quan trọng có thể dẫn đến việc yêu cầu cho giá trị của nó hoặc
kiểm tra để xác định giá trị của nó. Hoặc cũng có thể sự vắng mặt của dữ liệu được
coi như một điều kiện, thuộc tính bị mất có thể được coi như một giá trị trung gian và
là giá trị không biết.
Các trường bị thiếu: Một quan sát không đầy đủ cơ sở dữ liệu có thể làm cho
các dữ liệu có giá trị bị xem như có lỗi. Việc quan sát cơ sở dữ liệu phải phát hiện
được toàn bộ các thuộc tính có thể dùng để giải thuật khai phá dữ liệu có thể áp dụng
nhằm giải quyết bài toán.
Độ nhiễu và không chắc chắn: Đối với các thuộc tính đã thích hợp, độ nghiêm
trọng của lỗi phụ thuộc vào kiểu dữ liệu của các giá trị cho phép. Các giá trị của các
11
thuộc tính khác nhau có thể là các số thực, số nguyên, chuỗi và có thể thuộc vào tập
các giá trị định danh. Các giá trị định danh này có thể sắp xếp theo thứ tự từng phần
hoặc toàn phần, thậm chí có thể có cấu trúc ngữ nghĩa.
Mối quan hệ phức tạp giữa các trường: các thuộc tính hoặc các giá trị có cấu
trúc phân cấp, các mối quan hệ giữa các thuộc tính và các phương tiện phức tạp để
diễn tả tri thức về nội dung của cơ sở dữ liệu yêu cầu các giải thuật phải có khả năng
sử dụng một cách hiệu quả các thông tin này.
1.2. Giới thiệu bài toán khai phá tập mục lợi ích cao
1.2.1. Khai phá tập mục thường xuyên
Bài toán truyền thống (hay còn gọi bài toán nhị phân) khai phá luật kết hợp do
R. Agrawal, T. Imielinski và A. N. Swami đề xuất và nghiên cứu lần đầu tiên vào
năm 1993. Mục đích của nó là phát hiện các tập mục thường xuyên, từ đó tạo các luật
kết hợp.
Một hướng mở rộng của bài toán có nhiều ứng dụng là quan tâm đến cấu trúc
dữ liệu và mức độ khác nhau của các mục dữ liệu, các thuộc tính trong cơ sở dữ liệu.
Một số mô hình mở rộng của bài toán đã được nghiên cứu là:
- Quan tâm đến mức độ khác nhau của các mục dữ liệu bằng cách gán cho mỗi
mục một giá trị gọi là trọng số. Độ hỗ trợ và và tin cậy của luật kết hợp khi đó trở
thành độ hỗ trợ và độ tin cậy có trọng số. Luật kết hợp có độ hỗ trợ và độ tin cậy trọng
số hóa được gọi là luật kết hợp có trọng số.
- Quan tâm tới các kiểu thuộc tính khác nhau trong cơ sở dữ liệu như nhị phân,
đa phân, định lượng. Luật kết hợp lúc đó được gọi là luật kết hợp định lượng. Để tìm
các luật kết hợp định lượng người ta đưa bài toán về dạng nhị phân bằng cách phân
khoảng các giá trị thuộc tính, sau đó có thể sử dụng các thuật toán khai phá dữ liệu
nhị phân đã biết.
- Chú ý đến cả cấu trúc dữ liệu lẫn mức độ quan trọng khác nhau của các thuộc
tính trong cơ sở dữ liệu. Theo hướng này, nhiều nhà nghiên cứu đã đề xuất các mô
hình mở rộng: khai phá tập mục cổ phần cao đánh giá sự đóng góp của tập mục trong
tổng số các mục của cơ sở dữ liệu; khai phá tập mục lợi ích cao, đánh giá lợi ích mà
12
tập mục mang lại trong cơ sở dữ liệu.
Trong khai phá luật kết hợp cơ bản, các thuật toán khám phá tập mục thường
xuyên được xây dựng theo phương pháp tìm kiếm từng bước. Cơ sở của các thuật
toán này là tính chất Apriori hay còn gọi là tính chất phản đơn điệu, tính chất đóng
xuống của tập mục thường xuyên. Đó là tập con khác rỗng của một tập mục thường
xuyên phải là tập thường xuyên.
Gần đây, nhằm khắc phục hạn chế của bài toán cơ bản khai phá luật kết hợp,
người ta đã mở rộng nó theo nhiều hướng khác nhau. Theo tác giả Vũ đức Thi [1], đã
trình bày bài toán khai phá tập mục lợi ích cao. Khai phá tập mục lợi ích cao là khám
phá tất cả tập mục X đem lại lợi ích xác định bởi người sử dụng.
1.2.2. Giới thiệu bài toán khai thác tập lợi ích cao
Trong mô hình khai thác lợi ích cao, giá trị của mục dữ liệu trong giao tác là
một số (chẳng hạn như số lượng đã bán của mặt hàng), ngoài ra còn có bảng lợi ích
cho biết lợi ích mang lại khi bán một đơn vị hàng đó, do người quản lý kinh doanh
xác định. Lợi ích của một tập mục là số đo lợi nhuận của tập mục đó trong CSDL, nó
có thể là tổng lợi nhuận, là tổng chi phí của tập mục.
Khai thác lợi ích cao là khai thác tất cả các tập mục X có lợi ích, không nhỏ
hơn giá trị ngưỡng tối thiểu quy định bởi người sử dụng. Các thuật toán khám phá tập
mục thường xuyên được xây dựng theo phương pháp tìm kiếm từng bước. Cơ sở của
các thuật toán này là tính chất Apriori hay còn gọi là tính chất phản đơn điệu (anti
monotone) của tập mục thường xuyên. Tính chất đó là “tập con khác rỗng của một
tập mục thường xuyên phải là tập thường xuyên”. Điều này có nghĩa các (k+1)-tập
mục thường xuyên chỉ có thể sinh ra từ các k tập mục thường xuyên. Tính chất Apriori
cho phép loại bỏ được các tổ hợp tập mục không thường xuyên ra khỏi không gian
tìm kiếm tại mỗi bước. Đáng tiếc là các tập mục lợi ích cao không thỏa mãn tính chất
Apriori. Do đó, việc rút gọn không gian tìm kiếm, phát hiện tập mục lợi ích cao không
thể thực hiện đựợc như trong khai thác tập mục thường xuyên.Vì thế thách thức trong
việc khai thác lợi ích là giới hạn kích thước của tập ứng viên và đơn giản việc tính
toán để tính lợi ích.
13
1.2.3. Cách tiếp cận trong khai thác tập lợi ích cao
-Dựa vào biên trên của độ có ích: công thức chặn trên của độ có ích, đồng thời
phát triển thuật toán UMining_H để tìm tập lợi ích cao.
-Dựa vào định nghĩa về TWU: TWU thỏa tính chất Apriori để từ đó hình thành
nên thuật toán Two-Phase dựa trên thuật toán Apriori.
-Dựa trên TWU và FP-tree, phát triển thuật toán HUIs dựa vào FP-tree.
-Dựa trên TWU và phương pháp cắt tỉa bằng cách ước lượng giá trị lợi ích
đồng thời mang tên EUCP.
1.3. Các định nghĩa và quy ước trong khai thác tập mục lợi ích cao
Định nghĩa 1.1: Cơ sở dữ liệu giao tác: Cho tập các mục I= {i1,i2,…in}. Một
giao tác Tc là tập con của I,Tc ∈ I. Cơ sở dữ liệu giao tác là một tập các giao tác D =
{T1, T2, ..., Tn}.Mỗi một giao tác Tc, Tc ∈ I và c được gán một định danh gọi là
TID. Mỗi mục i ∈ I liên quan đến một số dương 𝑝(𝑖) được gọi là lợi ích bên ngoài
(ví dụ đơn vị lợi nhuận hay còn gọi là giá trị chủ quan ). Đối với mỗi giao tác Tc mà
i ∈ Tc là một số dương q(i, Tc) được gọi là lợi ích trong của i (ví dụ như số lượng
hàng hóa bán hay còn gọi là giá trị khách quan).
Ví dụ 1.1: Xem xét cơ sở dữ liệu của Bảng 1.1 (bên trái). Cơ sở dữ liệu này có
5 giao tác T1, T2, T3, T4 T5. Giao tác 𝑇2 cho thấy các mục 𝑎, 𝑐, 𝑒 và 𝑔 xuất hiện trong
giao tác này cùng với lợi ích trong tương ứng (số lượng hàng hóa bán ) là: 2, 6, 2 và
5. Bảng 1.1 cho thấy các lợi ích bên ngoài (đơn vị lợi nhuận) của các mục tương ứng
là 5, 1, 3 và 1.
Bảng 1.1: Cơ sở dữ liệu (trái) và giá trị lợi ích bên ngoài (phải)
TID
Giao tác
Mục
a b
c
d
e f g
T1
(a,1)(c,1)(d,1)
Lợi
5 2
1
2
3 1 1
T2
(a,2)(c,6)(e,2),(g,5)
nhuận
T3
(a,1)(b,2)(c,1)(d,6),(e,1),(f,5)
T4
(b,4)(c,3)(d,3)(e,1)
T5
(b,2)(c,2)(e,1)(g,2)
14
Định nghĩa 1.2: Lợi ích của một mục/tập mục trong giao tác: Lợi ích của một
mục i trong một giao tác Tc được ký hiệu là u(i,Tc) và được định nghĩa là: 𝑝(𝑖) ×
𝑞(𝑖, 𝑇𝑐 ). Lợi ích của tập mục 𝑋 (một nhóm tập mục 𝑋 ⊆ 𝐼) trong một giao tác 𝑇𝑐
được ký hiệu là: 𝑢(𝑋, 𝑇𝑐 ) là tổng lợi ích của tất cả các mục ic thuộc X tại giao tác Tc,
tức là 𝑢(𝑋, 𝑇𝑐 ) =∑𝑖∈𝑋 𝑢(𝑖, 𝑇𝑐 ). Ví dụ 1.2. Lợi ích của mục 𝑎 trong 𝑇2 là 𝑢(𝑎, 𝑇2 ) = 5
x 2 = 10. Lợi ích của tập mục {𝑎, 𝑐} trong 𝑇2 là 𝑢({𝑎, 𝑐}, 𝑇2 ) = 𝑢(𝑎, 𝑇2 ) +
𝑢(𝑐, 𝑇2 ) = 5 x 2 + 1 x 6 = 16.
Định nghĩa 1.3: Lợi ích của một tập mục trong cơ sở dữ liệu giao tác: Lợi ích
của một tập mục 𝑋 được ký hiệu là 𝑢(𝑋) và được xác định là 𝑢(𝑋) =
∑𝑇𝑐∈𝑔(𝑋) 𝑢(𝑋, 𝑇𝑐 ) khi 𝑔(𝑋) là tập hợp các giao tác chứa 𝑋. Ví dụ 1.3. Lợi ích của tập
mục
{𝑎, 𝑐}
là
𝑢({𝑎, 𝑐 }) = 𝑢(𝑎) + 𝑢(𝑐 ) = 𝑢(𝑎, 𝑇1 ) + 𝑢(𝑎, 𝑇2 ) + 𝑢(𝑎, 𝑇3 ) +
𝑢(𝑐, 𝑇1 ) + 𝑢(𝑐, 𝑇2 ) + 𝑢(𝑐, 𝑇3 ) = 5 + 10 + 5 + 1 + 6 + 1 =28.
Định nghĩa 1.4: Khai phá tập mục lợi ích cao: Vấn đề của khai phá tập mục
lợi ích cao là phát hiện ra tất cả các tập mục có lợi ích cao. Một tập 𝑋 được coi là tập
mục lợi ích cao nếu độ lợi ích của nó 𝑢(𝑋) không nhỏ hơn ngưỡng lợi ích tối đa
𝑚𝑖𝑛𝑢𝑡𝑖𝑙 do người dùng đặt ra. Nếu không nó là tập lợi ích thấp.
Ví dụ 1.4: Nếu 𝑚𝑖𝑛𝑢𝑡𝑖𝑙 = 30, các tập mục lợi ích cao trong dữ liệu ở ví dụ này
là {𝑏, 𝑑 }, {𝑎, 𝑐, 𝑒}, {𝑏, 𝑐, 𝑑 }, {𝑏, 𝑐, 𝑒}, {𝑏, 𝑑, 𝑒}, {𝑏, 𝑐, 𝑑, 𝑒} có giá trị lần lượt là 30, 31,
34, 31, 36, 40 và 30.
Bảng 1.2: Lợi ích giao tác (trái), các giá trị TWU (giữa) và EUCS (phải)
TID
TU
T1
8
T2
27
T3
30
T4
20
T5
11
Mục
TWU
a
65
b
61
c
96
d
58
e
88
f
30
g
38
Mục
a
b
c
d
e
b
30
c
65
61
d
38
50
58
e
57
61
77
50
f
30
30
30
30
30
g
27
38
38
0
38
f
0
15
Định nghĩa 1.5: Lợi ích giao tác: lợi ích giao tác (TU) của một giao tác 𝑇𝑐 là
tổng lợi ích của các mục từ 𝑇𝑐 thuộc 𝑇𝑐 . Tức là:
𝑇𝑈(𝑇𝑐 ) = ∑
𝑥∈𝑇𝑐
𝑢(𝑥, 𝑇𝑐 ).
Ví dụ 1.5. Bảng 1.2 (trái) cho thấy TU của các giao tác 𝑇1 , 𝑇2 , 𝑇3 , 𝑇4 , 𝑇5
Định nghĩa 1.6: Lợi ích trọng số của giao tác: trọng số độ lợi ích của giao tác
(TWU) của một tập mục X được xác định là tổng lợi ích giao tác của các giao tác
chứa X, tức là:
𝑇𝑊𝑈 (𝑋 ) = ∑
𝑇𝑈 (𝑇𝑐 ).
𝑇𝑐 ∈𝑔(𝑋)
Ví dụ 1.6. Bảng 1.2 (giữa) cho thấy TWU của các mục đơn 𝑎, 𝑏, 𝑐, 𝑑, 𝑒, 𝑓, 𝑔.
Xét mục 𝑎. 𝑇𝑊𝑈(𝐴) = 𝑇𝑈(𝑇1 ) + 𝑇𝑈(𝑇2 ) + 𝑇𝑈(𝑇3 ) = 8 + 27 + 30 = 65
Thuật toán TWU có ba tính chất quan trọng để cắt tỉa không gian tìm kiếm.
Tính chất 1.1: Trọng số độ lợi ích của giao tác đối với tập mục 𝑋 lớn hơn hoặc
bằng với lợi ích của nó, ví dụ: 𝑇𝑊𝑈 (𝑋 ) ≥ 𝑢(𝑋) .
Tính chất 1.2: Thuật toán TWU chống đơn điệu. Coi như 𝑋 và 𝑌 là hai tập
mục. Nếu 𝑋 ⊂ 𝑌 thì 𝑇𝑊𝑈(𝑋) ≥ 𝑇𝑊𝑈(𝑌) .
Tính chất 1.3: Coi 𝑋 là một tập mục. Nếu 𝑇𝑊𝑈(𝑋) < 𝑚𝑖𝑛𝑢𝑡𝑖𝑙 thì tập 𝑋 là
tập mục lợi ích thấp như tất cả các tập con khác rỗng của nó. Chứng minh. Được áp
dụng trực tiếp từ tính chất 1.1 và tính chất 1.2.
Định nghĩa 1.7: Danh sách lợi ích: Xét ≻ là tổng thứ tự toàn phần các hạng
mục trong 𝐼. Danh sách lợi ích (utility-list) của một mục 𝑋 trong cơ sở dữ liệu 𝐷 là
một tập hợp các bộ, theo đó có 1 bộ (𝑡𝑖𝑑, 𝑖𝑢𝑡𝑖𝑙, 𝑟𝑢𝑡𝑖𝑙) đối với mỗi giao tác 𝑇𝑡𝑖𝑑 chứa
𝑋. Mục 𝑖𝑢𝑡𝑖𝑙 của 1 bộ là lợi ích của 𝑋 trong 𝑇𝑡𝑖𝑑 là: u(X,Ttid). Mục 𝑟𝑢𝑡𝑖𝑙 của một bộ
được xác định là:
∑𝑖∈𝑇𝑡𝑖𝑑∧𝑖∈𝑋 𝑈(𝑖, 𝑇𝑡𝑖𝑑 ). Ký hiệu UL(X).
Ví dụ 1.7. Danh sách lợi ích của {𝑎} là {(𝑇1 , 5, 3)(𝑇2 , 10, 17), (𝑇3 , 5, 25)}.
Danh sách lợi ích của {𝑒} là {(𝑇2 , 6, 5)(𝑇3 , 3, 5), (𝑇4 , 3, 0)}. Danh sách lợi ích của
{𝑎, 𝑒} là {(𝑇2 , 16, 5), (𝑇3 , 8, 5)}.