Tải bản đầy đủ

Khai phá luật kết hợp từ dữ liệu chuỗi thời gian

LỜI CAM ĐOAN
Tôi xin cam đoan luận văn “Khai phá dữ liệu từ dữ liệu chuỗi thời
gian” là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn của PGS.TS.
Bùi Thế Hồng. Toàn bộ phần mềm do chính tôi lập trình và kiểm thử. Tôi xin
chịu trách nhiệm về lời cam đoan của mình.
Các số liệu và thông tin sử dụng trong luận văn này hoàn toàn là trung
thực.
Tác giả

Trần Thị Thu Trang


ii

MỤC LỤC
MỤC LỤC....................................................................................................................ii
DANH MỤC HÌNH VẼ...............................................................................................v
DANH MỤC CÁC BẢNG..........................................................................................ix
MỞ ĐẦU.....................................................................................................................xi
Ngày nay, cuộc cách mạng của kỹ thuật số cho phép số hóa thông tin dễ
dàng và chi phí lưu trữ thấp.Với sự phát triển của phần mềm, phần cứng và

trang bị nhanh hệ thống máy tính trong kinh doanh. Số lượng dữ liệu khổng
lồ được tập trung và lưu trữ trong cơ sở dữ liệu. Dữ liệu sau khi phục vụ cho
một mục đích nào đó được lưu lại trong kho dữ liệu và theo ngày tháng khối
lượng dữ liệu được lưu trữ ngày càng lớn. Trong khối lượng dữ liệu to lớn
này có rất nhiều thông tin có ích mang tính tổng quát, thông tin có tính quy
luật vẫn còn đang tiềm ẩn mà chúng ta chưa biết. Từ khối lượng dữ liệu rất
lớn cần có những công cụ tự động rút các thông tin và kiến thức có ích. Một
hướng tiếp cận có khả năng giúp các công ty khai thác các thông tin có
nhiều ý nghĩa từ các tập dữ liệu lớn đó là khai phá dữ liệu............................xi
Với sự bùng nổ và phát triển của công nghệ thông tin đã mang lại nhiều hiệu
quả đối với khoa học cũng như các hoạt động thực tế, trong đó khai phá dữ
liệu là một trong những lĩnh vực mang lại hiệu quả thiết thực cho con người.
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 kho dữ liệu khổng lồ khác. Luận văn đề cập
đến các khái niệm và vấn đề cơ bản trong khai phá luật kết hợp từ dữ liệu
chuỗi thời gian được áp dụng trong cơ sở dữ liệu bán hàng..........................xi
CHƯƠNG 1: KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU .........................................xiii
VÀ CHUỖI THỜI GIAN..........................................................................................xiii
1.1. Khai phá dữ liệu.............................................................................................xiii
1.1.1. Khai phá dữ liệu là gì?............................................................................xiii
1.1.2. Nhiệm vụ của khai phá dữ liệu...............................................................xiii
1.1.3. Triển khai việc khai phá dữ liệu...............................................................xv
1.1.4. Một số ứng dụng khai phá dữ liệu..........................................................xvi


iii

1.1.5. Quá trình phát hiện tri thức trong cơ sở dữ liệu....................................xvii
1.1.6. Các kỹ thuật khai phá dữ liệu..................................................................xix
1.2. Dữ liệu chuỗi thời gian.................................................................................xxiv
1.2.1. Khái niệm..............................................................................................xxiv
1.2.2. Tiền xử lý dữ liệu chuỗi thời gian......................................................xxvii
Hình 1.5. Trung bình trượt hàm mũ........................................................................xxix
CHƯƠNG 2: KHAI PHÁ LUẬT KẾT HỢP TỪ DỮ LIỆU CHUỖI THỜI GIAN
...................................................................................................................................xxx
2.1. Luật kết hợp trong khai phá dữ liệu............................................................xxx
2.1.1. Khái niệm luật kết hợp........................................................................xxx
2.1.2. Lý thuyết về luật kết hợp.....................................................................xxxi
2.2. Khai phá luật kết hợp ...................................................................................37
2.2.1. Khai phá luật kết hợp từ cơ sở dữ liệu....................................................37

2.2.2. Khai phá luật kết hợp từ dữ liệu chuỗi thời gian....................................38
2.3. Thuật toán khai phá luật kết hợp từ dữ liệu chuỗi thời gian...........................40
2.3.1. Thuật toán khai phá luật kết hợp từ dữ liệu thường................................40
2.3.2. Thuật toán khai phá luật kết hợp từ dữ liệu chuỗi thời gian....................50
CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM.............................63
3.1. Phát biểu bài toán............................................................................................63
3.2. Xây dựng chương trình....................................................................................64
KẾT LUẬN.................................................................................................................73
TÀI LIỆU THAM KHẢO..........................................................................................74
Tiếng Việt...............................................................................................................74
Tiếng Anh...............................................................................................................74


iv


v

DANH MỤC HÌNH VẼ
MỤC LỤC....................................................................................................................ii
DANH MỤC HÌNH VẼ...............................................................................................v
DANH MỤC CÁC BẢNG..........................................................................................ix
MỞ ĐẦU.....................................................................................................................xi
Ngày nay, cuộc cách mạng của kỹ thuật số cho phép số hóa thông tin dễ
dàng và chi phí lưu trữ thấp.Với sự phát triển của phần mềm, phần cứng và
trang bị nhanh hệ thống máy tính trong kinh doanh. Số lượng dữ liệu khổng
lồ được tập trung và lưu trữ trong cơ sở dữ liệu. Dữ liệu sau khi phục vụ cho
một mục đích nào đó được lưu lại trong kho dữ liệu và theo ngày tháng khối
lượng dữ liệu được lưu trữ ngày càng lớn. Trong khối lượng dữ liệu to lớn
này có rất nhiều thông tin có ích mang tính tổng quát, thông tin có tính quy
luật vẫn còn đang tiềm ẩn mà chúng ta chưa biết. Từ khối lượng dữ liệu rất
lớn cần có những công cụ tự động rút các thông tin và kiến thức có ích. Một
hướng tiếp cận có khả năng giúp các công ty khai thác các thông tin có
nhiều ý nghĩa từ các tập dữ liệu lớn đó là khai phá dữ liệu............................xi
Với sự bùng nổ và phát triển của công nghệ thông tin đã mang lại nhiều hiệu
quả đối với khoa học cũng như các hoạt động thực tế, trong đó khai phá dữ
liệu là một trong những lĩnh vực mang lại hiệu quả thiết thực cho con người.
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 kho dữ liệu khổng lồ khác. Luận văn đề cập
đến các khái niệm và vấn đề cơ bản trong khai phá luật kết hợp từ dữ liệu
chuỗi thời gian được áp dụng trong cơ sở dữ liệu bán hàng..........................xi
CHƯƠNG 1: KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU .........................................xiii
VÀ CHUỖI THỜI GIAN..........................................................................................xiii
1.1. Khai phá dữ liệu.............................................................................................xiii
1.1.1. Khai phá dữ liệu là gì?............................................................................xiii
1.1.2. Nhiệm vụ của khai phá dữ liệu...............................................................xiii
1.1.3. Triển khai việc khai phá dữ liệu...............................................................xv
1.1.4. Một số ứng dụng khai phá dữ liệu..........................................................xvi


