Luận án tiến sĩ về tìm kiếm tương tự trên chuỗi thời gian dạng luồng

Đề tài khảo sát tìm kiếm tương tự trên chuỗi thời gian dạng luồng trong khoa học máy tính với dữ liệu thực nghiệm, giải pháp cụ thể cho bài toán thực

Chuyên ngành

Khoa học máy tính

Người đăng

Ẩn danh

Thể loại

luận án tiến sĩ

2019

231
3
0

Phí lưu trữ

55 Point

Tóm tắt

I. Giới thiệu

Trong bối cảnh khoa học máy tính, tìm kiếm tương tự trên chuỗi thời gian dạng luồng đang trở thành một thách thức lớn. Bài toán này không chỉ liên quan đến việc xử lý dữ liệu dạng luồng mà còn yêu cầu các phương pháp phân tích thời gian hiệu quả. Các phương pháp truyền thống thường gặp khó khăn trong việc áp dụng cho môi trường luồng, nơi mà dữ liệu liên tục được cập nhật và yêu cầu thời gian phản hồi nhanh. Đặc biệt, việc không chuẩn hóa dữ liệu trước khi thực hiện tìm kiếm tương tự có thể dẫn đến lỗi tìm sót, ảnh hưởng đến độ chính xác của kết quả. Các nghiên cứu trước đây đã chỉ ra rằng, để có kết quả tìm kiếm chính xác, việc chuẩn hóa dữ liệu là cần thiết. Theo đó, các phương pháp như đo lường EuclidDTW đã được đề xuất để cải thiện hiệu quả tìm kiếm. Sự phát triển của trí tuệ nhân tạohọc máy cũng góp phần vào việc nâng cao khả năng xử lý và phân tích dữ liệu trong lĩnh vực này.

1.1. Tầm quan trọng của việc tìm kiếm tương tự

Tìm kiếm tương tự trên chuỗi thời gian có ý nghĩa quan trọng trong nhiều lĩnh vực, từ tài chính đến y tế. Việc phát hiện các mẫu tương tự trong dữ liệu dạng luồng có thể giúp các nhà nghiên cứu và chuyên gia đưa ra các quyết định chính xác hơn. Chẳng hạn, trong lĩnh vực tài chính, việc phát hiện các xu hướng thị trường có thể giúp dự đoán các biến động giá. Trong y tế, việc phát hiện bất thường trong các chuỗi thời gian theo dõi bệnh nhân có thể cứu sống. Do đó, nghiên cứu này không chỉ có giá trị lý thuyết mà còn mang lại lợi ích thực tiễn rõ rệt.

II. Các phương pháp tìm kiếm tương tự

Luận án này trình bày các phương pháp tìm kiếm tương tự trên chuỗi thời gian dạng luồng sử dụng độ đo EuclidDTW. Cả hai phương pháp đều có những ưu điểm và nhược điểm riêng. Đối với độ đo Euclid, phương pháp này đơn giản và dễ thực hiện nhưng có thể không chính xác khi các chuỗi thời gian có độ dài khác nhau hoặc có sự dịch chuyển. Ngược lại, DTW cung cấp một cách tiếp cận linh hoạt hơn, cho phép so sánh các chuỗi thời gian có độ dài khác nhau bằng cách tìm kiếm các điểm tương ứng tốt nhất giữa chúng. Tuy nhiên, DTW thường yêu cầu tính toán phức tạp hơn, dẫn đến thời gian xử lý lâu hơn. Do đó, việc tối ưu hóa các thuật toán này để giảm chi phí tính toán là rất cần thiết.

2.1. Đo lường Euclid

Đo lường Euclid là một trong những phương pháp phổ biến nhất trong tìm kiếm tương tự. Nó tính toán khoảng cách giữa hai chuỗi thời gian bằng cách lấy căn bậc hai tổng bình phương của các sai số giữa các điểm tương ứng. Tuy nhiên, phương pháp này có thể gặp khó khăn trong các trường hợp mà các chuỗi thời gian không được chuẩn hóa, dẫn đến kết quả không chính xác. Việc áp dụng các kỹ thuật như chuẩn hóa z-score có thể cải thiện độ chính xác của phương pháp này trong môi trường luồng.

2.2. Đo lường DTW

