Đại Học Quốc Gia Tp. Hồ Chí Minh
TRƯỜNG ĐẠI HỌC BÁCH KHOA
-----------------
NGÔ NHẤT LINH
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
(DATA MINING FOR BUSINESS)
Chuyên ngành : Khoa học Máy tính
LUẬN VĂN THẠC SĨ
TP. HỒ CHÍ MINH, tháng 06 năm 2008
i
CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
Cán bộ hướng dẫn khoa học : TS. Quản Thành Thơ .........................................
Cán bộ chấm nhận xét 1 : ...................................................................................
Cán bộ chấm nhận xét 2 : ...................................................................................
Luận văn thạc sĩ được bảo vệ tại:
HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Ngày . . . . . tháng . . . . năm . . . . .
ii
ĐẠI HỌC QUỐC GIA TP. HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
----------------
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập - Tự Do - Hạnh Phúc
---oOo--Tp. HCM, ngày 30 tháng 06 năm 2008.
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ và tên học viên : Ngơ Nhất Linh ...................................... Giới tính : Nam ;/ Nữ
Ngày, tháng, năm sinh : 26/01/1978 ...................................... Nơi sinh : Đà Nẵng ...............
Chuyên ngành : Khoa học Máy tính ......................................................................................
Khoá : K15 .............................................................................................................................
1- TÊN ĐỀ TÀI : KHAI PHÁ DỮ LIỆU TRONG KINH DOANH...............................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
2- NHIỆM VỤ LUẬN VĂN : Áp dụng kỹ thuật FCA phục vụ quá trình khai phá dữ liệu
trong kinh doanh.....................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
3- NGÀY GIAO NHIỆM VỤ : 15/01/2007.........................................................................
4- NGÀY HOÀN THÀNH NHIỆM VỤ : 30/06/2008........................................................
5- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN : TS. Quản Thành Thơ .....................................
Nội dung và đề cương Luận văn thạc sĩ đã được Hội Đồng Chuyên Ngành thông qua.
CÁN BỘ HƯỚNG DẪN
(Họ tên và chữ ký)
CHỦ NHIỆM BỘ MÔN
QUẢN LÝ CHUYÊN NGÀNH
(Họ tên và chữ ký)
TS. Quản Thành Thơ
TS. Đinh Đức Anh Vũ
iii
LỜI CÁM ƠN
Trong thời gian học tập, nghiên cứu và thực hiện đề tài luận văn tốt nghiệp này, tôi đã
nhận được sự động viên, giúp đỡ, hỗ trợ nhiệt tình của các thầy, các cơ, gia đình, bạn
bè và đồng nghiệp. Thông qua luận văn này, tôi xin gởi lời cảm ơn chân thành đến:
o Thầy Quản Thành Thơ đã tận tình hướng dẫn, hỗ trợ, giúp đỡ tơi nghiên cứu
và thực hiện đề tài này.
o Tập thể giáo sư, tiến sĩ, các thầy, các cô trong trường Đại Học Bách Khoa TP.
Hồ Chí Minh đã tận tình giảng dạy, giúp đỡ tơi trong q trình học tập, q
trình nghiên cứu và thực hiện đề tài.
o Gia đình, bạn bè và đồng nghiệp đã động viên và tạo mọi điều kiện thuận lợi
cho tôi trong suốt thời gian học tập cũng như trong quá trình nghiên cứu và
thực hiện luận văn.
Tôi xin chân thành cảm ơn. Chúc mọi người luôn vui khỏe và hạnh phúc!
iv
TÓM TẮT LUẬN VĂN
Trong kinh doanh, khai phá dữ liệu được ứng dụng rộng rãi. Mục đích chính của việc
khai phá dữ liệu là giúp các nhà quản trị có thể đưa ra các quyết định kinh doanh hợp
lý, chẳng hạn như việc quyết định tiếp cận một mặt hàng nào đó đối với một nhóm
khách hàng thơng qua hình thức gửi thư quảng cáo.
Một trong những ứng dụng kinh điển của khai phá dữ liệu trong lĩnh vực kinh doanh là
sử dụng phương pháp phân cụm. Phương pháp phân cụm tỏ ra có hiệu quả và thu được
một số kết quả nhất định khi khai phá dữ liệu. Phương pháp phân cụm là quá trình xử
lý chia các tập dữ liệu thành các nhóm, mỗi nhóm chứa tập các phần tử dữ liệu giống
nhau. Phương pháp phân cụm chia làm hai loại: phân cụm phân cấp và phân cụm riêng
phần. Trong hai loại này thì phân cụm phân cấp tỏ ra đặc biệt hiệu quả vì phương pháp
này có thể tạo ta một hệ phân cấp để biểu diễn dữ liệu. Phân tích khái niệm hình thức
(FCA) là một phương pháp phân cụm phân cấp đáng chú ý gần đây. Phương pháp này
có thể xây dựng một hệ phân cấp dạng lưới, thay vì dạng cây như các phương pháp
phân cụm phân cấp cổ điển khác, nhờ vậy ta có thể dẫn xuất nhiều thơng tin hơn cho
người sử dụng. Mặt khác, FCA cũng cung cấp khả năng phân tích và rút trích các luật
phụ thuộc trên lưới phân cấp được tạo ra. Các luật phụ thuộc này có thể được áp dụng
để phân tích mối liên hệ giữa các mặt hàng cho từng trường hợp ứng dụng cụ thể.
Tuy nhiên, đối với các hệ thống dữ liệu lớn, việc áp dụng FCA lên các hệ thống dữ liệu
này sẽ mất nhiều thời gian. Để rút ngắn thời gian khai phá dữ liệu, đầu tiên ta dùng
phương pháp phân cụm để phân dữ liệu lớn thành các cụm dữ liệu nhỏ hơn, sau đó áp
dụng FCA lên các cụm dữ liệu nhỏ hơn để rút trích luật phụ thuộc (thời gian FCA rút
trích luật trên các cụm giảm đi rất nhiều so với lúc chưa phân cụm). Kết quả thu được
sau khi áp dụng FCA lên các cụm nhỏ sẽ được tổng hợp lại và chúng ta sử dụng chúng
phục vụ cho quá trình khai phá dữ liệu trên hệ thống tương ứng.
v
MỤC LỤC
NHIỆM VỤ LUẬN VĂN THẠC SĨ............................................................................ iii
LỜI CÁM ƠN ................................................................................................................iv
TĨM TẮT LUẬN VĂN .................................................................................................v
DANH MỤC CÁC HÌNH .............................................................................................ix
DANH MỤC CÁC BẢNG ............................................................................................xi
CHƯƠNG 1. TỔNG QUAN ..........................................................................................1
1. 1. Khai phá dữ liệu ................................................................................................1
1. 2. Phân cụm để khai phá dữ liệu trong kinh doanh ...............................................2
1. 3. Sử dụng FCA để rút trích luật kinh doanh ........................................................3
1. 4. Nội dung luận văn .............................................................................................4
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU ................................5
2.1.
Các giai đoạn trong một dự án khai phá dữ liệu ...............................................5
2.1.1.
Giai đoạn tìm hiểu bài tốn (Business understanding phase) ....................6
2.1.2.
Giai đoạn tìm hiểu dữ liệu (Data understanding phase) ............................6
2.1.3.
Giai đoạn chuẩn bị dữ liệu (Data preparation phase) ................................6
2.1.4.
Giai đoạn mơ hình (Modeling phase) ........................................................6
2.1.5.
Giai đoạn đánh giá (Evaluation phase) ......................................................7
2.1.6.
Giai đoạn triển khai (Deployment phase) ..................................................7
2.2.
Các phương pháp khai phá dữ liệu....................................................................7
vi
2.2.1.
Phương pháp phân loại...............................................................................8
2.2.2.
Phương pháp ước lượng.............................................................................8
2.2.3.
Phương pháp dự đoán ................................................................................8
2.2.4.
Phương pháp phân cụm..............................................................................9
2.2.5.
Phương pháp mơ tả và tóm tắt thông tin....................................................9
2.3.
Khai phá dữ liệu bằng các phương pháp phân cụm ........................................10
2.3.1.
Các phương pháp phân cụm riêng phần...................................................10
2.3.2.
Các phương pháp phân cụm phân cấp .....................................................18
CHƯƠNG 3. PHÂN TÍCH KHÁI NIỆM HÌNH THỨC..........................................19
3. 1. Giới thiệu.........................................................................................................19
3. 2. Các khái niệm cơ bản ......................................................................................20
3. 3. Đồ thị lưới khái niệm.......................................................................................25
3. 4. Thuật giải FCA ................................................................................................27
CHƯƠNG 4. ÁP DỤNG FCA ĐỂ KHAI PHÁ DỮ LIỆU TRONG KINH DOANH..33
4. 1. Rút trích luật kinh doanh dùng kỹ thuật FCA .................................................34
4. 1. 1.
Tạo lưới khái niệm ...............................................................................35
4. 1. 2.
Rút trích luật phụ thuộc từ lưới khái niệm ...........................................38
4. 1. 3.
Khai phá luật phụ thuộc .......................................................................39
4. 1. 4.
Liên hệ giữa các loại biểu diễn tri thức trong FCA..............................41
4. 2. Ứng dụng minh họa “Sử dụng FCA để hỗ trợ quá trình lựa chọn dịch vụ”....42
4. 3. Cải tiến tốc độ rút trích luật kinh doanh..........................................................46
vii
CHƯƠNG 5. KẾT QUẢ RÚT TRÍCH LUẬT ..........................................................52
5. 1. Tập dữ liệu CarEvaluation...............................................................................52
5. 2. Tập dữ liệu Nursery.........................................................................................65
5. 3. Tập dữ liệu BalanceScale ................................................................................66
5. 4. Tập dữ liệu TicTacToe ....................................................................................69
5. 5. Tập dữ liệu Mushroom ....................................................................................70
5. 6. Đánh giá kết quả rút trích luật .........................................................................72
CHƯƠNG 6. KẾT LUẬN............................................................................................75
6. 1. Kết quả đạt được..............................................................................................75
6. 2. Hướng phát triển trong tương lai.....................................................................76
TÀI LIỆU THAM KHẢO ...........................................................................................77
BẢNG THUẬT NGỮ VIỆT – ANH ...........................................................................80
PHỤ LỤC A: SỬ DỤNG WEKA HỖ TRỢ PHÂN CỤM DỮ LIỆU ......................82
PHỤ LỤC B: ĐỊNH DẠNG ARFF .............................................................................85
PHỤ LỤC C: HƯỚNG DẪN SỬ DỤNG CHƯƠNG TRÌNH..................................87
viii
DANH MỤC CÁC HÌNH
Hình 2.1. Các giai đoạn trong một dự án khai phá dữ liệu. .............................................5
Hình 2.2. Xác định ranh giới các cụm dữ liệu. ..............................................................11
Hình 2.3. Giá trị trung bình mới của mỗi cụm...............................................................12
Hình 2.4. Đường ranh giới mới của các cụm. ................................................................13
Hình 2.5. Bước ước lượng: Gán trách nhiệm các Gaussian đến các điểm.....................15
Hình 2.6. Mỗi Gaussian di chuyển đến giá trị trung bình của tất cả các điểm. .............16
Hình 2.7. Phân cụm mờ..................................................................................................17
Hình 3.1. Lưới khái niệm của ngữ cảnh “Thức uống”...................................................23
Hình 3.2. Hai cụm khái niệm C1 và C 2 trong lưới khái niệm. ......................................24
Hình 3.3. Lưới khái niệm thu gọn nhãn của ngữ cảnh “Thức uống”.............................26
Hình 3.4. Tổng quan thuật giải xây dựng lưới khái niệm. .............................................27
Hình 3.5. Lưới khái niệm của ngữ cảnh một số loại thức uống.....................................29
Hình 3.6. Chi tiết thuật giải xây dựng lưới khái niệm. ..................................................30
Hình 3.7. Kết quả thực thi từng bước của thuật giải. .....................................................32
Hình 4.1. Các bước rút trích luật kinh doanh dùng kỹ thuật FCA.................................34
Hình 4.2. Dịch vụ du lịch. ..............................................................................................35
Hình 4.3. Giản đồ Hasse của lưới khái niệm cho dịch vụ du lịch..................................37
Hình 4.4. Lưới khái niệm của ngữ cảnh các loại dịch vụ. .............................................45
Hình 4.5. Cải tiến tốc độ rút trích luật kinh doanh.........................................................47
ix
Hình A.1. Giao diện chính của Weka. ...........................................................................82
Hình A.2. Mở tập tin định dạng arff. .............................................................................83
Hình A.3. Phân cụm dữ liệu...........................................................................................84
Hình C.1. Giao diện chính của chương trình FCA.........................................................87
Hình C.2. Thực thi chương trình....................................................................................88
Hình C.3. Kết quả sau khi chương trình thực thi. ..........................................................89
Hình C.4. Đồ thị lưới khái niệm.....................................................................................90
x
DANH MỤC CÁC BẢNG
Bảng 3.1. Ngữ cảnh hình thức một số loại thức uống....................................................21
Bảng 3.2. Ngữ cảnh hình thức một số loại thức uống được đánh nhãn từ a → e. .........28
Bảng 4.1. Các mẫu của dịch vụ du lịch..........................................................................35
Bảng 4.2. Ngữ cảnh hình thức một giá trị của dịch vụ du lịch. .....................................36
Bảng 4.3. Các khái niệm hình thức trong dịch vụ du lịch..............................................38
Bảng 4.4. Ngữ cảnh hình thức một số loại dịch vụ........................................................44
Bảng 4.5. Tập tất cả các khái niệm của ngữ cảnh hình thức một số loại dịch vụ. .........44
Bảng 4.6. Kết quả phân cụm dữ liệu dịch vụ du lịch thành 3 cụm. ...............................49
Bảng 4.7. Kết quả áp dụng FCA lên các cụm dữ liệu....................................................49
Bảng 4.8. Kết quả rút trích các tập luật phụ thuộc từ các lưới khái niệm......................50
Bảng 5.1. Ngữ cảnh hình thức nhiều giá trị của CarEvaluation. ...................................53
Bảng 5.2. Ngữ cảnh hình thức một giá trị của CarEvaluation. ......................................53
Bảng 5.3. Kết quả áp dụng FCA lên CarEvaluation. .....................................................54
Bảng 5.4. Tần số xuất hiện các luật phụ thuộc theo minsup. .........................................55
Bảng 5.5. Kết quả áp dụng FCA lên cluster1 của CarEvaluation...................................56
Bảng 5.6. Tần số xuất hiện các luật phụ thuộc của cluster1 theo minsup. .....................57
Bảng 5.7. Kết quả áp dụng FCA lên cluster2 của CarEvaluation...................................58
Bảng 5.8. Tần số xuất hiện các luật phụ thuộc của cluster2 theo minsup. .....................59
Bảng 5.9. Kết quả áp dụng FCA lên cluster3 của CarEvaluation...................................60
Bảng 5.10. Tần số xuất hiện các luật phụ thuộc của cluster3 theo minsup. ...................61
xi
Bảng 5.11. Tổng hợp kết quả áp dụng FCA lên CarEvaluation và 3 cụm dữ liệu.........62
Bảng 5.12. Tần số xuất hiện các luật phụ thuộc của CarEvaluation và 3 cụm dữ liệu..62
Bảng 5.13. Kết quả áp dụng FCA lên 2 cụm dữ liệu của CarEvaluation. .....................64
Bảng 5.14. So sánh thời gian thực thi các nhóm cụm của CarEvaluation. ....................64
Bảng 5.15. Kết quả áp dụng FCA lên Nursery và 3 cụm dữ liệu. .................................65
Bảng 5.16. Tần số xuất hiện các luật phụ thuộc của Nursery và 3 cụm dữ liệu. ...........66
Bảng 5.17. So sánh thời gian thực thi các nhóm cụm của Nursery. ..............................66
Bảng 5.18. Kết quả áp dụng FCA lên BalanceScale và 3 cụm dữ liệu..........................67
Bảng 5.19. Tần số xuất hiện các luật phụ thuộc của BalanceScale và 3 cụm dữ liệu. ..67
Bảng 5.20. So sánh thời gian thực thi các nhóm cụm của BalanceScale.......................68
Bảng 5.21. Kết quả áp dụng FCA lên TicTacToe và 3 cụm dữ liệu..............................69
Bảng 5.22. Tần số xuất hiện các luật phụ thuộc của TicTacToe và 3 cụm dữ liệu. ......69
Bảng 5.23. So sánh thời gian thực thi các nhóm cụm của TicTacToe...........................70
Bảng 5.24. Kết quả áp dụng FCA lên Mushroom và 3 cụm dữ liệu..............................71
Bảng 5.25. Tần số xuất hiện các luật phụ thuộc của Mushroom và 3 cụm dữ liệu. ......71
Bảng 5.26. So sánh thời gian thực thi các nhóm cụm của Mushroom...........................72
Bảng 5.27. So sánh thời gian rút trích luật khi phân dữ liệu thành 3 cụm.....................73
Bảng 5.28. So sánh thời gian rút trích luật khi phân dữ liệu thành các cụm. ................74
xii
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
CHƯƠNG 1. TỔNG QUAN
1. 1.
Khai phá dữ liệu
Sự phát triển của công nghệ thông tin và việc ứng dụng công nghệ thông tin vào các
lĩnh vực của đời sống, kinh tế xã hội trong nhiều năm qua cũng đồng nghĩa với lượng
dữ liệu đã được các cơng ty thu thập, lưu trữ và tích lũy nhiều lên. Các công ty đã lưu
trữ những dữ liệu này vì cho rằng trong nó ẩn chứa những giá trị nhất định nào đó. Tuy
nhiên, theo thống kê thì chỉ có một lượng nhỏ của những dữ liệu này là ln được phân
tích, số cịn lại họ khơng biết sẽ phải làm gì hoặc có thể làm gì với chúng nhưng họ vẫn
tiếp tục thu thập với ý nghĩ lo sợ rằng sẽ có cái gì đó quan trọng đã bị bỏ qua sau này
có lúc cần đến nó. Mặt khác, trong mơi trường cạnh tranh, người ta ngày càng cần có
nhiều thơng tin với tốc độ nhanh để trợ giúp việc ra quyết định và ngày càng có nhiều
câu hỏi mang tính chất định tính cần phải trả lời dựa trên một khối lượng dữ liệu khổng
lồ đã có. Để giải quyết tốt những nhu cầu như vậy, một kỹ thuật mới được ra đời, đó là
kỹ thuật Khai phá dữ liệu (Data Mining) [12]. Ngày nay, khai phá dữ liệu đang được
áp dụng một cách rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác nhau.
Khai phá dữ liệu là quá trình khảo sát và phân tích số lượng lớn dữ liệu để phát hiện ra
các mơ hình và các quy luật có ý nghĩa [2]. Khai phá dữ liệu có hai dạng: trực tiếp và
gián tiếp [4].
• Khai phá dữ liệu trực tiếp là cố gắng giải thích hoặc phân loại một số lĩnh vực
riêng biệt, ví dụ như mục tiêu lợi nhuận hay việc đáp ứng u cầu nào đó.
• Khai phá dữ liệu gián tiếp là cố gắng tìm các mơ hình hoặc các cụm dữ liệu
giống nhau mà khơng sử dụng các loại dữ liệu đã được thu gom trước.
Khai phá dữ liệu có liên quan mật thiết đến việc xây dựng các mơ hình. Một mơ hình
đơn giản là một thuật giải hay một tập các quy luật có liên quan đến tập dữ liệu nhập và
CHƯƠNG 1: TỔNG QUAN
1
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
kết quả cuối cùng. Phương pháp truy hồi, các mạng neural, các cây quyết định là các
kỹ thuật tạo ra các mơ hình [3].
Các lĩnh vực có ứng dụng khai phá dữ liệu bao gồm [12]: thiên văn học, sinh học, bào
chế thuốc, thương mại điện tử, phát hiện lừa đảo, quảng cáo, quản lý quan hệ khách
hàng, chăm sóc sức khỏe, viễn thơng, thể thao, giải trí, đầu tư, máy tìm kiếm (web), …
1. 2.
Phân cụm để khai phá dữ liệu trong kinh doanh
Trong kinh doanh, khai phá dữ liệu được ứng dụng rộng rãi. Mục đích của khai phá dữ
liệu trong kinh doanh là để phục vụ cho mục đích tạo hiệu quả trong quảng cáo, bán
hàng của công ty, các hoạt động hỗ trợ khách hàng xuyên suốt để hiểu khách hàng tốt
hơn, …
Một trong những ứng dụng kinh điển của khai phá dữ liệu trong lĩnh vực kinh doanh là
sử dụng kỹ thuật phân cụm (clustering) [11] để phân loại khách hàng dựa trên các
thông tin giao dịch. Qua phân tích các cụm (cluster) khách hàng được tạo ra, ta có thể
đưa ra các quyết định kinh doanh hợp lý. Chẳng hạn như việc quyết định tiếp cận một
mặt hàng nào đó đối với một nhóm khách hàng thơng qua hình thức gửi thư quảng cáo.
Dựa trên kết quả phân tích, hệ thống có khả năng đưa ra lời tiên đoán về kết quả đáp
ứng thư quảng cáo của một nhóm khách hàng.
Phương pháp phân cụm khách hàng như trên tỏ ra có hiệu quả và thu được một số kết
quả nhất định. Tuy nhiên, khi áp dụng cho các tình huống phức tạp hơn, tức là khi ta
cần chọn cách tiếp cận cho một hệ thống nhiều mặt hàng thay vì chỉ một, phương pháp
tiếp cận dựa trên kỹ thuật phân cụm như trên cần phải được cải tiến để linh hoạt hơn.
Ví dụ, để có thể đưa ra một tiên đốn chính xác về một cụm khách hàng đối với một
mặt hàng cụ thể, ta có thể cần phải phân cụm thông tin khách hàng một cách chi tiết,
trong khi đối với một mặt hàng khác, việc phân cụm một cách quá chi tiết có thể tạo ra
nhiều cụm khách hàng không cần thiết. Điều này dẫn đến khả năng chúng ta phải phân
CHƯƠNG 1: TỔNG QUAN
2
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
cụm nhiều lần cho các mặt hàng khác nhau tương ứng với nhiều mức chi tiết khác
nhau. Mặt khác, phương pháp phân tích các cụm thông tin về khách hàng được tạo ra
như trên chưa xét đến mối quan hệ giữa các mặt hàng để có thể đưa ra lời tiên đốn và
gợi ý để xây dựng một chiến dịch tiếp thị cho nhiều mặt hàng có liên quan thay vì chỉ
một mặt hàng đơn lẻ.
1. 3.
Sử dụng FCA để rút trích luật kinh doanh
Trong các kỹ thuật phân cụm, phương pháp phân cụm phân cấp (hierarchical
clustering) [11] thích hợp để giải quyết vấn đề vừa nêu ra vì chúng tạo ra một hệ phân
cấp (hierarchy) của các cụm dữ liệu được tạo ra. Nhờ đó, chúng ta có thể phân tích
thơng tin về các cụm dữ liệu ở nhiều mức chi tiết khác nhau dựa trên hệ phân cấp mà
không cần phải tiến hành phân cụm dữ liệu nhiều lần. Đặc biệt, phương pháp phân cụm
dựa trên kỹ thuật Phân tích khái niệm hình thức (FCA) [11] là một phương pháp phân
cụm phân cấp đáng chú ý gần đây vì phương pháp này có thể xây dựng một hệ phân
cấp dạng lưới, thay vì dạng cây như các phương pháp phân cụm phân cấp cổ điển khác,
nhờ vậy ta có thể dẫn xuất nhiều thông tin hơn cho người sử dụng. Mặt khác FCA cũng
cung cấp khả năng phân tích và trích xuất các luật phụ thuộc (dependency rule) [3] trên
lưới phân cấp (lưới khái niệm) được tạo ra. Các luật phụ thuộc này được áp dụng để
phân tích mối liên hệ giữa các mặt hàng nhằm rút trích các luật kinh doanh cho từng
trường hợp ứng dụng cụ thể.
Trong dự án nghiên cứu này, chúng tôi sẽ đưa ra một phương pháp để phân tích các hệ
thống dữ liệu kinh doanh khác nhau. Đối với mỗi loại hệ thống dữ liệu, chúng tơi sẽ
tìm hiểu mối liên hệ lẫn nhau giữa các thuộc tính dữ liệu bên trong chúng để từ đó có
thể rút trích các luật kinh doanh phù hợp. Trước tiên, chúng tơi xây dựng một chương
trình áp dụng phương pháp phân cụm dựa trên FCA để tạo ra lưới khái niệm của hệ
thống dữ liệu. Sau đó, chương trình sẽ dựa trên lưới khái niệm để rút trích các luật phụ
thuộc giữa các thuộc tính. Dựa vào các luật phụ thuộc thu được, ta sẽ tìm hiểu mối liên
CHƯƠNG 1: TỔNG QUAN
3
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
hệ giữa các thuộc tính để từ đó có thể đề nghị một phương pháp nhằm xây dựng các
chiến dịch kinh doanh phù hợp cho từng hệ thống dữ liệu.
Bên cạnh đó, đối với các hệ thống có lượng dữ liệu tương đối lớn, thời gian chạy của
chương trình trên các hệ thống dữ liệu này sẽ rất lâu mới cho ra kết quả. Vì vậy, để cải
tiến thời gian chạy của chương trình, hệ thống dữ liệu lớn sẽ được phân thành các cụm
dữ liệu nhỏ hơn bằng phương pháp phân cụm. Sau đó, ta áp dụng kỹ thuật FCA lên các
cụm nhỏ hơn để trích xuất các luật phụ thuộc tương ứng. Với các luật phụ thuộc thu
được của các cụm, ta sẽ hội chúng lại và đưa ra các phân tích trên các luật phụ thuộc
này cũng như các luật kinh doanh cho hệ thống dữ liệu đang xét.
1. 4.
Nội dung luận văn
Luận văn trình bày bao gồm 6 chương. Chương 1 giới thiệu tổng quan về khai phá dữ
liệu, khai phá dữ liệu trong kinh doanh và nội dung yêu cầu thực hiện của luận văn.
Chương 2 trình bày cơ sở lý thuyết về khai phá dữ liệu. Chương 3 trình bày lý thuyết
FCA. Chương 4 ứng dụng FCA để khai phá dữ liệu trong kinh doanh và mô tả phương
pháp cải tiến tốc độ khai phá dữ liệu. Chương 5 là kết quả rút trích luật của việc áp
dụng kỹ thuật FCA trên các tập dữ liệu. Chương 6 tóm tắt những vấn đề đã làm được,
chưa làm được và định hướng phát triển của luận văn trong tương lai.
CHƯƠNG 1: TỔNG QUAN
4
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ
DỮ LIỆU
2.1.
Các giai đoạn trong một dự án khai phá dữ liệu
Một dự án khai phá dữ liệu (Data mining project) [2] thường bao gồm 6 giai đoạn
(phase), minh họa ở Hình 2.1. Chú ý rằng chuỗi các giai đoạn có thể thay đổi, điều này
có nghĩa là một giai đoạn kế tiếp phụ thuộc vào kết quả của giai đoạn trước đó. Các
giai đoạn phụ thuộc lẫn nhau dựa vào hướng các mũi tên. Ví dụ như ở giai đoạn mơ
hình, tùy thuộc vào hành vi và thuộc tính của mơ hình, chúng ta có thể quay trở về giai
đoạn chuẩn bị dữ liệu hoặc có thể chuyển sang giai đoạn đánh giá mơ hình.
Giai đoạn tìm hiểu
bài tốn
Giai đoạn triển khai
Giai đoạn đánh giá
Giai đoạn tìm hiểu
dữ liệu
Giai đoạn chuẩn bị
dữ liệu
Giai đoạn mơ hình
Hình 2.1. Các giai đoạn trong một dự án khai phá dữ liệu.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
5
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
6 giai đoạn của một dự án khai phá dữ liệu được trình bày như sau:
2.1.1. Giai đoạn tìm hiểu bài tốn (Business understanding phase)
Giai đoạn này ta sẽ hiểu bài toán, đưa ra các mục tiêu và các yêu cầu của bài toán. Với
các mục tiêu đã tìm được, ta sẽ chuyển đổi chúng sang định dạng của bài toán khai phá
dữ liệu và chuẩn bị sơ bộ chiến lược các mục tiêu phải hồn thành.
2.1.2. Giai đoạn tìm hiểu dữ liệu (Data understanding phase)
Quá trình lựa chọn dữ liệu sẽ được thực hiện trước hết trong giai đoạn tìm hiểu dữ liệu.
Sau khi lựa chọn dữ liệu xong, chúng ta phân tích dữ liệu và đánh giá chất lượng dữ
liệu. Nếu dữ liệu tìm được đạt yêu cầu thì ta sẽ chuyển sang giai đoạn kế tiếp, cịn
ngược lại thì q trình thực hiện có thể trở về giai đoạn tìm hiểu bài toán.
2.1.3. Giai đoạn chuẩn bị dữ liệu (Data preparation phase)
Dữ liệu tìm được sẽ được phân tích và loại bỏ các dữ liệu thừa để được tập dữ liệu cuối
cùng. Từ tập dữ liệu cuối cùng thu được, ta lựa chọn các trường hợp, các biến để phục
vụ cho việc phân tích dữ liệu. Bên cạnh đó, các dữ liệu thô sẽ được tiếp tục xử lý sao
cho chúng sẵn sàng cho việc ứng dụng vào các công cụ mơ hình.
2.1.4. Giai đoạn mơ hình (Modeling phase)
Trong giai đoạn mơ hình, đầu tiên ta lựa chọn và áp dụng các kỹ thuật mơ hình lên hệ
thống dữ liệu đang phân tích. Sau đó, các cách thiết lập mơ hình được kiểm tra để tối
ưu kết quả. Thông thường, các kỹ thuật khác nhau sẽ được áp dụng cho cùng một bài
toán khai phá dữ liệu. Ở cuối giai đoạn mơ hình, chúng ta sẽ quay trở về giai đoạn
chuẩn bị dữ liệu nếu có kỹ thuật khai phá dữ liệu nào yêu cầu hoặc chuyển sang giai
đoạn đánh giá.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
6
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
2.1.5. Giai đoạn đánh giá (Evaluation phase)
Các mơ hình được áp dụng trong giai đoạn mơ hình phải được đánh giá chất lượng và
hiệu quả trước khi chúng được mang ra sử dụng rộng rãi. Giai đoạn đánh giá sẽ xác
định mơ hình đạt nào được các mục tiêu đã đề ra để từ đó quyết định sử dụng kết quả
của chúng phục vụ cho việc khai phá dữ liệu.
2.1.6. Giai đoạn triển khai (Deployment phase)
Việc tạo ra mơ hình khơng báo hiệu dự án đã hồn thành, cần phải áp dụng các mơ
hình có chất lượng vào các ứng dụng thực tiễn để thực hiện mục tiêu ban đầu của dự án
khai phá dữ liệu.
2.2.
Các phương pháp khai phá dữ liệu
Có 5 phương pháp khai phá dữ liệu thường dùng [4]:
• Phương pháp phân loại.
• Phương pháp đánh giá, ước lượng.
• Phương pháp dự đốn.
• Phương pháp phân cụm.
• Phương pháp mơ tả và tóm tắt thơng tin.
Ba phương pháp đầu là các phương pháp khai phá dữ liệu trực tiếp. Kết quả của ba
phương pháp này là giá trị của biến mục tiêu. Phương pháp phân cụm là phương pháp
khai phá dữ liệu gián tiếp. Kết quả của phương pháp này là khám phá cấu trúc của dữ
liệu. Cấu trúc này không phải là giá trị của biến mục tiêu. Phương pháp mơ tả và tóm
tắt thơng tin là một cơng việc mang tính mơ tả. Phương pháp này có thể khai phá dữ
liệu trực tiếp hoặc gián tiếp.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
7
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
2.2.1. Phương pháp phân loại
Phương pháp phân loại (Classification) là phương pháp khai phá dữ liệu được dùng
nhiều nhất. Phương pháp phân loại nghiên cứu các đặc tính của đối tượng được trình
bày và gán cho nó vào một tập các loại được định nghĩa trước.
Phương pháp phân loại được mô tả bởi các loại được định nghĩa trước và một tập huấn
luyện bao gồm các mẫu đã được phân loại. Phương pháp này là một mơ hình mà ở đó
nó chuyển dữ liệu chưa phân loại thành dữ liệu đã được phân loại.
2.2.2. Phương pháp ước lượng
Phương pháp phân loại cho kết quả rời rạc: đúng hoặc sai. Phương pháp ước lượng
(Estimation) cho kết quả có tính liên tục. Phương pháp ước lượng thường dùng để thực
hiện công việc phân loại. Phương pháp này có điểm mạnh là nó có thể phân loại được
các trường dữ liệu riêng biệt. Để thấy đặc tính quan trọng này ta xét ví dụ: một cơng ty
sản xuất giày trượt tuyết dự kiến quảng cáo sản phẩm đến 500.000 khách hàng, nếu
phương pháp phân loại được sử dụng và khoảng 1,5 triệu khách hàng được tìm thấy,
vậy cách đơn giản là gởi thư quảng cáo đến 500.000 khách hàng ngẫu nhiên. Tuy nhiên
có cách khác đó là ta ước lượng xác suất mua hàng của khách hàng nào khi gởi thư
quảng cáo dựa vào các thông tin ước lượng như sau:
o Ước lượng số trẻ con trong một gia đình.
o Ước lượng tồn bộ số người trong gia đình.
o Ước lượng vịng đời sử dụng sản phẩm của khách hàng.
o Ước lượng xác suất khách hàng sẽ mua hàng khi gởi thư quảng cáo.
2.2.3. Phương pháp dự đoán
Phương pháp dự đoán (Prediction) cũng gần giống như phương pháp phân loại và
phương pháp ước lượng. Bên cạnh đó nó cịn bổ sung thêm một số dự đốn về hành vi
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
8
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
tương lai hay giá trị tương lai có thể ước lượng. Trong phương pháp dự đốn, để kiểm
tra tính chính xác thì ta chỉ có cách là đợi nó xảy ra trong tương lai và lúc đó mới biết.
Phương pháp này sử dụng mơ hình dự đốn mà ở đó có mối quan hệ giữa các dữ liệu
vào và các dự đoán liên quan đến biến đích.
Các kỹ thuật được sử dụng để phân loại và ước lượng thì có thể sử dụng cho phương
pháp dự đoán bằng cách sử dụng các tập dữ liệu huấn luyện. Khi đã có mơ hình sử
dụng dữ liệu và các tập dữ liệu huấn luyện thì kết quả mà mơ hình thu được chính là
một kết quả dự đoán về tương lai.
2.2.4. Phương pháp phân cụm
Phương pháp phân cụm (Clustering) là phương pháp phân các dữ liệu không đồng nhất
thành các cụm dữ liệu nhỏ hơn nhưng đồng nhất với nhau. Phương pháp phân cụm
khác phương pháp phân loại ở chỗ các cụm dữ liệu được phân ra và chúng không thuộc
các lớp dữ liệu được định nghĩa trước. Các trường dữ liệu tạo thành một cụm phụ thuộc
vào các đặc điểm giống nhau giữa chúng.
Công việc phân cụm được xem như là bước đầu tiên trong q trình khai phá dữ liệu
hay mơ hình. Ví dụ trong lĩnh vực mua sắm, để quảng cáo đến khách hàng sao cho các
sản phẩm được bán chạy nhất thì trước hết ta phải chia khách hàng thành các cụm dựa
vào các sở thích mua sắm, sau đó sẽ lựa chọn cách quảng cáo tốt nhất cho mỗi cụm
khách hàng.
2.2.5. Phương pháp mơ tả và tóm tắt thơng tin
Thỉnh thoảng mục đích của khai phá dữ liệu chỉ đơn giản là mô tả thêm về dữ liệu
nhằm giúp hiểu rõ hơn về nhân sự, sản phẩm, khách hàng, … Lúc đó ta sẽ dùng
Phương pháp mơ tả và tóm tắt thơng tin (Profiling). Một mơ tả đủ tốt khi nó đưa ra
cách giải thích đầy đủ, rõ ràng và hợp lý.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
9
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
2.3.
Khai phá dữ liệu bằng các phương pháp phân cụm
Phân cụm [7] là quá trình xử lý chia các tập dữ liệu thành các nhóm, mỗi nhóm chứa
tập các phần tử dữ liệu giống nhau. Một cách tổng quát, các phương pháp phân cụm
chia làm hai loại: phân cụm riêng phần (partitioning clustering) và phân cụm phân cấp
(hierarchical clustering).
2.3.1. Các phương pháp phân cụm riêng phần
Các phương pháp phân cụm riêng phần chia dữ liệu ra thành một số cụm con và sau đó
chúng sẽ sử dụng các heuristic để tối ưu các cụm con này. Để đánh giá được tính hiệu
quả của phương pháp phân cụm này, người ta định nghĩa một hàm mục tiêu. Dựa vào
giá trị của hàm mục tiêu ta có thể lặp q trình phân cụm cho đến khi đạt giá trị của
hàm mục tiêu thì ngưng.
Phương pháp phân cụm k–means
Phương pháp phân cụm k–means [12] dựa trên thuật giải k–means. Thuật giải k–means
là một trong những giải thuật được sử dụng nhiều nhất trong phương pháp phân cụm
dữ liệu. Chữ “k” trong tên của giải thuật thể hiện ý nghĩa của số cụm dữ liệu được chia
ra sau khi chạy xong thuật giải. Thuật giải k–means bao gồm 3 bước:
Bước thứ nhất, thuật giải chọn ngẫu nhiên k điểm dữ liệu (trường dữ liệu) làm chuẩn, k
điểm đầu tiên này ta gọi là k seed. Điều đơn giản nhất để chọn k seed là ta chọn k
trường dữ liệu đầu tiên. Trong lúc này, mỗi seed được xem như là một cụm dữ liệu
chưa phát triển với chỉ một điểm. Ta xét ví dụ với k = 3, điều này có nghĩa rằng có 3
cụm dữ liệu.
Bước thứ hai, gán mỗi trường dữ liệu đến seed gần nhất. Có một cách để làm được
điều này là ta tìm các ranh giới của các cụm dữ liệu, ví dụ ta xem Hình 2.2.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
10
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
Seed 2
Seed 3
Seed 1
Hình 2.2. Xác định ranh giới các cụm dữ liệu.
Ranh giới giữa hai cụm là các điểm mà ở đó khoảng cách các điểm đến hai cụm dữ liệu
là tương đương nhau. Để xác định ranh giới, đầu tiên ta nối 3 seed lại với nhau (3
đường gạch chấm), kế đến là gạch 3 đường trung trực (3 đường gạch đen đậm) cho 3
đường nối của 3 seed, đến lúc này ta đã được 3 đường ranh giới dành cho 3 cụm. Dựa
vào 3 đường ranh giới để xác định điểm nào sẽ thuộc seed nào. Trong không gian 3
chiều, ranh giới của các cụm là các mặt phẳng. Trong không gian N chiều, ranh giới
của các cụm chính là các mặt N-1 chiều.
Khi xác định được các ranh giới, lúc này có thể tính được được điểm nào sẽ thuộc cụm
dữ liệu nào. Ví dụ, ta xem một điểm được bao quanh bởi hình vng trong Hình 2.2,
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
11
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
dựa vào các seed đã được khởi tạo, ta biết được điểm này sẽ gán cho cụm dữ liệu được
điều khiển bởi seed 2. Vào lúc này, ta có thể gán mọi điểm vào các cụm dữ liệu tương
ứng. Trong bước 2, khoảng cách của các điểm trong mỗi seed đều được tính và khoảng
cách nhỏ nhất cũng được xác định.
Bước thứ 3, tính các giá trị trung bình của các cụm dữ liệu, giá trị trung bình của một
cụm đơn giản chỉ là tính giá trị trung bình khoảng cách của tất cả các điểm trong cụm.
Hình 2.3 mơ tả các giá trị trung bình mới của các cụm. Hình mũi tên thể hiện đường đi
của các seed nguyên thủy đến giá trị trung bình mới của các seed mới trong cụm tương
ứng.
Hình 2.3. Giá trị trung bình mới của mỗi cụm.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
12
KHAI PHÁ DỮ LIỆU TRONG KINH DOANH
Sau khi các giá trị trung bình được tìm thấy, thuật giải lặp lại bước thứ 2. Với mỗi
bước lặp, mỗi điểm sẽ chỉ được gán một lần vào một cụm gần nhất. Hình 2.4 mô tả các
đường ranh giới mới của các cụm. Chú ý rằng điểm có hình vng bao quanh bây giờ
đã thuộc cụm 1, điểm này khơng cịn thuộc cụm 2 nữa.
Hình 2.4. Đường ranh giới mới của các cụm.
Quá trình gán các điểm đến các cụm và tính lại giá trị trung bình được lặp cho đến khi
các đường ranh giới khơng cịn thay đổi nữa. Tuy nhiên, thường thì trong thuật giải k–
means sẽ có một hàm mục tiêu, sau một số bước lặp giá trị hàm mục tiêu đạt được thì
thuật giải sẽ khơng lặp nữa, lúc này kết quả thu được là các cụm dữ liệu mong muốn.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ KHAI PHÁ DỮ LIỆU
13