vi

1.1.5. Quá trình phát hiện tri thức trong cơ sở dữ liệu....................................xvii
Hình 1.1. Quá trình phát hiện tri thức trong cơ sở dữ liệu.....................................xviii
1.1.6. Các kỹ thuật khai phá dữ liệu..................................................................xix
1.1.6.1. Phân cụm dữ liệu:..........................................................................xx
1.1.6.2. Phân lớp dữ liệu:...........................................................................xx
1.1.6.3. Phương pháp hồi quy: .................................................................xxi
1.1.6.4. Khai phá luật kết hợp:..................................................................xxi
1.1.7. Những khó khăn trong khai phá dữ liệu........................................xxii
1.2. Dữ liệu chuỗi thời gian.................................................................................xxiv
1.2.1. Khái niệm..............................................................................................xxiv
1.2.1.1. Khái niệm chuỗi thời gian..........................................................xxiv
1.2.1.2. Các thành phần của chuỗi thời gian............................................xxv
Hình 1.2. Đồ thị thể hiện thành phần xu hướng dài hạn..........................................xxv
Hình 1.3. Đồ thị thể hiện thành phần mùa..............................................................xxvi
Hình 1.4. Đồ thị thể hiện thành phần chu kỳ..........................................................xxvi
1.2.2. Tiền xử lý dữ liệu chuỗi thời gian......................................................xxvii
Hình 1.5. Trung bình trượt hàm mũ........................................................................xxix
CHƯƠNG 2: KHAI PHÁ LUẬT KẾT HỢP TỪ DỮ LIỆU CHUỖI THỜI GIAN
...................................................................................................................................xxx
2.1. Luật kết hợp trong khai phá dữ liệu............................................................xxx
2.1.1. Khái niệm luật kết hợp........................................................................xxx
2.1.2. Lý thuyết về luật kết hợp.....................................................................xxxi
2.1.2.1 Khái niệm....................................................................................xxxi
2.1.2.2. Một số hướng tiếp cận trong khai phá luật kết hợp................xxxiv
2.2. Khai phá luật kết hợp ...................................................................................37


vii

2.2.1. Khai phá luật kết hợp từ cơ sở dữ liệu....................................................37
2.2.2. Khai phá luật kết hợp từ dữ liệu chuỗi thời gian....................................38
2.3. Thuật toán khai phá luật kết hợp từ dữ liệu chuỗi thời gian...........................40
2.3.1. Thuật toán khai phá luật kết hợp từ dữ liệu thường................................40
2.3.1.1. Thuật toán Apriori.........................................................................40
Bảng 2.1. Ma trận biểu diễn cơ sở dữ liệu.................................................................45
Bảng 2.2. Vector biểu diễn nhị phân cho tập 1 thuộc tính........................................45
Bảng 2.3. Vector biểu diễn nhị phân cho các tập 2 thuộc tính..................................45
Bảng 2.4. Vector biểu diễn nhị phân cho các tập 3 thuộc tính..................................46
Bảng 2.5. Vector biểu diễn nhị phân cho các tập 4 thuộc tính..................................46
2.3.1.2. Thuật toán FP-Growth...................................................................46
Hình 2.1. Một cây mẫu thường xuyên.......................................................................49
Bảng 2.7. Khoản mục và số lần xuất hiện trong cơ sở dữ liệu..................................49
2.3.2. Thuật toán khai phá luật kết hợp từ dữ liệu chuỗi thời gian....................50
2.3.2.1.Thuật toán xây dựng cây CFP_Tree.............................................50
Hình 2.2. FP-Tree và CFP-Tree.................................................................................52
Hình 2.3: Các khoản mục được ánh xạ......................................................................54
Hình 2.4: Ví dụ cây CFP-Tree...................................................................................54
2.3.2.2. Thuật toán CFPmine.....................................................................56
2.3.2.3.Thuật toán ITARM........................................................................59
CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM.............................63
3.1. Phát biểu bài toán............................................................................................63
3.2. Xây dựng chương trình....................................................................................64
Hình 3.1. Bảng cơ sở dữ liệu......................................................................................65


viii

Hình 3.2. Giao diện chính của chương trình..............................................................66
Hình 3.3. Thực hiện chọn CSDL...............................................................................66
Hình 3.4. Thực hiện xóa CSDL..................................................................................67
Hình 3.5. Tìm tập phổ biến dựa trên thuật toán CFPmine.........................................68
Hình 3.6. Thực hiện lệnh Reset..................................................................................69
Hình 3.7. Chọn dữ liệu cho thuật toán tìm luật kết hợp............................................70
Hình 3.8. Thực hiện xóa cơ sở dữ liệu.......................................................................70
Hình 3.9. Thực hiện luật kết hợp ..............................................................................71
Hình 3.10. Thực hiện lệnh Reset................................................................................72
KẾT LUẬN.................................................................................................................73
TÀI LIỆU THAM KHẢO..........................................................................................74
Tiếng Việt...............................................................................................................74
Tiếng Anh...............................................................................................................74