DTW là một kỹ thuật mạnh mẽ hơn cho phép tìm kiếm tương tự giữa các chuỗi thời gian có độ dài khác nhau. Kỹ thuật này sử dụng một ma trận để tính toán độ tương đồng giữa các điểm trong hai chuỗi thời gian và tìm ra đường đi tối ưu giữa chúng. Mặc dù DTW cho kết quả chính xác hơn, nhưng chi phí tính toán cao hơn rất nhiều. Do đó, việc tối ưu hóa thuật toán DTW để giảm thời gian tính toán là một trong những ưu tiên hàng đầu trong nghiên cứu này.

III. Ứng dụng thực tiễn

Nghiên cứu này không chỉ dừng lại ở lý thuyết mà còn đề xuất các ứng dụng thực tiễn cho các phương pháp tìm kiếm tương tự. Một trong những ứng dụng quan trọng nhất là dự báo trực tuyến. Bằng cách sử dụng các điểm cực trị trong chuỗi thời gian, phương pháp đề xuất có thể giúp giảm thiểu thời gian thực hiện và cải thiện độ chính xác trong dự báo. Ngoài ra, việc phát hiện bất thường trong các chuỗi thời gian cũng là một ứng dụng quan trọng, đặc biệt trong các lĩnh vực như y tế và tài chính. Các kỹ thuật như chặn dưới trong tính toán khoảng cách có thể giúp nhận diện các chuỗi con có tiềm năng bất thường một cách hiệu quả.

3.1. Dự báo trực tuyến

Trong bối cảnh ngày càng tăng của dữ liệu lớn, khả năng dự báo chính xác là rất quan trọng. Phương pháp đề xuất sử dụng các điểm cực trị trong chuỗi thời gian để tối ưu hóa quá trình tìm kiếm tương tự. Điều này không chỉ giúp tăng tốc độ xử lý mà còn cải thiện độ chính xác của dự báo. Các ứng dụng trong lĩnh vực tài chính, như dự đoán xu hướng thị trường, có thể hưởng lợi lớn từ phương pháp này.

3.2. Phát hiện bất thường

Phát hiện các bất thường trong chuỗi thời gian là một ứng dụng quan trọng khác. Phương pháp đề xuất sử dụng các kỹ thuật như chặn dưới để nhận diện các chuỗi con có khả năng bất thường cao. Điều này có thể giúp các chuyên gia y tế phát hiện sớm các vấn đề sức khỏe trong quá trình theo dõi bệnh nhân. Việc áp dụng các phương pháp này trong thực tiễn sẽ nâng cao khả năng phát hiện và phản ứng kịp thời trước các tình huống bất ngờ.

11/01/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1 GIỚI THIỆU Chương này trình bày các nội dung như sau. Đầu tiên là tổng quan về chuỗi thời gian dạng luồng và các bài toán quan trọng trong khai phá dữ liệu chuỗi thời gian dạng luồng. Tiếp theo là mục tiêu, đối tượng, và phạm vi nghiên cứu của đề tài. Sau đó là phương pháp nghiên cứu và tóm tắt kết quả đạt được.

Cuối cùng là cấu trúc của luận án.1 Chuỗi thời gian dạng luồng và thách thức xử lý chuỗi thời gian dạng luồng Chuỗi thời gian (time series) là dãy các giá trị hoặc sự kiện thu được bằng cách ghi nhận kết quả tại những điểm cách đều nhau theo trục thời gian. Dữ liệu này có thể có nhiều hơn hai chiều nhưng phải có một chiều là thời gian. Ví dụ như chuỗi thời gian thể hiện tỷ giá hối đoái USD/VND được ghi nhận theo từng ngày làm việc, từ 02/01/2017 đến 29/8/2017 được thể hiện trong Hình 1.1 Đường biểu diễn chuỗi thời gian thể hiện tỷ giá USD/VND (nguồn [1]) Dữ liệu chuỗi thời gian có thể có các tính chất như sau: (i) Số chiều nhiều, (ii) mối tương quan cao giữa các điểm giá trị, và (iii) dữ liệu có thể bị nhiễu. Các tính chất này khiến cho việc khai phá dữ liệu chuỗi thời gian gặp nhiều thách thức.

