Tuy phạm vi nghiên cứu của đề tài giới hạn trong việc tìm hiểu và ứng dụng các mô hình dự báo dữ liệu chuỗi thời gian nhưng đề tài cũng mang lại một số ý nghĩa về khoa học và thực tiễn..
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
-
VŨ KHÁNH TƯỜNG VÂN
DỰ BÁO MỰC NƯỚC SÔNG NHÀ BÈ THEO TIẾP
CẬN KHAI PHÁ DỮ LIỆU CHUỖI THỜI GIAN
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
-
VŨ KHÁNH TƯỜNG VÂN
DỰ BÁO MỰC NƯỚC SÔNG NHÀ BÈ THEO TIẾP
CẬN KHAI PHÁ DỮ LIỆU CHUỖI THỜI GIAN
Trang 3LỜI CAM ĐOAN
Tác giả xin cam đoan đây là công trình nghiên cứu của bản thân tác giả Các dữ liệu và kết quả nghiên cứu và kết luận trong luận án này là trung thực
và không sao chép từ bát kỳ nguồn nào Việc tham khảo các nguồn tài liệu ( nếu có ) đã được thực hiện trích dẫn và ghi nguồn tài liệu tham khảo đúng quy định
TPHCM, Ngày 23 tháng 6 năm 2017
Học viên
Vũ Khánh Tường Vân
Trang 4LỜI CẢM ƠN
Trong thời gian học tập, nghiên cứu và thực hiện luận văn này, tôi đã nhận được sự giúp đỡ vô cùng to lớn của quý thầy cô trường Đại học Hutech, cơ quan, gia đình, bạn bè và đồng nghiệp Tôi xin tỏ lòng biết ơn chân thành đến: Tôi xin trân trọng cảm ơn người thầy của tôi PGS.TS.Đỗ Phúc, người đã tận tình hướng dẫn và giúp đỡ tôi trong suốt thời gian học tập, nghiên cứu thực hiện đề tài
Cho tôi gửi lời cảm ơn đến tập thể quý thầy cô trực tiếp giảng dạy lớp Cao học khóa 15SCT11 – nghành Công nghệ Thông tin đã tận tình giảng dạy, hướng dẫn tôi trong suốt thời gian học tập, nghiên cứu tại trường Đại học Hutech
Một nguồn động viên rất lớn từ Ban lãnh đạo Huyện Nhà bè đã tạo điều kiện về thời gian và động viên về mặt tinh thần trong quá trình tôi thực hiện
đề tài Đặc biệt là xin gửi lời cảm ơn đến gia đình, bạn bè, đồng nghiệp và các bạn học viên lớp Cao học khóa 15SCT11 ngành Công nghệ thông tin đã ủng
hộ, động viên, giúp đỡ tôi trong suốt thời gian học tập nghiên cứu và thực hiện đề tài
Xin chân thành cảm ơn !
TP.HCM, Ngày 23 tháng 6 năm 2017
Học viên
Vũ Khánh Tường Vân
Trang 5TÓM TẮT LUẬN VĂN
Luận văn trình bày về phương pháp dự báo dữ liệu chuỗi thời gian kết hợp giữa mô hình Auto Regression Integrated Move Average (ARIMA) và Support Vector Machine (SVM) cùng ứng dụng mô hình kết hợp này vào bài toán dự báo mực nước sông Nhà bè
Đối tượng nghiên cứu của đề tài tập trung vào các mô hình dự báo dữ liệu chuỗi thời gian đặc biệt là mô hình ARIMA, thuật giải SVM và phương pháp kết hợp ARIMA và SVM trong dự báo dữ liệu chuỗi thời gian Bên cạnh đó đề tài còn trình bày kết quả áp dụng các mô hình dự báo dữ liệu chuỗ thời gian vào thực tế dựa trên bộ dữ liệu được thu thập của trạm Tân An huyện Nhà bè
Phạm vi nghiên cứu của đề tài giới hạn trong việc tìm hiểu và ứng dụng các
mô hình dự báo dữ liệu chuỗi thời gian mô hình ARIMA, thuật giả SVM và mô hình kết hợp ARIMA và SVM
Tuy phạm vi nghiên cứu của đề tài giới hạn trong việc tìm hiểu và ứng dụng các mô hình dự báo dữ liệu chuỗi thời gian nhưng đề tài cũng mang lại một số ý nghĩa về khoa học và thực tiễn Về khoa học kết quả thực nghiệm của đề tài cũng cố thêm tính đúng đắn của hướng tiếp cận kếp hợp các mô hình dự báo dữ liệu chuỗi thời gian nói chung và mô hình dự báo dữ liệu chuỗi thời gian kếp hợp ARIMA và SVM nói riêng Về thực tiễn kết quả dự báo của mô hình kếp hợp ARIMA và SVM giúp nâng cao khả năng dự đoán trong thủy văn, hỗ trợ cảnh báo về xâm nhập mặn cũng như khô hạn nhằm kịp thời có biện pháp xử lý đối với tình trạng xâm nhập mặn, giảm thiểu tối đa khả năng rủi ro cho mùa màng, ngăn chặn kịp thời nguy cơ xâm nhập mặn
Luận văn được tổ chức theo cấu trúc như sau
Chương 1 Tổng Quan
Trong chương này sẽ trình bày các khái niệm, tính chất cơ bản của chuỗi thời gian, tổng quan về các phương pháp dự báo dữ liệu chuỗi thời gian
Trang 6Chương 2 Khảo Sát Các Kỹ Thuật Dự Báo Hiện Nay Về Chuỗi Thời Gian
Giới thiệu một số nội dung cơ sở lý thuyết về dự báo chuỗi thời gian và một số phương pháp khai phá dữ liệu chuỗi thời gian
Chương 3 Phân Tích Bài Toán Dự Báo Mực Nước Và Thiết Kế Mô Hình Dự
Báo
Dự báo chuỗi thời gian qua mô hình ARIMA, cũng như những công cụ sẽ được áp dụng vào trong mô hình, Dự báo chuỗi thời gian bằng SVM và dự báo bằng mô hình kết hợp ARIMA và SVM
Chương 4 Hiện Thực, Thử Nghiệm và Đánh Giá
Dùng phần mềm Eviews 9 cho quá trình thi hành trình bày thực nghiệm mô hình ARIMA cho dữ liệu mực nước sông ở trạm Tân An huyện Nhà bè Ngôn ngữ
R cho dự báo SVM và các bước trong quá trình thi hành mô hình kết hợp, đưa ra kết quả và đánh giá với thực tế
Chương 5 Phần Kết luận
Tổng kết kết quả của khóa luận và phương hướng nghiên cứu tiếp theo
Trang 7MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
TÓM TẮT LUẬN VĂN iii
MỤC LỤC v
DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT viii
DANH MỤC CÁC BẢNG ix
DANH MỤC CÁC HÌNH x
MỞ ĐẦU 1
Chương 1 TỔNG QUAN 4
1.1 Dự Báo 4
1.2 Dự báo thủy văn 4
1.3 Tổng quan về khai phá dữ liệu 5
1.3.1 Khai phá dữ liệu (Data Mining) 5
1.3.2 Khám phá tri thức (Knownledge Discovery - KD) 5
1.3.3 Các kỹ thuật khai phá dữ liệu 6
1.3.4 Dạng dữ liệu có thể khai phá 6
Chương 2 Khảo Sát Các Kỹ Thuật Dự Báo Hiện Nay Về Chuỗi Thời Gian 7
2.1 Khái Niệm Chuỗi Thời Gian và Mã Hóa Dữ Liệu Chuỗi Thời Gian 7
2.1.1 Khái niệm chuỗi thời gian 7
2.1.2 Biểu diễn chuỗi thời gian 8
2.1.3 Các thành phần của dữ liệu chuỗi thời gian 8
2.1.4 Phân loại chuỗi thời gian 9
2.1.5 Khái niệm khai phá dữ liệu chuỗi thời gian 9
2.2 Một Số Phương Pháp Khai Phá Dữ Liệu Chuỗi Thời Gian [2] 10
2.2.1 Phân lớp 10
2.2.2 Dự báo 11
2.2.3 Phát hiện mẫu bất thường 12
2.2.4 Phân đoạn 12
2.2.5 Tìm mô típ 14
Trang 82.3 Tiền Xử Lý Và Tìm Kiếm Tương Tự Trên Dữ Liệu Chuỗi Thời Gian 14
2.3.1 Tiền xử lý dữ liệu thời gian 14
2.3.2 Tìm kiếm tương tự trên dữ liệu chuỗi thời gian 17
2.3.3 Tầm Quan Trọng Của Khai Phá Dữ Liệu Chuỗi Thời Gian 23
Chương 3 Phân Tích Bài Toán Dự Báo và Thiết Kế Mô Hình Dự Báo 27
3.1 Mô tả sông Nhà Bè 27
3.1.1 Phát biểu bài toán 28
3.1.2 Ý nghĩa bài toán 28
3.2 Các mô hình 29
3.2.1 Hàm tự tương quan ACF (AutoCorrelation Function) 29
3.2.2 Hàm tự tương quan từng phần PACF 29
3.2.3 Mô hình AR(p) 29
3.2.4 Mô hình AM(q) 29
3.2.5 Sai phân I(d) 29
3.2.6 Mô hình ARIMA 29
3.2.7 Các bước phát triển mô hình 30
3.3 Phần mềm EVIEWS 31
3.3.1 Giới thiệu phần mềm ứng dụng Eviews 9 31
3.3.2 Cách sữ dụng 32
3.4 Support vector Machine 34
3.4.1 Giới thiệu 34
3.4.2 Support Vector Machine trong dự báo chuỗi thời gian 37
3.5 Mô hình kết hợp ARIMA và Support Vector Machine 40
3.5.1 Giới thiệu 40
3.5.2 Nội dung 41
3.5.3 Một số kết quả tham khảo và đánh giá 42
Chương 4 Hiện Thực, Thử Nghiệm và Đánh Giá 44
4.1 Dự báo bằng mô hình ARIMA 44
4.1.1 Mô hình ARIMA cho dự báo Thủy văn 44
4.1.2 Thực nghiệm ARIMA 44
4.1.3 Thực hiện dự báo 54
Trang 94.2 Thực nghiệm SVM cho bài toán dự báo 56
4.3 Kết hợp các kết quả dự báo 57
4.3.1 Giới thiêu các độ đo 57
4.3.2 Kết quả dự báo và đánh giá 58
Chương 5 PHẦN KẾT LUẬN 60
TÀI LIỆU THAM KHẢO 61
Trang 10DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT
ARIMA Auto Regresion Integrated Move Average
MAPE Mean Absolute Percentage Error
Trang 11DANH MỤC CÁC BẢNG
Bảng 4.1 Tiêu chuẩn đánh giá các mô hình ARIMA 54 Bảng 4.2 Bảng đánh giá dự báo so với thực tế 56 Bảng 4.3 Bảng đánh giá dự báo so với thực tế 59
Trang 12DANH MỤC CÁC HÌNH
Hình 1.1 Quá trình phát hiện tri thức tiến hành qua 6 giai đoạn [2] 5
Hình 2.4 Phân lớp của độ đo tương tự chuỗi thời gian [5] 19
Hình 2.5 Tính khoảng cách 2 chuỗi thời gian theo Euclide [4] 20
Hình 2.6 Tính khoảng cách 2 chuỗi thời gian theo DWT [4] 21
Hình 3.1 Sơ đồ mô phỏng mô hình Box – Jenkins 30
Hình 3.2 Cửa sổ chính của Eviews 9.0 31
Hình 3.3 Lựa chọn cấu trúc cơ bản của quá trình tạo Workfile 32
Hình 3.4 Miêu tả chuỗi dữ liệu 33
Hình 3.5 ( Bài toán phân lớp ) 35
Hình 3.6 (Đường thẳng phân lớp) 35
Hình 3.7 ( khoảng cách phân lớp) 36
Hình 3.8 (các đường thẳng phân lớp) 37
Hình 4.1 Đồ thị chuỗi dữ liệu DINH 45
Hình 4.2 Biễu đồ và thống kê dữ liệu DINH 45
Hình 4.3 dữ liệu DINH ban đầu 46
Hình 4.4 dữ liệu DINH sau khi lấy Log 46
Hình 4.5 Đồ thị chuỗi dữ liệu LDINH ( DINH đã lấy log ) 47
Hình 4.6 Lược đồ tương quan chuỗi LDINH 47
Hình 4.7 Kiểm định nghiệm đơn vị của chuỗi LDINH 48
Hình 4.8 Biễu đồ và thống kê LDINH 48
Hình 4.9 Kết quả hồi quy chuỗi LDINH 49
Hình 4.10 Kết quả lấy sai Phân 49
Hình 4.11 Đồ thị chuỗi sau khi lấy sai phân DLDINH 50
Hình 4.12 Biễu đồ và thống sau khi lấy sai phân DLDINH 50
Hình 4.13 Giãn đồ tự tương quan chuỗi DLDINH 51
Hình 4.14 Kết quả mô hình ARIMA1 của DLDINH 52
Hình 4.15 Kết quả mô hình ARIMA2 của DLDINH 52
Hình 4.16 kết quả mô hình ARIMA3 của DLDINH 53
Hình 4.17 Kết quả mô hình ARIMA4 của DLDINH 53
Trang 13Hình 4.18 Thực hiện chạy dự báo với mô hình ARIMA1 54 Hình 4.19 Kết quả dữ liệu dự báo của mô hình ARIMA1 so với dữ lệu gốc 55 Hình 4.20 Kết quả dự báo của mô hình kết hợp ARIMA và SVM 59
Trang 14MỞ ĐẦU
1 Lý do thực hiện đề tài
Giảm thiểu thiệt hại do thiên tai là trách nhiệm chung của nhà nước và cộng đồng, trong đó công tác dự báo, cảnh báo thiên tai, lũ lụt có vai trò đặc biệt quan trọng
Tuy nhiên, ở Việt Nam, thời gian qua công tác dự báo ngập lụt đô thị chưa được thực hiện một cách đầy đủ và hiệu quả, trong khi đó các trung tâm đô thị, thành phố lớn của Việt Nam tình trạng ngập úng ngày càng diễn biến phức tạp, ảnh hưởng nghiêm trọng tới đời sống xã hội Các lĩnh vực, ngành, địa phương dễ bị tổn thương
và chịu tác động mạnh mẽ của xâm nhập mặn và hạn hán, nhất là các tỉnh ven biển
có tỷ trọng ngành nông nghiệp cao
Để giải quyết vấn đề hạn hán và xâm nhập mặn ảnh hưởng đến sản xuất nông nghiệp trên địa bàn tỉnh, các ngành, địa phương trong tỉnh đã triển khai nhiều giải pháp để ứng phó
Trước thực trạng trên địa bàn huyện Nhà Bè trong những năm gần đây do biến đổi khí hậu đã gây ra các hiện tượng: hạn hán, ngập úng, xâm nhập mặn gây thiệt hại cho sản xuất nông nghiệp và đời sống nhân dân, trong đó hạn hán, xâm nhập mặn vụ đông xuân là một điển hình Do vậy, Đề Tài “DỰ BÁO MỰC NƯỚC SÔNG NHÀ BÈ THEO TIẾP CẬN KHAI PHÁ DỮ LIỆU CHUỖI THỜI GIAN ” nhằm dự báo một cách nhanh chóng và tương đối chính xác để ứng phó và triển khai các biện pháp khắc phục hiệu quả, kịp thời được xem là cốt yếu và cần thiết hiện nay
2 Mục tiêu nghiên cứu của luận văn
+ Mục tiêu tổng quát:
- Nghiên cứu khái niệm, vai trò, ứng dụng và các kỹ thuật khai phá dữ liệu
- Tìm hiểu kỹ thuật phân tích dữ liệu chuỗi thời gian trong khai phá dữ liệu áp dụng vào bài toán dự báo nói chung và dự báo trong thủy văn nói riêng
Trang 15- Tìm hiểu về chọn lựa mô hình dự báo với chức năng nhận dạng mô hình, ước lượng các tham số và đưa ra kết quả dự báo dựa trên các tham số ước lượng đã được lựa chọn một cách tối ưu
- Thực nghiệm mô hình chọn lựa trên dữ liệu thời gian thực
+ Mục tiêu cụ thể:
- Mục tiêu của đề tài là dự báo mực nước đỉnh triều và chân triều của nhánh sông nhà Bè qua đó giúp huyện nhà Bè có thể ứng phó với hạn hán cũng như xâm nhập mặn Để thực hiện được mục tiêu này, chúng tôi đã chia thành mục tiêu thành
3 mục tiêu thành phần:
- Lấy nguồn dữ liệu mực nước từ trạm Tân An trong 4 năm
- Dùng phương pháp khai phá dữ liệu chuỗi thời gian và mô hình tính toán phù hợp với dự báo thủy văn
- Dựa vào dữ liệu quá khứ để dự báo mực nước trong tương lai
3 Nội dung nghiên cứu
- Nghiên cứu, tìm hiểu lý thuyết về các kỹ thuật khai phá dữ liệu
- Tìm hiểu, phân tích dữ liệu thủy văn
- Thu thập nguồn dữ liệu cần thiết
- Tìm hiểu cơ sở lý thuyết vài mô hình dự báo cho dữ liệu thời gian thực và cách áp dụng vào bài toán thực tế làm sao để chọn một mô hình dự báo tốt nhất về
sự lên và xuống của đỉnh triều và chân triều
4 Phương pháp luận và phương pháp nghiên cứu
Đối với đề tài nghiên cứu trên cần áp dụng các phương pháp luận cũng như các phương pháp nghiên cứu cụ thể như sau:
Phương pháp toán học: nghiên cứu cơ sở lý thuyết về một vài mô hình dự báo cho dữ liệu thời gian thực và cách áp dụng vào bài toán thực tế
Phương pháp kế thừa: Tận dụng lại các giải thuật/phần mềm đã được phát triển và công nhận – tìm hiểu & tối ưu lại theo nhu cầu để phục vụ cho đề tài
Trang 16 Phương pháp tham khảo/lấy ý kiến từ chuyên gia: tham khảo các công trình
đã được công bố liên quan đến lĩnh vực dự báo
Phương pháp thực nghiệm & so sánh: Xây dựng và hiện thực vài mô hình dự báo và ứng dụng vào bài toán khai phá dữ liệu chuỗi thời gian trong dự báo đỉnh triều và chân triều sau đó đánh giá kết quả dự báo thu được
Trang 17Chương 1 TỔNG QUAN 1.1 Dự Báo
Dự báo ( dự đoán ) có thể được xem như là một loại của gom cụm hoặc
phân lớp Sự khác biệt là dự đoán một trạng thái trong tương lai, chứ không phải là một hiện tại Dự đoán trước các giá trị tương lai của chuỗi thời gian bằng cách sử dụng các phương pháp khác nhau tùy thuộc vào loại chuỗi thời gian (số hoặc biểu tượng) Với một chuỗi thời gian Q có chứa n điểm dữ liệu, dự đoán giá trị tại thời điểm n + 1
Ứng dụng của dự báo bao gồm dự báo của thiên tai (lũ lụt, bão, bão tuyết,…), dịch bệnh, tai nạn chứng khoán,… Nhiều ứng dụng dự báo chuỗi thời gian có thể được nhìn thấy trong các lĩnh vực kinh tế, mà một thuật toán dự đoán thường bao gồm việc phân tích hồi quy Việc dự báo sử dụng các giá trị dữ liệu được biết để dự đoán giá trị trong tương lai dựa trên các xu hướng lịch sử và thống
kê
Ví dụ khối lượng bán hàng của các phụ kiện điện thoại di động có thể được
dự báo dựa trên số lượng điện thoại di động bán ra trong vài tháng qua Nhiều kỹ thuật đã được đề xuất để tăng độ chính xác của dự báo chuỗi thời gian
1.2 Dự báo thủy văn
Dự báo thuỷ văn là công việc dự báo trước một cách có khoa học về trạng
thái biến đổi các yếu tố thuỷ văn trong tương lai Đây là một ngành khoa học có nhiệm vụ báo trước sự xuất hiện các yếu tố thủy văn trên cơ sở nghiên cứu các quy luật của chúng Hiện nay có rất nhiều bài toán dự báo thuỷ văn được đặt ra như dự báo dòng chảy, dự báo mực nước, dự báo lưu lượng nước trên sông, dự báo lũ, và
dự báo các hiện tượng khác trên sông ngòi và hồ
Tùy vào quan điểm phân chia mà tồn tại một số phân loại dự báo thủy văn Chẳng hạn, theo yêu cầu phục vụ thì có các loại dự báo như dự báo cho nông nghiệp, dự báo cho giao thông, dự báo cho chống lũ lụt; còn theo đối tượng dự báo thì có các loại dự báo mực nước, dự báo lưu lượng, dự báo bùn cát… Tuy nhiên,
Trang 18Đánh giá luật
Tri thức
Mô hình
Dữ liệu đã làm sạch, tiền xử lý
Dữ liệu
Dữ liệu đích
Gom dữ liệu
Khai phá dữ liệu Chuyển đổi dữ liệu
Trích lọc dữ liệu
phân loại dự báo theo thời gian là một phân loại điển hình với các loại dự báo là ngắn hạn, trung hạn, dài hạn và siêu dài hạn Dự báo ngắn hạn với khoảng thời gian
dự báo từ một đến ba ngày Dự báo trung hạn với khoảng thời gian dự báo dài hơn
dự báo ngắn hạn nhưng tối đa không quá mười ngày Dự báo dài hạn có khoảng thời gian dự báo từ hơn mười ngày đến một năm Khi thời gian dự báo lớn hơn một năm
đó là dự báo siêu dài hạn
1.3 Tổng quan về khai phá dữ liệu
1.3.1 Khai phá dữ liệu (Data Mining)
Khai phá dữ liệu là một quá trình trích xuất thông tin có mối quan hệ hoặc có mối tương quan nhất định từ một kho dữ liệu lớn (cực lớn) nhằm mục đích dự đoán các xu thế, các hành vi trong tương lai, hoặc tìm kiếm những tập thông tin hữu ích
mà bình thường không thể nhận diện được
1.3.2 Khám phá tri thức (Knownledge Discovery - KD)
Hình 0.1 Quá trình phát hiện tri thức tiến hành qua 6 giai đoạn
Trang 191.3.3 Các kỹ thuật khai phá dữ liệu
- Cây quyết định
- Mạng nơron
- Phân cụm
- Luật kết hợp
- Phân tích nhân tố (Factor analysis)
- Chuỗi thời gian
Kết luận chương
Như đã biết, vấn nạn xâm nhập mặn và hạn hán trở thành mối quan tâm hàng đầu của các nhà lãnh đạo, ảnh hưởng từ nạn xâm nhập mặn và hạn hán đã tác động đến các mặt đời sống xã hội Một phương pháp được đề cập và nghiên cứu đó là tiếp cận khai phá dữ liệu chuỗi thời gian trong dự báo thủy văn Ứng dụng của khai phá
dữ liệu chuỗi thời gian rộng khắp và đặc biệt có ý nghĩa trong các vấn đề về các bài toán về dự báo về thiên nhiên Trong chương tiếp theo chúng ta sẽ đi nghiên cứu tìm hiểu về mặt cơ sở lý thuyết của khai phá dữ liệu chuỗi thời gian
Trang 20Chương 2 Khảo Sát Các Kỹ Thuật Dự Báo Hiện Nay Về Chuỗi Thời
Gian 2.1 Khái Niệm Chuỗi Thời Gian và Mã Hóa Dữ Liệu Chuỗi Thời Gian
2.1.1 Khái niệm chuỗi thời gian
Một chuỗi thời gian (time series) là chuỗi trị số thực, mỗi trị biểu diễn một giá trị đo tại những thời điểm cách đều nhau Những tập dữ liệu chuỗi thời gian rất lớn xuất hiện trong nhiều lãnh vực khác nhau như y khoa, kỹ thuật, kinh tế, tài chính,…
Ví dụ:
- Đ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
- Giá cuối ngày của một cổ phiếu hoặc là một quỹ nào đó là một sự kiện xảy
ra mỗi ngày cuối tuần của mỗi cổ phiếu hay quỹ đó Chuỗi những giá trị của mỗi cổ phiếu hay quỹ này là một chuỗi thời gian
- Giá trị nhiệt độ hằng ngày được ghi nhận tại các khoảng thời gian bằng nhau
- Số lượng hàng bán được trong 12 tháng của một công ty
Đối với một chuỗi thời gian, một người có thể tìm kiếm những mẫu khác nhau bởi việc phân tích các chuỗi và các tập con
Ví dụ: chúng ta tìm kiếm một giai đoạn nào đó trong suốt phiên cổ phiếu mà
cổ phiếu tăng hoặc giảm đều đặn trong vòng n ngày, hoặc chúng ta có thể tìm thấy
một giai đoạn dài nhất mà mỗi cổ phiếu có sự dao động lên xuống không quá 1%
so với giá trước đó, hoặc chúng ta có thể tìm ra 1 quý mà ở đó cố phiếu có phần trăm tăng hoặc giảm là nhiều nhất Chuỗi thời gian có thể được so sánh bởi việc tạo
ra các thước đo tương tự nhau để xác định các công ty mà cổ phiếu đó biểu hiện
Trang 21theo cùng một cách Phép phân tích và khai thác của chuỗi thời gian là một chức năng mở rộng của việc quản lý dữ liệu theo thời gian
2.1.2 Biểu diễn chuỗi thời gian
Chuỗi thời gian là một tập hợp gồm n cặp dữ liệu được biểu diễn như sau:
Q = {(q 1 , t 1 ), (q 2 , t 2 ), (Q n , t n )}, (i = 1,2, , n) [6]
Trong đó:
- q i: giá trị của biến quan sát
- t i: thời gian
- (qi, ti): cặp dữ liệu hoặc điểm dữ liệu
2.1.3 Các thành phần của dữ liệu chuỗi thời gian
Các nhà thống kê thường chia chuỗi theo thời gian thành 4 thành phần:
- Thành phần xu hướng dài hạn (long –term trend component):
Thành phần này dùng để chỉ xu hướng tăng hay giảm của đại lượng X trong thời gian dài Về mặt đồ thị thành phần này có thể biểu diễn bởi một đường thẳng hay một đường cong trơn
- Thành phần mùa (seasional component):
Thành phần này dùng để chỉ xu hướng tăng hay giảm của đại lượng X tính theo mùa trong năm (có thể tính theo tháng trong năm)
Ví dụ : Giá bán hàng của công ty máy tính sẽ tăng vào mùa khai giảng năm học mới; lượng tiêu thụ bia sẽ tăng mạnh vào mùa hè, giảm vào mùa đông
- Thành phần chu kỳ (cyclical component):
Trang 22Thành phần này chỉ sự thay đổi của đại lượng X theo chu kỳ Thành phần này khác thành phần mùa ở chỗ chu kỳ của đại lượng X kéo dài hơn 1 năm Để đánh giá thành phần này các giá trị của chuỗi thời gian được quan sát hàng năm
Ví dụ: Lượng dòng chảy đến hồ Trị An từ năm 1959 – 1985
- Thành phần bất thường (irregular component):
Thành phần này dùng để chỉ sự thay đổi bất thường (không có tính hệ thống, biến động ngắn hạn) của các giá trị trong chuỗi thời gian Sự thay đổi này không thể
dự đoán bằng các số liệu kinh nghiệm trong quá khứ, về mặt bản chất thành phần này không có tính chu kỳ
2.1.4 Phân loại chuỗi thời gian
Phân loại khác nhau của chuỗi thời gian tùy thuộc vào các tiêu chuẩn được
áp dụng Một trong số đó, dựa vào loại quy mô đo lường, phân chia chuỗi thời gian thành chuỗi thời gian số và biểu tượng
- Chuỗi thời gian số được định nghĩa là chuỗi thời gian với giá trị số cho từng thời điểm
- Chuỗi thời gian Symbolic là một chuỗi thời gian với giá trị không đáng kể cho từng thời điểm
2.1.5 Khái niệm khai phá dữ liệu chuỗi thời gian
Trong những năm gần đây, với sự có mặt khắp nơi của dữ liệu chuỗi thời gian, và kích thước cơ sở dữ liệu ngày càng tăng theo cấp số nhân, đã có một sự quan tâm ngày càng tăng trong việc khai phá dữ liệu tạm thời và áp dụng các kỹ thuật khai phá dữ liệu trong phân tích các bộ dữ liệu chuỗi thời gian Điều này đặt ra câu hỏi về sự khác biệt chủ yếu giữa khai phá dữ liệu cổ điển và cách tiếp cận để khai phá dữ liệu trong phân tích chuỗi thời gian Sự khác biệt chính chủ yếu đề cập đến một số lượng lớn các dữ liệu mà chúng ta thường xuyên gặp phải trong dữ liệu chuỗi thời gian Hiện nay khai phá dữ liệu chuỗi thời gian không chỉ còn tập trung
Trang 23vào việc phân tích và xác định các tính chất thống kê của dữ liệu chuỗi thời gian,
mà còn nhấn mạnh vào hiệu quả phát hiện ra thông tin hữu ích từ tập dữ liệu chuỗi thời gian lớn
Do đó, việc áp dụng các phương pháp khai phá dữ liệu cụ thể cho trích xuất mẫu và quy luật từ hệ thống dữ liệu chuỗi thời gian, xác định các thành phần của chúng, và dự báo các xu hướng trong tương lai là bản chất của việc khai phá dữ liệu chuỗi thời gian
Nói chung, khai phá dữ liệu chuỗi thời gian tập trung vào các mục tiêu:
- Tự động phát hiện trước đây, cho đến nay, những quy luật và mô hình chưa được biết đến từ các tập dữ liệu thời gian lớn;
- Tự động phát hiện bên ngoài;
- Tự động dự báo các xu hướng và hành vi của các thành phần cấu trúc
Chức năng chính của khai phá dữ liệu chuỗi thời gian: tiền xử lý dữ liệu, lập chỉ mục, phát hiện mẫu bất thường, phân lớp, gom cụm, phân đoạn, tìm mô típ, dự báo, khám phá quy luật
2.2 Một Số Phương Pháp Khai Phá Dữ Liệu Chuỗi Thời Gian [2]
2.2.1 Phân lớp
Phân lớp là một nhiệm vụ mà bao gồm việc tạo ra một mô hình phân loại (hoặc một chức năng) cho vị trí của bất kỳ thực thể mới (tức là chuỗi thời gian) theo đặc điểm nổi bật của nó vào một trong hai hoặc nhiều lớp được xác định trước
Mục tiêu chính của phương pháp này là dự đoán nhãn lớp cho các mẫu dữ liệu Quá trình phân lớp thường gồm 2 bước: xây dựng mô hình và sử dụng mô hình
để phân lớp dữ liệu
Phân lớp có lẽ là kỹ thuật khai phá dữ liệu quen thuộc nhất và phổ biến nhất
Ví dụ của các ứng dụng phân lớp bao gồm nhận dạng hình ảnh và nhận dạng mẫu, lọc thư rác, chẩn đoán y tế, và phát hiện trục trặc trong các ứng dụng công nghiệp
Trang 24Bản đồ phân loại nhập dữ liệu vào thành các nhóm được xác định trước Nó thường được gọi là học có giám sát, như các lớp được xác định trước khi kiểm tra dữ liệu, một tập hợp các dữ liệu được xác định trước được sử dụng trong quá trình đào tạo
và học cách nhận ra các mẫu được quan tâm Mô hình nhận dạng là một loại phân lớp mà mô hình đầu vào được phân lớp thành một trong nhiều lớp học dựa trên tính tương đồng so với các lớp được xác định trước
Hai phương pháp phổ biến nhất trong phân lớp chuỗi thời gian bao gồm: phân lớp láng giềng gần nhất (Nearest Neighbor) và cây quyết định
- Phương pháp láng giềng gần nhất áp dụng các biện pháp tương đồng cho các đối tượng được phân lớp để xác định phân lớp mặt hàng tốt nhất dựa trên các dữ liệu hiện có đã được phân lớp
- Đối với cây quyết định, một bộ quy tắc được suy ra từ dữ liệu huấn luyện,
và sau đó bộ các quy tắc này được áp dụng cho bất kỳ dữ liệu mới nào được phân lớp Lưu ý rằng mặc dù cây quyết định được định nghĩa cho các dữ liệu thực tế, cố gắng áp dụng dữ liệu chuỗi thời gian thì có thể đó là một sai lầm do chiều cao và mức độ tiếng ồn mà có thể dẫn đến cây sâu, rậm rạp Thay vào đó, một số nhà nghiên cứu đề nghị biểu diễn chuỗi thời gian như cây hồi quy được sử dụng trong đào tạo cây quyết định
Việc thực hiện các thuật toán phân lớp thường được đánh giá bằng cách đo
độ chính xác của phân lớp, bằng cách xác định tỷ lệ phần trăm của các đối tượng được xác định như các lớp chính xác
Trang 25Với một chuỗi thời gian Q có chứa n điểm dữ liệu, dự đoán giá trị tại thời điểm n + 1
2.2.3 Phát hiện mẫu bất thường
Phát hiện mẫu bất thường: xác định những bộ phận của chuỗi thời gian được
đặc trưng bởi một mô hình, hành vi cụ thể khác nhau mà không phù hợp với mô hình dữ liệu hành vi "bình thường" (tức là mô hình hành vi dự kiến)
Trong khai phá và giám sát dữ liệu chuỗi thời gian, vấn đề phát hiện các mẫu bất thường đã thu hút nhiều sự chú ý Ngược lại với so trùng chuỗi con, phát hiện mẫu bất thường là xác định các mẫu chưa được biết đến trước đây Vấn đề đặc biệt khó khăn bởi vì những gì tạo nên một sự bất thường có thể khác nhau rất nhiều tùy thuộc vào các tác vụ khi đó
2.2.4 Phân đoạn
Phân đoạn chuỗi thời gian là một thành phần nền tảng cơ bản trong quá trình phân tích và nghiên cứu các dữ liệu chuỗi thời gian
Phân đoạn của chuỗi thời gian nhằm giảm chiều đáng kể bằng cách chia (tức
là tách) chuỗi thời gian theo một cách thích hợp, các bộ phận bên trong đồng nhất
(miếng, hoặc đoạn), nhưng trong cách này số lượng phân đoạn, k, là nhỏ hơn đáng
kể so với số lượng các điểm dữ liệu trong chuỗi thời gian ban đầu là n
Phân đoạn trong chuỗi thời gian thường được gọi là một thuật toán giảm chiều Mặc dù các phân đoạn được tạo ra có thể là đa thức của một mức độ tùy ý nhưng biểu diễn phổ biến nhất của các phân đoạn là các chức năng tuyến tính Bằng trực giác, một biểu diễn tuyến tính từng đoạn (PLR) đề cập đến tính xấp xỉ của một
chuỗi thời gian Q có chiều dài n và các đường thẳng K
Vì K thường nhỏ hơn nhiều so với n nên biểu diễn này làm cho việc truyền
tải, lưu trữ và tính toán dữ liệu hiệu quả hơn
Trang 26Mặc dù xuất hiện dưới những tên gọi khác nhau và với các chi tiết thực hiện hơi khác nhau, nhưng hầu hết các thuật toán phân đoạn chuỗi thời gian có thể được nhóm lại thành một trong ba loại sau đây:
- Sliding-Windows (SW – cửa sổ trượt): một phân đoạn được phát triển cho
đến khi nó vượt quá một vài giới hạn lỗi Quá trình này lặp đi lặp lại với các điểm
dữ liệu tiếp theo không được bao gồm trong phân đoạn mới xấp xỉ
Cách tiếp cận Sliding-Windows nói chung là khó thực hiện bởi vì hiệu suất phụ thuộc nhiều vào tập dữ liệu được sử dụng Chọn cửa sổ với kích thước đúng có thể khó khăn khi nó phụ thuộc vào quy mô của các hình dạng thú vị trong chuỗi thời gian và số lượng tiếng ồn hiện tại Nó cũng cho thấy hiệu suất kém trong việc đánh giá các tập dữ liệu trên thực tế
- Top-Down (TD): chuỗi thời gian được phân vùng cho đến khi một số tiêu
chí dừng lại được đáp ứng Cách tiếp cận Top-Down có độ phức tạp về thời gian
O(n 2 ) trong đó n là kích thước của chuỗi thời gian
- Bottom-Up (BU): bắt đầu từ xấp xỉ tốt nhất có thể, các phân đoạn được
trộn lại với nhau cho đến khi đáp ứng một số tiêu chí dừng
Tiến trình phân đoạn chuỗi thời gian bao gồm các giai đoạn sau đây:
- Làm giảm tính năng đặc biệt của chuỗi thời gian đầu vào;
- Phân đoạn chuỗi thời gian được rút trích;
- Lựa chọn các phân đoạn tối ưu
Chúng ta có thể đo lường chất lượng của một thuật toán phân đoạn theo nhiều cách, rõ ràng nhất trong số đó là để đo lỗi tái cấu trúc một số các phân đoạn
cố định Các lỗi tái cấu trúc đơn giản chỉ là khoảng cách Euclide giữa các dữ liệu gốc và biểu diễn các phân đoạn Trong khi hầu hết các nghiên cứu trong lĩnh vực này đã xem xét các trường hợp tĩnh thì các nhà nghiên cứu gần đây đã xem xét việc đạt được và duy trì được phân đoạn trên các nguồn dữ liệu trực tuyến
Trang 272.2.5 Tìm mô típ
Không giống như các nhiệm vụ tìm kiếm tương tự điển hình và khai phá thông qua một tập hợp các chuỗi thời gian để tìm sự hiện diện của các mẫu được xác định trước, tìm mô típ liên quan đế phát hiện những điều chưa biết trước đây, các mẫu thường xuyên xuất hiện (gọi là mô-típ)
2.3 Tiền Xử Lý Và Tìm Kiếm Tương Tự Trên Dữ Liệu Chuỗi Thời Gian
2.3.1 Tiền xử lý dữ liệu thời gian
Dữ liệu thô ban đầu của cơ sở dữ liệu chuỗi thời gian thường có nhiều nhiễu
và không đầy đủ Vì vậy trước khi thực hiện các giải thuật khai phá dữ liệu, người
ta thường phải thực hiện quá trình tiền xử lý dữ liệu, hay còn gọi là quá trình làm sạch dữ liệu mà thực chất là thực hiện việc lọc dữ liệu Công đoạn này nhằm mục đích nhận được những thông tin chính xác, đầy đủ và đáng tin cậy hơn với càng ít nhiễu càng tốt Tiền xử lý dữ liệu là một thành phần quan trọng trong việc cung cấp
dữ liệu chất lượng
Tiền xử lý dữ liệu được thực hiện là rất quan trọng cho tính hữu dụng và hiệu lực của các kết luận thu được trong bối cảnh các mục tiêu nghiên cứu được xác định
Tầm quan trọng của các hoạt động tiền xử lý chất lượng dữ liệu là yếu tố rất quan trọng để phân tích thành công, được phản ánh trong nhận dạng, xóa, hoặc giảm thiếu sót của dữ liệu gốc (source)
Nói chung, trong quá trình khai thác dữ liệu, các hoạt động tiền xử lý, mỗi hoạt động trong số đó được dựa trên việc áp dụng các phương pháp thích hợp trong kết hợp kích thước thời gian, bao gồm những điều sau đây: lựa chọn dữ liệu (dữ liệu lấy mẫu); tổ chức lại dữ liệu (dữ liệu tổng kết, thao tác dữ liệu phức tạp); thăm dò
dữ liệu (thống kê tóm tắt, dữ liệu trực quan, OLAP3), làm sạch dữ liệu (phát hiện mẫu bất thường, giảm tiếng ồn, thiếu giá trị phân tích, xác định dữ liệu thống nhất), chuyển đổi dữ liệu (ghi dữ liệu, làm trơn dữ liệu, tập hợp dữ liệu, tổng hợp dữ liệu,
Trang 28chuyển đổi chức năng, nhóm các giá trị, chuẩn hóa dữ liệu, xây dựng tính năng, lựa chọn tính năng)
Các thành phần của tiền xử lý dữ liệu thu hút sự chú ý lớn của các nhà nghiên cứu từ các lĩnh vực khác nhau là phát hiện mẫu bất thường Về khái niệm, mẫu bất thường đại diện cho các trường hợp không phù hợp với mô hình dữ liệu hành vi "bình thường", do đó, phát hiện bất thường đề cập đến phát hiện các bất thường trong dữ liệu và xác định các mẫu trước đây chưa được biết đến, vì vậy được gọi là bất thường các mẫu Ngoài ra, nhiệm vụ phát hiện mẫu bất thường không chỉ để phát hiện các giá trị rất khác nhau trong tập dữ liệu, mà còn để phát hiện các hình thức ôn hòa hơn và nhẹ hơn của sai lệch hoặc sự khác biệt trong hành
vi Các đề cập ở trên được xác nhận bởi các điều khoản được sử dụng như một từ đồng nghĩa với phát hiện bất thường, chẳng hạn như phát hiện lý thú / sai lệch / bất ngờ / mới lạ
Trong tiền xử lý dữ liệu, một số chức năng cần thiết của các bộ dữ liệu phân tích có thể được xác định với hiển thị đồ họa thích hợp và đầy đủ
Phương pháp trực quan làm tăng mức độ dễ hiểu của các phân tích dữ liệu và bảo đảm hoặc tạo điều kiện thuận lợi cho một số tính năng ẩn hoặc không được chú
ý trở nên rõ ràng, bởi vì con người có một khả năng đặc biệt để phát hiện các mẫu
ẩn, và một con mắt của con người là công cụ vượt trội để khai phá dữ liệu Những phương pháp này được sử dụng thành công trong việc phát hiện các giá trị ngoại lai trong dữ liệu Có rất nhiều hiển thị hình ảnh của dữ liệu, chẳng hạn như: hộp lô, phân tán-lô, 3D hình khối, biểu đồ phân phối dữ liệu, các đường cong, hình dung khối lượng, bề mặt hoặc đồ thị liên kết, vv Hình thức đơn giản trực quan của chuỗi thời gian là một sơ đồ dòng
Tiền xử lý dữ liệu chuỗi thời gian mất nhiều thời gian và kiến thức hơn so với các dữ liệu không thuộc về thời gian.Trong thực tế, không có thủ tục hoàn toàn
tự động hoặc đối với hành vi của tiền xử lý hoặc của cách lựa chọn tối ưu tiến hành
Trang 29các hoạt động tiền xử lý.Vì vậy, yếu tố rất quan trọng cho việc lựa chọn giải pháp tối ưu là một kiến thức chuyên môn và kinh nghiệm của người khai phá dữ liệu
Giả sử, dữ liệu thô a raw (n) bao gồm tín hiệu của xu hướng dài hạn (thông tin
có ích) a(n) và nhiễu e(n), tức là:
a raw (n) = a(n) + e(n) [3]
Thủ thuật làm sạch thực chất là tìm ra xấp xỉ gần đúng của â(n) của a(n) Để làm được điều đó chúng ta phải phân biệt được a(n) và e(n) Tín hiệu nhiễu thường
có tính chất ngẫu nhiên, chịu tác động của rất nhiều yếu tố từ các nguồn khác nhau Ngược lại, tín hiệu dài hạn thì ổn định và chịu tác động của rất ít các yếu tố Nếu áp dụng khai triển Fourier (biểu diễn tín hiệu thành một dãy các sóng hình sin), chúng
ta sẽ nhận thấy rằng, tín hiệu dài hạn được xây dựng chủ yếu từ các sóng có tần số thấp (thay đổi chậm theo thời gian) Trong khi đó, tín hiệu nhiễu lại được xâydựng
từ sóng có tần số cao (thay đổi nhanh theo thời gian) Do vậy,thông thường để làm sạch dữ liệu người ta thường sử dụng thủ thuật lọc tần số thấp (Low Pass Filter - LPF) Có rất nhiều phương pháp LPF trong lĩnh vực thời gian và tần số như phương pháp trung bình trượt đơn giản, trung bình trượt có trọng số… Đại đa số các nhà phân tích dữ liệu hiện nay lựa chọn phương pháp làm trơn với hàm mũ hiệu chỉnh
mà thực chất là việc tìm trung bình trượt hàm mũ EMA (Exponential Moving Average) với công thức hồi quy như sau:
Trong đó:
α [0;1] là hằng số làm trơn
Y(t) là giá trị EMA cần tìm tại thời điểm t
Y(t-t) là giá trị EMA tại thời điểm (t-t)
X(t) là dữ liệu thô tại thời điểm t
Để chọn hệ số α cho quá trình lọc dữ liệu, người ta dựa vào đặc điểm của
mối liên hệ của đối tượng quan sát giữa các khoảng thời gian liền kề nhau Do các
Trang 30đối tượng biến đổi theo thời gian thường có tính chất là sự biến đổi của các chu kỳ tiếp theo, các nhà phân tích dữ liệu thường sử dụng các giá trị của dãy số Fibonacci
để thiết lập hệ số α
Ta có công thức lọc dữ liệu cụ thể như sau :
Trong đó:
Close(t) là giá Close tại thời điểm t
EMA(t) là giá trị trung bình trượt hàm mũ tại thời điểm t
EMA(t-t) là giá trị trung bình trượt hàm mũ tại thời điểm (t-t)
Ở đây Close(t) chính là hàm thuộc tính, EMA(t) là xấp xỉ của nó trên khoảng
cụ thể Một khó khăn nữa khi làm việc với dữ liệu chuỗi thời gian là nó bao gồm độ hỗn tạp của dữ liệu, định dạng khác nhau, tỉ lệ lấy mẫu khác nhau, hay giá trị trống hoặc nhiễu,…
Vì vậy tìm kiếm tương tự (similarity search) trong khai phá cơ sở dữ liệu chuỗi thời gian là công việc rất cần thiết
Vài áp dụng của tìm kiếm tương tự như:
Trang 31- Nhận dạng những công ty có kiểu mẫu tăng trưởng giống nhau
- Xác định những sản phẩm trong công ty có những kiểu mẫu doanh số bán hàng giống nhau
- Xác định những chứng khoán có giá biến động theo một kiểu cách giống nhau
- Tìm xem một giai điệu nhạc có tương tự với một đoạn nhạc nào trong tập hợp những bản nhạc đã có bản quyền
- Tìm những tháng trong quá khứ mà lượng mưa giống như tháng vừa rồi
Hai chuỗi thời gian được xem là tương tự nhau nếu chúng có các chuỗi con theo trật tự không chồng chéo thời gian lên nhau
Đối với bài toán tìm kiếm tương tự trên dữ liệu chuỗi thời gian [1] thì dữ liệu được biểu diễn thành những dãy số thực, ví dụ T = t1,…tn Cho hai chuỗi thời gian X= x1, x2,…,xn và Y= y1,y2,…,yn Ta cần phải tính độ tương tự SIM(X, Y)của hai chuỗi thời gian này
2.3.2.2 Các loại tìm kiếm tương tự trên dữ liệu chuỗi thời gian
Mặc dù có nhiều loại khác nhau, nhưng các yêu cầu truy vấn trên dữ liệu chuỗi thời gian có thể chia làm 2 loại: Tìm kiếm toàn bộ và tìm kiếm chuỗi con
- Tìm kiếm toàn bộ (So trùng toàn bộ (whole matching)): Đối với những
truy vấn so trùng toàn bộ thì chiều dài của chuỗi dữ liệu truy vấn và chiều dài chuỗi
dữ liệu ban đầu là bằng nhau Bài toán này ta thường được dùng trong việc gom cụm, hay phân loại dữ liệu chuỗi thời gian Ví dụ, “tìm giá chứng khoán của những công ty nào thay đổi giống nhau”
- Tìm kiếm chuỗi con (So trùng chuỗi con (subsequence matching)):
Trong trường hợp so trùng chuỗi con thì chiều dài của dữ liệu truy vấn ngắn hơn rất nhiều so với chiều dài của dữ liệu ban đầu Vì vậy, nhiệm vụ chính là tìm những đoạn trong dữ liệu ban đầu tương tự với dữ liệu truy vấn Một số ứng dụng
Trang 32của bài toàn này là tìm những mẫu dữ liệu quan trọng hay những thay đổi bất thường trong dữ liệu ban đầu
Bài toán so trùng chuỗi con là bài toán rất căn bản của lĩnh vực nghiên cứu
về dữ liệu chuỗi thời gian Từ bài toán so trùng chuỗi con trên dữ liệu chuỗi thời gian thì ta có thể mở rộng thành so trùng toàn bộ
2.3.2.3 Các độ đo tương tự
Đã có nhiều độ đo tương tự đã được sử dụng Việc chọn một độ đo tương tự
là tùy thuộc rất nhiều vào miền ứng dụng và trong nhiều trường hợp khác nhau Một trong những độ đo tương tự đơn giản nhất cho chuỗi thời gian là độ đo khoảng cách
Euclide, độ đo thuộc chuẩn L p đơn giản và đủ tốt để dùng Tuy nhiên trong nhiều trường hợp thì độ đo Euclid tỏ ra quá cứng nhắc vì không thích nghi được với những phép biến đổi như tịnh tiến (shifting), co giãn biên độ(scaling) hay xoắn trục thời gian (time warping) Nhiều phương pháp tìm kiếm tương tự mới hơn dựa vào những độ đo tương tự mềm dẻo và vững chắc hơn như độ đo xoắn thời gian động, chuỗi con chung dài nhất
Hình 2.1 Phân lớp của độ đo tương tự chuỗi thời gian [5]
Trang 33Hình 2.2 Tính khoảng cách 2 chuỗi thời gian theo Euclide [1]
Độ đo khoảng cách Euclid có ưu điểm là dễ hiểu, dễ tính toán, dễ mở rộng cho nhiều bài toán khai phá dữ liệu chuỗi thời gian khác như gom cụm, phân lớp, nhận dạng mô típ, v.v Nhưng độ đo khoảng cách này có nhược điểm là nhạy cảm với nhiễu, và không thích hợp khi dữ liệu có đường căn bản khác nhau hay có biên
độ dao động khác nhau
2.3.2.5 Độ đo xoắn thời gian động
Trong một số lĩnh vực về chuỗi thời gian, độ đo khoảng cách đơn giản như khoảng cách Euclide là đủ Tuy nhiên, nó thường là trường hợp hai chuỗi có khoảng cùng một tổng thể hình dạng thành phần
Việc so trùng 2 đường biểu diễn dữ liệu bằng cách tính khoảng cách từng cặp
điểm 1-1 (điểm thứ i của đường thứ 1 so với điểm thứ i của đường thứ 2) là không
Trang 34phù hợp trong trường hợp hai đường này không hoàn toàn giống nhau nhưng hình dạng biến đổi rất giống nhau Như trong hình 6, hai đường biểu diễn rất giống nhau
về hình dạng nhưng lệch nhau về thời gian Trong trường hợp này, nếu tính khoảng cách bằng cách ánh xạ1-1giữa 2 đường thì kết quả rất khác nhau và có thể dẫn đến kết quả cuối cùng không giống như mong muốn
Để tìm ra sự giống nhau giữa các chuỗi như vậy hoặc như là một bước tiền
xử lý trước khi đo chúng, chúng ta phải "xoắn" trục thời gian của một (hoặc cả hai) chuỗi để đạt được một sự thẳng hàng tốt hơn, có nghĩa là một điểm có thể ánh xạ với nhiều điểm và ánh xạ này không thẳng hàng
Phương pháp này gọi là xoắn thời gian động (Dynamic Time Warping - DTW) được đề xuất bởi Bernt và Clifford, 1994
Lưu ý rằng trong khi chuỗi có hình dạng tổng thể tương tự như, chúng không
thẳng hàng ở trên trục thời gian Khoảng cách Euclide, trong đó giả định điểm thứ i trên một chuỗi thẳng hàng với điểm thứ i trên chuỗi khác (A), sẽ đưa ra một độ đo
không tương tự nhau một cách bi quan Một sự thẳng hàng phi tuyến tính (B) cho phép đo khoảng cách tinh vi hơn để được tính toán
Hình 2.3 Tính khoảng cách 2 chuỗi thời gian theo DWT [1]
Trang 35Phương pháp DTW có ưu điểm là cho kết quả chính xác hơn so với độ đo Euclid và cho phép nhận dạng mẫu có hình dạng giống nhau nhưng chiều dài hình dạng về thời gian có thể khác nhau Phương pháp này có nhược điểm là thời gian chạy lâu, tuy nhiên gần đây đã có những công trình tăng tốc độ tìm kiếm tương tự dùng độ đo DTW
2.3.2.6 Độ đo chuỗi con chung dài nhất (LCS)
Độ đo chuỗi con chung dài nhất (longest common subsequence similarity) được đề xuất bởi Vlachos và các cộng sự năm 2004
Tư tưởng chính của phương pháp này là tìm những chuỗi con chung Hai chuỗi có chuỗi con chung càng dài thì càng giống nhau
Ví dụ, cho 2 chuỗi C = {1,2,3,4,5,1,7} và Q = {2,5,4,5,3,1,8} Chuỗi con chung dài nhất của C và Q là {2,4,5,1}
Tổng quát: cho 2 chuỗi C, Q lần lượt có chiều dài m và n
Đặt L(i, j) là chuỗi con chung dài nhất {c 1 , …, c i } và {q 1 , …, q j}
L(i, j) có thể được định nghĩa đệ quy như sau:
if a i = b j, then
L(i , j) = 1 + L(i - 1, j -1)
else
L(i , j) = max{D(i – 1, j ), D(i , j – 1)}
Tính không tương tự giữa C và Q có thể được định nghĩa như sau:
Trang 36Trong đó l là độ dài của chuỗi con chung dài nhất
Điểm nổi bật của phương pháp chuỗi con chung dài nhất là nó cho phép bỏ qua những điểm bất thường khi so sánh, trong khi đối với phương pháp độ đo Euclide và DTW, tất cả những thành phần từ hai chuỗi đều phải được sử dụng, thậm chí cả điểm bất thường
Độ đo này có ưu điểm là thể hiện tính trực quan của dữ liệu và cho phép bỏ qua những điểm bất thường
2.3.2.7 Các phương pháp theo xác suất
Một cách tiếp cận khác đối với tương tự chuỗi thời gian là sử dụng độ đo tương tự theo xác suất Những độ đo này đã được nghiên cứu bởi Ge và Smyth vào năm 2000; Keogh và Smyth vào năm 1997 Trong khi các phương pháp trước đây
là dựa trên khoảng cách, thì một số theo phương pháp này là dựa trên mô hình Từ khi tương tự chuỗi thời gian vốn đã là một vấn đề mờ, phương pháp xác suất là rất thích hợp để xử lý tiếng ồn và sự không chắc chắn Chúng cũng thích hợp cho việc
xử lý mở rộng quy mô và cung cấp khả năng kết hợp tri thức quan trọng trước khi thực hiện độ đo tương tự Tuy nhiên khi thực hiện phương pháp này thì một số vấn
đề khác như lập chỉ mục chuỗi thời gian và gom cụm không chắc là có thể thực hiện hiệu quả
Cho một chuỗi C, ý tưởng cơ bản để xây dựng một mô hình có khả năng xác suất M C là một phân bố xác suất trên dạng sóng Khi mô hình M C đã được xây dựng
cho chuỗi C thì chúng ta có thể tính độ tương tự như sau: cho một chuỗi mới Q, độ
đo tương tự được tính bằng cách tính p(Q|M C ), tức là khả năng M C sinh ra Q.[3]
2.3.3 Tầm Quan Trọng Của Khai Phá Dữ Liệu Chuỗi Thời Gian
Phần lớn của thế giới hiện nay là cung cấp dữ liệu dưới dạng chuỗi thời gian
Vì vậy phân tích và khai phá dữ liệu chuỗi thời gian là vấn đề rất quan trọng ở rất nhiều lĩnh vực nghiên cứu khác nhau như kinh tế, y học, hóa học, địa chất, khí tượng học,… Tất cả các vấn đề của khai phá dữ liệu thời gian đều được tập trung
Trang 37vào việc xác định các quy luật và các mô hình trong sự chuyển động của các thành phần đặc trưng cho chuỗi thời gian (bao gồm cả chuyển động xu hướng, thay đổi theo mùa, sự thay đổi theo chu kỳ, và các chuyển động ngẫu nhiên) trên cơ sở của
sự hiểu biết trong quá khứ, từ đó dự đoán hành vi tương lai của biến quan sát
Trong hầu hết các trường hợp, đối với những chuỗi thời gian có chứa nhiều n điểm dữ liệu, việc dự đoán giá trị tại thời điểm n+h (nơi chiều dài của bước trong
dự báo) được dựa trên sự kết hợp kết quả của các tác vụ khai phá dữ liệu khác
Nhiều mô hình dự báo khác nhau đã được đưa ra trước khi sự xuất hiện của khai phá dữ liệu và máy tính Những mô hình dự báo sớm nhất có liên quan đến các
mô hình phân tích cổ điển Theo thời gian, mức độ phức tạp về phương pháp luận
và dữ liệu càng tăng, do đó, độ chính xác trong dự báo càng phải chính xác Điều này đòi hỏi mô hình dự báo phải được cải thiện để phù hợp với yêu cầu Hiện nay với sự phát triển của công nghệ thông tin, khai phá dữ liệu và khai phá dữ liệu chuỗi thời gian xuất hiện đã đáp ứng phần nào nhu cầu ở trên Nhiều công ty đã cung cấp các giải pháp phần mềm cho khai phá dữ liệu, một số gói phần mềm phổ biến (tập hợp các thuật toán khai phá dữ liệu) cung cấp các công cụ phân tích chuỗi thời gian như: WEKA (Waikato Environment for Knowledge Analysis), Rapid Miner (trước đây là Yale), IBM PASW (trước đây là SPSS-Clementine), SAS (Enterprise Miner),
và MATLAB
Trong thực tế, đặc tính vốn có của các dữ liệu mực nước là số chiều rất cao Việc giảm chiều thực tế của số lượng lớn các dữ liệu thô được lưu trữ trong cơ sở
dữ liệu đến một mức độ thấp hơn là cần thiết, nó sẽ giúp nhiều cho việc dự đoán các
mô hình và quy luật có liên quan
Ứng dụng khai phá dữ liệu chuỗi thời gian có thể được áp dụng trong lĩnh vực nghiên cứu kinh tế, ví dụ như: phân tích thị trường chứng khoán, phân tích ngân sách, phân tích và phát hiện gian lận trong ngân hàng và tài chính, phân tích biến động trong mức độ chất lượng sản phẩm, phân tích các phân đoạn thị trường và duy
Trang 38trì khách hàng, dự báo hàng tồn kho, phân tích dự báo bán hàng, bảo hiểm , bán lẻ,…
Ví dụ trong kinh doanh thị trường chứng khoán: việc thành bại trong kinh doanh của các nhà đầu tư trên thị trường chứng khoán phụ thuộc rất nhiều vào khả năng phân tích thông tin và dự báo trạng thái của thị trường, cũng như việc đưa ra các quyết định kịp thời trong thời gian thực Đối với các thị trường mà tốc độ biến đổi nhanh (theo đơn vị phút) như thị trường tài chính FOREX, khoảng thời gian 5 phút là phù hợp hay đối với thị trường chứng khoán Việt Nam do các phiên giao dịch theo ngày nên khoảng thời gian 5 hoặc 10 ngày là phù hợp vì khi đó sự biến động của giá mới có tính xu hướng Sau mỗi khoảng thời gian 5 phút, nhà đầu tư cần xác định lại thông tin để có thể xây dựng được trạng thái mới của thị trường dựa trên các thông tin thống kê đã được tích lũy
Hay trong ngành công nghiệp viễn thông: khai phá dữ liệu chuỗi thời gian có thể giúp xây dựng một hệ thống gồm một số chức năng dự đoán như sau:
- Dự đoán được các sở thích của khách hàng để từ đó có các chính sách quảng
cáo, chăm sóc và hướng những người dùng đó tới các dịch vụ tương tự
- Dự đoán các dịch vụ có xu hướng được khách hàng sử dụng nhiều tại các bưu
điện tỉnh, thành phố
- Phân tích và dự đoán xu hướng phát triển của các sản phẩm, dịch vụ có lợi
nhuận lớn nhất trong thời điểm hiện tại
- Dự đoán nhu cầu tăng dung lượng đường truyền của các bưu điện tỉnh, thành
- Đánh giá xu hướng biến đổi sản lượng của các sản phẩm, dịch vụ
- Nhận dạng và dự đoán các biểu hiện gian lận trong sử dụng dịch vụ viễn thông
tại các bưu điện tỉnh, thành phố
Với sự phát triển của nền kinh tế và của ngành công nghệ thông tin như hiện nay, khai phá dữ liệu chuỗi thời gian đã đóng góp phần không nhỏ vào sự phát triển này, đặc biệt trong các lĩnh vực của ngành kinh tế Điều này cho thấy tầm quan trọng của khai phá dữ liệu chuỗi thời gian là rất lớn
Trang 39Hiện nay khai phá dữ liệu chuỗi thời gian được sử dụng rất rộng rãi, trong hầu hết tất cả các lĩnh vực của đời sống kinh tế xã hội Nó cung cấp cho chúng ta cái nhìn sâu sắc vào các thông tin và tri thức ẩn, chưa được biết đến đồng thời rất hữu ích, cho dù đó là về mối quan hệ giữa các dữ liệu, mô hình của hành vi, mối tương quan, hoặc các quy luật, cải tiến quy trình đưa ra các quyết định chiến lược, dựa trên việc giải thích rõ ràng và kết quả kinh doanh cụ thể