ix

DANH MỤC CÁC BẢNG
MỤC LỤC....................................................................................................................ii
DANH MỤC HÌNH VẼ...............................................................................................v
DANH MỤC CÁC BẢNG..........................................................................................ix
MỞ ĐẦU.....................................................................................................................xi
Ngày nay, cuộc cách mạng của kỹ thuật số cho phép số hóa thông tin dễ
dàng và chi phí lưu trữ thấp.Với sự phát triển của phần mềm, phần cứng và
trang bị nhanh hệ thống máy tính trong kinh doanh. Số lượng dữ liệu khổng
lồ được tập trung và lưu trữ trong cơ sở dữ liệu. Dữ liệu sau khi phục vụ cho
một mục đích nào đó được lưu lại trong kho dữ liệu và theo ngày tháng khối
lượng dữ liệu được lưu trữ ngày càng lớn. Trong khối lượng dữ liệu to lớn
này có rất nhiều thông tin có ích mang tính tổng quát, thông tin có tính quy
luật vẫn còn đang tiềm ẩn mà chúng ta chưa biết. Từ khối lượng dữ liệu rất
lớn cần có những công cụ tự động rút các thông tin và kiến thức có ích. Một
hướng tiếp cận có khả năng giúp các công ty khai thác các thông tin có
nhiều ý nghĩa từ các tập dữ liệu lớn đó là khai phá dữ liệu............................xi
Với sự bùng nổ và phát triển của công nghệ thông tin đã mang lại nhiều hiệu
quả đối với khoa học cũng như các hoạt động thực tế, trong đó khai phá dữ
liệu là một trong những lĩnh vực mang lại hiệu quả thiết thực cho con người.
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 kho dữ liệu khổng lồ khác. Luận văn đề cập
đến các khái niệm và vấn đề cơ bản trong khai phá luật kết hợp từ dữ liệu
chuỗi thời gian được áp dụng trong cơ sở dữ liệu bán hàng..........................xi
CHƯƠNG 1: KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU .........................................xiii
VÀ CHUỖI THỜI GIAN..........................................................................................xiii
1.1. Khai phá dữ liệu.............................................................................................xiii
1.1.1. Khai phá dữ liệu là gì?............................................................................xiii
1.1.2. Nhiệm vụ của khai phá dữ liệu...............................................................xiii
1.1.3. Triển khai việc khai phá dữ liệu...............................................................xv
1.1.4. Một số ứng dụng khai phá dữ liệu..........................................................xvi


x

1.1.5. Quá trình phát hiện tri thức trong cơ sở dữ liệu....................................xvii
1.1.6. Các kỹ thuật khai phá dữ liệu..................................................................xix
1.2. Dữ liệu chuỗi thời gian.................................................................................xxiv
1.2.1. Khái niệm..............................................................................................xxiv
1.2.2. Tiền xử lý dữ liệu chuỗi thời gian......................................................xxvii
Hình 1.5. Trung bình trượt hàm mũ........................................................................xxix
CHƯƠNG 2: KHAI PHÁ LUẬT KẾT HỢP TỪ DỮ LIỆU CHUỖI THỜI GIAN
...................................................................................................................................xxx
2.1. Luật kết hợp trong khai phá dữ liệu............................................................xxx
2.1.1. Khái niệm luật kết hợp........................................................................xxx
2.1.2. Lý thuyết về luật kết hợp.....................................................................xxxi
2.2. Khai phá luật kết hợp ...................................................................................37
2.2.1. Khai phá luật kết hợp từ cơ sở dữ liệu....................................................37
2.2.2. Khai phá luật kết hợp từ dữ liệu chuỗi thời gian....................................38
2.3. Thuật toán khai phá luật kết hợp từ dữ liệu chuỗi thời gian...........................40
2.3.1. Thuật toán khai phá luật kết hợp từ dữ liệu thường................................40
2.3.2. Thuật toán khai phá luật kết hợp từ dữ liệu chuỗi thời gian....................50
CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM.............................63
3.1. Phát biểu bài toán............................................................................................63
3.2. Xây dựng chương trình....................................................................................64
KẾT LUẬN.................................................................................................................73
TÀI LIỆU THAM KHẢO..........................................................................................74
Tiếng Việt...............................................................................................................74
Tiếng Anh...............................................................................................................74


xi

MỞ ĐẦU
Ngày nay, cuộc cách mạng của kỹ thuật số cho phép số hóa thông tin dễ
dàng và chi phí lưu trữ thấp.Với sự phát triển của phần mềm, phần cứng và
trang bị nhanh hệ thống máy tính trong kinh doanh. Số lượng dữ liệu khổng lồ
được tập trung và lưu trữ trong cơ sở dữ liệu. Dữ liệu sau khi phục vụ cho một
mục đích nào đó được lưu lại trong kho dữ liệu và theo ngày tháng khối lượng
dữ liệu được lưu trữ ngày càng lớn. Trong khối lượng dữ liệu to lớn này có rất
nhiều thông tin có ích mang tính tổng quát, thông tin có tính quy luật vẫn còn
đang tiềm ẩn mà chúng ta chưa biết. Từ khối lượng dữ liệu rất lớn cần có
những công cụ tự động rút các thông tin và kiến thức có ích. Một hướng tiếp
cận có khả năng giúp các công ty khai thác các thông tin có nhiều ý nghĩa từ
các tập dữ liệu lớn đó là khai phá dữ liệu.
Với sự bùng nổ và phát triển của công nghệ thông tin đã mang lại nhiều
hiệu quả đối với khoa học cũng như các hoạt động thực tế, trong đó khai phá
dữ liệu là một trong những lĩnh vực mang lại hiệu quả thiết thực cho con
người. 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 kho dữ liệu khổng lồ khác. Luận văn đề
cập đến các khái niệm và vấn đề cơ bản trong khai phá luật kết hợp từ dữ liệu
chuỗi thời gian được áp dụng trong cơ sở dữ liệu bán hàng.
Luận văn cấu trúc gồm 3 chương:
Chương 1:
Trong chương 1 tìm hiểu khái quát về khai phá dữ liệu và dữ liệu chuỗi
thời gian và phương pháp tiền xử lý dữ liệu chuỗi thời gian.
Chương 2:
Trong chương 2 sẽ tìm hiểu phương pháp khai phá dữ liệu từ chuỗi thời
gian qua thuật toán ITARM dựa trên cấu trúc cây CFPTree.