Chuỗi thời gian dạng luồng (streaming time series) là một chuỗi thời gian có các giá trị mới tới được ghi nhận một cách liên tục và được nối vào cuối chuỗi theo trình tự thời gian. Xét ví dụ trong Hình 1.1, tỷ giá hối đoái USD/VND được ghi nhận vào ngày 1 30/8/2017 sẽ được thêm vào cuối chuỗi thời gian. Như vậy chuỗi thời gian này có tính chất là một luồng dữ liệu tới liên tục và được ghi nhận theo từng ngày làm việc. Li và các cộng sự [2], chuỗi thời gian dạng luồng có các đặc trưng: • Các phần tử dữ liệu tới trực tuyến.

• Hệ thống không thể điều khiển thứ tự dữ liệu tới. • Khối lượng dữ liệu nhiều đến mức có thể là vô tận, do vậy bộ nhớ chứa dữ liệu không thể lưu trữ tất cả dữ liệu. • Một khi một phần tử dữ liệu được xử lý, phần tử này được lưu lại trong một khoảng thời gian xác định trong bộ nhớ, rồi được cất giữ tại nơi khác hoặc bị huỷ bỏ và không thể phục hồi. Như vậy để xử lý nhanh dữ liệu chuỗi thời gian dạng luồng trong thời gian thực, phương pháp xử lý phải có độ phức tạp thời gian (time complexity) thấp và cần quét dữ liệu một lần (one-pass scan).

Hai yêu cầu này tạo ra thách thức to lớn cho các phương pháp xử lý chuỗi thời gian tĩnh nếu ta muốn làm cho các phương pháp này thích nghi với việc xử lý chuỗi thời gian dạng luồng. Vì thế cần phải có các kỹ thuật mới hay cải tiến từ các kỹ thuật đã có để đảm bảo việc xử lý chuỗi thời gian dạng luồng có hiệu quả theo hai tiêu chí đánh giá là chất lượng kết quả trả về và thời gian thực hiện. Qua khảo sát của chúng tôi, ngày càng có nhiều ứng dụng cần phải xử lý dữ liệu chuỗi thời gian dạng luồng như phân tích lưu lượng mạng máy tính [3], giám sát vị trí các thiết bị di động trong thời gian thực [4], theo dõi các tia bất thường trong thiên văn [5], giám sát giao dịch cổ phiếu trong thị trường chứng khoán [6, 7], v. Do có nhiều ứng dụng liên quan đến việc xử lý chuỗi thời gian dạng luồng và sự phức tạp, khó khăn của loại xử lý này cho nên vào năm 2011, Fu [8] cho rằng bài toán xử lý dữ liệu chuỗi thời gian dạng luồng là một trong hai hướng nghiên cứu chủ yếu về khai phá dữ liệu chuỗi thời gian.2 Mục tiêu, đối tượng và phạm vi nghiên cứu Các bài toán thường được nghiên cứu trong khai phá dữ liệu chuỗi thời gian là tìm kiếm tương tự (similarity search), phát hiện bất thường (anomaly detection), phát hiện mô típ 2 (motif detection), dự báo (forecast), kết chuỗi con (subsequence join), rút trích luật (rule extraction), v.

Trong các bài toán quan trọng này, giải pháp cho bài toán tìm kiếm tương tự thường là cơ sở nền tảng cho giải pháp của các bài toán khác. Thông thường, tìm kiếm dữ liệu trong cơ sở dữ liệu truyền thống là sự so trùng chính xác còn tìm kiếm tương tự trên chuỗi thời gian là sự so trùng xấp xỉ; nghĩa là khoảng cách giữa hai chuỗi thời gian được tính bằng một độ đo nào đó và khoảng cách này phải nhỏ hơn một ngưỡng khoảng cách (distance threshold) cho trước thì hai chuỗi thời gian mới được xem là tương tự nhau. Theo sự nhận xét của chúng tôi, cho tới hiện nay các công trình nghiên cứu về tìm kiếm tương tự trên chuỗi thời gian dạng luồng thường đưa ra các phương pháp tìm kiếm tương tự có chi phí tính toán cao hoặc không chuẩn hoá dữ liệu cho nên kết quả trả về chưa chính xác. Nhằm khắc phục các khuyết điểm kể trên, chúng tôi xác định bài toán tìm kiếm tương tự trên chuỗi thời gian dạng luồng sẽ là đối tượng được nghiên cứu trong luận án này.

