Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 28 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
28
Dung lượng
2,05 MB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP KHỔNG MINH TỰ NGHIÊN CỨU, TÌM HIỂU MỘT SỐ THUẬT TOÁN CƠ BẢN VỀ PHÂN NHÓM DỮ LIỆU TRÊN CƠ SỞ DỮ LIỆU KHÔNG GIAN Chuyên ngành: KỸ THUẬT ĐIỆN TỬ Mã số: 60. 52. 02. 03 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT THÁI NGUYÊN - 2014 Luận văn được hoàn thành tại: Trường Đại học Kỹ thuật Công nghiệp - Đại học Thái Nguyên Người hướng dẫn khoa học: PGS. TS Lương Chi Mai Phản biện 1: PGS.TS Đỗ Xuân Tiến Học viện Quân sự Phản biện 2: PGS.TS Nguyễn Hữu Công Đại học Thái Nguyên Luận văn được bảo vệ tại hội đồng chấm luận văn họp tại: Trường Đại học Kỹ thuật Công nghiệp - Đại học Thái Nguyên Vào ngày 18 tháng 04 năm 2014 1 MỞ ĐẦU Trong vài thập kỷ gần đây, công nghệ thông tin có nhiều bước phát triển nhanh chóng và đã được ứng dụng rộng rãi trong mọi lĩnh vực, ngành nghề xã hội, đặc biệt là lĩnh vực quản lý – một lĩnh vực mà yếu tố công nghệ xử lý thông tin có tính chất quyết định. Từ đó, theo quá trình hoạt động của các hệ thống quản lý dẫn đến sự bùng nổ thông tin, kích thước của các kho dữ liệu có kích thước tăng nhanh chóng theo từng năm, từng thời kỳ, làm cho những nhà (lãnh đạo) quản lý rơi vào tình trạng “ngập lụt thông tin”. Kích thước dữ liệu tăng quá nhanh dẫn tới các phương pháp phân tích dữ liệu truyền thống không còn có thể đáp ứng được nữa. Sự ra đời của lĩnh vực khai phá dữ liệu đã mở ra nhiều hướng nghiên cứu mới thu hút sự quan tâm chú ý của nhiều nhà nghiên cứu thuộc nhiều lĩnh vực khác nhau. Đồng thời, dựa trên các kỹ thuật đưa ra trong lĩnh vực này rất nhiều các ứng dụng đã được xây dựng tạo ra được nhiều hệ thống trợ giúp đắc lực cho cuộc sống con người. 1. Tính cấp thiết của đề tài Dữ liệu không gian? Với lý do, ngoài nhu cầu lưu trữ và xử lý các kiểu dữ liệu thông thường như kiểu chuỗi, kiểu số, kiểu ngày tháng, … người sử dụng còn có thêm nhu cầu lưu trữ và xử lý dữ liệu không gian để lưu trữ các đối tượng như Point, Line, Polugon, … Dữ liệu không gian trong lĩnh vực điện tử, truyền thông? Trong hoạt động quản lý của các nhà cung cấp dịch vụ viễn thông, kích thước kho dữ liệu lưu trữ về các cuộc thoại di động tăng nhanh đáng kể. Khai phá dữ liệu không gian Để có thể trích rút các tri thức có ích như trình bày ở trên là một vấn đề quan trọng được nhiều nhà lãnh đạo quản lý quan tâm. Chính vì lý do đó mà em chọn đề tài “Nghiên cứu, tìm hiểu một số thuật toán cơ bản về phân nhóm dữ liệu trên Cơ sở dữ liệu không gian” làm hướng nghiên cứu chính cho luận văn của mình. 2. Mục tiêu đề tài Mục tiêu trọng tâm của đề tài là: - Nghiên cứu một số thuật toán phân nhóm dữ liệu trên cơ sở dữ liệu không gian. - Cài đặt thử nghiệm trên một số mẫu dữ liệu không gian. - Đưa ra bảng so sánh giữa các thuật toán. 1 - Tìm cách xây dựng các tham số cho các thuật toán. 3. Đối tượng và phạm vi nghiên cứu - Các kỹ thuật thu thập và lưu trữ dữ liệu; - Các phương pháp phân nhóm dữ liệu; - Tập trung nghiên cứu một số thuật toán phân nhóm cơ bản dựa vào mật độ phân bố của các đối tượng dữ liệu không gian. 4. Ý nghĩa khoa học và thực tiễn của đề tài a. Ý nghĩa khoa học Vào cuối thập kỷ 90, kỹ thuật khám phá tri thức trong cơ sở dữ liệu (Knowledge Discovery in Database -KDD) được đưa ra nhằm tìm kiếm các thông tin, tri thức cần thiết, có giá trị tiềm ẩn trong một khối dữ liệu lớn và phức tạp như dữ liệu không gian, dữ liệu đa phương tiện, … b. Ý nghĩa thực tiễn Kết quả nghiên cứu là tìm hiểu và đưa ra một số thuật toán phân nhóm có hiệu quả trên dữ liệu không gian, đặc biệt trong trường hợp dữ liệu lớn, bị nhiễu, đa chiều. Kết quả so sánh giữa các thuật toán cho thấy tính hiệu quả của mỗi thuật toán trên những đối tượng dữ liệu khác nhau. 5. Phương pháp nghiên cứu Phương pháp tài liệu: Nghiên cứu các tài liệu (sách, báo, tạp chí khoa học, Internet, …) liên quan đến kỹ thuật phân nhóm dữ liệu trên CSDL không gian. Phương pháp thực nghiệm: Cài đặt thử nghiệm trên một số mẫu dữ liệu, từ đó đưa ra đánh giá về tính hiệu quả của các thuật toán đó. 6. Bố cục của luận văn Ngoài các phần Mở đầu, Mục lục, Danh mục hình, Kết luận, Tài liệu tham khảo. Nội dung chính của luận văn được trình bày trong 04 chương như sau: Chương 1: Tổng quan về khai phá tri thức trong cơ sở dữ liệu không gian. Chương 2: Các cách tiếp cận của kỹ thuật phân nhóm. Chương 3: Các giải thuật phân nhóm trên cơ sở dữ liệu không gian lớn. Chương 4: Xác định tham số, cài đặt thử nghiệm và đánh giá kết quả. 2 Chương 1. TỔNG QUAN VỀ KHAI PHÁ TRI THỨC VÀ CƠ SỞ DỮ LIỆU KHÔNG GIAN 1.1. Khai phá tri thức trong cơ sở dữ liệu (Knowledge Discovery in Databases - KDD) 1.1.1. Sự ra đời của khai phá tri thức trong cơ sở dữ liệu Trong những năm gần đây, cùng với sự thay đổi và phát triển không ngừng của ngành công nghệ thông tin nói chung và trong các ngành công nghệ phần cứng, phần mềm, truyền thông và hệ thống các dữ liệu phục vụ trong các lĩnh vực kinh tế xã hội nói riêng đã làm cho khả năng thu thập và lưu trữ thông tin của các hệ thống thông tin tăng nhanh một cách chóng mặt. 1.1.2. Khái niệm khai phá dữ liệu Khai phá dữ liệu (Data Mining) là một khái niệm ra đời vào những năm cuối của thập kỷ 1980. Nó là quá trình trích xuất các thông tin có giá trị tiềm ẩn bên trong lượng lớn dữ liệu được lưu trữ trong các CSDL, kho dữ liệu…. 1.1.3. Quá trình khai phá tri thức trong cơ sở dữ liệu Quá trình khai phá tri thức trong cơ sở dữ liệu bao gồm các giai đoạn sau: 1. Trước tiên cần xác định và hiểu rõ được lĩnh vực ứng dụng và nhiệm vụ đặt ra là xác định các tri thức đã có và mục đích của người sử dụng. 2. Tạo lập được một tập dữ liệu đích: Chọn lựa từ cơ sở dữ liệu một tập con dữ liệu với các giá trị biến và các mẫu được quan tâm mà trên đó ta có thể thực hiện việc tìm kiếm, phát hiện tri thức. 3. Làm sạch và tiền xử lý dữ liệu: Thực hiện các thao tác cơ bản như loại bỏ nhiễu hoặc loại bỏ các phần không cần thiết, bổ sung thêm các thông tin cần thiết 4. Thực hiện các phương pháp chuyển đổi để làm giảm bớt số chiều của dữ liệu để tập trung vào những thuộc tính chủ chốt đối với việc phát hiện tri thức. 5. Khai phá dữ liệu: Quá trình áp dụng các giải thuật về tìm kiếm tri thức để đưa ra được những thông tin cần thiết và tiềm ẩn trong tập dữ liệu. 6. Đánh giá, giải thích, thử lại các mẫu đã được khai phá, có thể lặp lại một hoặc nhiều bước kể trên để thu được các kết quả tốt hơn. 7. Sử dụng các tri thức phát hiện được: Hợp nhất các tri thức thu được vào một hệ thống làm việc, hoặc đưa ra các tài liệu về tri thức thu được từ dữ liệu về một vấn đề quan tâm. Hình 1.1: Các bước trong quá trình khám phá tri thức KDD 1.1.4. Các nhiệm vụ của khai phá dữ liệu 3 Nhìn chung, mục đích chính của khai phá dữ liệu là dự đoán (prediction) và mô tả (description). 1.2. Phân nhóm (Clustering) và các cách tiếp cận chính 1.2.1. Phân nhóm và các ứng dụng a. Khái niệm Phân nhóm (clustering) là quá trình nhóm một tập các đối tượng vật lý hoặc trừu tượng thành các nhóm hay các lớp đối tượng tương tự nhau. Một lớp (cluster) là một tập các đối tượng dữ liệu trong đó các đối tượng trong cùng một lớp có sự tương tự hoặc giống nhau và ít tương tự hoặc khác nhau so với các đối tượng thuộc lớp khác. Hình 1.2: Biểu đồ Hertzsprung-Russell b. Các ứng dụng của phân nhóm Đây là một hoạt động quan trọng của con người. Khi còn bé, con người học cách phân biệt giữa các đồ vật, giữa động vật và thực vật bằng cách liên tục thay đổi nhận thức trong quan niệm phân chia các đối tượng dựa vào mối tương quan giữa chúng. 1.2.2. Các cách tiếp cận chính Có rất nhiều các thuật toán phân nhóm khác nhau, việc chọn lựa một thuật toán thích hợp phụ thuộc vào kiểu dữ liệu cần thực hiện cũng như là mục đích của ứng dụng. a. Phương pháp phân hoạch (Partioning methods) Ý tưởng chính của kỹ thuật này phương pháp phân hoạch là xác định số nhóm (lớp) trước và xác định luôn tính chất của từng lớp. b.Phương pháp phân cấp (Hierarchical methods) Phương pháp phân cấp thực hiện bằng cách nhóm các đối tượng dữ liệu trên cây phân cấp. Phương pháp phân nhóm theo phân cấp được chia làm hai loại đó là phương pháp phân nhóm theo kiểu từ dưới lên (bottom up) và phương pháp phân nhóm từ trên xuống (top down). 4 Hình 1.3: Mô tả cách phân nhóm theo phương pháp từ dưới lên và từ trên xuống c. Phương pháp dựa vào mật độ (Density - Based Methods) Hầu hết các phương pháp phân nhóm theo phân hoạch chủ yếu dựa vào khoảng cách các đối tượng. d. Phương pháp dựa vào mô hình (Model -based methods) Phương pháp chia lớp dựa vào mô hình thực hiện bằng cách đề xuất ra một mô hình cho mỗi lớp và tìm các dữ liệu phù hợp cho mỗi mô hình đó. 1.3. Hệ quản trị cơ sở dữ liệu không gian 1.3.1. Cơ sở dữ liệu không gian Dữ liệu không gian là dạng dữ liệu đặc biệt, mỗi điểm dữ liệu trong cơ sở dữ liệu ngoài những giá trị biểu thị cho điểm dữ liệu đó còn những giá trị biểu diễn vị trí và toạ độ của điểm đó. 1.3.2. Hệ quản trị cơ sở dữ liệu không gian Hệ quản lý cơ sở dữ liệu không gian là một bộ các công cụ cho phép thực hiện tổ chức, lưu trữ, sắp xếp và tìm kiếm dữ liệu trong cơ sở dữ liệu không gian được nhanh chóng và hiệu quả. Hình 1.4: Những điểm nằm trong miền tô sẫm mới được xét đến khi tìm điểm gần nhất cho điểm x. Những điểm ngoài miền không cần xét đến 1.3.3. Phương pháp truy nhập không gian Các phương thức truy nhập không gian (Spatial Access Method - SAM) đã được phát triển để hỗ trợ hiệu quả cho xử lý các truy vấn trong hệ quản lý cơ sở dữ liệu không gian. Phương pháp chia lưới (grid file). Hình 1.5: Một cách chia lưới. Những ô mầu sẫm là những ô chứa dữ liệu và được 5 lưu trữ. Những ô màu trắng là những ô không chứa dữ liệu a. Phương pháp R*-TREE. R*-tree tạo ra một một cây nhị phân một chiều (1- dimensional binary-tree) cho không gian dữ liệu d chiều. Đặc biệt là R*-tree quản lý những khối hình chữ nhật d chiều bằng một mảng một chiều gọi là khoá. Hình 1.6: Mô phỏng một R*-tree gồm 3 mức 1.4. Kết luận Qua chương này, chúng tôi đã trình bày tổng quan về khai phá tri thức trong cơ sở dữ liệu không gian. Tìm hiểu một số khái niệm và các vấn đề liên quan đến khai phá tri thức trong cơ sở dữ liệu, các tính chất và đặc trưng của cơ sở dữ liệu không gian. Chương 2. CÁC CÁCH TIẾP CẬN CỦA KỸ THUẬT PHÂN NHÓM 2.1. Thuật toán DBSCAN Thuật toán phân nhóm dựa trên mật độ thông dụng nhất là thuật toán DBSCAN (Density Based Spatial Clustering of Applicatins with Noise) do Ester, P. Kriegel và J. Sander đề xuất năm 1996. Thuật toán đi tìm các đối tượng mà có số đối tượng láng giềng lớn hơn một ngưỡng tối thiểu. 2.1.1. Các định nghĩa và bổ đề được sử dụng trong thuật toán DBSCAN Định nghĩa 1: Các lân cận của một điểm P với ngưỡng Eps, ký hiệu NEps(p) được xác định như sau: NEps(p) = {q ∈ Dkhoảng cách (p, q) ≤ Eps}, D là tập dữ liệu cho trước Hình 2.1: Lân cận của P với ngưỡng Eps Định nghĩa 2: Mật độ - đến được trực tiếp (directly density-reachable) Một điểm P được gọi là mật độ - đến được trực tiếp từ điểm q với ngưỡng E ps và MinPts trong tập đối tượng D nếu: p ∈ NEps(q) Với NEps(q) là tập con của D || NEps(q) || ≥ MinPts Điều kiện đối tượng nhân. 6 Hình 2.2: Mật độ - đến được trực tiếp Định nghĩa 3: Đến được mật độ (density-reachable) (để ngắn gọn, từ các phần tiếp sau ta gọi là đến được): Một điểm p được gọi là đến được từ một điểm q theo hai tham số Eps và MinPts nếu tồn tại một dãy p = p 1 , p 2 , . . ., p n = q thoả mãn p i+1 là có thể đến được trực tiếp từ p i với i = 1, n -1. Hình 2.3: Mật độ đến được Định nghĩa 4: Mật độ liên thông (density-connected): Đối tượng p là mật độ liên thông với điểm q theo hai tham số Eps với MinPts nếu như có một đối tượng o mà cả hai đối tượng p, q điều là mật độ đến được o theo tham số Eps và MinPts. Hình 2.4: Mật độ liên thông Định nghĩa 5: Nhóm và nhiễu Giả sử D là một tập các điểm dữ liệu. Một tập con C khác rỗng của D được gọi là một lớp (cluster) theo Eps và MinPts nếu thoả mãn hai điều kiện: 1) ∀p, q ∈ D, nếu p ∈ C và q có thể đến được từ p theo Eps và MinPts thì q ∈ C. 2) ∀p, q ∈ C, p liên thông mật độ với q theo Eps và MinPts. Mọi đối tượng không thuộc nhóm nào cả thì gọi là nhiễu Hình 2.5: Nhóm và nhiễu Định nghĩa 6: Dữ liệu nhiễu (noise): Giả sử C 1 , C 2 , . . , C k là các lớp trong tập dữ liệu D theo tham số Eps và MinPts, điểm dữ liệu nhiễu là điểm dữ liệu không thuộc vào lớp nào trong các lớp C 1 , C 2 , , C k tức là Noise = {p ∈ D∀ i = 1 k, p ∉ C i } Tiếp sau là hai bổ đề để chứng minh cho việc chia lớp của chúng ta theo cách trên là hoàn toàn đúng đắn. Bổ đề 1: Giả sử p là một điểm trong D và ||NEps(p)|| ≥ MinPts, tập O = {oo ∈ D} và o có thể đến được từ p theo Eps và MinPts sẽ là một lớp theo Eps và MinPts. 7 [...]... nhiều phương pháp phân nhóm áp dụng vào cơ sở dữ liệu không gian đã không còn phù hợp Luận văn đạt được một số kết quả sau: - Tập trung tìm hiểu một số thuật toán phân nhóm cơ bản dựa vào mật độ phân bố của các đối tượng dữ liệu không gian - Cài đặt thử nghiệm trên một số mẫu dữ liệu không gian, từ đó đưa ra đánh giá về tính hiệu quả của các thuật toán đó Tuy nhiên luận văn còn một số hạn chế và đây... Sự ra đời của một kỹ thuật mới, khai phá tri thức trong dữ liệu, với mục đích nhằm giảm thời gian và công sức của việc xử lý, thu thập và lưu trữ dữ liệu Sự ra đời của kỹ thuật khai phá tri thức trong dữ liệu đã mở ra nhiều hướng nghiên cứu mới, một trong số hướng nghiên cứu đang được quan tâm là phân nhóm (clustering) các dữ liệu Do sự khác nhau giữa cơ sở dữ liệu không gian và cơ sở dữ liệu thường... trong một lận cận phải vượt qua một ngưỡng nào đó Đây là một trong các thuật toán tiêu biểu và có hiệu quả đối các dữ liệu không gian có hình dạng tuỳ ý và tồn tại nhiễu Chương 3 CÁC GIẢI THUẬT PHÂN NHÓM TRÊN CƠ SỞ DỮ LIỆU KHÔNG GIAN LỚN 3.1 Một số khái niệm cần thiết khi tiếp cận phân nhóm dữ liệu 3.1.1 Phân loại các kiểu dữ liệu Cho một CSDL D chứa n đối tượng trong không gian k chiều trong đó x, y,... hiện công việc này ta cần xây dựng một số chức năng cho phép hiển thị kết quả dưới dạng ảnh và lưu trữ chúng dưới dạng các file ảnh 4.5 Đánh giá kết quả trên một số tập dữ liệu 4.5.1 Tập dữ liệu Trong cộng đồng nghiên cứu về phân nhóm, người ta đã đưa ra một số tập dữ liệu dùng để kiểm chứng tính hiệu quả của một số thuật toán phân nhóm Tập dữ liệu 1: Bao gồm các dữ liệu có hình dạng bất kỳ chứa lõm,... 4.4.2 Tạo lập dữ liệu Bộ tạo lập dữ liệu có tác dụng chuẩn bị dữ liệu là đầu vào cho các thuật toán Bộ phận này cho phép đọc dữ liệu từ các file bitmap hoặc soạn thảo các ảnh bitmap dữ liệu 4.4.3 Cài đặt thuật toán phân nhóm a Xác định khoảng cách giữa các đối tượng Trong chương trình đánh giá các thuật toán với dữ liệu đầu vào ở dạng ảnh không gian 2 chiều, mỗi điểm đối tượng trong không gian được biểu... trúc dữ liệu trong bước 1, ta có thể tính toán một cách hiệu quả hàm mật độ địa phương f D ( x ) Với mỗi x ∈ c và c, c1 ∈ Cr , xét tập near(x) = {xi∈c1 d(mean(c1,x) ≤ kδ và ∃connection(c1, c)) 2.4 Kết luận Trong chương này, tìm hiểu một số thuật toán phân nhóm cơ bản dựa vào mật độ phân bố dữ liệu trong không gian như DBSCAN, DBCLASD và DENCLUE Các thuật toán này dựa vào ý tưởng là các điểm trong một. .. được xử lý mà không phải dựa vào toàn bộ lớp hoặc cả cơ sở dữ liệu 2.3 Thuật toán DENCLUE Hầu hết các giải thuật phân nhóm đều gặp phải vấn đề về tốc độ tính toán và độ chính xác của kết quả Nhiễu (noise) thường xuất hiện trong các cơ sở dữ liệu không gian đa chiều, lớn và là nguyên nhân chính ảnh hưởng đến tốc độ tính toán và kết quả thu được Vì vậy, để giải quyết các vấn đề trên, giải thuật DENCLUE... khi tất cả các đối tượng được xử lý Hình 3.7: Thuật toán DBSCAN 17 3.4 Kết luận Chương này trình bày vắn tắt về các giải thuật trong phân nhóm dữ liệu, trong đó đi sâu vào tìm hiểu về 2 giải thuật toán phân nhóm dữ liệu điển hình: K-MEANS, DBSCAN Chương 4 XÁC ĐỊNH THAM SỐ, CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 4.1 Môi trường thử nghiệm Thành phần Chỉ số CPU RAM HDD Hệ điều hành Intel core i3-2330M... liệu có mật độ nhỏ của cơ sở dữ liệu để đưa ra tham số toàn cục, vì vậy trong trường hợp mật độ các điểm dữ liệu giữa các lớp là không đồng đều như các tập dữ liệu ở hình 4.9 (H1) (H2) (H3) Hình 4.9 Các tập dữ liệu với mật độ phân bố khác nhau giữa các lớp (nhóm) 4.3.2 Tối ưu hoá việc lựa chọn các tham số σ và ξ cho thuật toán DENCLUE Một cách trực quan, ta thấy kết quả của thuật toán DENCLUE đưa ra phụ... dữ liệu 1 khi hình dạng của các lớp lồng vào nhau DBSCAN vẫn cho kết quả phù hợp Thuật toán DBCLASD các kết quả được đưa ra bởi thuật toán là tương đối tốt Thuật toán có khả năng phân biệt được các lớp có hình dạng phức tạp, phân biệt được các điểm nhiễu Từ nhận xét ở trên chúng tôi có thể đưa ra các kết luận như sau: Thuật toán K-MEANS đại diện cho lớp các thuật toán phân nhóm dựa vào phân hoạch Thuật