xii

Chương 3:
Trong chương 3 tiến hành cài đặt thuật toán ở chương 2 và cài đặt ứng
dụng của thuật toán trên cơ sở dữ liệu bán hàng.
Luận văn này được hoàn thành dưới sự hướng dẫn tận tình của PGS.TS
Bùi Thế Hồng, em xin bày tỏ lòng biết ơn chân thành của mình đối với thầy.
Em xin chân thành cảm ơn các thầy, cô giáo Viện Công nghệ thông tin,
Trường Đại học Công nghệ thông tin và Truyền thông - Đại học Thái Nguyên
đã tham gia giảng dạy, giúp đỡ em trong suốt qúa trình học tập nâng cao trình
độ kiến thức. Tuy nhiên vì điều kiện thời gian và khả năng có hạn nên luận
văn không thể tránh khỏi những thiếu sót. Em kính mong các thầy cô giáo và
các bạn đóng góp ý kiến để đề tài được hoàn thiện hơn.


xiii

CHƯƠNG 1: KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU
VÀ CHUỖI THỜI GIAN
1.1. Khai phá dữ liệu
1.1.1. Khai phá dữ liệu là gì?
Khai phá dữ liệu là một khái niệm ra đời vào những năm cuối của thập
kỷ 80. Nó bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thông tin có
giá trị tiềm ẩn trong các tập dữ liệu lớn(các kho dữ liệu). Về bản chất, khai
phá dữ liệu liên quan đến việc phân tích các dữ liệu và sử dụng các kỹ thuật
để tìm ra các mẫu hình có tính chính quy trong tập dữ liệu.
Năm 1989, Fayyad, Piatestsky-Shapiro và Smyth đã dùng khái niệm
Phát hiện tri thức trong cơ sở dữ liệu để chỉ toàn bộ quá trình phát hiện các tri
thức có ích từ các tập dữ liệu lớn. Trong đó, khai phá dữ liệu là một bước đặc
biệt trong toàn bộ quá trình, sử dụng các giải thuật đặc biệt để chiết xuất ra
các mẫu (hay các mô hình) từ dữ liệu.
Ở một mức độ trừu tượng nhất định có thể định nghĩa về khai phá dữ
liệu: Khai phá dữ liệu là một quá trình tìm kiếm, phát hiện các tri thức mới,
tiềm ẩn, hữu dụng trong cơ sở dữ liệu lớn.
Khám phá tri thức là mục tiêu chính của khai phá dữ liệu, do vậy hai
khái niệm đó được xem như hai lĩnh vực tương đương nhau. Nhưng, nếu phân
chia một cách tách bạch thì khai phá dữ liệu là một bước chính trong quá trình
khám phá tri thức.
1.1.2. Nhiệm vụ của khai phá dữ liệu
Các bài toán liên quan đến khai phá dữ liệu về bản chất là các bài
toán thống kê. Điểm khác biệt giữa các kỹ thuật khai phá dữ liệu và các
công cụ phục vụ tính toán thống kê mà chúng ta đã biết là ở khối lượng cần
tính toán. Một khi dữ liệu đã trở nên khổng lồ thì những khâu như: thu thập
dữ liệu, tiền xử lý và xử lý dữ liệu đều đòi hỏi phải được tự động hóa. Tuy


xiv

nhiên ở công đoạn cuối cùng, việc phân tích kết quả sau khi đã khai phá dữ
liệu vẫn luôn là công việc của con người.
Do là một lĩnh vực đa ngành, khai phá dữ liệu thu hút các lĩnh vực
khoa học khác như trí tuệ nhân tạo, cơ sở dữ liệu, marketing, toán học, vận
trù học, nhận dạng mẫu, tính toán thống kê …
Điều mà khai phá dữ liệu có thể làm rất tốt là phát hiện ra những giả
thuyết mạnh trước khi sử dụng những công cụ tính toán thống kê. Mô hình
dự báo sử dụng kỹ thuật phân cụm để chia nhóm các sự vật, sự kiện sau đó
rút ra các luật nhằm tìm ra đặc trưng cho mỗi nhóm và cuối cùng đề nghị
một mô hình. Ví dụ, những bạn đọc đăng ký dài hạn của một tạp chí có thể
phân nhóm dựa theo nhiều tiêu chí khác nhau (lứa tuổi, giới tính, thu
nhập…), sau đó tạp chí căn cứ vào đặc trưng riêng của từng nhóm để đề ra
mức phí thu trong năm sao cho phù hợp nhất.
Chúng ta thấy những nhiệm vụ cơ bản nhất của khai phá dữ liệu là:
- Phân cụm, phân loại, phân nhóm, phân lớp. Nhiệm vụ là trả lời
câu hỏi: Một dữ liệu mới thu thập sẽ thuộc về nhóm nào? Quá trình này
thường được thực hiện một cách tự động.
- Khai phá luật kết hợp. Nhiệm vụ là phát hiện ra những mối
quan hệ giống nhau của các bản ghi giao dịch. Luật kết hợp X=>Y có dạng
tổng quát là: Nếu một giao dịch đã sở hữu các tính chất X thì đồng thời nó
cũng sở hữu các tính chất Y. Ở một mức độ nào đó, khai phá luật kết hợp
được hiểu theo nghĩa: Biết trước các tính chất X, vậy các tính chất Y là
những tính chất nào?
- Lập mô hình dự báo, bao gồm hai nhiệm vụ: Hoặc là phân
nhóm dữ liệu vào một hay nhiều lớp dữ liệu đã xác định từ trước, hoặc
là sử dụng các trường đã cho trong một cơ sở dữ liệu để dự báo sự xuất hiện
(hoặc không xuất hiện) của các trường hợp khác.


xv