Luận án bao gồm hai nhiệm vụ nghiên cứu và mục tiêu cụ thể của từng nhiệm vụ là Nhiệm vụ 1: Xây dựng các phương pháp tìm kiếm tương tự trên chuỗi thời gian dạng luồng bằng • Độ đo Euclid (Euclidean measure) có vận dụng các phép biến đổi thu giảm số chiều và cấu trúc chỉ mục đa mức phân giải. • Độ đo xoắn thời gian động (Dynamic Time Warping measure) hay còn gọi là độ đo DTW và các kỹ thuật tăng tốc cho độ đo này. Nhiệm vụ 2: Ứng dụng các phương pháp tìm kiếm tương tự trên chuỗi thời gian dạng luồng để giải quyết các bài toán sau. • Dự báo trực tuyến (online forecating) trên chuỗi thời gian dạng luồng có xu hướng và tính mùa (trend and seasonal) bằng độ đo DTW.

• Phát hiện k chuỗi con bất thường nhất (top-k discords detection) trong chuỗi thời gian dạng luồng bằng độ đo Euclid. 3 Tìm kiếm tương tự trên chuỗi thời gian dạng luồng có thể chia thành hai loại là truy vấn tĩnh (static query) và truy vấn dạng luồng (streaming query). Hai loại truy vấn này được mô tả như sau: • Truy vấn tĩnh. Trong lãnh vực tài chính như thị trường chứng khoán có nhiều loại mẫu (pattern) cổ phiếu đáng quan tâm và có nhiều chuỗi thời gian biểu diễn sự biến động giá trị cổ phiếu của các công ty trên sàn giao dịch.

Các chuỗi thời gian này xem như là các luồng dữ liệu. Yêu cầu đặt ra là tìm các chuỗi con trong các chuỗi thời gian này mà đồng dạng (có hình dạng tương tự) với các mẫu cổ phiếu có sẵn. Truy vấn tĩnh cũng thích hợp trong lĩnh vực giám sát mạng khi có nhiều luồng dữ liệu tới liên tục và cần được so sánh với các mẫu cần phát hiện. Nhận xét rằng trong khai phá dữ liệu chuỗi thời gian, mẫu thường được biểu diễn bằng chuỗi truy vấn (query sequence) đã được xác định trước.

Với trường hợp này, chức năng tìm kiếm tương tự cho chuỗi truy vấn tĩnh trên chuỗi thời gian dạng luồng được sử dụng. • Truy vấn dạng luồng. Trong lĩnh vực môi trường như biến đổi khí hậu, dữ liệu ghi nhận các thông số thời tiết được cập nhật liên tục theo từng mốc thời gian và tạo ra chuỗi thời gian dạng luồng; còn mẫu cũng thay đổi do yêu cầu truy vấn thay đổi theo sự biến động môi trường. Do vậy chuỗi truy vấn cũng thay đổi theo dạng luồng; nghĩa là các dữ liệu truy vấn có sự tiếp nối, kế thừa dữ liệu, và dữ liệu nào cũ quá sẽ không còn trong chuỗi truy vấn để nhường chỗ cho dữ liệu mới phát sinh.

Trong trường hợp này, chức năng tìm kiếm tương tự cho chuỗi truy vấn dạng luồng trên chuỗi thời gian dạng luồng được sử dụng. Tuỳ theo ứng dụng mà các nghiên cứu của luận án sử dụng kiểu truy vấn tương ứng. Nhận xét rằng truy vấn tĩnh dễ nhận ra và phổ biến hơn truy vấn dạng luồng. Thêm nữa, xử lý truy vấn tĩnh không phức tạp như xử lý truy vấn dạng luồng, và truy vấn dạng luồng thường chỉ xuất hiện trong một số ứng dụng đặc biệt.

