ðề tài này giới thiệu một cách tổng quan về các kĩ thuật khai phá dữ liệu, mơ hình, kiến trúc, phạm vi ứng dụng, lợi ích và đề xuất các phương pháp và giải thuật để giải quyết bài tốn dự
Trang 1LỜI CẢM ƠN
Trước hết, tôi xin chân thành gửi lời tri ân sâu sắc ựến Tiến sĩ Nguyễn đức Cường
Thầy ựã giới thiệu ựề tài và hướng dẫn tôi trong giai ựoạn làm ựề cương cũng như giai
ựoạn luận văn Thầy ựã có những hướng dẫn nghiên cứu khoa học và những ý kiến
ựóng góp rất quý báu Những lời chỉ dạy và ựộng viên của Thầy sẽ mãi là hành trang
ghi nhớ của tôi trên bước ựường học vấn và sự nghiệp sau này
Tôi xin trân trọng cảm ơn giảng viên phản biện Tiến Sĩ Lê Văn Dực và Tiến Sĩ
Quản Thành Thơ cùng các Thầy trong hội ựồng ựã dành nhiều thời gian ựể chỉnh sửa
và cho tôi nhiều ý kiến bổ ắch về cách trình bày cũng như phương pháp thực hiện luận
văn này
Tôi cũng xin bày tỏ lòng cảm ơn sâu sắc ựến tất cả các thầy cô trong khoa Công
Nghệ Thông Tin và các khoa khác ựã giảng dạy cho tôi trong suốt thời gian học tập
Cao Học tại trường, truyền ựạt cho tôi những kiến thức quý báu không những phục vụ
tốt cho ựề tài này mà còn cho công việc sau này của tôi
Tôi cũng xin trân trọng gửi lời cảm ơn ựến các anh chị công tác tại phòng mua
hàng, phòng quản lý thông tin của Công ty Metro Cash & Carry Việt Nam ựã dành
thời gian hỗ trợ và ựóng góp những ý kiến thực tiễn cho ựề tài này
Tôi xin chân thành cảm ơn Phòng đào Tạo Sau đại học ựã thiết lập một chương
trình Thạc sĩ Khoa học máy tắnh rất có giá trị mà tôi ựược danh dự theo học trong hai
năm qua
Tôi cũng chân thành cảm ơn gia ựình, tất cả những người thân và bạn bè ựã luôn
hết lòng ủng hộ, ựộng viên và giúp ựỡ tôi trong suốt thời gian học tập và làm việc
Cuối cùng, tôi xin gửi ựến tất cả mọi người lời chúc sức khỏe, hạnh phúc và thành
công
TP.HCM, ngày 07 tháng 09 năm 2007
Học viên
Trang 2TĨM TẮT
Khám phá tri thức trong cơ sở dữ liệu (Knowledge Discovery in Databases) đang là
một xu hướng phát triển mạnh của nền cơng nghệ thơng tin thế giới Nĩ cĩ khả năng ứng
dụng vào rất nhiều lớp bài tốn thực tế khác nhau Bước quan trọng nhất của quá trình này
là khai phá dữ liệu, giúp người sử dụng thu được những tri thức hữu ích từ những cơ sở dữ
liệu hoặc các nguồn dữ liệu khổng lồ khác Rất nhiều doanh nghiệp và tổ chức trên thế giới
đã ứng dụng kĩ thuật khai phá dữ liệu vào hoạt động sản xuất kinh doanh của mình và đã
thu được những lợi ích to lớn
Trong lĩnh vực kinh doanh siêu thị, khai phá dữ liệu tỏ ra đặc biệt hiệu quả vì siêu thị
là ngành cĩ số lượng sản phẩm đa dạng, số lượng khách hàng rất lớn và cĩ lượng dữ liệu
cần lưu trữ khổng lồ Bên cạnh đĩ, thị trường siêu thị luơn luơn biến động và đầy cạnh
tranh Chính vì vậy, việc nghiên cứu và áp dụng kĩ thuật khai phá dữ liệu vào hoạt động
sản xuất kinh doanh của siêu thị là hết sức cần thiết
ðề tài này giới thiệu một cách tổng quan về các kĩ thuật khai phá dữ liệu, mơ hình,
kiến trúc, phạm vi ứng dụng, lợi ích và đề xuất các phương pháp và giải thuật để giải quyết
bài tốn dự báo về doanh số bán hàng của tập đồn siêu thị Metro Cash & Carry Việt Nam
để hỗ trợ việc đặt hàng Nghiên cứu và sử dụng phương pháp hồi quy áp dụng lên các mơ
hình tốn học phổ biến, trong đĩ quá trình đi tìm các hệ số ước lượng được giải quyết bởi
giải thuật Nelder-Mead Giải thuật Nelder-Mead là giải thuật tìm kiếm cĩ hướng, được sử
dụng để tìm giá trị nhỏ nhất sai số dự báo của hàm số tốn học cho đến khi giá trị nhỏ nhất
đạt đến độ hội tụ
Kết quả ứng dụng của đề tài là hỗ trợ các nhà quản lý về mua bán hàng và tiếp thị
trong việc ra quyết định đặt hàng và đưa ra các chiến lược kinh doanh hợp lý, nhằm mục
đích đem lại lợi nhuận tối đa cho siêu thị
Trang 3MỤC LỤC
LỜI CẢM ƠN i
TÓM TẮT ii
MỤC LỤC iii
DANH MỤC HÌNH viii
DANH MỤC BẢNG x
DANH MỤC VIẾT TẮT xi
PHẦN 1 PHÁT BIỂU VẤN ðỀ 1
1.1 Mở ñầu 1
1.2 ðề tài nghiên cứu 2
1.2.1 Sự cần thiết của ñề tài 2
1.2.2 ðặt vấn ñề .4
1.2.3 Giải quyết vấn ñề 4
1.3 ðối tượng và phạm vi nghiên cứu 5
1.3.1 ðối tượng nghiên cứu 5
1.3.2 Phạm vi nghiên cứu của ñề tài 6
1.3.3 Ý nghĩa thực tiễn của ñề tài 6
1.3.3.1 Về mặt học thuật 6
1.3.3.2 Về mặt ứng dụng 7
1.4 Nội dung trình bày 7
PHẦN 2 CƠ SỞ LÝ THUYẾT 9
2.1 Cơ sở lý thuyết khai phá dữ liệu 9
2.1.1 Giới thiệu về khai phá dữ liệu 9
2.1.2 Các quá trình của mô hình khai phá dữ liệu 10
2.1.2.1 Tìm hiểu nghiệp vụ và dữ liệu 11
Trang 42.1.2.2 Chuẩn bị dữ liệu 12
2.1.2.3 Mô hình hoá dữ liệu 13
2.1.2.4 Hậu xử lý và ựánh giá 14
2.1.2.5 Triển khai 14
2.1.3 Dữ liệu nhập 14
2.1.4 Các nhóm phương pháp khai phá dữ liệu cơ bản 15
2.1.5 Dữ liệu xuất 15
2.1.6 đánh giá hệ thống khai phá dữ liệu 16
2.2 Các tiêu chuẩn và ứng dụng của khai phá dữ liệu 16
2.2.1 Các tiêu chuẩn 16
2.2.2 Các ứng dụng 18
2.3 Các phương pháp giải quyết vấn ựề dự báo 19
2.3.1 Các phương pháp hồi quy tuyến tắnh 19
2.3.1.1 Giới thiệu 19
2.3.1.2 Phương pháp hồi quy tuyến tắnh ựơn 20
2.3.1.3 Phương pháp hồi quy tuyến tắnh ựa biến 23
2.3.2 Phương pháp hồi quy phi tuyến 25
2.3.2.1 Giới thiệu 25
2.3.2.2 Hệ số tương quan 27
2.3.2.3 Khái niệm làm trơn 28
2.3.2.4 đường khuynh hướng 29
2.3.3 Các dạng mô hình toán học 31
Trang 52.3.3.4 Hàm phân phối log-Normal hai tham số 34
2.3.3.5 Hàm phân phối Log-normal ba tham số 34
2.3.3.6 Hàm phân bố logistic 35
2.3.3.7 Hàm phân phối Lorentzian 35
2.3.3.8 Hàm phân phối Poisson 36
2.3.3.9 Hàm phân phối Gumbel có hai tham số 36
2.3.3.10 Hàm phân phối Fréchet 38
2.3.3.11 Hàm phân phối Weibull 38
2.3.3.12 Hàm phân phối mũ 40
2.3.3.13 Hàm ngưỡng Sigmoid 40
2.3.3.14 đánh giá 41
2.3.4 Hồi quy và chuỗi thời gian 41
2.3.4.1 Giới thiệu 41
2.3.4.2 Phân tắch xu hướng biến ựộng của chuỗi thời gian 42
2.3.4.3 Phân tắch tắnh thời vụ của chuỗi thời gian 44
2.4 Giải thuật Nelder-Mead 46
2.4.1 Giới thiệu 46
2.4.2 Giải thuật Nelder-Mead 46
2.4.3 Một bước lặp của giải thuật NelderỜMead 47
2.5 Thư viện WEKA 50
2.5.1 Giới thiệu 50
2.5.2 Phát triển ứng dụng dựa trên Weka 54
2.5.3 Phần mềm Weka 55
2.5.3.1 Explorer 56
Trang 62.5.3.3 Experimenter 57
2.5.3.4 Simple CLI 58
PHẦN 3 PHÂN TÍCH DỮ LIỆU NGHIỆP VỤ 60
3.1 Phân tắch cơ sở dữ liệu của siêu thị 60
3.1.1 Hệ thống data warehouse 61
3.1.2 Hệ thống quản lý doanh số thưởng 63
3.2 Giải quyết bài toán 66
3.3 Bài toán dự báo doanh số bán của sản phẩm 66
3.4 Tắnh toán doanh số ựặt hàng cho nhà cung cấp 67
3.5 Hỗ trợ ra quyết ựịnh 67
PHẦN 4 THIẾT KẾ VÀ HIỆN THỰC 69
4.1 Thiết kế 69
4.1.1 Tìm hiểu nghiệp vụ và các hệ thống cơ sở dữ liệu 69
4.1.2 Trắch xuất dữ liệu 69
4.1.3 Tiền xử lý 71
4.1.4 Chọn mô hình 71
4.1.5 Chọn mô hình tốt nhất 71
4.1.6 Dữ liệu ựầu vào cho bước dự báo 72
4.1.7 Kết quả dự báo 72
4.1.8 đánh giá kết quả dự báo 72
4.2 Hiện thực 73
4.2.1 Dữ liệu ban ựầu: 73
4.2.2 Dữ liệu của từng sản phẩm 74
4.2.3 Tạo mô hình 75
Trang 74.3 Hiện thực hồi quy phi tuyến tắnh sử dụng giải thuật Nelder-Mead 80
4.4 Công cụ phát triển và giao diện của chương trình 82
4.4.1 Môi trường và công cụ phát triển 82
4.4.2 Giao diện chương trình 82
4.5 Một số dạng ựồ thị của chương trình 86
PHẦN 5 đÁNH GIÁ VÀ KẾT LUẬN 89
5.1 đánh giá kết quả 89
5.1.1 Phép so sánh 1 90
5.1.2 Phép so sánh 2 95
5.1.3 Phép so sánh 3 96
5.1.4 So sánh trực quan 96
5.1.5 độ chắnh xác 98
5.2 Sử dụng giá trị dự báo ựể hỗ trợ việc ựặt hàng 98
5.2.1 Quy tắc nghiệp vụ (Business rule) 98
5.2.2 Áp dụng giá trị dự báo vào hệ thống BAS 101
5.3 Kết luận 101
5.3.1 Những kết quả ựạt ựược 101
5.3.2 Những hạn chế 102
5.4 Hướng phát triển 102
5.4.1 Về mặt học thuật 102
5.4.2 Về mặt ứng dụng 103
TÀI LIỆU THAM KHẢO 105
PHỤ LỤC 1: KẾT QUẢ TÍNH TOÁN CỦA PHÉP SO SÁNH 1 107
PHỤ LỤC 2: KẾT QUẢ TÍNH TOÁN CỦA PHÉP SO SÁNH 2 111
PHỤ LỤC 3: KẾT QUẢ TÍNH TOÁN CỦA PHÉP SO SÁNH 3 117
PHỤ LỤC 4: đÁNH GIÁ CỦA NHÀ QUẢN LÝ SIÊU THỊ 125
Trang 8DANH MỤC HÌNH
Hình 2.1 Mô hình các bước khai phá dữ liệu 11
Hình 2.2 Sơ ñồ các quá trình của phương pháp CRISP-DM [15] 18
Hình 2.3 ðồ thị biểu diễn mối quan hệ giữa năm kinh nghiệm và lương 23
Hình 2.4 ðồ thị thể hiện ñường khuynh hướng giá trị doanh số bán theo năm 30
Hình 2.5 ðường khuynh hướng thể hiện ñến giá trị tương lai 30
Hình 2.6 Hình dạng của hàm ña thức bậc 5 32
Hình 2.7 Hình dạng biểu diễn của hàm phân bố Gauss 33
Hình 2.8 Hình dạng của hàm log-normal hai tham số 34
Hình 2.9 Hình dạng của hàm phân phối Log-normal ba tham số 35
Hình 2.10 Hình dạng của hàm phân phối Lorentzian 36
Hình 2.11 Hình dạng của hàm Poisson khi µ = 1 37
Hình 2.12 Hình dạng của hàm phân phối Gumbel có hai tham số 37
Hình 2.13 Hình dạng của ñồ thị hàm Frechet 38
Hình 2.14 Hình dạng ñồ thị của hàm số Weibull 39
Hình 2.15 Hình dạng của hàm mũ hai tham số 40
Hình 2.16 ðồ thị biểu diễn xu hướng của doanh số bán hàng 44
Hình 2.17 Giải thuật Nelder–Mead sau bước ñối xứng và mở rộng (reflection and expansion),với ñơn hình ban ñầu ñược vẽ với ñường nét ñứt 49
Hình 2.18 Giải thuật Nelder-Mead sau bước rút gọn phía ngoài, rút gọn bên trong và bước co lại 49
Hình 2.19 Giao diện trực quan của công cụ WEKA 52
Hình 2.20 Giao diện chính của phần mềm WEKA 55
Hình 2.21 Giao diện của module Explorer trong weka 56
Hình 2.22 Giao diện của module KnowledgeFlow của weka 57
Hình 2.23 Giao diện của Experimenter 58
Trang 9Hình 3.3 Các loại dữ liệu từ GMS chuyển sang data warehouse 62
Hình 3.4 Mối quan hệ giữa hợp ñồng và các ñiều kiện 63
Hình 3.5 Sơ ñồ cơ sở dữ liệu quan hệ sơ lược của hệ thống BAS 64
Hình 3.6 Sơ ñồ phân cấp các sản phẩm theo nhóm sản phẩm 65
Hình 3.7 Sơ ñồ các bước xử lý ñể giải quyết vấn ñề 66
Hình 4.1 Sơ ñồ các bước thực hiện của chương trình 70
Hình 4.2 Sơ ñồ dữ liệu của các quá trình thực hiện của chương trình 70
Hình 4.3 ðịnh dạng của một tập tin dữ liệu của một sản phẩm sau bước tiền xử lý 75
Hình 4.4 Nội dung của một tập tin mô hình dưới dạng arff 79
Hình 4.5 Giao diện chính của chương trình 84
Hình 4.6 Các menu con của menu Application, dùng ñể chạy các thao tác chương trình 84
Hình 4.7 Giao diện của phần tiền xử lý chương trình (Preprocess) 85
Hình 4.8 Công cụ ArffViewer 85
Hình 4.9 Biểu diễn hàm ña thức phụ thuộc giữa giá trị doanh số bán theo tuần 86
Hình 4.10 Biểu diễn hàm ña thức phụ thuộc giữa giá trị doanh số bán theo tuần 87
Hình 4.11 Biểu diễn hàm ña thức phụ thuộc giữa giá trị doanh số bán (Sales) theo tuần 87
Hình 5.1 Các tập tin mô hình ñược chương trình sinh ra, f1 tương ứng với hàm ña thức 90
Hình 5.2 ðồ thị biễu diễn các giá trị dự báo, giá trị thực và sai số 94
Hình 5.3 ðường khuynh hướng dạng ña thức và ñồ thị ñiểm dữ liệu ñược vẽ từ Excel 97
Hình 5.4 ðồ thị biểu diễn dữ liệu của sản phẩm 81261từ chương trình 97
Hình 5.5 ðồ thị biểu diễn phần trăm chiết khấu tương ứng với giá trị doanh số mua hàng 101
Trang 10DANH MỤC BẢNG
Bảng 1-1 Tỉ lệ chiết khấu tương ứng với doanh số mua hàng của nhà cung cấp 3
Bảng 2-1: Số liệu của mối quan hệ giữa năm kinh nghiệm và lương tương ứng 22
Bảng 2-2 Một số dạng chuyển thông dụng sang dạng hồi quy tuyến tính 26
Bảng 2-3 Dữ liệu của 2 thuộc tính A và B 28
Bảng 2-4 Dữ liệu doanh số bán hàng 29
Bảng 2-5 Doanh số bán theo năm của công ty 43
Bảng 4-1 Các dạng hàm toán học ñược sử dụng trong ñề tài 76
Bảng 5-1 Kết quả so sánh giá trị dự báo so với giá trị thực của một số sản phẩm thuộc nhà cung cấp 20022 91
Bảng 5-2 Dữ liệu một hợp ñồng của nhà cung cấp 20093 99
Bảng 5-3 Tiền thưởng tương ứng với phần trăm chiết khấu của hợp ñồng 100
Bảng 5-4: Kết quả so sánh giữa giá trị thực và giá trị dự báo theo các sản phẩm 107
Bảng 5-5: Bảng kết quả so sánh theo giá trị tổng các sản phẩm và theo nhà cung cấp 111
Bảng 5-6: Bảng so sánh theo các mô hình giá trị dự báo và giá trị thực 117
Trang 11DANH MỤC VIẾT TẮT
ARFF
Attribute-Relation File Format
ðịnh dạng file của Weka(ASCII text file)
BAS
Bonus Advertising Settlement System Hệ thống quản lý doanh số thưởng
CSV Comma Delimited Một loại ñịnh dạng file của Excel
DSS Decision Support System Hệ Hỗ Trợ Quyết ðịnh
GMS Goods Management System Hệ thống quản lý hàng hóa
KDD
Knowlegde Discovery in Database Khám phá tri thức trong Cơ sở dữ liệu MRS Merchandise Report System Hệ thống Báo cáo Hàng hóa
SALE_COST Sales Value attribute Thuộc tính giá trị doanh số bán
SSR Residual Sum of Squares
Tổng bình phương sai số của giá trị dự báo so với trung bình giá trị thực SST Total Sum of Squares
Tổng bình phương sai số của giá trị thực so với trung bình giá trị thực
VND Việt Nam ðồng ðơn vị tiền tệ Việt Nam
WEEK Week atttribute
Thuộc tính thời gian là tuần trong năm
WEKA
Waikato Environment for Knowledge Analysis Tên của thư viện mã nguồn mở
Trang 12PHẦN 1 PHÁT BIỂU VẤN ðỀ
Môi trường quản lý ngày nay ñã thay ñổi rất nhanh chóng Công việc kinh doanh cùng
môi trường kinh doanh trở nên phức tạp hơn bao giờ hết và xu hướng phức tạp này ngày
càng gia tăng Việc ra quyết ñịnh ngày nay phức tạp và khó khăn hơn nhiều so với trong
quá khứ Thêm vào ñó, mức ñộ rủi ro cũng cao hơn vì bị ảnh hưởng của quan ñiểm tiêu
thụ, thị trường quốc tế,… Do vậy, việc ra quyết ñịnh ñóng vai trò rất quan trọng trong tổ
chức Một trong những vấn ñề ảnh hưởng ñến việc ra quyết ñịnh ñúng ñắn là vấn ñề dự
báo
Dự báo trong kinh doanh hiện nay rất phổ biến và ñóng vai trò quan trọng trong việc
ra quyết ñịnh Nó hiện là một chuyên ngành nghiên cứu trong lĩnh vực kinh tế, quản trị học
và ngành công nghệ thông tin, trong ñó kỹ thuật khai phá dữ liệu ñược sử dụng phổ biến
Vai trò của dự báo:
• Dự báo tạo ra lợi thế cạnh tranh (ở thế chủ ñộng, không bị ñộng)
• Công tác dự báo là một bộ phận không thể thiếu trong hoạt ñộng của các phòng
ban trong từng công ty, doanh nghiệp
Muốn dự báo chính xác thì nên dự báo “ñịnh lượng”, có nghĩa là phải dựa vào các dữ
liệu sẵn có trong quá trình hoạt ñộng kinh doanh của doanh nghiệp, ñó là các cơ sở dữ liệu
của các hệ thống mua bán hàng, ñể tạo ra số liệu dữ liệu cho tương lai một cách chính xác
Trong những năm gần ñây, sự phát triển mạnh mẽ của ngành công nghệ thông tin,
cộng với sự hoạt ñộng của doanh nghiệp ñã tạo ra một lượng dữ liệu lưu trữ khổng lồ
Hàng triệu cơ sở dữ liệu ñã ñược sử dụng trong các hoạt ñộng sản xuất, kinh doanh, quản
lí, Sự bùng nổ này ñã dẫn tới một yêu cầu cấp thiết là cần có những kĩ thuật và công cụ
Trang 13Khai phá dữ liệu ñược ñịnh nghĩa là: quá trình trích xuất các thông tin có giá trị tiềm
ẩn bên trong các dữ liệu có kích thước lớn ñược lưu trữ trong các CSDL, kho dữ liệu, …
Hầu hết các kỹ thuật khai phá dữ liệu ngày nay ñều có khả năng dự báo với mức ñộ
tinh vi và ñộ chính xác cao Trong ñó có các kỹ thuật chính như sau:
Kỹ thuật hồi quy (Regression)
Xác suất Naive Bayes
Mạng nơron nhân tạo (Artificial Neural Networks-ANNs)
Chuỗi thời gian (time-series)
1.2.1 Sự cần thiết của ñề tài
Hiện nay hệ thống các siêu thị ở thế giới nói chung và ở Việt Nam nói riêng phát triển
rất mạnh mẽ và mở rộng quy mô kinh doanh Các hệ thống siêu thị lớn ở Việt Nam như hệ
thống siêu thị Metro Cash & Carry, Big C, Corp Mark, Maximax và tương lai không xa sẽ
là Wal-Mark, một siêu thị bán lẻ hàng ñầu của Mỹ sẽ có mặt tại Việt Nam Với tiến trình
hội nhập khu vực hóa và toàn cầu hóa, siêu thị sẽ không còn lợi thế một mình một chợ mà
phải ñối ñầu với sự cạnh tranh gay gắt của nhiều siêu thị với nhau, do vậy chiến lược kinh
doanh trở nên rất cần thiết ñể xây dựng lợi thế khác biệt ñảm bảo sự tồn tại và phát triển
của siêu thị
Trong hệ thống siêu thị, hàng hóa rất ña dạng và có nhiều chủng loại khác nhau Tất cả
các sản phẩm ñều ñược mua từ các nhà cung cấp và ñược bán ra tại siêu thị Các siêu thị
thường ñặt hàng với số lượng lớn từ các nhà cung cấp Do ñó, ñể tạo ra sự canh tranh, giữa
nhà cung cấp và siêu thị có sự thỏa thuận với nhau là nếu siêu thị ñặt hàng với số lượng
doanh số ñạt ñến mức bao nhiêu thì siêu thị sẽ ñược chiết khấu bao nhiêu phần trăm hoặc
sẽ nhận ñược số tiền thưởng theo doanh số ở một tỉ lệ nào ñó Thỏa thuận này sẽ ñược ký
kết thành hợp ñồng, trong mỗi hợp ñồng có một hay nhiều ñiều kiện
Trang 14Ví dụ 1.1: Nhà cung cấp S thỏa thuận với siêu thị như bảng 1-1:
Bảng 1-1 Tỉ lệ chiết khấu tương ứng với doanh số mua hàng của nhà cung cấp
Doanh số mua ñạt ñược trong một năm Tỉ lệ phần trăm chiết khấu
Theo bảng 1-1, các nhà quản lý mong muốn ñến khi hợp ñồng kết thúc họ sẽ ñạt ñược
tỉ lệ cao nhất là 5%, vừa ñược chiết khấu cao, vừa ñược lợi nhuận lớn từ việc bán hàng
Bất cứ hệ thống siêu thị nào cũng muốn tối ña lợi nhuận của mình Nhưng không phải
cứ mua nhiều hàng là sẽ ñạt ñược lợi nhuận lớn, vì nó tùy thuộc vào kết quả kinh doanh
của siêu thị, bán hàng ñược nhiều hay không Như vậy các nhà quản lý cần phải ñưa ra
những chiến lược kinh doanh hợp lý thì họ mới ñạt ñược ñiều mong muốn Như vậy họ cần
dự báo giá trị của doanh số bán hàng của các sản phẩm ñể ñưa ra các chiến lược kinh
doanh hợp lý
Tác giả ñã khảo sát và tìm hiểu phương pháp dự báo của các nhà quản lý mua bán
hàng ở siêu thị Metro Cash & Carry về cách dự báo giá trị doanh số bán ñể hỗ trợ việc ñặt
hàng thì phương pháp của họ chủ yếu là tính toán giá trị doanh số bán trong quá khứ, dựa
trên những mục tiêu phải ñạt ñược trong năm tới của ban giám ñốc, cộng với các yếu tố
như tính mùa vụ, thời tiết, dịp lễ Tết, … họ sẽ ñưa ra giá trị dự báo tương ứng Rõ ràng
phương pháp dự báo như thế mang tính ñịnh tính hơn là tính ñịnh lượng và nó phụ thuộc
vào “suy nghĩ” của mỗi nhà quản lý hơn là phương pháp ñịnh lượng, khoa học Ngoài ra
Trang 152006 sẽ là (5 tỉ * 120/ 365) VND Rõ ràng những phương pháp này có ñộ chính xác thấp
và phải làm thủ công nhiều
Việc áp dụng kỹ thuật khai phá dữ liệu ñể giải quyết vấn ñề dự báo này là rất cần thiết,
ñây là sự thể hiện việc áp dụng công nghệ thông tin vào lĩnh vực kinh doanh, mang lại lợi
ích kinh tế, nhất là trong thời kỳ hội nhập như hiện nay
Câu hỏi ñặt ra là làm sao ñể tối ña ñược lợi nhuận thưởng theo doanh số mua hàng từ
nhà cung cấp? Làm sao dự báo ñược tổng doanh số bán hàng của nhà cung cấp tại thời
ñiểm nào ñó ñể siêu thị có thể nhìn trước ñược và ra quyết ñịnh mua hàng khi thương
lượng với nhà cung cấp sao cho có thể ñạt ñược mức chiết khấu lớn nhất?
Dựa trên các dữ liệu sẵn có của hệ thống quản lý hàng hóa, chúng ta sẽ tìm hiểu, phân
tích và trích xuất dữ liệu cần thiết cho quá trình khai phá dữ liệu Áp dụng các kỹ thuật
khai phá dữ liệu ta sẽ tìm ra những tri thức có ích giúp nhà quản lý thu mua dự báo ñược
các thông tin về doanh số bán của các sản phẩm, ñồng thời hỗ trợ nhà quản lý ra quyết ñịnh
về các chiến lược ñặt hàng
Dự báo theo từng nhà cung cấp sử dụng hai phương pháp tiếp cận sau:
Từ dưới lên: ban ñầu dự báo trên từng sản phẩm của nhà cung cấp, mỗi sản phẩm
sẽ có giá trị doanh số dự báo riêng, nếu nhà cung cấp có n sản phẩm thì giá trị dự
báo doanh số của nhà cung cấp ñó bằng tổng các giá trị dự báo của n các sản phẩm
ñó Phương pháp này giúp cho nhà quản lý có thể nhìn thấy giá trị dự báo chi tiết
từng sản phẩm, nhóm sản phẩm
Dự báo trên tổng thể dữ liệu của nhà cung cấp ñó Tức là không tách rời các sản
phẩm ra, mà dự báo trên tổng số liệu ban ñầu Phương pháp này giúp nhà quản lý
thấy ñược giá trị dự báo tổng thể của một nhà cung cấp
Khi ñã có giá trị dự báo doanh số mua hàng của từng nhà cung cấp, dựa trên các mức
chiết khấu của ñiều kiện hợp ñồng, ta sẽ ñưa ra dự báo mức thưởng dựa trên giá trị dự báo
của doanh số mua hàng
Trang 16Trong nội dung ñề tài, tác giả tập trung nghiên cứu các lý thuyết về khai phá dữ liệu,
ñặc biệt là các phương pháp khai phá dữ liệu cho vấn ñề dự báo, các phương pháp thu thập
và xử lý dữ liệu Mặt khác, tác giả cũng tìm hiểu nghiệp vụ dự báo trong kinh doanh, thu
thập, trích xuất và chọn lọc dữ liệu từ các cơ sở dữ liệu tác nghiệp của siêu thị
ðồng thời, tác giả cũng nghiên cứu nhiều cách tiếp cận ñể xây dựng các mô hình dự
báo khác nhau Sau ñó ñưa ra các so sánh về ñộ chính xác giữa các phương pháp trên tập
dữ liệu thực tế
Tác giả nghiên cứu, sử dụng thư viện mở Weka ñể hiện thực chương trình của luận
văn Weka là một thư viện mã nguồn mở Java bao gồm các giải thuật ñược dùng cho mục
ñích nghiên cứu lĩnh vực khai phá dữ liệu [12] sẽ ñược trình bày ở phần 2.5 của luận văn
này
Như ñã trình bày các kỹ thuật khai phá dữ liệu mục 1.2.3 ở trên ñể giải quyết bài toán,
mục tiêu của ñề tài là tìm ra giá trị dự báo doanh số ñặt hàng của nhà cung cấp dựa trên
doanh số bán hàng trong quá khứ Dựa trên thực tế kinh doanh, cũng như lý thuyết kinh tế
về dự báo, tác giả tập trung vào nghiên cứu phương pháp hồi quy, một trong những phương
pháp phổ biến ñể giải quyết bài toán dự báo, phương pháp này dựa trên các hàm toán học
ñể xác ñịnh mô hình dữ liệu Tác giả tập trung vào nghiên cứu các mô hình toán học phổ
biến và hữu ích như mô hình hàm tuyến tính, hàm phi tuyến tính (hàm ña thức, hàm mũ,
hàm lũy thừa, hàm Weibull,…)
Quá trình xây dựng mô hình là quá trình ước lượng các tham số chưa biết ñể thể hiện
khuynh hướng của dữ liệu, trong ñề tài này tác giả sử dụng giải thuật chính là
Nelder-Mead[2], ñây là giải thuật ñược sử dụng rộng rãi trong việc tối ưu hóa các hàm phi tuyến
tính không ràng buộc và tìm giá trị hội tụ cho các tham số tương ứng của hàm toán học
Trang 171.3.2 Phạm vi nghiên cứu của ñề tài
Nghiên cứu các phương pháp dự báo trong kinh doanh, cũng như các kiến thức
kinh tế liên quan ñến ñề tài
Khảo sát và nghiên cứu các hệ thống phần mềm của siêu thị Metro Cash & Carry
ñang sử dụng như hệ thống về quản lý hàng hóa GMS, hệ thống quản lý doanh số
thưởng BAS, hệ thống báo cáo data mart MRS và hệ thống data warehouse
Trích xuất dữ liệu thực tế của siêu thị Metro từ năm 2003 ñến năm 2006 ñể làm dữ
liệu ñầu vào cho khai phá Dữ liệu năm 2007 dùng ñể ñánh giá kết quả dự báo
Nghiên cứu tổng quan về khai phá dữ liệu, cụ thể là các phương pháp hồi quy ñể dự
báo
Nghiên cứu các mô hình toán học phổ biến dùng cho quá trình hồi quy
Nghiên cứu giải thuật Nelder-Mead ñể tìm các tham số ước lượng của các mô hình
toán học ñược sử dụng
Thiết kế, hiện thực và thử nghiệm chương trình dự báo trên dữ liệu thật của siêu thị
Nhận xét, ñánh giá kết quả ñạt ñược, cũng như những hạn chế và hướng phát triển
1.3.3 Ý nghĩa thực tiễn của ñề tài
1.3.3.1 Về mặt học thuật
Nghiên cứu về kỹ thuật khai phá dữ liệu ñể giải quyết bài toán thực tế Như chúng ta
ñã biết, kỹ thuật khai phá dữ liệu hiện nay là một trong những lĩnh vực ñược quan tâm của
ngành công nghệ thông tin, có rất nhiều nghiên cứu khác nhau trên thế giới với kết quả ñạt
ñược cũng hết sức to lớn Tác giả nghiên cứu một lĩnh vực của khai phá dữ liệu ñó là
phương pháp hồi quy, hiện nó cũng là phương pháp ñược sử dụng thông số trong dự báo
Hơn nữa, ñề tài này còn nghiên cứu các mô hình toán học và giải thuật Nelder-Mead
Các phương pháp dự báo ñược khảo sát về mặt chất lượng trên các dữ liệu cụ thể của
một bài toán thực tế
Trang 18Hơn nữa, tác giả có ñiều kiện tìm hiểu và nghiên cứu thư viện Weka, một trong những
thư viện lớn nhất về khai phá dữ liệu, dùng cho mục ñích nghiên cứu và học tập
ðề tài này rất có ý nghĩa về mặt ứng dụng vì ñây là ñề tài thực tế, áp dụng trên dữ liệu
bán hàng thực của siêu thị và vì nó xuất phát từ nhu cầu của các nhà quản lý Họ muốn dự
báo số lượng bán hàng ñể dự báo ñặt hàng nhằm nâng cao khả năng cạnh tranh, nâng cao
lợi nhuận nhất là thu nhiều tiền thưởng từ các nhà cung cấp Không những trong lĩnh vực
siêu thị, mà các lĩnh vực kinh doanh khác, chúng ta cũng có thể áp dụng các lý thuyết,
phương pháp khai phá dữ liệu sử dụng trong ñề tài này ñể phát triển thành những ứng dụng
hữu ích cho nhà quản lý
Hơn nữa, ñây là ñề tài thuộc lĩnh vực hệ hỗ trợ quyết ñịnh (DSS- Decision Support
System) mà ngành công nghệ thông tin ñang khẳng ñịnh vị thế của nó Một doanh nghiệp
nếu sử dụng hệ thống công nghệ thông tin tốt thì sẽ hỗ trợ việc quyết ñịnh ñúng ñắn từ ñó
mang lại nhiều lợi ích cho công ty Do vậy các doanh nghiệp ngày nay sẵn sàng bỏ ra hàng
triệu ñô la Mỹ ñể mua các hệ thống công nghệ thông tin quản trị nguồn nhân lực và các hệ
thống cơ sở dữ liệu khác
Ngoài ra, từ kết quả của việc dự báo, chúng ta có thể xây dựng nên những dịch vụ tiện
ích từ dữ liệu dự báo như dự báo theo nhóm sản phẩm, tìm ra sản phẩm có tiềm năng, nhà
cung cấp tiềm năng
1.4 Nội dung trình bày
Báo cáo ñược cấu trúc như sau:
Phần 1: Phát biểu vấn ñề Giới thiệu tổng quan về ñề tài, ñối tượng nghiên cứu và ý
nghĩa của ñề tài
Phần 2: Cơ sở lý thuyết và các phương pháp dự báo của khai phá dữ liệu Thư viện
Trang 19Phần 4: Thiết kế, hiện thực chương trình
Phần 5: đánh giá, kết luận và hướng phát triển của ựề tài
Tài liệu tham khảo
Các phụ lục
Trang 20PHẦN 2 CƠ SỞ LÝ THUYẾT
2.1 Cơ sở lý thuyết khai phá dữ liệu
2.1.1 Giới thiệu về khai phá dữ liệu
Tiến trình trong thu thập dữ liệu số và công nghệ lưu trữ dẫn ñến sự lớn lên của các
CSDL ñồ sộ ðiều này ñã xuất hiện trong tất cả lĩnh vực ñời sống con người, nhất là lĩnh
vực kinh doanh Cùng với sự lớn lên của dữ liệu là sự lớn lên của mối quan tâm về khả
năng trích rút từ chúng các thông tin có giá trị Môn khoa học liên ngành liên quan ñến
nhiệm vụ này gọi là khai phá dữ liệu
Khai phá dữ liệu ñược ñịnh nghĩa là quá trình trích xuất các thông tin có giá trị tiềm ẩn
bên trong các tập dữ liệu quan sát lớn ñược lưu trữ trong các CSDL, kho dữ liệu, … ñể tìm
ra các mối liên hệ rõ ràng và ñể tóm tắt dữ liệu theo cách mới mà vừa dễ hiểu, vừa hữu ích
cho người sở hữu dữ liệu [1]
Các mối liên hệ và các tóm tắt thu ñược thông qua khai phá dữ liệu thường ở dạng các
mô hình (models) hoặc khuôn mẫu (patterns) Ví dụ như các phương trình tuyến tính, phi
tuyến tính, các luật, các nhóm, các ñồ thị, các cấu trúc cây, các khuôn mẫu lặp lại theo thời
gian, …
ðịnh nghĩa trên cũng ñề cập ñến các tập dữ liệu trong khai phá dữ liệu thường là lớn
Nếu chỉ làm việc trên tập dữ liệu nhỏ, chúng ta hoàn toàn mới chỉ thảo luận phân tích dữ
liệu khám phá cổ ñiển (classical exploratory data analysis) như công việc của các nhà
thống kê Khi ñối mặt với dữ liệu lớn, các bài toán mới sẽ nảy sinh
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 (knowlegde mining from databases),
trích xuất dữ liệu (knowlegde extraction), phân tích dữ liệu/mẫu (data/pattern analysis),
Trang 21dữ liệu chỉ là một bước thiết yếu trong quá trình khám phá tri thức trong CSDL [1] Quá
trình này bao gồm các bước sau:
1) Làm sạch dữ liệu (data cleaning): loại bỏ nhiễu hoặc các dữ liệu không thắch hợp
2) Tắch hợp dữ liệu (data integration): tắch hợp dữ liệu từ các nguồn khác nhau như:
CSDL, Kho dữ liệu, file text
3) Chọn dữ liệu (data selection): ở bước này, những dữ liệu liên quan trực tiếp ựến
nhiệm vụ sẽ ựược thu thập từ các nguồn dữ liệu ban ựầu
4) Chuyển ựổi dữ liệu (data transformation): trong bước này, dữ liệu sẽ ựược chuyển
ựổi về dạng phù hợp cho việc khai phá bằng cách thực hiện các thao tác nhóm hoặc
tập hợp
5) Khai phá dữ liệu (data mining): là giai ựoạn thiết yếu, trong ựó các phương pháp
thông minh sẽ ựược áp dụng ựể trắch xuất ra các mẫu dữ liệu
6) đánh giá mẫu (pattern evaluation): ựánh giá sự hữu ắch của các mẫu biểu diễn tri
thức dựa vào một số phép ựo
7) Biểu diễn dữ liệu (knowlegde presentation): sử dụng các kĩ thuật trình diễn và trực
quan hóa dữ liệu ựể biểu diễn tri thức khai phá ựược cho người sử dụng
Khai phá dữ liệu là một quá trình tương tác gồm 5 giai ựoạn như hình 2.1 Mỗi giai
ựoạn có thể nhận phản hồi từ các giai ựoạn sau và thực hiện việc tinh chỉnh
Trang 22Hình 2.1 Mô hình các bước khai phá dữ liệu
Tìm hiểu nghiệp vụ và dữ liệu
(Business and Data Understanding)
Trang 23Tìm hiểu hệ thống cĩ sẵn (legacy system), xác định những hạn chế của hệ thống cũ để
từ đĩ định hướng phát triển cho hệ thống khai phá dữ liệu cần xây dựng
Xác định tầm vực mà hệ thống khai phá dữ liệu sẽ hỗ trợ Thơng thường các hệ thống
khai phá dữ liệu được xây dựng để tiên đốn, đưa ra những quyết định mang tính chiến
lược Do đĩ, hệ thống xây dựng cần phải hướng theo vấn đề quan tâm và mục tiêu của
người sử dụng
Xem xét các đặc trưng của dữ liệu trong hệ thống cũ như: cấu trúc lưu trữ dữ liệu, vị
trí các nguồn dữ liệu, định dạng dữ liệu ở những nguồn khác nhau,
Những người tham gia trong bước này thường là kỹ sư tri thức và chuyên gia lĩnh vực,
người hiểu rõ các vấn đề chiến lược mà hệ thống quan tâm
2.1.2.2 Chuẩn bị dữ liệu
Bước chuẩn bị dữ liệu hay cịn gọi là bước tiền xử lý dữ liệu được thực thi nhằm biến
đổi và cải tiến chất lượng sao cho dữ liệu thích hợp cho quá trình khai phá dữ liệu được
thực hiện dễ dàng Các kỹ thuật tiền xử lý được dùng trong bước này gồm cĩ: làm sạch dữ
liệu (data cleaning), tích hợp dữ liệu (data integration), biến đổi dữ liệu (data
transformations), giảm thiểu dữ liệu (data reduction)
2.1.2.2.1 Làm sạch dữ liệu
Dữ liệu thiếu (missing values) Một số thuộc tính trong tập dữ liệu mẫu cĩ thể mang
giá trị rỗng hoặc giá trị “unknown” Bao gồm các kỹ thuật: phương pháp binning, gom
nhĩm (clustering), kết hợp sự kiểm tra giữa máy tính và con người (combined computer
and human inspection), hồi quy (regression)
Dữ liệu nhiễu (noisy data) Là sai số ngẫu nhiên hay sai số trong phép đo Dữ liệu
trong tập dữ liệu nguồn cĩ thể bị nhiễu do nhiều nguyên nhân khác nhau như lỗi ở các bộ
cảm biến, dữ liệu bị nhập sai trong các bản khảo sát
Dữ liệu khơng nhất quán (inconsistent data)
2.1.2.2.2 Tích hợp dữ liệu
Trang 24Tích hợp dữ liệu: kết hợp dữ liệu từ nhiều nguồn dữ liệu khác nhau vào một kho dữ
liệu kết dính nhau, như data warehouse Các nguồn dữ liệu này bao gồm các cơ sở dữ liệu,
khối dữ liệu (data cubes) hay các flat files
2.1.2.2.3 Biến ñổi dữ liệu
Chuẩn hoá dữ liệu (standardization/normalization) Dữ liệu phải chuẩn hóa sao cho có
thể dùng các dữ liệu này một cách thống nhất Có hai dạng chuẩn hóa chủ yếu là chuẩn
hóa miền dữ liệu (range) hoặc chuẩn hóa ñịnh dạng (format)
Làm trơn (smoothing), ñể loại bỏ nhiễu từ dữ liệu Các kỹ thuật binning, gom nhóm và
hồi quy
Sự kết hợp (aggregation) các tác vụ tóm tắt hay kết hợp ñược áp dụng lên dữ liệu
Tổng quát hóa dữ liệu (Generalization) Dữ liệu thô thứ cấp ñược thay thế bởi dữ liệu
ở mức cao hơn theo cách thức phân cấp
2.1.2.2.4 Giảm thiểu dữ liệu
Loại dữ liệu trùng nhau (duplicate elimination)
Thu giảm số chiều (dimensionality reduction) Số lượng thuộc tính trong khai phá dữ
liệu có thể lên ñến hàng trăm Các kỹ thuật thu giảm số chiều ñược sử dụng ñể loại bỏ các
thuộc tính không mang nhiều thông tin Một số kỹ thuật thông dụng thường ñược sử dụng
là phương pháp ñộ lợi thông tin, Entropy, …
Thu giảm số mẫu (instance reduction) Tốc ñộ của quá trình khai phá dữ liệu sẽ rất
chậm trên tập dữ liệu kích thước lớn Do ñó, các kỹ thuật lấy mẫu thường ñược dùng ñể
thu giảm số mẫu trong tập không gian dữ liệu
2.1.2.3 Mô hình hoá dữ liệu
ðây là giai ñoạn mà dữ liệu ñược xử lý nhằm giải quyết các vấn ñề ñã ñược xác ñịnh ở
Trang 25các phương pháp khai phá dữ liệu gồm có: ñộ chính xác ñược yêu cầu, kích thước của tập
dữ liệu, dữ liệu có chứa dữ liệu bị mất hay không, các thuộc tính rời rạc hay liên tục, …
Giai ñoạn này cũng phải tương thích với giai ñoạn tiền xử lý
2.1.2.4 Hậu xử lý và ñánh giá
Trong giai ñoạn này, hệ thống khai phá dữ liệu sẽ ñược giới thiệu và chạy mô phỏng
trước người sử dụng Mục ñích của bước này là ñể ñánh giá và hiệu chỉnh hệ thống vừa
ñược xây dựng
Hệ thống có thể sẽ ñược chạy thử trên tập dữ liệu thực với sự kiểm soát của người kỹ
sư và người sử dụng Một số vấn ñề thường ñược người sử dụng quan tâm là thời gian
chạy, ñộ chính xác, mức ñộ thân thiện, …
2.1.2.5 Triển khai
Hệ thống ñược triển khai một cách hoàn chỉnh Người sử dụng có thể làm việc trên hệ
thống, phân tích trên mô hình dữ liệu thực và ñưa ra các quyết ñịnh
2.1.3 Dữ liệu nhập
Dữ liệu nhập của hệ thống khai phá dữ liệu là một tập hợp các thực thể (instance)
Mỗi thực thể ñược ñịnh nghĩa là một mẫu (example) riêng biệt, ñộc lập với các mẫu khác
và ñược dùng bởi hệ thống khai phá dữ liệu Không có sự phân biệt rõ ràng giữa khái niệm
thực thể và mẫu, trong ñó khái niệm mẫu thường ñược dùng thay thế cho khái niệm thực
thể
Mỗi thực thể ñược ñặc trưng bởi một tập các giá trị của một tập cố ñịnh, ñược ñịnh
nghĩa trước các thuộc tính Các thuộc tính thuộc vào hai nhóm chủ yếu là thuộc tính rời
rạc (nominal) và thuộc tính liên tục (continuous)
Dữ liệu nhập của hệ thống khai phá dữ liệu thường ñược thu gom từ nhiều nguồn khác
nhau Trong các hệ thống giao dịch kích thước lớn, dữ liệu ñược lưu trữ trong các kho dữ
liệu (data warehouse) Trong các hệ thống kích thước nhỏ hơn, dữ liệu thường ñược lưu
trong các file, phổ biến nhất là ñịnh dạng ARFF
Trang 26Data warehouse là một dạng cơ sở dữ liệu đặc biệt Dữ liệu trong data warehouse
được tổ chức theo dạng đa chiều ðiều này giúp cho việc truy xuất dữ liệu đạt tốc độ cao
trên tập dữ liệu khổng lồ
ARFF là một định dạng phổ biến để lưu trữ dữ liệu trong các hệ thống khai phá dữ
liệu với kích thước trung bình và nhỏ do WEKA phát triển ARFF file lưu trữ dữ liệu theo
dạng phẳng, các thơng tin được quan tâm gồm cĩ tên mối quan hệ (relation), danh sách các
thuộc tính (attributes), kiểu dữ liệu của từng thuộc tính và theo sau là một tập các dịng giá
trị dữ liệu của thuộc tính
Các kỹ thuật khai phá dữ liệu được chia thành ba nhĩm cơ bản là: dự báo và phân loại
(prediction and classification), kết hợp (assossiation) và gom nhĩm (clustering) [1]
Mục tiêu của các kỹ thuật dự báo và phân loại là tìm kiếm tập các mơ hình (hay các
hàm) mơ tả và phân biệt các lớp dữ liệu nhằm mục đích cĩ thể mơ hình hĩa hay dự báo lớp
các đối tượng cĩ nhãn chưa biết trước
Kỹ thuật kết hợp tương tự như các giải thuật phân loại, điểm khác biệt chủ yếu là các
giải thuật này cĩ thể tiên đốn bất kỳ thuộc tính nào trong khi giải thuật phân loại chỉ cĩ
thể tiên đốn một thuộc tính là nhãn mà thơi Chính vì khả năng tiên đốn bất kỳ thuộc tính
nào, nhĩm giải thuật này cần kết hợp rất nhiều bộ thuộc tính để tiên đốn Do đĩ số lượng
luật được sinh ra bởi giải thuật là rất lớn
Các giải thuật gom nhĩm thực hiện cơng việc phân chia các mẫu cĩ cùng các đặc tính
vào các nhĩm khác nhau
2.1.5 Dữ liệu xuất
Kết quả của việc học rất đa dạng tùy thuộc vào phương pháp sử dụng Một số dạng
biểu diễn phổ biến như sau:
Bảng quyết định (decision list): gồm một tập các luật theo dạng if … then Các luật
Trang 27Cây quyết ñịnh (decision tree): cũng gồm một tập luật nhưng ñược cấu trúc phân cấp
theo dạng cây nhị phân hoặc ña phân
Hàm mục tiêu (target function): kết quả của việc học là một hàm theo dạng y = f(x)
Trong ñó x là mẫu nhập còn y là nhãn của mẫu
Tập các thông số (parameter set): các thông số có thể là các xác suất, các vector
khoảng cách hoặc các giá trị trọng số Các dạng dữ liệu này không mang ý nghĩa trực quan
ñối với con người
Thông số quan trọng nhất ñược dùng ñể ñánh giá hệ thống khai phá dữ liệu là ñộ chính
xác của hệ thống Thông thường tập dữ liệu của hệ thống ñược chia làm hai phần Phần thứ
nhất ñược dùng cho việc huấn luyện trong khi phần còn lại ñược dùng cho việc ñánh giá ñộ
chính xác của hệ thống
2.2 Các tiêu chuẩn và ứng dụng của khai phá dữ liệu
Khai phá dữ liệu là một lĩnh vực mới nên người ta nhận thấy sự cần thiết phải có các
tiêu chuẩn chung ñể thúc ñẩy sự phát triển của khai phá dữ liệu Hiện tại, các nhà phát triển
khai phá dữ liệu ñang thực hiện tiêu chuẩn hóa các ñối tượng sau: các siêu dữ liệu cho khai
phá dữ liệu (data mining metadata), các Giao diện lập trình API, các ñịnh dạng dữ liệu
(data format) Có thể kể ra một số tiêu chuẩn như:
OLE DB for Data Mining [15]: tiêu chuẩn này ñược Microsoft phát triển vào năm
1999 và ñã ñược một số công ty hỗ trợ như Angoss, KXEN và Megaputer ðây
không phải là một chuẩn hay giao diện lập trình mới mà chỉ là sự mở rộng chuẩn
OLE DB có sẵn
XML for Analysis[15]: tiêu chuẩn này cũng do Microsoft xây dựng vào năm 2001
và ñược sở hữu bởi XML/A Concil
Trang 28SQL/Multimedia for Data Mining[15]: tiêu chuẩn này ñược IBM ñề xướng dựa
trên sự mở rộng của tiêu chuẩn SQL/Multimedia Tiêu chuẩn này ñặt ra các kiểu dữ
liệu người dùng, các phương thức trong Cơ sở dữ liệu phục vụ cho Khai phá dữ
liệu
Java Data Mining API (JSR-73 API)[15]: Oracle chính là ñầu tàu trong việc phát
triển giao diện lập trình này Mục tiêu của nó là cho phép ứng dụng Java có thể làm
việc với Data Mining Engine ñể thực hiện khai phá dữ liệu
Predictive Model Makup Language[15]: tiêu chuẩn này do nhóm Data Mining
Group (DMG) xây dựng Mục tiêu của nó là xây dựng ñịnh dạng dữ liệu XML cho
việc lưu giữ các mô hình khai phá dữ liệu Tiêu chuẩn này ñược hỗ trợ bởi
Microsoft, Oracle, IBM, SPSS,…
CRISP-DATA MINING[15]: là phương pháp khai phá dữ liệu ban ñầu ñược xây
dựng bởi ba công ty SPSS, NCR và DaimerChrycler vào năm 1996 Sau ñó nó
ñược cộng ñồng Châu Âu tài trợ và phiên bản 1.0 ra ñời vào năm 2000 như hình
2.2
Trang 29Hình 2.2 Sơ ñồ các quá trình của phương pháp CRISP-DM [15]
Khai phá dữ liệu có thể ñược áp dụng trong nhiều ứng dụng, giải quyết ñược nhiều bài
toán khác nhau trong kinh doanh Có thể liệt kê một số bài toán thường gặp có thể giải
quyết bằng khai phá dữ liệu như sau:
Phân tích hành vi khách hàng khi mất khách hàng (Churn Analysis): Chúng ta
gặp bài toán dạng này khi phải trả lời câu hỏi tương tự như “Khách hàng nào của
chúng ta có thể trở thành khách hàng của ñối thủ cạnh tranh?” Phân tích Churn
giúp giám ñốc tiếp thị hiểu lý do tại sao mất khách hàng từ ñó cải thiện mối quan hệ
với khách hàng và cuối cùng là tăng cường lòng trung thành của khách hàng
Bán sản phẩm ñi kèm (cross-selling): ðây là bài toán khi chúng ta phải trả lời câu
hỏi “Khách hàng có xu hướng mua sản phẩm nào?” Rất nhiều người bán hàng, ñặc
biệt là bán hàng trực tuyến dùng cách này ñể bán nhiều sản phẩm hơn
Trang 30Phát hiện gian lận (fraud dectection): Khi chúng ta có nhu cầu muốn biết, chẳng
hạn, “Khai báo bảo hiểm này có gian lận hay không?” thì chúng ta ñang gặp bài
toán phát hiện gian lận Khi người ta có quá nhiều khai báo phải xử lý, không thể
xử lý bằng tay cho từng trường hợp một thì khai phá dữ liệu sẽ giúp phát hiện ra
những khai báo gian lận
Quản lý rủi ro (risk management): “Chúng ta có nên chấp nhận hồ sơ cho vay
cho một khách hàng nào ñó hay không?” – ðây là bài toán thường gặp trong ngân
hàng Khai phá dữ liệu có thể ñược dùng ñể cho ñiểm hay ñánh giá mức ñộ rủi ro
của khách hàng, giúp nhà quản trị có những quyết ñịnh thích hợp cho từng trường
hợp cụ thể
Phân ñoạn khách hàng (customer segmentation): “Ai là khách hàng của chúng
ta?”, khai phá dữ liệu giúp giám ñốc tiếp thị hiểu ñược các nhóm khách hàng khác
nhau ñể ñề ra những chiến lược thích hợp cho từng nhóm khách hàng dựa trên cách
phân ñọan tìm ñược
Quảng cáo có mục tiêu (targeted ads): “Loại quảng cáo này thích hợp cho người
dùng cụ thể nào?”, dùng các thông tin về quá trình duyệt web của người dùng cũng
như các mẫu dữ liệu về mua hàng trực tuyến, khai phá dữ liệu có thể giúp người
bán hàng trực tuyến cũng như người quản trị web ñặt các mẫu quảng cáo tại những
vị trí thích hợp cho khách hàng của mình
Dự báo bán hàng (Sales forecasting): “Sẽ có bao nhiêu sản phẩm ñược bán ra
trong tuần tới?” hoặc “Mức ñộ hàng tồn kho trong một tháng là gì?” Kỹ thuật dự
báo trong khai phá dữ liệu có thể trả lời các câu hỏi này
2.3 Các phương pháp giải quyết vấn ñề dự báo
Trang 31có thể thể hiện mối quan hệ giữa các biến ñầu ra với các biến nhập khác nhau Nói rõ hơn,
phân tích hồi quy là quá trình xác ñịnh một biến Y liên quan ñến một hay nhiều biến X1,
X2, …, Xn Biến Y thường ñược gọi là biến trả lời hay biến phụ thuộc Các biến X gọi là
các biến nhập hay biến ñộc lập
Các mô hình tuyến tính tổng quát hiện nay ñược áp dụng thường xuyên nhất vào các
kỹ thuật thống kê Chúng ñược sử dụng ñể mô tả mối quan hệ khuynh hướng giữa một biến
và các giá trị của các biến khác Mô hình hóa mối quan hệ này gọi là hồi quy tuyến tính
Mối quan hệ này ñược ñặc tả bởi một mô hình dự báo gọi là phương trình hồi quy
(Regression equation) Dạng mô hình hồi quy thường ñược sử dụng rộng rãi là mô hình
tuyến tính tổng quát sau:
Y = α + β1.X1 + β2.X2 + β3.X3 + …+ βn.Xn (2.1)
Áp dụng phương trình này vào mỗi tập dữ liệu mẫu cho trước, chúng ta có một tập các
phương trình sau:
yj = α + β1.x1j + β2.x2j + β3.x3j + …+ βn.xnj + εj, với j = 1, 2, …, n (2.2)
Với εj là các sai số hồi quy cho mỗi n tập mẫu Mô hình tuyến tính ñược gọi là tuyến tính
vì giá trị kỳ vọng của yj là một hàm tuyến tính tổng trọng số của các giá trị ñầu vào
2.3.1.2.1 Phương pháp
Hồi quy tuyến tính với một biến nhập là dạng hồi quy ñơn giản nhất Nó mô hình hóa
một biến Y như là một hàm tuyến tính theo biến X
Cho n mẫu hay các ñiểm dữ liệu dưới dạng (x1, y1), (x2, y2), …, (xn, yn), với
Với α, β là hệ số hồi quy với giả ñịnh rằng sai số của Y là một hằng số thì các hệ số α,
β có thể ñược xác ñịnh bằng phương pháp bình phương nhỏ nhất (least squares), phương
Trang 32pháp này sẽ cực tiểu sai số giữa giá trị thực và giá trị dự báo Tổng bình phương sai số, ký
n
i
i i n
i
e SSE
1
2 1
2 1
2
)(
)
Với y i là giá trị thực ñầu ra của tập dữ liệu, còn yˆ i là giá trị ñầu ra có ñược từ mô hình
dự báo ðạo hàm SSE theo α và β, ta ñược các biểu thức sau:
)
βxα(y2α
(SSE)
i n
1 i
βxα((y2
(SSE)
i i n
1 i
1 i
xβα
1 i
2 i n
1 i
2 i
[/)]
)(
(x[
x y
x y
i x
mean mean
mean mean
y mean
βα
Với meanx, meany là giá trị trung bình của hai biến X, Y trong tập dữ liệu huấn luyện cho
trước Lưu ý quan trọng rằng các giá trị của α và β ñược tính dựa vào tập dữ liệu cho trước,
chỉ là giá trị ước lượng của tham số thực
Ví dụ: Cho bảng giá trị như sau, trong ñó X là biến chỉ số năm kinh nghiệm làm việc và Y
Trang 33Bảng 2-1: Số liệu của mối quan hệ giữa năm kinh nghiệm và lương tương ứng
X(Năm kinh nghiệm) Y(Lương) đơn vị $1000
)1.98()1.93(
)4.5583)(
1.916) (
4.5557)(
1.98()4.5530)(
1.9
3
(
2 2
−++
−+
−
−
7.21)1.9)(
7.3(4
Do đĩ, phương trình tuyến tính ước lượng bằng phương pháp bình phương nhỏ nhất
là: Y = 21.7 + 3.7X Sử dụng phương trình này, chúng ta cĩ thể dự đốn được giá trị tiền
lương nhân viên cĩ 10 năm kinh nghiệm là: Y = 21.7 + 3.7*10 = $58.7K
Trang 34Linear (Y(L ươ ng) ựơ n v ị
$1000)
Hình 2.3 đồ thị biểu diễn mối quan hệ giữa năm kinh nghiệm và lương
2.3.1.2.2 đánh giá
Ưu ựiểm: Phương pháp hồi quy tuyến tắnh ựơn có phép tắnh ựơn giản, dễ hiểu và có
thể tắnh các hệ số hồi quy nhanh chóng, từ ựó xác ựịnh ựược hàm hồi quy tuyến
tắnh nhanh chóng, áp dụng ựể dự báo cho trường hợp biến Y phụ thuộc vào chỉ một
biến ựộc lập X
Nhược ựiểm: dự báo có ựộ chắnh xác không cao khi dạng biểu diễn các dữ liệu quá
khứ là ựường thẳng ựi lên, thì số liệu các kỳ sau sẽ luôn tăng theo và không sử dụng
ựược trong trường hợp thực tế bài toán thường khá phức tạp, biến Y phụ thuộc vào
nhiều biến ựộc lập Xi
2.3.1.3 Phương pháp hồi quy tuyến tắnh ựa biến
2.3.1.3.1 Giới thiệu
Trang 35tuyến tính ñơn Nó cho phép biến Y ñược mô hình hóa bởi một hàm tuyến tính của một
vector ña chiều Y theo các biến ñộc lập Xi
Y = α + β1.X1 + β2.X2 + β3.X3 + …+ βn.Xn. (2.8)
Với α, βi (với i = 1, 2, …,n) là các hệ số tính ñược từ phương pháp bình phương nhỏ
nhất Với mô hình hồi quy tuyến tính với nhiều biến nhập, thì việc tính toán các giá trị của
hệ số βi sẽ dễ dàng hơn nếu ta dùng phép tính ma trận, ta biến ñổi sang dạng ma trận:
Với β = {β0, β1, β2, β3,…, βn}, β0 = α và X, Y là các ma trận nhập và xuất tương ứng
với tập dữ liệu huấn luyện Tổng bình phương sai số có ma trận biễu diễn là:
)(
X
2 1
Vớiβ là vector hệ số ước lượng trong mô hình hồi quy tuyến tính Ma trận X, Y có
cùng số chiều (kích thước) như trong tập huấn luyện Trong thực tế về các vấn ñề khai phá
dữ liệu, số lượng các mẫu rất lớn và có thể lên ñến hàng triệu Trong những trường hợp
Trang 36thay ựổi hoặc tìm cách xấp xỉ trong giải thuật hay dùng các phương pháp hồi quy khác
nhau
2.3.1.3.2 đánh giá
Ưu ựiểm: Phương pháp này có thể giải quyết ựược các trường hợp biến phụ thuộc
Y có quan hệ tuyến tắnh với nhiều biến ựộc lập Xi,
Nhược ựiểm: ựối với các trường hợp mô hình quan hệ giữa biến Y và biến X là phi
tuyến tắnh thì phương pháp này có nhiều hạn chế Chúng ta sẽ xét mô hình phi
tuyến tắnh sau ựây
2.3.2.1 Giới thiệu
Trong một số trường hợp khi ta ựi tìm mô hình quan hệ giữa biến ựộc lập và biến phụ
thuộc trên các tập dữ liệu phức tạp mà sự biểu diễn dữ liệu của các tập dữ liệu trên ựồ thị
ựiểm không theo hình dạng một mô hình nào và rất khó nhận dạng ra hàm quan hệ giữa X
và Y Lúc ựó chúng ta sẽ ựi xây dựng mô hình khác nhau cho từng tập dữ liệu, tức là ựi
ước lượng các giá trị của các tham số của các hàm toán học bằng cách phù hợp dữ liệu cho
mô hình toán học Quá trình phù hợp ựó gọi là quá trình làm trơn ựồ thị ựiểm
Chúng ta sẽ làm gì trong trường hợp mô hình dữ liệu không biểu diễn dưới dạng phụ
thuộc tuyến tắnh? Vắ dụ như làm thế nào nếu biến X và Y có quan hệ ựược mô hình hóa bởi
một hàm ựa thức?
Hồi quy ựa thức: Dạng hồi quy ựa thức có thể ựược mô hình hóa bằng cách thêm vào
các thành phần ựa thức, bằng cách biến ựổi biến, có thể chuyển nó sang dạng phi tuyến
tắnh
Vắ dụ: Xét mô hình hồi quy ựa thức bậc 3 sau:
Y = α +β1 X + β2 X 2 + β3 X 3
Trang 37Một lớp lớn các vấn ñề về hồi quy, ban ñầu là phi tuyến tính, có thể ñược chuyển sang
dạng của mô hình tuyến tính tổng quát Ví dụ:
Y = α +β1 X 1 +β2 X 2 + β3 X 1 X 3 + β4 X 2 X 3
ðặt biến: X4 = X1X3 và X5 = X2X3, thì Y ñược viết lại như sau :
Y = α +β1 X 1 +β2 X 2 +β3 X4 +β4 X 5
Chú ý rằng, các thành phần của mô hình tuyến tính tổng quát áp dụng cho biến phụ
thuộc Y là một hàm tuyến tính của các tham số “unknown” Do ñó, một mô hình tuyến tính
tổng quát có thể cũng có một số thành phần của biến ñộc lập X như X12, eβx X
1.X2, 1/X, hay X23 Và có một số phương pháp chuyển ñể tuyến tính hóa các dạng này ñược cho ở
bảng 2-2
Bảng 2-2 Một số dạng chuyển thông dụng sang dạng hồi quy tuyến tính
Hyperbolic :Y=X/(α +βX) Y* = 1/Y ; X* = 1/X Y* = αX* +β
Trong việc áp dụng kỹ thuật ña hồi quy vào quá trình xác ñịnh biến ñộc lập từ tập dữ
liệu ban ñầu và trong quá trình chọn lựa mô hình mà chỉ sử dụng vào các biến thích hợp,
có hai phương pháp tiếp cận thường ñược dùng cho công việc này là:
Phương pháp tiếp cận tìm kiếm tuần tự (Sequential search approach) việc xây
dựng mô hình hồi quy khởi tạo từ tập biến ban ñầu sau ñó thêm vào hay loại bỏ các
biến cho ñến khi các tiêu chí chọn lựa ñược thỏa mãn hay tối ưu
Trang 38Phương pháp tiếp cận kết hợp : Thực chất là phương pháp tiếp cận brute-force,
trong ñó việc tìm kiếm ñược thực hiện trên tất cả các sự kết hợp của các biến ñộc
lập ñể xác ñịnh mô hình hồi quy tốt nhất
2.3.2.2 Hệ số tương quan
Phân tích mối tương quan của mối quan hệ giữa hai biến có một tham số gọi là hệ số
tương quan r (correlation coefficient)
( xi – meanx) (yi – meany) ,
meanx, meany là giá trị trung bình của tập x va y tương ứng
Giá trị của hệ số tương quan r∈[-1, 1], r ñược dùng ñể ước lượng hướng và ñộ mạnh của
mối quan hệ giữa X,Y
| r | > 0,8: tương quan mạnh
0,4 ≤ | r | ≤ 0,8: tương quan trung bình
| r | < 0,4: tương quan yếu
| r | càng lớn thì tương quan giữa X và Y càng chặt
r > 0 ñộ dốc dương
r < 0 với ñường thẳng hồi quy có ñộ dốc âm
0 < r ≤ 1 : gọi là tương quan tuyến tính thuận (X↑, Y↑)
-1 ≤ r ≤ 0 : gọi là tương quan tuyến tính nghịch (X↑, Y↓)
Ví dụ: Cho mô hình B = 0.8 + 1.04A có dữ liệu như bảng 2-3
Trang 39Bảng 2-3 Dữ liệu của 2 thuộc tính A và B
Hệ số tương quan r = 0.85 có nghĩa rằng quan hệ tuyến tính giữa 2 biến A và B là tốt
Vì r2 = 0.72 nên ta có thể nói rằng 72% của sự biến thiên của B ảnh hưởng ñến quan hệ
tuyến tính với A
2.3.2.3 Khái niệm làm trơn
Các phần trên chúng ta ñã trình bày các phương pháp hồi quy mà sự phân tích mô hình
là dạng có tham số và sử dụng phương pháp bình phương nhỏ nhất ñể ước lượng giá trị các
tham số Phần này chúng ta sẽ trình bày phương pháp tiếp cận phi tuyến tính, theo ñó mô
hình tổng quát hơn và ñược cho bởi biểu thức:
Trong ñó, mỗi hàm f(X j ) sẽ là một hàm làm trơn (smooth function) và biểu diễn một
hàm phi tuyến tính của các biến ñộc lập
Hàm f(X j ) thường ñược gọi là hàm hồi quy hay là hàm làm trơn Chúng ta sẽ tìm kiếm
một hàm sao cho nó có thể cực tiểu giá trị tổng bình phương sai số giữa giá trị thực và giá
trị có ñược từ hàm ước lượng ñược
Nếu không có giả ñịnh một dạng nào về hàm f(X j ) cả, thì chúng ta nên dùng các kỹ
thuật hồi quy phi tuyến tính với nhiều dạng hàm toán học Phương pháp hồi quy phi tuyến
tính mà tác giả sẽ trình bày phần sau ñây ñược gọi là sự làm trơn ñồ thị ñiểm (scatterplot
smooth) vì nó giúp ta chuyển ñổi một cách trực quan hóa mối quan hệ giữa hai biến X và
biến Y
Trang 402.3.2.4 ðường khuynh hướng
ðường khuynh hướng (Trendline) là ñường biểu diễn hình dạng khuynh hướng của dữ
liệu bằng ñồ thị Dựa vào ñường khuynh hướng, chúng ta có thể phân tích vấn ñề dự báo
Một dạng phân tích ñó là phân tích hồi quy (regression analysis) Bằng cách sử dụng phân
tích hồi quy, chúng ta có thể mở rộng ñường khuynh hướng dựa trên dữ liệu thực tế ñể dự
báo giá trị cho tương lai Xét dữ liệu bảng 2-4:
Từ dữ liệu trên, chúng ta có ñường khuynh hướng như hình 2.4
Sau ñó, sử dụng ñường khuynh hướng, chúng ta có thể dự báo ñược giá trị bán hàng
trong tương lai dựa trên 4 quý trong quá khứ ðồ thị biểu diễn ñường khuynh hưởng mở
rộng ñến các thời ñiểm trong tương lai như hình 2.5