- Phân tích đối tượng ngoài cuộc: Một cơ sở dữ liệu có thể có
thể chứa các đối tượng không tuân theo mô hình dữ liệu. Các đối tượng dữ
liệu như vậy gọi là các đối tượng ngoài cuộc. Hầu hết các phương pháp khai
phá dữ liệu đều coi các đối tượng ngoài cuộc là nhiễu và loại bỏ chúng. Tuy
nhiên trong một số ứng dụng, chẳng hạn như phát hiện nhiễu thì sự kiện
hiếm khi xảy ra lại được chú ý hơn những gì thường xuyên gặp phải. Sự
phân tích dữ liệu ngoài cuộc được coi như là phai phá các đối tượng ngoài
cuộc. Một số phương pháp được ứng dụng để phát hiện đối tượng ngoài
cuộc: Sử dụng các hình thức kiểm tra mang tính thống kê trên cơ sở một
phân phối dữ liệu hay một mô hình xác suất cho dữ liệu, dùng các độ đo
khoảng cách mà theo đó các đối tượng có một khoảng cách đáng kể đến
cụm bất kỳ khác được coi là đối tượng ngoài cuộc, dùng các phương pháp
dựa trên độ lệch để kiểm tra sự khác nhau trong những đặc trưng chính của
các nhóm đối tượng.
- Phân tích sự tiến hóa: Phân tích sự tiến hóa thực hiện việc mô
tả và mô hình hóa các quy luật hay khuynh hướng của những đối tượng mà
ứng xử của chúng thay đổi theo thời gian. Phân tích sự tiến hóa có thể bao
gồm cả đặc trưng hóa, phân biệt, tìm luật kết hợp, phân lớp hay phân cụm
dữ liệu liên quan đến thời gian, phân tích dữ liệu theo chuỗi thời gian, so
sánh mẫu theo chu kỳ và phân tích dữ liệu dựa trên tính tương tự.
1.1.3. Triển khai việc khai phá dữ liệu
Một nhóm các tác giả đề nghị triển khai quá trình khai phá dữ liệu
theo 5 bước:
Bước 1: Xác định rõ mục tiêu thương mại cần khai phá.
Bước 2: Chuẩn bị dữ liệu (Thu thập, tiền xử lý, chuyển đổi
khuôn dạng dữ liệu nếu thấy cần thiết)
Bước 3: Khai phá dữ liệu (Chọn thuật toán thích hợp)


xvi

Bước 4: Phân tích kết quả thu được (Xem có gì thú vị không?)
Bước 5: Tiêu hóa các tri thức thu lượm được (Nhằm đề ra kế
hoạch khai thác các thông tin mới)
Một tác giả khác cũng nói tới quy trình 5 bước của khai phá dữ liệu,
với quan điểm gần giống như trên:
1. Chiết xuất, biến đổi và nạp dữ liệu vào hệ thống kho dữ liệu.
2. Lưu trữ và quản trị dữ liệu trong một cơ sở dữ liệu nhiều chiều
3. Xác định mục tiêu cần khai phá (Sử dụng các công cụ phân
tích về mặt tác nghiệp)
4. Sử dụng các phần mềm phân tích dữ liệu để khai phá dữ liệu
5. Thể hiện kết quả khai phá dưới khuôn dạng hữu ích hay bảng
biểu, đồ thị.
1.1.4. Một số ứng dụng khai phá dữ liệu
Ở thập kỷ 90 của thế kỷ XX, người ta coi khai phá dữ liệu là quá trình
phân tích cơ sở dữ liệu nhằm phát hiện ra các thông tin mới và giá trị,
thường thể hiện dưới dạng các mối quan hệ chưa biết đến giữa các biến số.
Những phát hiện này được sử dụng nhằm tăng thêm tính hiệu quả của doanh
nghiệp trong khi phải cạnh tranh trên thương trường. Nhờ phân tích các dữ
liệu liên quan đến khách hàng, doanh nghiệp có khả năng dự báo trước một
số hành vi ứng xử của khách hàng.
Những năm gần đây, người ta quan niệm khai phá dữ liệu (đôi khi còn
dùng thuật ngữ khám phá dữ liệu hay phát hiện tri thức) là một quá trình
phân tích dữ liệu từ các viễn cảnh khác nhau và rút ra các thông tin bổ ích –
những thông tin có thể dùng để tăng lợi nhuận, cắt giảm chi phí hoặc cả
hai mục đích. Phần mềm khai phá dữ liệu là một công cụ phân tích dùng để
phân tích dữ liệu. Nó cho phép người sử dụng phân tích dữ liệu theo
nhiều góc nhìn khác nhau, phân loại dữ liệu theo những quan điểm riêng


xvii

biệt và tổng kết các mối quan hệ đã được bóc tách. Xét về khía cạnh kỹ
thuật, khai phá dữ liệu là một quá trình tìm kiếm các mối tương quan giữa
các mẫu ẩn chứa trong hàng chục trường dữ liệu của một cơ sở dữ liệu quan
hệ cỡ lớn.
Hiện nay, kỹ thuật khai phá dữ liệu đang được áp dụng một cách rộng
rãi trong rất nhiều lĩnh vực kinh doanh và đời sống khác nhau như:
- Thương mại: Phân tích dữ liệu bán hàng và thị trường, phân tích
đầu tư, quyết định cho vay, phát hiện gian lận, …
- Thông tin sản xuất: Điều khiển và lập kế hoạch, hệ thống quản
lý, phân tích kết quả thử nghiệm, …
- Thông tin khoa học: dự báo thời tiết, cơ sở dữ liệu sinh học: ngân
hàng gen, khoa học địa lý: dự báo động đất, …
- Trong y tế, marketing, ngân hàng, viễn thông, du lịch, Internet…
Và những gì thu được thật đáng giá. Điều đó được chứng minh bằng
thực tế: Chẩn đoán bệnh trong y tế dựa trên kết quả xét nghiệm đã giúp cho
bảo hiểm y tế phát hiện ra nhiều trường hợp xét nghiệm không hợp lý, tiết
kiệm được nhiều kinh phí mỗi năm; trong dịch vụ viễn thông đã phát hiện ra
những nhóm người thường xuyên gọi cho nhau bằng mobile và thu lợi hàng
triệu USD; hay áp dụng khai phá dữ liệu vào phân tích các lần đăng nhập
Web vào các trang liên quan đến thị trường để phát hiện sở thích khách
hàng, từ đó đánh giá hiệu quả của việc tiếp thị qua Web và cải thiện hoạt
động của các Website.
1.1.5. Quá trình phát hiện tri thức trong cơ sở dữ liệu
Khám phá tri thức trong cơ sở dữ liệu là lĩnh vực liên quan đến các
ngành như: thống kê, học máy, cơ sở dữ liệu , thuật toán, trực quan hoá dữ
liệu, tính toán song song và hiệu năng cao,…


