BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HỒ CHÍ MINH
------------------------------
ĐẶNG CÔNG QUỐC
ĐÁNH GIÁ CÁC THUẬT TOÁN
KHAI THÁC TẬP MỤC LỢI ÍCH CAO
LUẬN VĂN THẠC SĨ
Chuyên ngành: Công Nghệ Thông Tin
Mã ngành: 60480201
TP. HỒ CHÍ MINH, tháng 10 năm 2015
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HỒ CHÍ MINH
------------------------------
ĐẶNG CÔNG QUỐC
ĐÁNH GIÁ CÁC THUẬT TOÁN
KHAI THÁC TẬP MỤC LỢI ÍCH CAO
LUẬN VĂN THẠC SĨ
Chuyên ngành: Công Nghệ Thông Tin
Mã ngành: 60480201
CÁN BỘ HƢỚNG DẪN KHOA HỌC: TS. TÔ HOÀI VIỆT
TP. HỒ CHÍ MINH, tháng 10 năm 2015
CÔNG TRÌNH ĐƢỢC HOÀN THÀNH TẠI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HỒ CHÍ MINH
Cán bộ hƣớng dẫn khoa học: …………………
TS. TÔ HOÀI VIỆT
Luận văn Thạc sĩ đƣợc bảo vệ tại Trƣờng Đại học Công nghệ TP. HCM
(HUTECH) ngày 17 tháng 10. năm 2015.
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:
TT
Chức danh Hội đồng
Họ và Tên
1
PGS.TSKH. Nguyễn Xuân Huy
Chủ tịch
2
TS. Lƣ Nhật Vinh
Phản biện 1
3
TS. Võ Đình Bảy
Phản biện 2
4
TS. Trần Đức Khánh
5
TS. Nguyễn Thị Thúy Loan
Ủy viên
Ủy viên, Thƣ ký
Xác nhận của Chủ tịch Hội đồng đánh giá Luận văn sau khi Luận văn đã sửa chữa.
Chủ tịch Hội đồng đánh giá LV
TRƢỜNG ĐẠI HỌC
CÔNG NGHỆ TP.HỒ CHÍ MINH
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
PHÒNG QLKH – ĐTSĐH
TP. HCM, ngày 17 tháng 10 năm 2015
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên : Đặng Công Quốc
Giới tính: Nam.
Ngày, tháng, năm sinh : 21 – 06 – 1968
Nơi sinh: Thừa Thiên Huế
Chuyên ngành : Công Nghệ Thông Tin
MSHV : 1341860050
I- Tên đề tài:
ĐÁNH GIÁ CÁC THUẬT TOÁN KHAI THÁC TẬP MỤC LỢI ÍCH CAO
II- Nhiệm vụ và nội dung:
Nghiên cứu các thuật toán chính về khai thác tập mục lợi ích cao, tập trung
tìm hiểu vào các phƣơng pháp thực nghiệm từ các bài báo chính đƣợc nhiều tác giả
tham khảo. Tìm hiểu và đánh giá các thuật toán khai thác tập mục lợi ích cao.
III- Ngày giao nhiệm vụ: 03/4/2015
IV- Ngày hoàn thành nhiệm vụ: 17/9/2015
V- Cán bộ hƣớng dẫn: TS. Tô Hoài Việt
CÁN BỘ HƢỚNG DẪN
TS. Tô Hoài Việt
KHOA CÔNG NGHỆ THÔNG TIN
i
LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết
quả đánh giá, nhận xét và các đề xuất cải tiến mới nêu trong Luận văn là trung thực
và chƣa từng đƣợc ai công bố trong bất kỳ công trình nào khác.
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này
cũng nhƣ các trích dẫn hay tài liệu học thuật tham khảo đã đƣợc cảm ơn đến tác giả
hay ghi rõ ràng nguồn gốc thông tin trích dẫn trong Luận văn.
Học viên thực hiện Luận văn
Đặng Công Quốc
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 TS. Tô
Hoài Việt – Trƣờng Đại học Sài Gòn, PGS.TSKH. Nguyễn Xuân Huy – Viện Hàn
lâm KHCN Việt Nam, TS. Võ Đình Bảy – Trƣờng Đại học Công nghệ TP. Hồ Chí
Minh, TS. Lƣ Nhật Vinh – Trƣờng Đại học Công nghiệp Thực phẩm TP. Hồ Chí
Minh, PGS.TS Lê Hoài Bắc – Trƣờng Đại học Khoa học Tự nhiên TP. Hố Chí
Minh, TS. Nguyễn Quốc Huy – Trƣờng Đại học Sài Gòn, những 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 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 sự dạy bảo, giúp đỡ, tạo điều kiện và khuyến
khích tôi trong quá trình học tập và nghiên cứu của các thầy cô giáo, cán bộ quản lý
của Trƣờng Đại học Công nghệ TP. Hồ Chí Minh.
Và cuối cùng, tôi xin gửi lời cảm ơn tới gia đình, ngƣời thân và bạn bè những ngƣời luôn ở bên tôi những lúc khó khăn nhất, luôn động viên tôi, khuyến
khích tôi trong cuộc sống và trong công việc.
Tôi xin chân thành cảm ơn!
Tp. Hồ Chí Minh, ngày 26 tháng 10 năm 2015
Tác giả
Đặng Công Quốc
iii
TÓM TẮT
Phân tích hành vi mua sắm của khách hàng là bài toán cơ bản trong lĩnh vực
kinh doanh cũng nhƣ nghiên cứu marketing. Vì vậy, việc hiện thực một hệ thống có
tên gọi là Hệ phân tích hành vi khách hàng để hỗ trợ cho các nhà buôn bán lẻ tận
dụng khai thác khối lƣợng dữ liệu giao dịch khổng lồ từ chính cửa hàng của họ là
điều cần thiết.
Hệ thống gồm nhiều mô đun và nhiều giai đoạn để thực hiện, tất cả các mô
đun và các giai đoạn thực hiện đều khó và phức tạp. Nhƣng cốt lõi hơn hết là việc
xử lý dữ liệu lớn hiệu quả. Vì vậy, tác giả ƣu tiên tập trung nghiên cứu các thuật
toán tìm tập các mặt hàng mang lại lợi ích nhất cho cửa hàng đó.
Việc nghiên cứu bƣớc đầu đã có một số kết quả nhƣ sau:
-
Xác định mã nguồn và cấu trúc dữ liệu của từng thuật toán đã cài đặt trên
SPMF nhƣ mô tả trong các bài báo đã công bố để xác định độ tin cậy của
công cụ SPMF.
-
Xác định đƣợc thuật toán Two-Phase trong SPMF cài đặt không đúng với bài
báo ban đầu (cài đặt theo cây WIT-TREE, sử dụng Tidset)
-
Cài đặt bổ sung thuật toán Diffset-Two-Phase (mở rộng của Two-Phase có
dùng thêm tính chất Diffset của Zaki)
-
Thực nghiệm lại tất cả các thực nghiệm đã đƣợc thực hiện trong các công
trình công bố để xác định tính đúng đắn của thuật toán.
Các kết quả này hoàn thành mục tiêu đánh giá khách quan ƣu điểm và khuyết
điểm của các thuật toán mới. Đánh giá một số thuật toán theo cấu trúc cây, một số
thuật toán theo utility-list; So sánh hiệu quả giữa cấu trúc cây và utility-list. Kiểm
tra tính đúng đắn của mã nguồn các thuật toán khai thác tập có ích cao trong công
cụ SPMF so với mã giả của các thuật toán đƣa ra trong các bài báo. Hiện thực lại
các thực nghiệm cho từng thuật toán đã trình bày trong các bài báo đã công bố. Qua
iv
đó, đảm bảo môi trƣờng thực nghiệm là hoàn toàn đáng tin cậy để so sánh và đánh
giá với các kết quả mới sau này nếu có.
v
ABSTRACT
Customer behavior analysis is a basis problem in business area as well as
marketing research. Thus, it is very necessary for setting up a system named
Customer Behavior Analysis System to support the retailers in mining the huge
transaction data from their stores.
The system has many modules and many phases which need to implement.
They are very touch and complexity. In these modules, the main core is how to
process big data effectively. So the thesis focuses on studying algorithms which can
find out the high utility itemsets for the stores.
There are some initial results of research as follows:
-
To identify whether the source code and data structures of each algorithm in
SPMF tool are correct as the description of the proposed papers. If it is right,
the SPMF is considered as high confident tool to compare the algorithms in
many data.
-
We see that the source code of Two-Phase algorithm in SPMF tool is not
right one hundred percent as described in the original paper. It is
implemented as the description of WIT-TREE, an enhancement of TwoPhase.
-
We implemented one more algorithm named Diffset-Two-Phase. It is the
expanding of Two-Phase which applied the Diffset property.
-
All experiments in proposed papers of HUI mining are implemented again to
identify the correctness of algorithms.
These results help us measure objectively the advantages and disadvantages
of novel algorithms. Especially, we focus on algorithms using lattice structure and
utility-list, and identify the correctness of source code of SPMF is based on the
pseudo-code proposed in HUI papers. Then, the correctness of experiments in HUI
papers is also reviewed by re-running the algorithms with experiment data. From
vi
that, we can claim that experiment environment is confident already to test every
new algorithms as well as new data in future if possible.
vii
MỤC LỤC
TÓM TẮT
iii
ABSTRACT
v
MỤC LỤC
vii
DANH MỤC CÁC TỪ VIẾT TẮT
ix
MỞ ĐẦU
1
1.
Lý do chọn đề tài
1
2.
Đóng góp chính của luận văn
1
3.
Mục tiêu nghiên cứu
2
4.
Đối tƣợng và phạm vi nghiên cứu
2
5.
Phƣơng pháp nghiên cứu
3
CHƢƠNG 1: TỔNG QUAN
4
1.1. Giới thiệu
4
1.2. Tổng quan về khai thác dữ liệu
5
1.3. Khai thác tập có ích
9
1.4. Cấu trúc luận văn
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
14
16
2.1. Các định nghĩa
16
2.2. Các kỹ thuật liên quan
20
2.3. Khuôn mẫu chung để khai thác itemset có ích
29
CHƢƠNG 3: ĐÁNH GIÁ CÁC THUẬT TOÁN
KHAI THÁC TẬP MỤC LỢI ÍCH CAO
34
viii
3.1. Bài toán ban đầu
34
3.2. Các thuật toán theo cấu trúc dàn
35
3.2.3. Thuật toán Two-Phase
37
3.2.4. Cấu trúc cây IT-tree và các lớp tƣơng đƣơng
40
3.2.5. Thuật toán Diffset-Two-Phase
43
3.3. Các thuật toán theo cấu trúc dàn kết hợp cấu trúc utiity-list
45
3.3.1. Thuật toán Hui-Miner
48
3.3.2. Thuật toán FHM
50
3.4. Thực nghiệm
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
52
62
4.1. Kết luận
63
4.2. Hƣớng phát triển
64
TÀI LIỆU THAM KHẢO
66
ix
DANH MỤC CÁC TỪ VIẾT TẮT
Ý nghĩa tiếng Anh
Ký hiệu, viết tắt
Ý nghĩa tiếng Việt
TID
Transaction Item Database
Định danh giao tác
Transaction
Transaction
Giao tác, giao dịch
Count
Count
Số lƣợng
Item
Item
Mục
Itemset
Itemset
Tập mục
Profit
Profit
Lợi nhuận
FIM
Frequent Itemset Mining
Khai thác tập phổ biến
CSDL
Database
Cơ sở dữ liệu
Minutil
Minutil
Ngƣỡng
HUI
High-Utility Itemset Mining
Khai thác tập hữu ích cao
TWO-PHASE
Two-Phase
Giải thuật Two-Phase
WIT – Tree
Cây WIT – Tree
TWU – Mining
Thuật toán TWU – Mining
HUI-MINER
High Utility Itemset Miner
Giải thuật Hui-Miner
FHM
Fast High –utility Miner
Giải thuật FHM
EUCS
Estimated Utility
Cấu trúc EUCS
Co-Occurrence Structure
Weighted Itemset – Tidset
Tree
Transaction Weighted
Utility Mining
x
DANH MỤC CÁC BẢNG
Bảng 1.1: Cơ sở dữ liệu giao tác
10
Bảng 1.2: Lợi nhuận đơn vị cho các item
11
Bảng 1.3: Độ hỗ trợ và lợi nhuận cho các item
11
Bảng 2.1: Tập dữ liệu y khoa
26
Bảng 2.2: Các giá trị có ích dành cho thuộc tính “Hiệu quả” và “Hiệu ứng phụ”
27
Bảng 2.3: Độ có ích của các item
27
Bảng 2.4: Các phép đo độ quan tâm dựa trên độ có ích
30
Bảng 2.5: Tầm quan trọng ngữ nghĩa của hàm tính độ có ích
31
Bảng 2.6: Các phép đo độ quan tâm dựa trên độ có ích
31
Bảng 2.7: Các tính chất toán học của các phép đo dựa trên độ có ích.
33
Bảng 3.1: Cơ sở dữ liệu giao tác
34
Bảng 3.2: Lợi nhuận đơn vị cho các item
35
Bảng 3.3: Một thành phần trong danh sách utility-list
47
Bảng 3.4: Minh họa bảng EUCS
49
Bảng 3.5: Đặc điểm của các CSDL thử nghiệm
53
Bảng 3.6: Kết quả thực nghiệm so sánh giữa nhóm (Two-phase, Diffset-Two-Phase)
và (Hui-Miner, FHM)
53
xi
DANH MỤC CÁC HÌNH
Hình 1.1: Vị trí của KTDL
6
Hình 1.2: Quá trình khám phá tri thức từ CSDL
7
Hình 2.1: Vai trò của các phép đo dựa trên độ có ích.
30
Hình 3.1: Kết nối Galois
36
Hình 3.2: Cấu trúc của các tập item của Bảng 1.1 và 1.2, với minutil = 150.
39
Hình 3.3: Cây tìm kiếm IT-tree và các lớp tƣơng đƣơng
41
Hình 3.4: Search tree using WIT-tree
42
Hình 3.5: SPMF ban đầu
43
Hình 3.6: SPMF có cài đặt thêm thuật toán Diffset-Two-Phase
44
Hình 3.7: Minh họa Diffset
45
Hình 3.8: Minh họa cách mở rộng itemset từ các item.
46
Hình 3.9: Minh họa phép kết
47
Hình 3.10: Thuật toán Hui-Miner
48
Hình 3.11: Thủ tục Contruct
49
Hình 3.12: Thuật toán FHM
50
Hình 3.13: Thủ tục Search
51
Hình 3.14: Đồ thị minh họa chess
56
Hình 3.15: Đồ thị minh họa cho dữ liệu Chess*
56
Hình 3.16: Đồ thị minh họa cho dữ liệu Mushroom
57
Hình 3.17: Đồ thị minh họa cho dữ liệu Mushroom*
57
Hình 3.18: Đồ thị minh họa cho dữ liệu Pumsb
58
Hình 3.19: Đồ thị minh họa cho dữ liệu Pumsb*
58
Hình 3.20: Đồ thị minh họa cho dữ liệu Connect
59
Hình 3.21: Đồ thị minh họa cho dữ liệu Connect*
59
xii
Hình 3.22: Đồ thị minh họa cho dữ liệu Accidents
60
Hình 3.23: Đồ thị minh họa cho dữ liệu Accidents*
60
Hình 4.1: Hệ thống phân tích hành vi khách hàng
62
Hình 4.2: Minh họa các thành phần SSAS – SSIS – SSRS trong BIDS
65
1
MỞ ĐẦU
Lý do chọn đề tài
1.
Phân tích hành vi mua sắm của khách hàng là bài toán cơ bản trong lĩnh vực
hoạt động cũng nhƣ nghiên cứu marketing. Trong đó, thông tin giao dịch thể hiện
qua từng hóa đơn và các hóa đơn là dữ liệu quan trọng để các nhà buôn bán lẻ và sỉ
rút ra đƣợc thông tin có giá trị về hành vi mua sắm của khách hàng để hoạch định
chiến lƣợc mua bán cũng nhƣ trong kế hoạch tích trữ tồn kho.
Tuy nhiên, để một ngƣời tự rút ra đƣợc những thông tin có giá trị từ nhiều dữ
liệu hóa đơn thì thƣờng dễ sai sót và tốn quá nhiều thời gian. Tác giả quan tâm đến
việc hiện thực một hệ thống có tên gọi là Hệ phân tích hành vi khách hàng để hỗ trợ
cho các nhà buôn bán lẻ tận dụng khai thác khối lƣợng dữ liệu giao dịch khổng lồ từ
chính cửa hàng của họ.
Hệ thống gồm nhiều mô đun và nhiều giai đoạn để thực hiện, tất cả các mô
đun và các giai đoạn thực hiện đều khó và phức tạp. Nhƣng cốt lõi hơn hết là việc
xử lý dữ liệu lớn hiệu quả. Vì vậy, tác giả ƣu tiên tập trung nghiên cứu các thuật
toán tìm tập các mặt hàng mang lại lợi ích nhất cho cửa hàng đó.
Đóng góp chính của luận văn
2.
-
Xác định mã nguồn và cấu trúc dữ liệu của từng thuật toán đã cài đặt trên
SPMF nhƣ mô tả trong các bài báo đã công bố để xác định độ tin cậy của
công cụ SPMF.
-
Xác định đƣợc thuật toán Two-Phase trong SPMF cài đặt không đúng với bài
báo ban đầu (cài đặt theo cây WIT-tree)
-
Cài đặt bổ sung thuật toán Diffset-Two-Phase (mở rộng của Two-Phase có
dùng thêm tính chất Diffset của Zaki)
-
Thực nghiệm lại tất cả các thực nghiệm đã đƣợc thực hiện trong các công
trình công bố để xác định tính đúng đắn của thuật toán.
2
3.
Mục tiêu nghiên cứu
Mục tiêu tổng quát: Khảo sát các phƣơng pháp làm thực nghiệm và phân
tích thực nghiệm của các tác giả đề xuất thuật toán. Đánh giá thực
nghiệm một số thuật toán khai thác tập mục lợi ích cao.
Mục tiêu cụ thể: Đƣa ra các bƣớc thực nghiệm và các ràng buộc cần thiết
để đánh giá khách quan ƣu điểm và khuyết điểm của các thuật toán mới.
Đánh giá một số thuật toán theo cấu trúc cây, một số thuật toán theo
utility-list; So sánh hiệu quả giữa cấu trúc cây và utility-list. Kiểm tra
tính đúng đắn của mã nguồn các thuật toán khai thác tập có ích cao trong
công cụ SPMF so với mã giả của các thuật toán đƣa ra trong các bài báo.
Hiện thực lại các thực nghiệm cho từng thuật toán đã trình bày trong các
bài báo đã công bố. Qua đó, đảm bảo môi trƣờng thực nghiệm là hoàn
toàn đáng tin cậy để so sánh và đánh giá với các kết quả mới sau này nếu
có.
4.
Đối tƣợng và phạm vi nghiên cứu
4.1.
Đối tƣợng nghiên cứu:
Các thuật toán về khai thác tập mục lợi ích cao nhƣ: Two-Phase, TWUMINING, Diffset-Two-Phase, HUI-Miner, FHM
4.2.
Dữ liệu thử phổ biến nhƣ: chess, mushroom, pumsb, connect, accidents.
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 thác tập có ích cao trên dữ liệu tĩnh (dữ liệu
không có biến động), dữ liệu nghiên cứu đƣợc lấy từ nguồn dữ liệu
nghiên cứu chuẩn (chƣa thử nghiệm trên dữ liệu thực), việc đánh giá chỉ
mới đánh giá dựa trên tốc độ xử lý dữ liệu của các thuật toán (chƣa đánh
giá tính có ích thực sự so với ý kiến thực của khách hàng). 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)
3
Các thuật toán chính để tìm hiểu gồm những thuật toán phổ biến và đƣợc
công cụ SPMF cài đặt bao gồm: Two – Phase, Hui – Miner, FHM.
5.
Dữ liệu thực nghiệm đƣợc lấy từ nguồn đáng tin cậy.
Phƣơng pháp nghiên cứu
Cài đặt thuật toán Diffset-Two-Phase, tìm hiểu và thực nghiệm các thuật toán
Two-Phase, Diffset-Two-Phase, Hui-Miner, FHM, với nhiều CSDL đƣợc lấy từ
/>
(truy
cập lúc 9 giờ ngày 01/8/2015) và có điều chỉnh số item và số giao dịch. Chƣơng
trình đƣợc cài đặt bằng ngôn ngữ Java, hệ điều hành Windows 10 Pro, CPU i7-4790
3.6 GHz, RAM 8GB, tập trung vào 2 hƣớng chính nhƣ sau:
Thực hiện lại thực nghiệm của các thuật toán khai thác tập hữu ích cao
nhằm xác minh lại các kết luận quan trọng của các tác giả.
So sánh, đối chiếu và tìm ra các đặc trƣng quan trọng của các tập thử cho
từng họ thuật toán cụ thể.
So sánh tính hiệu quả giữa cấu trúc cây và utility-list về khai thác tập
mục lợi ích cao.
4
CHƢƠNG 1
TỔNG QUAN
1.1.
Giới thiệu
Trong thực tế, một doanh nghiệp bán lẻ cần xác định khách hàng nào có khả
năng có giá trị nhất (khách hàng đóng góp phần lớn lợi nhuận cho công ty). Đây là
những khách hàng, họ có thể mua những món hàng có giá sẵn, những món hàng lợi
nhuận cao, hoặc những món hàng sành điệu, hầu hết khách hàng không mua những
món hàng này mà chỉ có số ít khách hàng mua nên thông tin về những món hàng
nhƣ vậy xuất hiện rất ít trên cơ sở dữ liệu giao tác, nhƣng những món hàng này
mang lại lợi nhuận cao. Trong khai thác luật kết hợp truyền thống, các giao tác thể
hiện khách hàng có thể có lợi ích cao bị bỏ sót. Ví dụ, {sữa, bánh mì} có thể là một
tập phổ biến với độ hỗ trợ 40%, đóng góp 4% tổng lợi ích, và khách hàng tƣơng
ứng thuộc nhóm A, trong khi {bánh sinh nhật, thiệp sinh nhật} có thể là tập không
phổ biến với độ hỗ trợ 8% (giả sử ngƣỡng độ hỗ trợ là 10%), đóng góp 8% tổng lợi
ích, và khách hàng tƣơng ứng thì thuộc nhóm B. Các chuyên gia thị trƣờng phải
quan tâm hơn trong vấn đề tiếp thị bán hàng {bánh sinh nhật, thiệp sinh nhật} bằng
cách thiết kế chiến dịch tiếp thị hoặc thiết kế vé khuyến mãi cho khách hàng nhóm
B (các khách hàng mang nhiều lợi ích), dù itemset này bị bỏ quên trong khai thác
luật kết hợp.
Một ví dụ khác là dữ liệu web log. Một chuỗi các trang web do ngƣời dùng
ghé thăm có thể đƣợc xem nhƣ là một giao tác. Do số lần thăm một trang web và
thời gian ngƣời dùng dành cho một trang web đặc biệt nào đó thì khác nhau, nên
tổng thời gian mà ngƣời dùng dành cho một trang có thể đƣợc xem là độ có ích.
Những ngƣời thiết kế website có thể nắm bắt sự quan tâm và các hành vi của khách
hàng bằng cách nhìn vào độ có ích của các kết hợp trang rồi xem xét việc tái tổ
chức cấu trúc link của website để phục vụ cho sở thích ngƣời dùng. Tần suất không
đủ để trả lời các câu hỏi, đại loại nhƣ liệu một itemset có mang lại lợi ích cao hay
5
không? hay liệu một itemset có ảnh hƣởng mạnh hay không? Khai thác độ có ích thì
rất hữu dụng trong phần lớn các ứng dụng thực tế.
Tuy nhiên, không có chiến lƣợc hiệu quả để tìm tất cả các itemset có ích cao.
Một phƣơng pháp thông thƣờng có thể loại trừ các item đóng góp phần nhỏ trong
tổng lợi ích. Tuy nhiên, itemset có ích cao vẩn có chứa các item có ích thấp. Một
cách khác để thích nghi với sơ đồ tìm kiếm thông minh có trong thuật toán khai thác
luật kết hợp nhanh, nhƣ là Apriori. Cơ sở của các thuật toán khai thác luật kết hợp
truyền thống này là “tính chất bao đóng giảm” (tính chất phản đơn điệu): bất cứ tập
con của tập phổ biến nào cũng phổ biến. Có nghĩa là, chỉ có k - itemsets phổ biến
đƣợc khai thác để sinh ra các (k+1) - itemsets phổ biến tiềm ẩn. Hƣớng tiếp cận này
hiệu quả do một số lƣợng lớn các kết hợp của các item đƣợc tỉa tại mỗi cấp. Tuy
nhiên, tính chất này không áp dụng đƣợc cho mô hình khai thác độ có ích. Ví dụ,
u(D) = 36 < 120, D là một item có độ có ích thấp, nhƣng tập lớn có chứa nó {B, D}
là itemset có ích cao. Không có tính chất này, số lƣợng ứng viên đƣợc sinh ra tại
mỗi cấp tiến nhanh đến tất cả các kết hợp của tất cả item. Đối với 105 items, hơn 109
2-itemsets ứng viên có thể đƣợc sinh ra. Hơn nữa, để khai thác một mẫu dài thì số
lƣợng ứng viên cực lớn. Chi phí tính toán về thời gian hay vùng nhớ thì không chịu
nổi, tập trung vào cách nào để ứng dụng. Thách thức trong khai thác độ có ích là
giới hạn về kích thƣớc của tập ứng viên và đơn giản việc tính toán để tính độ có ích.
1.2.
Tổng quan về khai thác dữ liệu
1.2.1. Khai thác dữ liệu [1, 2, 3, 7]
Khai thác dữ liệu – Data Mining (KTDL) là một quá trình trích xuất tri thức
từ lƣợng lớn dữ liệu. KTDL đó là tiến trình trích lọc, sản sinh những tri thức hoặc
các mẫu tiềm ẩn, chƣa biết nhƣng hữu ích từ các CSDL lớn. KTDL là tiến trình khái
quát các sự kiện rời rạc trong dữ liệu thành các tri thức mang tính khái quát, tính
quy luật hỗ trợ tích cực cho các tiến trình ra quyết định.
6
Tăng khả năng hỗ trợ
quyết định kinh doanh
Ngƣời dùng
Ra quyết
định
Nhà phân tích
kinh doanh
Trình bày dữ liệu
Các công cụ trực quan
Mẫu kết quả
Data Mining
từ khai thác dữ
Khảo sát dữ liệu
liệu Nhà phân
tích dữ liệu
Phân tích thống kê, truy vấn và báo
cáo
Data Warehouses/Data Marts
OLAP, MDA
DBA
Nguồn dữ liệu
Giấy tờ, tập tin, trình cung cấp thông tin,hệ thống
CSDL,OLTP
Hình 1.1: Vị trí của KTDL
Nguồn dữ liệu phục vụ cho khai thác dữ liệu có thể là các CSDL lớn hay các
kho dữ liệu có hoặc không có cấu trúc. Khai thác dữ liệu chỉ thực sự phát huy tác
dụng trên các CSDL lớn, nơi mà khả năng diễn dịch và trực giác của con ngƣời
cũng nhƣ các kỹ thuật truyền thống không thể thực hiện đƣợc hoặc nếu thực hiện
đƣợc thì hiệu quả không cao. KTDL là một công đoạn trong tiến trình lớn hơn là
khám phá tri thức từ CSDL. KTDL mang tính trực giác, cho phép thu đƣợc những
hiểu biết rõ ràng và sâu sắc hơn, vƣợt xa kho dữ liệu. KTDL giúp phát hiện những
xu thế phát triển từ những thông tin quá khứ, cũng nhƣ cho phép đề xuất các dự báo
mang tính thống kê, gom cụm và phân loại dữ liệu. Kho dữ liệu điển hình trong
những doanh nghiệp cho phép ngƣời dùng hỏi và trả lời những câu hỏi nhƣ “Doanh
số bán ra là bao nhiêu tính theo khu vực, theo nhân viên bán hàng”. Trong khi đó,
7
KTDL cho phép ngƣời ra quyết định kinh doanh hỏi và trả lời cho những câu hỏi
nhƣ là “Ai là khách hàng chính yếu của công ty đối với một mặt hàng cụ thể?” hoặc
“Dòng sản phẩm nào sẽ bán trong khu vực này và ai sẽ mua chúng, dựa vào việc
bán những sản phẩm tƣơng tự ở ở khu vực đó?”.Vị trí của KTDL đƣợc thể hiện qua
sơ đồ ở hình 1.1
Đánh giá mẫu và biểu
diễn tri thức
Tri
thức
Khai thác dữ liệu
Chọn lọc dữ liệu
Làm sạch dữ liệu
Các nguồn
dữ liệu
Kho dữ
liệu
Dữ liệu cụ
thể sẽ đƣợc
khai thác
Biến đổi dữ liệu
Tích hợp dữ liệu
Hình 1.2: Quá trình khám phá tri thức từ CSDL
Quá trình khám phá tri thức là một chuỗi lặp gồm các bƣớc [3, 7]:
Bƣớc 1: Làm sạch dữ liệu
Phần lớn các CSDL đều ít nhiều mang tính không nhất quán. Do vậy,
khi KTDL trên các CSDL đó thƣờng không đảm bảo tính đúng đắn. Do đó
trƣớc khi bắt đầu KTDL, chúng ta phải tiến hành xóa bỏ dữ liệu không cần
thiết, loại bỏ dữ liệu nhiễu, hiệu chỉnh phần dữ liệu không nhất quán.
Bƣớc 2: Tích hợp dữ liệu
Trộn dữ liệu từ nhiều nguồn khác nhau vào một kho dữ liệu.
Bƣớc 3: Chọn lọc dữ liệu
8
Đây là giai đoạn chọn lọc, trích rút các dữ liệu cần thiết từ CSDL
tác nghiệp vào một CSDL riêng. Chúng ta chỉ chọn những dữ liệu cần
thiết cho các giai đoạn sau.
Bƣớc 4: Biến đổi dữ liệu
Mục đích của giai đoạn biến đổi là chuyển đổi kiểu dữ liệu về
những dạng thuận tiện để tiến hành các thuật toán khai thác dữ liệu.
Bƣớc 5: Khai thác dữ liệu
KTDL là tiến trình “điều chỉnh đúng” các mô hình dữ liệu. Áp dụng
các kỹ thuật khai thác dữ liệu nhằm trích lọc những mẫu tin, những mối
liên hệ đặc biệt trong dữ liệu.
Bƣớc 6: Đánh giá và biểu diễn dữ liệu
Là quá trình giải thích và hiển thị trực quan các kết quả KTDL để
hỗ trợ việc định giá chất lƣợng dữ liệu, đánh giá mô hình dữ liệu đƣợc lựa
chọn có phù hợp hay không? và thể hiện mô hình. Mỗi bƣớc (trừ lƣu trữ
dữ liệu) cho phép tƣơng tác ngƣời dùng, và một số bƣớc (ví dụ nhƣ lựa
chọn tài nguyên) có thể thực hiện hoàn toàn thủ công.
Quá trình khám phá tri thức là một chuỗi lặp gồm các bƣớc đƣợc thực thi
với:
Các nguồn dữ liệu
Kho dữ liệu
Dữ liệu cụ thể sẽ đƣợc khai thác
Mẫu kết quả từ khai thác dữ liệu
Tri thức đạt đƣợc
1.2.2. Các ứng dụng của Khai thác dữ liệu [3, 4]
Khai thác dữ liệu đƣợc ứng dụng rộng rãi trong rất nhiều lĩnh vực nhƣ [2,3]:
a. Ngân hàng
Xây dựng mô hình dự báo rủi ro tín dụng
Tìm kiếm tri thức, quy luật của thị trƣờng chứng khoán và đầu tƣ bất
động sản
9
b. Thƣơng mại điện tử
Công cụ tìm hiểu, định hƣớng, thúc đẩy, giao tiếp với khách hàng
Phân tích khách hàng duyệt web
Phân tích hành vi mua sắm trên mạng và cho biết thông tin tiếp thị phù
hợp với loại khách hàng trong một phân khu thị trƣờng nhất định
c. Công nghệ sinh học và dƣợc phẩm
Xây dựng công cụ KTDL trực quan cho phép phát hiện sự hiện diện
của dƣợc chất, phân tích dữ liệu di truyền.
d. Nhân sự
Giúp nhà tuyển dụng chọn ứng viên thích hợp nhất theo nhu cầu của
công ty.
Phát hiện giả mạo thẻ trong lĩnh vực viễn thông
Phát hiện dùng thẻ tín dụng giả trên mạng và là công cụ hữu ích cho
dịch vụ quản lý rủi ro cho thƣơng mại điện tử
Phát hiện xâm nhập mạng trái phép
1.3.
Khai thác tập có ích
1.3.1. Đặt vấn đề [5, 11]
Trong khai thác tập phổ biến ngƣời dùng chỉ khai thác các itemset có tần suất
cao. Tuy nhiên trong thực tế còn một số tập quan trọng chƣa đƣợc khám phá là do
hạn chế của tập phổ biến. Tập phổ biến chỉ phản ánh tƣơng quan về mặt thống kê
nhƣng không phản ánh đƣợc tầm quan trọng về mặt ngữ nghĩa giữa các item. Luận
văn đề cập cách khai thác các itemset dựa trên độ có ích để tránh hạn chế trên. Cách
này cho phép ngƣời dùng định lƣợng mức độ quan tâm của mình khi xác định độ có
ích của các item. Khi độ có ích của các itemset thỏa ràng buộc độ có ích cho trƣớc
nào đó có nghĩa là các itemset đang đƣợc quan tâm. Các chiến lƣợc tỉa dùng trong
các hƣớng khai thác các itemset trƣớc đây không dùng đƣợc trong ràng buộc độ có
ích. Cần có thuật toán chiến lƣợc tỉa mới để khai thác các itemset dựa trên độ có ích
bằng cách kết hợp với các chiến lƣợc tỉa đã có.