Vì vậy, đối với nhiệm vụ nghiên cứu thứ nhất về tìm kiếm tương tự trên chuỗi thời gian dạng luồng, luận án đề xuất phạm vi nghiên cứu là tìm kiếm tương tự cho truy vấn tĩnh. Còn đối với nhiệm vụ nghiên cứu thứ hai, do bản chất của các bài toán cần giải quyết là truy vấn dạng luồng nên luận án sẽ mở rộng giải pháp tìm kiếm tương tự cho truy vấn tĩnh để thích ứng cho truy vấn dạng luồng.3 Phương pháp nghiên cứu Tìm kiếm tương tự trên chuỗi thời gian bằng độ đo Euclid thường bắt đầu bằng tìm kiếm trên đặc trưng (feature) của dữ liệu chuỗi thời gian. Nếu kết quả tìm kiếm trên đặc trưng thỏa mãn thì bước hậu kiểm sẽ thực hiện trên dữ liệu chuỗi thời gian. Với cách làm này thì độ phức tạp thời gian của tìm kiếm tương tự trên chuỗi thời gian sẽ giảm đến mức đáng kể do tìm kiếm trên đặc trưng của dữ liệu chuỗi thời gian nhanh hơn rất nhiều so với việc tìm kiếm trên dữ liệu chuỗi thời gian.

Thông thường ta có đặc trưng của dữ liệu chuỗi thời gian từ một phép biến đổi thu giảm số chiều nào đó. Để đảm bảo không có lỗi tìm sót (false dismissals), phép biến đổi thu giảm số chiều chuỗi thời gian phải có tính chất chặn dưới (lower-bounding property) [9]. Để tăng tốc tìm kiếm tương tự trên chuỗi thời gian bằng độ đo Euclid, đặc trưng của dữ liệu chuỗi thời gian thường được lưu trong một cấu trúc chỉ mục phục vụ cho việc tìm kiếm nhanh. Do dữ liệu chuỗi thời gian có thể được đại diện bởi nhiều đặc trưng nên cấu trúc chỉ mục không gian (spatial index structure) hay còn được gọi là cấu trúc chỉ mục đa chiều (multi-dimensional index structure) thường được sử dụng để chứa các đặc trưng.

Trong khai phá dữ liệu chuỗi thời gian, cấu trúc chỉ mục không gian thường được sử dụng là R-tree [10] và các biến thể của R-tree như R*-tree [11] và STR (Sort-Tile- Recursive) [12]. Thêm nữa, cấu trúc chỉ mục không gian nên được tổ chức theo đa mức phân giải (multi-resolutions) để phù hợp với các chuỗi truy vấn (query sequence) có chiều dài khác nhau hay yêu cầu thời gian tìm kiếm khác nhau. Nhận xét rằng mức phân giải có chức năng lọc kết quả nên còn được gọi là mức lọc (filtering level).

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Luận án tiến sĩ mang tiêu đề "Luận án tiến sĩ về tìm kiếm tương tự trên chuỗi thời gian dạng luồng" của tác giả Bùi Công Giao, dưới sự hướng dẫn của PGS. Dương Tuấn Anh, được thực hiện tại Đại học Quốc gia TP. Hồ Chí Minh vào năm 2019. Nghiên cứu này tập trung vào việc phát triển các phương pháp tìm kiếm tương tự trong chuỗi thời gian dạng luồng, một lĩnh vực quan trọng trong khoa học máy tính. Bài luận án không chỉ cung cấp cái nhìn sâu sắc về các thuật toán và kỹ thuật hiện có mà còn mở ra hướng đi mới cho việc ứng dụng trong các lĩnh vực như phân tích dữ liệu lớn, giám sát hệ thống và dự đoán xu hướng.

Độc giả có thể tìm hiểu thêm về các khía cạnh liên quan đến khoa học máy tính và ứng dụng công nghệ thông tin qua các tài liệu khác như "Nghiên cứu phát triển kỹ thuật hỗ trợ phát hiện đạo văn trong văn bản tiếng Việt", nơi khám phá các kỹ thuật xử lý văn bản, hoặc "Luận văn thạc sĩ: Xây dựng máy tìm kiếm tác vụ dựa trên tài liệu đặc tả API", một nghiên cứu về xây dựng hệ thống tìm kiếm thông minh. Ngoài ra, bạn cũng có thể tham khảo "Luận văn về quản lý điều hành khoa học công nghệ thông tin và nguồn lực thông tin", giúp mở rộng hiểu biết về quản lý trong lĩnh vực công nghệ thông tin. Những tài liệu này không chỉ bổ sung kiến thức mà còn cung cấp các góc nhìn đa dạng về các ứng dụng của công nghệ trong thực tế.