xviii

Mục đích của quá trình phát hiện tri thức là rút ra tri thức từ dữ liệu
trong cơ sở dữ liệu lớn. Quá trình phát hiện tri thức trong cơ sở dữ liệu là quá
trình gồm nhiều giai đoạn và lặp lại, mà trong đó sự lặp lại có thể xuất hiện ở
bất cứ bước nào.
Quá trình đó có thể được mô tả theo hình sau:

Hình 1.1. Quá trình phát hiện tri thức trong cơ sở dữ liệu
Bước thứ nhất: Hình thành, xác định và định nghĩa bài toán. Là
tìm hiểu lĩnh vực ứng dụng từ đó hình thành bài toán, xác định các nhiệm vụ
cần phải hoàn thành. Bước này sẽ quyết định cho việc rút ra được các tri thức
hữu ích và cho phép chọn các phương pháp khai phá dữ liệu thích hợp với
mục đích ứng dụng và bản chất của dữ liệu.
Bước thứ hai: Thu thập và tiền xử lý dữ liệu. Là thu thập và xử lý
thô, còn được gọi là tiền xử lý dữ liệu nhằm loại bỏ nhiễu (làm sạch dữ liệu),
xử lý việc thiếu dữ liệu (làm giàu dữ liệu), biến đổi dữ liệu và rút gọn dữ liệu
nếu cần thiết, bước này thường chiếm nhiều thời gian nhất trong toàn bộ qui
trình phát hiện tri thức. Do dữ liệu được lấy từ nhiều nguồn khác nhau, không
đồng nhất, … có thể gây ra các nhầm lẫn. Sau bước này, dữ liệu sẽ nhất quán,
đầy đủ, được rút gọn và rời rạc hoá.
Bước thứ ba: Khai phá dữ liệu rút ra các tri thức, hay nói cách
khác là trích ra các mẫu hoặc/và các mô hình ẩn dưới các dữ liệu. Giai đoạn


xix

này rất quan trọng, bao gồm các công đoạn như: chức năng, nhiệm vụ và mục
đích của khai phá dữ liệu, dùng phương pháp khai phá nào? Thông thường,
các bài toán khai phá dữ liệu bao gồm: các bài toán mang tính mô tả - đưa ra
tính chất chung nhất của dữ liệu, các bài toán dự báo - bao gồm cả việc phát
hiện các suy diễn dựa trên dữ liệu hiện có. Tùy theo bài toán xác định được
mà ta lựa chọn các phương pháp khai phá dữ liệu cho phù hợp.
Bước thứ tư: Sử dụng các tri thức phát hiện được. Là hiểu tri
thức đã tìm được, đặc biệt là làm sáng tỏ các mô tả và dự đoán. Các bước trên
có thể lặp đi lặp lại một số lần, kết quả thu được có thể được lấy trung bình
trên tất cả các lần thực hiện. Các kết quả của quá trình phát hiện tri thức có
thể được đưa và ứng dụng trong các lĩnh vực khác nhau. Do các kết quả có
thể là các dự đoán hoặc các mô tả nên chúng có thể được đưa vào các hệ
thống hỗ trợ ra quyết định nhằm tự động hoá quá trình này.
Tóm lại: Khai phá tri thức là một quá trình kết xuất ra tri thức từ kho dữ
liệu mà trong đó khai phá dữ liệu là công đoạn quan trọng nhất.
1.1.6. Các kỹ thuật khai phá dữ liệu
Thường được chia thành hai nhóm chính:
- Kỹ thuật khai phá dữ liệu mô tả: Có nhiệm vụ mô tả về các tính
chất hoặc các đặc tính chung của dữ liệu trong cơ sở dữ liệu hiện có. Các kỹ
thuật này gồm có: Phân cụm (clustering), tóm tắt (summerization), trực quan
hóa (visualiztation), phân tích sự phát triển và độ lệch (evolution and
deviation analyst), phân tích luật kết hợp (association rules) …
- Kỹ thuật khai phá dữ liệu dự đoán: Có nhiệm vụ đưa ra các dự
đoán dựa vào các suy diễn trên dữ liệu hiện thời. Các kỹ thuật này gồm có:
Phân lớp (classification), hồi quy (regession)…
Tuy nhiên, chỉ có một số phương pháp thông dụng nhất là: Phân cụm
dữ liệu, phân lớp dữ liệu, phương pháp hồi quy và khai phá luật kết hợp.


xx

1.1.6.1. Phân cụm dữ liệu:
Mục tiêu chính của phương pháp phân cụm dữ liệu là nhóm các
đối tượng tương tự nhau trong tập dữ liệu vào các cụm sao cho các đối
tượng thuộc cùng một lớp là tương đồng còn các đối tượng thuộc các cụm
khác nhau sẽ không tương đồng. Phân cụm dữ liệu là một ví dụ của phương
pháp học không có thầy. Không giống như phân lớp dữ liệu, phân cụm dữ
liệu không đòi hỏi phải định nghĩa trước các mẫu dữ liệu huấn luyện. Vì thế
có thể coi phân cụm dữ liệu là một cách học bằng quan sát, trong khi phân
lớp dữ liệu là học bằng ví dụ. Trong phương pháp này bạn không thể biết
kết quả các cụm thu được sẽ thế nào khi bắt đầu quá trình. Vì vậy, thông
thường cần có một chuyên gia về lĩnh vực đó để đánh giá các cụm thu được.
Phân cụm dữ liệu được sử dụng nhiều trong các ứng dụng về phân đoạn
thị trường, phân đoạn khách hàng, nhận dạng mẫu, phân loại trang Web…
Ngoài ra phân cụm dữ liệu còn có thể được sử dụng như một bước tiền xử lý
cho các thuật toán khai phá dữ liệu khác.
1.1.6.2. Phân lớp dữ liệu:
Mục tiêu của phương pháp phân lớp dữ liệu là dự đoán nhãn lớp
cho các mẫu dữ liệu. Quá trình phân lớp dữ liệu thường gồm hai bước: Xây
dựng mô hình và sử dụng mô hình để phân lớp dữ liệu.
- Bước 1: Một mô hình sẽ được xây dựng dựa trên việc phân tích
các mẫu dữ liệu sẵn có. Mỗi mẫu tương ứng với một lớp, được quyết định
bởi một thuộc tính gọi là thuộc tính lớp. Các lớp dữ liệu này còn được gọi là
lớp dữ liệu huấn luyện. Các nhãn lớp của tập dữ liệu huấn luyện đều phải
được xác định trước khi xây dựng mô hình.
- Bước 2: Sử dụng mô hình để phân lớp dữ liệu. Trước hết, chúng ta
phải tính độ chính xác của mô hình. Nếu độ chính xác là chấp nhận được,
mô hình sẽ được sử dụng để dự đoán nhãn lớp cho các mẫu dữ liệu khác


xxi

trong tương lai.
Ví dụ về việc sử dụng phương pháp phân lớp trong khai phá dữ liệu
là ứng dụng phân lớp các xu hướng trong thị trường tài chính và ứng dụng
tự động xác định các đối tượng đáng quan tâm trong cơ sở dữ liệu ảnh lớn.
1.1.6.3. Phương pháp hồi quy:
Phương pháp hồi quy khác với phân lớp dữ liệu ở chỗ: Hồi quy
dùng để dự đoán về các giá trị liên tục còn phân lớp dữ liệu chỉ dùng để
dự đoán về các giá trị rời rạc.
Hồi quy là một hàm học ánh xạ mục dữ liệu thành một biến dự
đoán có giá trị thực. Có rất nhiều ứng dụng khai phá dữ liệu với nhiệm vụ
hồi quy, chẳng hạn như khả năng đánh giá tử vong của bệnh nhân khi biết
các kết quả xét nghiệm; chẩn đoán, dự đoán nhu cầu tiêu thụ một sản phẩm
mới bằng một hàm chi tiêu quảng cáo.
1.1.6.4. Khai phá luật kết hợp:
Mục tiêu của phương pháp này là phát hiện và đưa ra các mối liên
hệ giữa các giá trị dữ liệu trong cơ sở dữ liệu. Mẫu đầu ra của giải thuật khai
phá dữ liệu là luật kết hợp tìm được. Chẳng hạn, phân tích cơ sở dữ liệu bán
hàng nhận được thông tin về những khách hàng mua máy tính có khuynh
hướng mua phần mềm quản lý tài chính trong cùng lần mua được miêu tả
trong luật kết hợp sau: “Máy tính=>Phần mềm quản lý tài chính” (Độ hỗ trợ:
2%, độ tin cậy: 60%)
Độ hỗ trợ và độ tin cậy là hai độ đo của sự đáng quan tâm của
luật. Chúng phản ánh sự hữu ích và sự tin cậy của luật đã khám phá. Độ hỗ
trợ 2% có nghĩa là 2% của tất cả các vụ đang phân tích chỉ ra rằng máy tính
và phần mềm quản lý tài chính là đã được mua cùng nhau. Còn độ tin cậy
60% có nghĩa là: 60% các khách hàng mua máy tính cũng mua phần mềm.
Khai phá luật kết hợp được thực hiện qua hai bước:


xxii

Bước 1: Tìm tất cả các tập mục phổ biến, một tập mục phổ biến
được xác định qua tính hỗ trợ và thỏa mãn độ hỗ trợ cực tiểu.
Bước 2: Sinh ra các luật kết hợp mạnh từ tập mục phổ biến, các
luật phải thỏa mãn độ hỗ trợ cực tiểu và độ tin cậy cực tiểu.
Phương pháp này được sử dụng rất hiệu quả trong các lĩnh vực như
maketing có chủ đích, phân tích quyết định, quản lý kinh doanh, phân tích
giá thị trường …
1.1.7. Những khó khăn trong khai phá dữ liệu
Việc nghiên cứu và ứng dụng kỹ thuật khai phá dữ liệu gặp nhiều khó
khăn, nhưng không phải là không giải quyết được mà chúng cần được
tìm hiểu để có thể phát triển tốt hơn. Những khó khăn phát sinh trong khai
phá dữ liệu chính là dữ liệu trong thực tế thường động, không đầy đủ, lớn và
bị nhiễu. Trong trường hợp khác, người ta không biết cơ sở dữ liệu có chứa
thông tin cần thiết cho việc khai thác hay không và làm thế nào để giải quyết
sự dư thừa thông tin không thích hợp này.
- Dữ liệu lớn: Hiện nay các cơ sở dữ liệu với hàng trăm trường và
bảng, hàng triệu bản ghi với kích thước rất lớn, có thể lên đến GB. Các
phương pháp giải quyết hiện nay là đưa ra một ngưỡng cho cơ sở dữ liệu,
lấy mẫu, các phương pháp tính xấp xỉ, xử lí song song.
- Kích thước lớn: không chỉ có số lượng bản ghi mà số các trường
trong cơ sở dữ liệu cũng nhiều. Vì vậy mà kích thước của bài toán trở nên
lớn làm tăng không gian tìm kiếm. Hơn nữa, nó cũng làm tăng khả năng một
thuật toán khai phá dữ liệu có thể tìm thấy các mẫu giả. Biện pháp khắc phục
là làm giảm kích thước tác động của bài toán và sử dụng các tri thức biết
trước để xác định các biến không phù hợp.
- Dữ liệu động: Đặc điểm cơ bản của hầu hết các cơ sở dữ liệu là
nội dung của chúng thay đổi liên tục. Chẳng hạn như các biến trong cơ sở dữ


xxiii

liệu của ứng dụng đã cho chũng có thể bị thay đổi, bị xóa hoặc là tăng lên
theo thời gian. Dữ liệu có thể thay đổi theo thời gian và việc khai phá dữ liệu
bị ảnh hưởng bởi thời điểm quan sát dữ liệu, do đó có thể làm cho mẫu khai
thác được trước đó mất giá trị. Vấn đề này được giải quyết bằng giải pháp
tăng trưởng để nâng cấp các mẫu và coi những thay đổi như là cơ hội để
khai thác bằng cách sử dụng nó để tìm kiếm các mẫu bị thay đổi.
- Các trường dữ liệu không phù hợp: Một đặc điểm quan trọng
khác là tính không thích hợp của dữ liệu – nghĩa là mục dữ liệu trở
thành không thích hợp với trọng tâm hiện tại của việc khai thác. Bên cạnh
đó, tính ứng dụng của một thuộc tính đối với một tập con của cơ sở dữ liệu
cũng là một vấn đề đôi khi cũng liên quan đến độ phù hợp.
- Các giá trị bị thiếu: Sự có mặt hay vắng mặt của giá trị các thuộc
tính dữ liệu phù hợp có thể ảnh hưởng đến việc khai phá dữ liệu. Trong hệ
thống tương tác, sự thiếu vắng dữ liệu quan trọng có thể dẫn tới yêu cầu cho
giá trị của nó hoặc kiểm tra để xác định giá trị của nó. Hoặc cũng có thể sự
vắng mặt của dữ liệu được coi như một điều kiện, thuộc tính bị mất có thể
được xem như một giá trị trung gian và giá trị không biết.
- Các trường dữ liệu bị thiếu: Một quan sát không đầy đủ cơ sở dữ
liệu có thể làm cho dữ liệu có giá trị bị xem như có lỗi. Việc quan sát cơ sở
dữ liệu phải phát hiện được toàn bộ các thuộc tính có thể dùng để thuật
toán khai phá dữ liệu có thể áp dụng để giải quyết bài toán. Giả sử ta có các
thuộc tính để phân biệt các tình huống đáng quan tâm. Nếu chúng không làm
được điều đó thì có nghĩa là đã có lỗi trong dữ liệu. Đây cũng là vấn đề
thường xảy ra trong cơ sở dữ liệu kinh doanh. Các thuộc tính quan trọng có
thể sẽ bị thiếu dữ liệu không được chuẩn bị.
- Quá phù hợp: Khi một thuật toán tìm kiếm tham số tốt nhất cho
một mô thình nào đó sử dụng một tập dữ liệu hữu hạn, nó có thể sẽ bị tình


xxiv

trạng “quá độ” dữ liệu (nghĩa là tìm kiếm quá mức cần thiết gây ra hiện
tượng chỉ phù hợp với dữ liệu đó mà không có khả năng đáp ứng cho các
dữ liệu lạ), làm cho mô hình hoạt động rất kém đối với các dữ liệu thử. Các
giải pháp khắc phục như đánh giá chéo, thực hiện theo nguyên tắc nào đó
hoặc sử dụng các biện pháp thống kê khác.
- Khả năng biểu đạt mẫu: Trong rất nhiều ứng dụng, điều quan
trọng là những điều khai thác được phải càng dễ hiểu với con người càng
tốt. Vì vậy, các giải pháp thường bao gồm việc diễn tả dưới dạng đồ họa,
xây dựng cấu trúc luật với các đồ thị có hướng, biểu diễn bằng ngôn ngữ tự
nhiên và kỹ thuật khác nhằm biểu diễn các tri thức và dữ liệu.
- Sự tương tác với người sử dụng các tri thức sẵn có: Rất nhiều
công cụ và phương pháp khai phá dữ liệu không thực sự tương tác với
người dùng và không dễ dàng kết hợp cùng với các tri thức đã biết trước đó.
Việc sử sụng tri thức miền là rất quan trọng trong khai phá dữ liệu. Đã có
nhiều biện pháp nhằm khắc phục vấn đề này như sử dụng cơ sở dữ liệu suy
diễn để phát hiện tri thức, những tri thức này sau đó được sử dụng để hướng
dẫn cho việc tìm kiếm khai phá dữ liệu hoặc sử dụng sự phân bố xác suất dữ
liệu trước đó như một dạng mã hóa tri thức có sẵn.
1.2. Dữ liệu chuỗi thời gian
1.2.1. Khái niệm
1.2.1.1. Khái niệm chuỗi thời gian
Một chuỗi thời gian là một bộ sưu tập quan sát các hạng mục dữ liệu
được xác định thông qua các phép đo lặp đi lặp lại theo thời gian.
Ví dụ, việc đo lường giá trị của doanh số bán lẻ mỗi tháng trong năm
sẽ bao gồm một chuỗi thời gian. Điều này là do doanh thu bán hàng được xác
định rõ và thống nhất đo tại khoảng cách đều nhau. Số liệu thu thập đột xuất
hoặc chỉ một lần không phải là chuỗi thời gian.


xxv

Một chuỗi thời gian quan sát có thể được phân tách ra thành các thành
phần: các xu hướng (hướng dài hạn), theo mùa, các chu kỳ và các bất
thường (không có tính hệ thống, biến động ngắn hạn).
1.2.1.2. Các thành phần của chuỗi thời gian
a. Thành phần xu hướng dài hạn

Thành phần này dùng để chỉ xu hướng tăng giảm của đại lượng X
trong khoảng thời gian dài. Về mặt đồ thị thành phần này có thể diễn tả bằng
một đường thẳng hay bằng một đường cong tròn.
X

X

Xu hướng giảm theo thời gian

t

t

t

Hình 1.2. Đồ thị thể hiện thành phần xu hướng dài hạn
b. Thành phần mùa

Thành phần này chỉ sự thay đổi của đại lượng X theo các mùa trong
năm (có thể theo các tháng trong năm).
Ví dụ: Lượng tiêu thụ chất đốt sẽ tăng vào mùa đông và giảm vào
mùa hè. Ngược lại lượng tiêu thụ xăng sẽ tăng vào mùa hè và giảm vào mùa
đông.


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×