1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

96 654 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 96
Dung lượng 1,45 MB

Nội dung

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

Trang 1

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

LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ

THÁI NGUYÊN - 2014

Trang 2



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

LUẬN VĂN THẠC SĨ KỸ THUẬT

PHÕNG QUẢN LÝ ĐÀO TẠO

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi, các số liệu, kết quả nêu trong luận văn này là trung thực và là công trình nghiên cứu của riêng tôi, luận văn này không giống hoàn toàn bất cứ luận văn hoặc các công trình đã có trước đó

Thái Nguyên, ngày 24 tháng 02 năm 2014

Tác giả luận văn

Khổng Minh Tự

Trang 4

LỜI CẢM ƠN

Trong suốt quá trình học tập và tốt nghiệp, tôi đã nhận được sự giúp đỡ tận tình của các thầy cô trong Khoa Điện tử - Trường Đại học Kỹ thuật Công nghiệp - Đại học Thái Nguyên Tôi xin bày tỏ lòng biết ơn đối với các thầy cô giáo và Phòng Đào tạo sau đại học vì sự giúp đỡ tận tình này Tôi đặc biệt muốn cảm ơn

PGS.TS Lương Chi Mai đã tận tình giúp đỡ, hướng dẫn tôi trong thời gian thực

hiện đề tài, cảm ơn sự giúp đỡ của gia đình, bạn bè và các đồng nghiệp trong thời gian qua

Mặc dù đã cố gắng, song do điều kiện thời gian và kinh nghiệm thực tế còn nhiều hạn chế nên không thể tránh khỏi thiếu sót Vì vậy, tôi rất mong nhận được

sự đóng góp ý kiến của các thầy cô cũng như của các bạn bè, đồng nghiệp

Tôi xin chân thành cảm ơn!

Tác giả luận văn

Khổng Minh Tự

Trang 5

LỜI NÓI ĐẦU

Trong thời đại bùng nổ Công nghệ thông tin, các công nghệ lưu trữ dữ liệu ngày càng phát triển nhanh chóng tạo điều kiện cho các đơn vị thu thập dữ liệu nhiều hơn và tốt hơn Đặc biệt trong lĩnh vực quản lý, kinh doanh, các doanh nghiệp

đã nhận thức được tầm quan trọng của việc nắm bắt và xử lí thông tin Tất cả lí do

đó khiến cho các cơ quan, đơn vị và các doanh nghiệp đã tạo ra một lượng dữ liệu khổng lồ cỡ Gigabyte thậm chí là Terabyte cho riêng mình Các kho dữ liệu ngày càng lớn và tiềm ẩn nhiều thông tin có ích Sự bùng nổ đó dẫn tới một yêu cầu cấp thiết là phải có những kĩ thuật và công cụ mới để biến kho dữ liệu khổng lồ kia thành những thông tin (tri thức) cô đọng và có ích

Tuy nhiên ngay cả khi đã có những công cụ phù hợp để lưu trữ và quản lý các dạng thông tin nói trên, thì để nhận được những thông tin có ích đối với dạng CSDL loại này, các biện pháp phân tích dữ liệu thông thường cũng gặp rất nhiều khó khăn, đôi khi là không thể giải quyết được Đó chính là cơ sở cho sự xuất hiện của kỹ thuật khai phá dữ liệu

Tác giả xin bày tỏ lòng biết ơn chân thành đến các thầy cô giáo, đặc biệt là cô giáo hướng dẫn: PGS.TS Lương Chi Mai đã tận tình giúp đỡ để hoàn thành luận văn này

Trong khuôn khổ giới hạn của luận văn cùng khả năng kiến thức và thời gian nghiên cứu còn hạn chế, nên mặc dù đã có nhiều cố gắng song luận văn chắc chắn không tránh khỏi những thiếu sót Tác giả mong nhận được sự đóng góp ý kiến của các thầy giáo, cô giáo để đề tài được hoàn thiện hơn

Xin trân trọng cảm ơn!

HỌC VIÊN

Khổng Minh Tự

Trang 6

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

LỜI NÓI ĐẦU iii

MỤC LỤC iv

BẢNG THUẬT NGỮ VIẾT TẮT vii

DANH MỤC CÁC HÌNH viii

MỞ ĐẦU 1

Chương 1 TỔNG QUAN VỀ KHAI PHÁ TRI THỨC VÀ CƠ SỞ DỮ LIỆU KHÔNG GIAN 6

1.1 Khai phá tri thức trong cơ sở dữ liệu (Knowledge Discovery in Databases - DD) 6

1.1.1 Sự ra đời của khai phá tri thức trong cơ sở dữ liệu 6

1.1.2 Khái niệm khai phá dữ liệu 7

1.1.3 Quá trình khai phá tri thức trong cơ sở dữ liệu 7

1.1.4 Các nhiệm vụ của khai phá dữ liệu 8

1.2 Phân nhóm (Clustering) và các cách tiếp cận chính 9

1.2.1 Phân nhóm và các ứng dụng 9

1.2.2 Các cách tiếp cận chính 11

1.3 Hệ quản trị cơ sở dữ liệu không gian 16

1.3.1 Cơ sở dữ liệu không gian 16

1.3.2 Hệ quản trị cơ sở dữ liệu không gian 17

1.3.3 Phương pháp truy nhập không gian 18

1.4 Kết luận 20

Chương 2 CÁC CÁCH TIẾP CẬN CỦA KỸ THUẬT PHÂN NHÓM 21

2.1 Thuật toán DBSCAN 21

2.1.1 Các định nghĩa và bổ đề được sử dụng trong thuật toán DBSCAN 22

Trang 7

2.2 Thuật toán DBCLASD 27

2.2.1 Một số định nghĩa 27

2.2.2 Thuật toán DBCLASD 30

2.3 Thuật toán DENCLUE 34

2.3.1 Một số định nghĩa 35

2.3.2 Những tính chất của phương pháp DENCLUE 37

2.3.3 Thuật toán DENCLUE 38

2.4 Kết luận 43

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 44

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 44

3.1.1 Phân loại các kiểu dữ liệu 44

3.1.2 Độ đo tương tự và phi tương tự 45

3.2 Thuật toán K-MEANS 49

3.3 Giải thuật DBSCAN 53

3.4 Kết luận 55

Chương 4 XÁC ĐỊNH THAM SỐ, CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 56

4.1 Môi trường thử nghiệm 56

4.2 Công cụ thử nghiệm 56

4.3 Xác định tham số 56

4.3.1 Xác định tham số cho thuật toán DBSCAN 56

4.3.2 Tối ưu hoá việc lựa chọn các tham số và cho thuật toán DENCLUE 62

4.4 Cài đặt thử nghiệm và đánh giá kết quả 63

4.4.1 Xây dựng chương trình cài đặt thuật toán phân nhóm 63

4.4.2 Tạo lập dữ liệu 64

4.4.3 Cài đặt thuật toán phân nhóm 65

4.4.4 Lưu trữ và hiển thị kết quả 73

4.5 Đánh giá kết quả trên một số tập dữ liệu 74

Trang 8

4.5.1 Tập dữ liệu 74

4.5.2 Đánh giá kết quả 75

4.5.3 Nhận xét 79

4.6 Kết luận 81

KẾT LUẬN 82

TÀI LIỆU THAM KHẢO 84

Trang 9

BẢNG THUẬT NGỮ VIẾT TẮT

Khai phá tri thức trong cơ sở dữ liệu KDD Knowledge Discovery in Databases

Trang 10

DANH MỤC CÁC HÌNH

Hình 1.1: Các bước trong quá trình khám phá tri thức KDD 8

Hình 1.2: Biểu đồ Hertzsprung-Russell 10

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 14

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 17

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 lưu trữ Những ô màu trắng là những ô không chứa dữ liệu 19

Hình 1.6: Mô phỏng một R*-tree gồm 3 mức 20

Hình 2.1: Lân cận của P với ngưỡng Eps 22

Hình 2.2: Mật độ - đến được trực tiếp 23

Hình 2.3: Mật độ đến được 23

Hình 2.4: Mật độ liên thông 24

Hình 2.5: Nhóm và nhiễu 24

Hình 2.6: Mô phỏng thuật toán DBSCAN 25

Hình 2.7: Thủ tục ExpandCluster 26

Hình 2.8: Ví dụ dữ liệu tập các điểm được chia thành 2 lớp 27

Hình 2.9: Ảnh hưởng của độ rộng ô lưới đến việc xác định vùng xấp xỉ 29

Hình 2.11: Ví dụ một cách chia và đánh số trong không gian hai chiều 40

Hình 3.1: Minh họa số đo chiều rộng, chiều cao một đối tượng 46

Hình 3.2: Khoảng cách Euclidean 48

Hình 3.3: Các thiết lập để xác định ranh giới các nhóm ban đầu 49

Hình 3.4: Tính toán trọng tâm của các nhóm mới 50

Hình 3.5: Ví dụ các bước của thuật toán K-means 52

Hình 3.6: Một số hình dạng khám phá bởi phân nhóm dưa trên mật độ 54

Hình 3.7: Thuật toán DBSCAN 54

Trang 11

Hình 4.2: Đồ thị khoảng cách với k = 4 Dựa vào đồ thị khoảng cách đó ta có

thể đưa ra được khoảng cách Eps một cách chính xác 57

Hình 4.3: Tập các dữ liệu được biểu diễn trong toạ độ 2 chiều 59

Hình 4.4: Đồ thị k-dist (k = 3) 59

Hình 4.5 60

Hình 4.6 60

Hình 4.7 60

Hình 4.8 61

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 61

Hình 4.10: Đồ thị mô tả sự phụ thuộc m( ) vào 62

Hình 4.11: Sơ đồ thực hiện chương trình 63

Hình 4.12: Tập dữ liệu lấy từ nguồn tài liệu 74

Hình 4.13: Tập dữ liệu lấy từ nguồn tài liệu 75

Hình 4.14: Tập dữ liệu lấy từ nguồn tài liệu 75

Hình 4.15: Tập dữ liệu ban đầu 75

Hình 4.16a 76

Hình 4.16 b 76

Hình 4.16 c 76

Hình 4.17 a 77

Hình 4 17 b 77

Hình 4.17 c 78

Hình 4.18 a 78

Hình 4.18 b 79

Trang 12

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 Vì vậy, các chuyên gia công nghệ thông tin cho rằng hiện nay chúng ta đang sống trong một xã hội mà “rất giàu thông tin nhưng nghèo tri thức” Trước hiện trạng đó, đòi hỏi phải phát triển các phương pháp khai phá, phát hiện ra những tri thức có ích tiềm ẩn trong các kho dữ liệu khổng lồ kia để phục vụ tốt hơn cho công việc quyết định của các nhà quản lý

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

Khai phá dữ liệu (Data Mining) là một lĩnh vực khoa học liên ngành mới xuất hiện gần đây nhằm đáp ứng nhu cầu này Các kết quả nghiên cứu cùng với những ứng dụng thành công trong khai phá dữ liệu, khám phá tri thức cho thấy khai phá dữ liệu là một lĩnh vực khoa học tiềm năng, mang lại nhiều lợi ích, đồng thời có

ưu thế hơn hẳn so với các công cụ phân tích dữ liệu truyền thống

Một trong các kỹ thuật khai phá dữ liệu đang được quan tâm nghiên cứu đó

là kỹ thuật phân nhóm (clustering) Thật vậy, trong một vài thập kỷ qua, phân nhóm

Trang 13

được sử dụng rộng rãi trong các lĩnh vực như nhận dạng (pattern recognition), phân tích dữ liệu (data analysis) và xử lý ảnh (image processing) Hiện nay, phân nhóm

dữ liệu là một hướng được nghiên cứu rất nhiều trong Tin học Tuy nhiên, các giải thuật phân nhóm được biết trước đây có một số hạn chế khi áp dụng vào các cơ sở

dữ liệu không gian lớn [10]

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, …

Và từ đó, một mô hình cơ sở dữ liệu được quan tâm nhất hiện nay chính là mô hình

cơ sở dữ liệu không gian (SDB – Spatial Database) được sử dụng cho xử lý và lưu trữ dữ liệu không gian, chẳng hạn như dữ liệu bản đồ, dữ liệu, dữ liệu của lĩnh vực khí tượng thuỷ văn, quân sự, multimedia, … và đặc biệt là trong lĩnh vực viễn thông Thuật ngữ dữ liệu không gian (spatial data) được sử dụng theo nghĩa rộng, bao gồm các phần tử dữ liệu (bản ghi) mô tả cho mỗi đối tượng mà trong đó bao hàm 2 thành phần: thành phần thông tin về không gian (vị trí địa lý, vùng, toạ độ,

… ) và thành phần còn lại là các thuộc tính khác của đối tượng Mối quan hệ giữa thuộc tính không gian và thuộc tính phi không gian liên kết rất chặt chẽ và có thể dựa vào thuộc tính chất không gian để đưa ra được thuộc tính phi không gian và ngược lại Ví dụ như dựa vào tính chất về tỷ lệ người thất nghiệp của một điểm dữ liệu, chúng ta có thể đưa ra được dự đoán về vị trí của điểm đó (trung tâm thành phố, nông thôn, miền núi, …) Hoặc dựa vào vị trí của điểm đó với các điểm trung tâm thành phố, chúng ta có thể đưa ra được tỷ lệ thất nghiệp với một mức độ chính xác nhất định Một ví dụ khác là mức độ mưa giữa các vùng, miền trên lãnh thổ (lĩnh vực khí tượng) cũng được lưu trữ trong cơ sở dữ liệu sau nhiều năm như một kho dữ liệu không gian

Trang 14

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ể Dữ liệu mô

tả cho các cuộc đàm thoại này cũng mang tính chất của dữ liệu không gian Thuộc tính không gian của nó có thể là tỉnh, vùng, cell, … và thuộc tính phi không gian có thể bao gồm: thời điểm của cuộc thoại, thời gian đàm thoại, thuê bao, … Với kho

dữ liệu khổng lồ được lưu trữ về các cuộc thoại, một vấn đề đặt ra là liệu có tri thức nào để trả lời cho những câu hỏi dạng như:

- Mối quan hệ giữa vùng và thời gian của các cuộc thoại?

- Mối quan hệ của các cuộc đàm thoại giờ thấp điểm và thời gian đàm thoại?

- Vùng của các cuộc thoại có tỉ lệ diễn ra nhiều?

- …

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 Nó có thể giúp cho các nhà lãnh đạo

ra các quyết định đúng đắn hơn trong chiến lược đầu tư, phát triển và điều phối hay vận hành hệ thống mạng viễn thông một cách hiệu quả

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 (dựa trên tập dữ liệu trong các tài liệu tham khảo)

- Đưa ra bảng so sánh giữa các thuật toán

- Tìm cách xây dựng các tham số cho các thuật toán

Trang 15

- 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, … Trong đó, giai đoạn khai phá dữ liệu là giai đoạn chính trong quá trình khai phá tri thức trong cơ sở dữ liệu Có rất nhiều phương pháp khai phá dữ liệu như phân lớp, phân nhóm, phát hiện luật kết hợp, … Mỗi phương pháp có những đặc điểm riêng phù hợp với một lớp các bài toán, các dạng dữ liệu và miền dữ liệu nhất định

Đối với dữ liệu không gian, phương pháp đang được quan tâm nghiên cứu là phương pháp phân nhóm (clustering) Đây là một bài toán quan trọng của lĩnh vực tìm kiếm tri thức trong cơ sở dữ liệu không gian lớn và phải được giải quyết trước tiên

Hiện nay nhiều nhà khoa học đã đưa ra nhiều giải thuật phân nhóm, tuy nhiên không cho ra kết quả tốt trong trường hợp kích thước dữ liệu lớn, có hình dạng phức tạp và có cả nhiễu

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 Trong lĩnh vực viễn thông, là lĩnh vực phát triển mạnh mẽ và lượng thông tin trao đổi cực lớn, dữ liệu lưu trữ đồ sộ Giải quyết được bài toán phân nhóm dữ liệu không gian là giải quyết được bài toán lớn trong việc hỗ trợ quyết định của nhiều lĩnh vực quản lý, đặc biệt là trong lĩnh vực viễn thông Cho

Trang 16

phép các nhà lãnh đạo quản lý có những chiến lược đúng đắn, kịp thời trong việc điều hành các hoạt động của hệ thống như đầu tư, vận hành, cũng cấp các dịch vụ, nâng cấp, biến đổi đơn vị mang tính cạnh tranh, …

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ả

Trang 17

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 Bên cạnh đó việc tin học hóa một cách ồ

ạt và nhanh chóng các hoạt động sản xuất, kinh doanh cũng như nhiều lĩnh vực hoạt động khác đã tạo ra cho chúng ta một lượng dữ liệu lưu trữ khổng lồ Hàng triệu CSDL đã được sử dụng trong các hoạt động sản xuất, kinh doanh, quản lí…, trong

đó có nhiều CSDL cực lớn cỡ Gigabyte, thậm trí là Terabyte Sự bùng nổ này đã dẫn tới một yêu cầu cấp thiết là cần có những kỹ thuật và công cụ mới để tự động chuyển đổi lượng dữ liệu khổng lồ kia thành các tri thức có ích

Sự phát triển nhanh chóng của một lượng lớn dữ liệu được thu thập và lưu trữ trong các cơ sở dữ liệu lớn đã vượt ra ngoài khả năng của con người để có thể hiểu hết được chúng nếu không có những công cụ hỗ trợ tốt Kết quả là, dữ liệu thu thập được trong một lượng lớn cơ sở dữ liệu đã trở thành những đống dữ liệu mà ít khi được xem xét đến Do vậy, việc đưa ra những quyết định thường không dựa vào những thông tin hoặc dữ liệu thu thập được mà chỉ dựa vào nhận thức, suy đoán của người đưa ra quyết định, đơn giản là vì họ không có những công cụ giúp cho việc lấy ra những tri thức từ lượng lớn dữ liệu Tình huống này đã đặt chúng ta trong hoàn cảnh nhiều dữ liệu nhưng thiếu thông tin, thiếu tri thức Với một khối lượng lớn dữ liệu như vậy rõ ràng là các phương pháp thủ công truyền thống áp dụng để phân tích dữ liệu như chia bảng hoặc ngôn ngữ truy vấn ad-hoc đã không thể áp dụng được nữa Dẫn đến nhu cầu về một kỹ thuật mới có các đặc tính thông minh

Trang 18

và khả năng tự động để hỗ trợ con người tìm kiếm thông tin hữu ích trong một núi

dữ liệu lộn xộn Kỹ thuật đó được gọi là khai phá tri thức trong cơ sở dữ liệu (Knowledge Discovery in Database - KDD)

Khai phá tri thức trong cơ sở dữ liệu được định nghĩa bởi Fayyad như sau:

“Knowledge discovery in databases is the non-trivial process of identifying valid, novel, potentially, and ultimately understandable patterns in data” (Khai phá tri thức trong cơ sở dữ liệu là một quá trình không tầm thường của việc xác định các mẫu mới

lạ, có giá trị, có hiệu quả sử dụng và cơ bản hiểu được trong cơ sở dữ liệu) [4], [11]

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….Hiện nay, ngoài thuật ngữ khai phá dữ liệu, người ta còn dùng một số thuật ngữ khác có ý nghĩa tương tự như: Khai phá tri thức từ CSDL, trích lọc dữ liệu, phân tích dữ liệu mẫu, khảo cổ dữ liệu, nạo vét dữ liệu Nhiều người coi Khai phá dữ liệu và một thuật ngữ thông dụng khác là Phát hiện tri thức trong CSDL (Knowledge Discovery

in Databases - KDD) là như nhau Tuy nhiên trên thực tế, khai phá dữ liệu chỉ là một bước thiết yếu trong quá trình Phát hiện tri thức trong CSDL Có thể nói Data Mining là giai đoạn quan trọng nhất trong tiến trình Phát hiện tri thức từ cơ sở dữ liệu, các tri thức này hỗ trợ trong việc ra quyết định trong khoa học và kinh doanh

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

Trang 19

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 Giải quyết các xung đột tiềm tàng trong tri thức khai thác được

Hình 1.1: Các bước trong quá trình khám phá tri thức KDD

Khai phá dữ liệu (Data mining) chỉ là một bước trong quá trình khai phá tri thức trong cơ sở dữ liệu Tuy nhiên đây là giai đoạn đóng vai trò quan trọng nhất,

có ảnh hưởng rất lớn đến chất lượng cũng như hiệu quả của toàn bộ quá trình khai phá tri thức trong cơ sở dữ liệu (Knowledge Discovery in Databases - KDD)

1.1.4 Các nhiệm vụ của khai phá dữ liệu

Nhìn chung, mục đích chính của khai phá dữ liệu là dự đoán (prediction) và

mô tả (description) Dự đoán là việc sử dụng các biến hoặc các trường trong cơ sở

dữ liệu để đưa ra dự đoán về những giá trị chưa biết hoặc những giá trị chờ đợi trong tương lai Mô tả tập trung vào việc tìm kiếm các mẫu mô tả dữ liệu mà con người có thể hiểu được

Để đạt được hai mục đích này, nhiệm vụ chính của khai phá dữ liệu gồm:

Trang 20

Phân lớp (Classification), hồi quy (Regression), phân nhóm (Clustering), tóm tắt (Summarization), mô hình hoá phụ thuộc (Dependency modeling), phát hiện sự thay đổi và lạc hướng (Change and deviation detection)

Phân lớp là phân loại một mẫu dữ liệu vào một trong số các lớp đã xác định Hồi quy là việc học một hàm ánh xạ từ một mẫu dữ liệu thành một biến dự đoán có giá trị thực (real -valued prediction variable) Phân nhóm là việc mô tả chung để tìm

ra tập xác định các nhóm hay các loại để mô tả dữ liệu Tổng kết liên quan đến các phương pháp tìm kiếm mô tả tóm tắt cho một tập con dữ liệu Mô hình hoá phụ thuộc bao gồm việc tìm kiếm một mô hình mô tả sự phụ thuộc đáng kể giữa các biến Phát hiện sự thay đổi và lạc hướng bao gồm khai thác những thay đổi đáng kể trong dữ liệu từ các giá trị chuẩn hoặc được đo trước đó.[3]

Trong các phương pháp trên, phân nhóm được sử dụng rộng rãi nhất và đôi khi được coi là tiền xử lý dữ liệu cho những phương pháp khác Vì thế khi cần xây dựng một ứng dụng cho KDD vào thực tế vấn đề đầu tiên người ta phải quan tâm tới là chia dữ liệu thành từng nhóm Việc phân nhóm giúp cho chúng ta có cái nhìn tổng quan hơn về từng khối dữ liệu Đặc biệt khi việc phân nhóm tốt, thời gian xem xét cơ sở dữ liệu được giảm xuống bởi vì chúng ta không nhất thiết phải tìm kiếm trong toàn bộ cơ sở dữ liệu mà chỉ phải tìm kiếm ở một lớp (nhóm) các dữ liệu trong cơ sở dữ liệu lớn

1.2 Phân nhóm (Clustering) và các cách tiếp cận chính

Trang 21

Không giống như trong quá trình phân loại (classification), ta thường biết trước tính chất hay đặc điểm của các đối tượng trong cùng một lớp và dựa vào đó để

ấn định một đối tượng mới vào lớp của nó Thay vào đó, trong quá trình phân nhóm

ta không hề biết trước tính chất của các lớp mà phải dựa vào mối quan hệ giữa các đối tượng để tìm ra sự giống nhau giữa các đối tượng theo một độ đo nào đó đặc trưng cho mỗi lớp

Một ví dụ cho việc phân nhóm để tìm hiểu về các vì sao và nhiệt độ của nó Biểu đồ trên hình 1.2 được gọi là biểu đồ Hertzsprung-Russell với trục tung là độ sáng và trục hoành là nhiệt độ (theo độ K)

Hình 1.2: Biểu đồ Hertzsprung-Russell

Có thể thấy được rằng những ngôi sao trong biểu đồ thuộc vào một trong 3 lớp và trong mỗi lớp mối quan hệ giữa nhiệt độ và độ sáng là như nhau Giữa các lớp khác nhau mối quan hệ đó cũng khác nhau [4]

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 Việc phân tích lớp đã được sử dụng rộng rãi trong các ứng dụng của nhiều lĩnh vực, bao gồm nhận dạng mẫu, phân tích dữ liệu, xử lý ảnh và phân tích thị trường Trong kinh doanh, phân nhóm có thể giúp các nhà nghiên cứu thị trường phát hiện được các nhóm khách hàng khác nhau và đặc tính của từng nhóm khách hàng dựa vào dữ liệu mua bán Trong sinh học, phân nhóm được dùng để chia nhóm các loài thực vật và động vật, phân loại gen có chức năng tương tự nhau và có được

Trang 22

những thông tin chi tiết hơn về cấu trúc các vùng dân cư Phân nhóm cũng giúp cho việc nhận dạng các mẫu đất giống nhau dựa trên cơ sở dữ liệu quan sát trái đất, phân chia các nhóm nhà trong thành phố theo các tiêu chí như giá trị, vị trí địa lý của ngôi nhà Đồng thời phân nhóm còn sử dụng để phân chia các nhóm tài liệu trên Web dựa vào nội dung thông tin

Với vai trò là chức năng trong khai phá dữ liệu, phân tích lớp có thể sử dụng như là một công cụ độc lập để thu thập thông tin về sự phân bố dữ liệu, để quan sát các đặc tính của một lớp nhờ đó tập trung được vào từng lớp cụ thể cho các bước phân tích sau Ngoài ra, phân nhóm cũng là một bước tiền xử lý dữ liệu cho nhiều thuật toán như là phát hiện các đặc tính và phân loại dữ liệu trong đó các thuật toán này thường đòi hỏi thực hiện trên các lớp đã được phát hiện

Phân nhóm không bao giờ được sử dụng độc lập mà nó thường được sử dụng kèm với các phương pháp khác Khi một cách phân nhóm được đưa ra cũng phải có

một phương pháp áp dụng trên các lớp đó để đưa ra được ý nghĩa của lớp đó.[4]

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 Tuy nhiên các kỹ thuật phân nhóm được chia thành các cách tiếp cận chính sau: Phương pháp phân hoạch, phương pháp phân cấp, phương pháp dựa vào mật độ, phương pháp chia lưới, phương pháp dựa vào mô hình

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 Sau đó với mỗi một điểm

dữ liệu tìm cách đưa điểm dữ liệu đó vào lớp thích hợp nhất Các thuật toán điển hình là: K-MEANS, K-MEDOID, CLARANS,

Thuật toán phân hoạch K-MEANS [11]

Thuật toán phân nhóm K-MEANS là một phương pháp được sử dụng rất rộng rãi trong thực tế và nó có thể được biến đổi để thích hợp cho từng bài toán cụ thể Phương pháp này được J B MacQueen đưa ra vào năm 1967

Trang 23

Bước 1: Chọn k điểm dữ liệu làm điểm tâm (center) hay nhân (seed) (ví dụ

như thuật toán MacQueen là lấy k điểm dữ liệu đầu tiên) Trong những trường hợp tổng quát, việc chọn nhân là những điểm có khoảng cách không gian giữa chúng lớn

có thể đáp ứng được việc phân nhóm tốt hơn

Bước 2: Xác định các điểm dữ liệu còn lại vào các lớp sao cho việc chia đó

là thích hợp nhất Điều đó có thể thực hiện một cách đơn giản bằng cách chia điểm

dữ liệu đó vào lớp nào gần với nó nhất Khoảng cách đó được đo bằng chính khoảng cách từ điểm đó tới nhân của lớp

Bước 3: Tính lại điểm tâm của các lớp Một cách đơn giản để tính lại điểm

tâm của lớp là xác định trung bình cộng của tất cả các điểm trong lớp

Lặp lại quá trình trên bắt đầu từ bước 2 cho đến khi không có sự thay đổi về lớp của các điểm dữ liệu (nghĩa là điểm tâm sẽ không thay đổi trong một sai số cho phép)

Có thể mô tả thuật toán K-means như sau:

Thuật toán phân hoạch CLARANS [4]

Thuật toán CLARANS (Clustering Large Applications based on Randomized

Search) là sự cải tiến của thuật toán K-MEANS với việc tìm k điểm nhân được xác

định một cách ngẫu nhiên và thuật toán tìm biên đã làm tăng hiệu quả của việc phân nhóm và do vậy thuật toán này thường được sử dụng khi xử lý dữ liệu lớn Để có

Trang 24

được một chương trình hiệu quả về thời gian thực hiện thuật toán CLARANS đã có những sửa đổi sau:

1 Một lớp chỉ cần tính lại tâm nếu như có sự thêm hoặc bớt điểm vào lớp và cách tính tâm đó có thể được xác định như sau:

 Khi thêm một điểm (xp, yp) vào lớp

) 1 /(

)

* (

) 1 /(

)

* (

n y y n y

n x x n x

p oldt New

p oldt New

 Khi bớt một điểm (xp, yp) trong lớp

) 1 /(

)

* (

) 1 /(

)

* (

n y y n y

n x x n x

p oldt New

p oldt New

với n là số điểm trong lớp, (xold, yold) là tâm cũ và (xNew, yNew) là tâm mới

2 Khi có một tâm của một lớp thay đổi

 Đối với những điểm trong lớp nếu khoảng cách từ điểm đó tới tâm mới lớn hơn khoảng cách đến tâm cũ thì kiểm tra xem có thể chuyển điểm đó sang lớp khác hay không Nếu có thể, thực hiện việc chuyển

 Đối với những điểm ngoài lớp, nếu khoảng cách từ điểm đó tới tâm mới ngắn hơn khoảng cách đến tâm hiện tại thì thực hiện việc chuyển điểm đó tới lớp mới

Ưu điểm của thuật toán K-MEANS (hoặc thuật toán CLARANS) là rất đơn giản, dễ hiểu và dễ áp dụng Tuy nhiên, nhược điểm của K-MEANS (hay CLARANS) là tốc độ khi áp dụng với cơ sở dữ liệu lớn Thêm vào nữa, những thuật toán trên không thể làm việc với cơ sở dữ liệu có tồn tại dữ liệu nhiễu

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) Chất lượng và hiệu quả của phương pháp tùy thuộc

vào quyết định ghép hoặc chia lớp

Trang 25

 Phân nhóm theo phương pháp từ dưới lên

Phân nhóm theo phương pháp từ dưới lên dựa vào độ đo khoảng cách giữa hai lớp ở mỗi bước để quyết định ghép hai lớp đó hay không Khởi tạo số lớp bằng số điểm dữ liệu, mỗi một lớp chỉ có duy nhất một điểm dữ liệu (nếu cơ sở dữ liệu có N điểm dữ liệu thì ban đầu sẽ có N lớp) Sau đó, tại một bước ghép hai lớp có khoảng cách nhỏ nhất (hay mức độ tương tự giữa chúng là lớn nhất) Thực hiện như vậy

N-1 bước, chúng ta được duy nhất một lớp

Lớp sau khi thực hiện N-1 bước được tạo thành gọi là lớp gốc Cùng với cây mới tạo được chúng ta có thể chọn k lớp thích hợp nhất cho bài toán bằng cách cho vào một tham số để kết thúc việc ghép lớp Cách làm này đưa đến một bài toán nhỏ hơn đó là phải đo được khoảng cách giữa hai lớp Hình 1.3 mô tả việc phân nhóm

có thứ bậc theo kiểu bottom-up có hình dạng như một cây được xây dựng dần từ dưới lên gốc

 Phân nhóm theo phương pháp trên xuống

Phân nhóm theo phương pháp trên xuống thực hiện quá trình ngược lại với phương pháp trước, tại mỗi bước sẽ quyết định chia một lớp hay không Khởi tạo ban đầu chỉ có một lớp gồm tất cả các điểm dữ liệu trong cơ sở dữ liệu, quá trình thực hiện tương tự như việc xây dựng một cây bắt đầu từ gốc Chúng ta tìm cách chia mỗi nút gốc (nút cha) thành hai nút con (trong các thuật toán mở rộng, số nút con tách ra của một nút có thể lớn hơn hai) Quá trình chia được thực hiện cho đến khi thoả mãn điều kiện về lớp đưa vào hoặc đến khi mỗi lớp chỉ gồm 1 đối tượng

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

Trang 26

Khó khăn của phương pháp phân cấp là việc chọn lựa điểm để thực hiện quá trình ghép hoặc chia lớp bởi quá trình tiếp theo sẽ thực hiện tiếp trên lớp đã được tạo ra Khi đã đưa ra quyết định chia hoặc ghép lớp ta không thể thực hiện lại do vậy một điểm đã thuộc lớp này sẽ không thể chuyển sang lớp khác Tuy nhiên điều này cũng có ưu điểm là tăng thời gian tính toán do không phải thực hiện chuyển đổi nhiều lần một đối tượng Để khắc phục nhược điểm của phương pháp phân cấp một

số thuật toán đã đưa ra các cách tiếp cận khác nhau:

 Thực hiện phân tích kỹ mối liên kết giữa các đối tượng tại mỗi bước phân hoạch, cách tiếp cận này được thực hiện trong thuật toán CURE [11] và CHAMELEON [11], [8]

 Kết hợp giữa phân cấp từ dưới lên với quá trình lặp phân hoạch lại bằng cách lúc đầu thực hiện phân cấp để tìm ra số các lớp, sau đó thực hiện quá trình lặp nhằm phân bố lại các đối tượng giữa các lớp cho thích hợp Một trong những thuật toán sử dụng cách tiếp cận này là thuật toán BIRCH [11],[9]

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 Do vậy các phương pháp này chỉ tìm được các lớp có hình dạng đơn giản và sẽ gặp khó khăn khi cần tìm các lớp với hình dạng bất kỳ Phương pháp phân nhóm dựa vào mật độ có khả năng phát hiện các lớp với hình dạng bất kỳ Ý tưởng chính của phương pháp là xây dựng một lớp khi mật độ của các điểm trong một lớp lớn hơn một ngưỡng nào đó, nếu các điểm có mật độ nhỏ hơn ngưỡng các điểm đó sẽ được coi là nhiễu Một số các thuật toán tiêu biểu của phương pháp này là thuật toán DBSCAN [5], OPTICS [12], DENCLUE [7]

d Phương pháp dựa vào chia lưới (Grid-based methods)

Phương pháp chia lớp dựa vào chia lưới sử dụng cấu trúc dữ liệu chia lưới đa phân giải nghĩa là thực hiện lượng tử hóa không gian đối tượng thành một số xác định các ô lưới Khi đó tất cả các thao tác chia lớp được thực hiện trên cấu trúc chia lưới Ưu điểm chính của phương pháp là thời gian xử lý nhanh bởi thời gian xử lý không phụ thuộc vào số các đối tượng dữ liệu mà chỉ phụ thuộc vào số các ô lưới

Trang 27

trong không gian lượng tử Một số thuật toán sử dụng phương pháp này đó là thuật toán STING, Wave Cluster, CLIQUE [11],[9]

e 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 đó Thuật toán dựa vào

mô hình có thể xác định các lớp bằng cách xây dựng một hàm mật độ phản ánh sự phân bố không gian của các điểm dữ liệu

Nhận xét

Có rất nhiều các phương pháp phân nhóm, mỗi một phương pháp đều có rất nhiều các thuật toán tương ứng Tuỳ thuộc vào từng bài toán cụ thể mà ta có thể áp dụng các thuật toán khác nhau Mỗi một thuật toán đó sẽ đáp ứng được một lớp các vấn đề về tìm kiếm tri thức

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 đó Hay nói cách khác một điểm dữ liệu không gian gồm hai tập tính chất:

 Tính chất mang tính không gian (spatial properties): Là những tính chất

thể hiện cho toạ độ, vị trí của điểm dữ liệu

 Tính chất phi không gian (non-spatial properties): Là những tính chất không

liên quan đến vị trí của điểm dữ liệu mà chỉ đơn thuần là những giá trị mà điểm đó có

Mối quan hệ giữa tính chất không gian và tính chất phi không gian liên kết rất chặt chẽ và có thể dựa vào tính chất không gian để đưa ra được tính chất phi không gian và ngược lại Ví dụ như dựa vào tính chất về tỷ lệ người thất nghiệp của một điểm dữ liệu, chúng ta có thể đưa ra được dự đoán về vị trí của điểm đó (trung tâm thành phố, nông thôn, miền núi ) Hoặc dựa vào vị trí của điểm đó với các điểm trung tâm thành phố, chúng ta có thể đưa ra được tỷ lệ thất nghiệp với một

mức độ chính xác nhất định

Trang 28

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ả Các bộ công cụ này phải có các đặc thù riêng để đáp ứng và tận dụng được hết các đặc tính không gian Hệ thống này cung cấp các kiểu

dữ liệu không gian cũng như các phương thức truy nhập dữ liệu và các phép toán thực hiện trên kiểu dữ liệu không gian Ví dụ truy vấn là một trong những phép thực hiện được sử dụng nhiều nhất trong hệ cơ sở dữ liệu không gian bao gồm hai loại truy vấn phổ biến là:

 Truy vấn vùng (Region queries): Trả ra miền chứa toàn bộ những điểm dữ

liệu thoả mãn một điều kiện nào đó được đưa ra trong yêu cầu người dùng

 Truy vấn lân cận gần nhất (Nearest neighbor-NN): Là một phép toán trả về

các đối tượng gần với đối tượng được truy vấn nhất

Một phép toán trên cơ sở dữ liệu thông thường có thể được thực hiện bằng cách duyệt toàn bộ những đối tượng trong cơ sở dữ liệu đó Tuy nhiên trong cơ sở

dữ liệu không gian có thể có những tính chất khác Ví dụ nếu trong không gian hai chiều, chúng ta cần tìm một điểm gần một điểm có toạ độ (x0, y0) chúng ta có thể duyệt với tất cả những điểm trong tập cơ sở dữ liệu nhưng nếu chúng ta có một cấu trúc dữ liệu với những điểm mang tính không gian, việc tìm điểm gần điểm (x0, y0) nhất không nhất thiết phải duyệt toàn bộ cơ sở dữ liệu

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

Trang 29

Trong trường hợp trên chúng ta chỉ cần xét những điểm nằm trong miền giữa hai đường thẳng x0 - và x0 + Những điểm còn lại không cần thiết phải xét Giá trị có thể chọn là giá trị từ điểm x0 với điểm kế tiếp x0 trong danh sách

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 Các phương pháp này thực hiện tổ chức dữ liệu trong cơ sở dữ liệu cũng như là tổ chức toàn bộ không gian dữ liệu thích hợp nhất để giúp cho việc xem xét tìm ra câu trả lời cho một truy vấn chỉ cần thực hiện trong một tập con tối thiểu của cơ sở dữ liệu

Các phương pháp truy nhập không gian sử dụng khái niệm đối tượng xấp xỉ

(approxiamtion) là một đối tượng được đơn giản hoá loại bỏ đi các thuộc tính

không gian phức tạp mà chỉ gồm các thuộc tính chính đảm bảo nhận biết được đối tượng Dựa vào khái niệm này xử lý một truy vấn có thể thực hiện theo hai bước sau

 Bước lọc (filtering step): Dựa vào các đối tượng xấp xỉ để tìm ra một tập

các đối tượng ứng cử viên nhằm giảm bớt càng nhiều càng tốt số lượng các đối tượng phải kiểm tra

 Bước đánh giá lại (redefinement step): Thực hiện kiểm tra lại các đối tượng trong tập các đối tượng ứng cử viên xem có thoả mãn các điều kiện truy vấn hay không

Đối tượng xấp xỉ được sử dụng phổ biến nhất đó là hộp giới hạn (bouding box - BB) đó là một hình chữ nhật nhỏ nhất mà có chứa một đối tượng không gian

Do vậy, hầu hết các phương pháp truy nhập không gian được thiết kế chủ yếu để thực hiện việc quản lý các hình chữ nhật này Hai phương pháp truy nhập không gian phổ biến đó là phương pháp chia lưới và R*-tree thường được đề cập đến bởi tính hiệu quả và mức độ đơn giản của chúng

a Phương pháp chia lưới (grid file)

Phương pháp chia lưới được thiết kế để quản lý những điểm trong không gian dữ liệu đa chiều (d-chiều) Nó sẽ chia toàn bộ không gian dữ liệu thành những

Trang 30

khối d chiều với kích thước của các cạnh nói chung là đều nhau Tuy nhiên việc chọn kích thước của các cạnh cho khối cũng là một bài toán cần được giải quyết trước khi sử dụng phương pháp chia lưới

Với d trục trong không gian dữ liệu d chiều tạo nên một mảng d chiều và gọi

là từ điển dữ liệu Mỗi một phần tử gọi là một cell và có thể chứa một hoặc nhiều điểm dữ liệu hoặc cũng có thể không chứa điểm dữ liệu nào Những cell không chứa điểm nào thì không được xét đến và gọi là cell rỗng Mỗi một điểm dữ liệu phải nằm trong một cell của mảng và tất cả những điểm dữ liệu trong cùng một cell được lưu trữ cùng với nhau một cách riêng biệt với các cell khác Nói cách khác là các điểm dữ liệu trong cùng một cell được lưu trữ thành một khối và độc lập với các điểm dữ liệu thuộc các cell khác Trong một số trường hợp chúng ta có thể lưu trữ một vài cell liền kề thành một khối để giảm bớt bộ nhớ Một miền có thể là một số cell nằm trọn trong miền đó hoặc là các cell giao với miền đó

Phương pháp chia lưới có thể áp dụng tốt trong rất nhiều ứng dụng tuy nhiên

có một hạn chế đó là số cell tăng theo hàm số mũ với d nên phương pháp này chỉ có thể áp dụng với những dữ liệu có số chiều không quá lớn

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 lưu trữ Những ô màu trắng là những ô không chứa dữ liệu

b 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á Một R*-tree có thể lưu giữ đối

Trang 31

Bounding Rectangle - MBR) Phương pháp này xấp xỉ mỗi điểm đối tượng thành

một hình chữ nhật nhỏ nhất có thể và lưu trữ hình chữ nhật đó

Những lá của R*-tree lưu giữ một MBR của một đối tượng và một con trỏ trỏ đến đối tượng thực trong không gian địa lý Những nút bên trong lưu trữ những dãy cặp gồm một hình chữ nhật và con trỏ trỏ đến nút con của nút đó Những hình chữ nhật này hoặc chính là một MBR hoặc là nút gốc của một cây con trong R*-tree

Ví dụ

Hình 1.6: Mô phỏng một R*-tree gồm 3 mức

Để trả lời câu hỏi về một miền ta bắt đầu xuất phát từ gốc và chỉ những hình chữ nhật nào có giao với miền cần trả lời sẽ được xét đến Sau đó, xét tiếp đến các nút con của những nút đó cho tới khi tìm ra được trang dữ liệu cần tìm

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 Tập trung nghiên cứu một lĩnh vực của khai phá dữ liệu là kỹ thuật phân nhóm trong cơ sở dữ liệu bao gồm các phương pháp sử dụng trong kỹ thuật phân nhóm nhằm giải quyết các mục tiêu của luận văn

Trang 32

Chương 2

CÁC CÁCH TIẾP CẬN CỦA KỸ THUẬT PHÂN NHÓM

Các kỹ thuật phân nhóm có rất nhiều cách tiếp cận và các ứng dụng trong thực tế, nó đều hướng tới hai mục tiêu chung đó là chất lượng của các nhóm khám phá được và tốc độ của thuật toán Hầu hết các thuật toán theo hai cách tiếp cận: Phương pháp phân hoạch (Partitioning Methods) và phương pháp phân cấp (Hierarchical Methods) là hai phương pháp phân nhóm dữ liệu cổ điển, hiện đã có rất nhiều thuật toán cải tiến dựa trên hai phương pháp này đã được áp dụng phổ biến trong khai phá dữ liệu Làm việc hiệu quả với các dữ liệu nhỏ và cho kết quả tốt Tuy nhiên, khi áp dụng các thuật toán trên vào cơ sở dữ liệu lớn, phức tạp và đặc biệt là có chứa nhiễu thì không phải thuật toán nào cũng cho kết quả tốt cả về hiệu quả tri thức tìm được cũng như thời gian chạy chương trình

Các thuật toán áp dụng cho cơ sở dữ liệu không gian cần đạt được 3 yêu cầu chính: (1) số các tham số đầu vào là tối thiểu (2) phát hiện các lớp với hình dạng bất kỳ (3) hiệu quả với các cơ sở dữ liệu lớn, đa chiều và có nhiễu Tuy nhiên khó có thể đưa ra được một thuật toán nhằm thoả mãn một cách chính xác các yêu cầu này [9]

Sau đây là một số thuật toán phân nhóm sử dụng cho dữ liệu không gian có hình dạng tuỳ ý và đặc biệt chứa nhiễu

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)[5] 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 Một nhóm được xác định bằng tập tất cả các đối tượng liên thông mật độ với các láng giềng của nó

Thuật toán DBSCAN dựa trên các khái niệm mật độ có thể áp dụng cho các

Trang 33

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 D khoả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

Một điểm p muốn nằm trong một lớp C nào đó thì NEps(p) phải có tối thiểu MinPts điểm Số điểm tối thiểu được chọn là bao nhiêu cũng là một bài toán khó vì: Nếu số điểm tối thiểu lớn chỉ những điểm nằm thực sự trong lớp C mới đạt đủ tiêu chuẩn, trong khi những điểm nằm ở ngoài biên không thể đạt được điều đó Ngược lại, nếu số điểm tối thiểu là nhỏ mọi điểm sẽ chỉ rơi vào một lớp

Như định nghĩa trên thì chỉ những điểm nằm thực sự trong lớp mới thoả mãn điều kiện là điểm của lớp Những điểm nằm ở biên thì không thoã mãn điều kiện thuộc lớp Để tránh được điều đó chúng ta có thể đưa ra một tiêu chuẩn khác để định nghĩa một điểm thuộc vào một lớp như sau: Nếu một điểm p muốn thuộc một lớp C phải tồn tại một điểm q mà p NEps(q) và số điểm trong NEps(q) phải lớn hơn số điểm tối thiểu Điều này có thể được định nghĩa như sau

Đị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 Eps 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

Điểm q gọi là điểm nhân (core point)

Ký hiệu || x || là số phần tử của tập x, MinPts là một số thực dương

Trang 34

Ta thấy rằng nó là một hàm phản xạ và đối xứng đối với hai điểm nhân và bất đối xứng nếu một trong hai điểm đó không phải là điểm nhân

Hai điểm biên của một lớp C có thể không đến đƣợc nhau bởi vì có thể cả hai đều không thoả mãn điều kiện nhân Mặc dù vậy, phải tồn tại một điểm nhân trong

C mà cả hai điểm đều có thể đến đƣợc từ điểm đó Để thuận tiện chúng ta sẽ đƣa ra

một định nghĩa liên thông mật độ (density-connectivity)

Đị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

Trang 35

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

Định nghĩa 6: Dữ liệu nhiễu (noise): Giả sử C1, C2, , Ck 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 C1, C2, , Ck tức là Noise = {p D i = 1 k, p Ci}

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 = {o o

D} và o có thể đến đƣợc từ p theo Eps và MinPts sẽ là một lớp theo Eps và MinPts

Trang 36

Nhƣ vậy, nhóm C không hoàn toàn là duy nhất, tuy nhiên, mỗi một điểm trong C đến đƣợc mật độ từ bất cứ một điểm nhân nào của C, vì vậy C chứa đúng một số điểm liên thông với điểm nhân tuỳ ý

Bổ đề 2: Giả sử C là một lớp theo hai tham số Eps và MinPts và p là một

điểm thuộc C với ||NEps(p)|| MinPts, khi đó C trùng với tập

O = { o o D và o là mật độ - đến đƣợc từ p theo Eps và MinPts}

2.1.2 Thuật toán DBSCAN

Để tìm ra các lớp, DBSCAN bắt đầu bằng cách xét một điểm p bất kì và tìm tất cả những điểm có thể đến đƣợc từ p Nếu p là một điểm nhân theo bổ đề 2 ta đã xây dựng đƣợc một lớp Nếu p không phải là điểm nhân, số điểm có thể đến đƣợc từ

p là 0 Lúc đó bỏ qua p và xét đến điểm tiếp theo

DBSCAN (SetOfPoints, Eps, MinPts)

If Point.Cl_ID = UnClassified then

If ExpandCluster(SetOfPoints,Point, ClusterId, Eps, MinPts) then

Hình 2.6: Mô phỏng thuật toán DBSCAN

 Hàm SetOfPoints.get (i) đƣa ra giá trị của phần tử thứ i trong tập dữ liệu

 Hàm NextId(CurrentId) cho ra giá trị là số hiệu của lớp tiếp theo

Trang 37

 Hàm ExpandCluster cho giá trị là đúng nếu như điểm đó là điểm nhân và hàm đó sẽ thực hiện việc xây dựng lên lớp chứa nhân đó Trong trường hợp ngược lại hàm cho giá trị là sai và đánh dấu điểm đó là điểm nhiễu Việc đánh dấu một điểm là

điểm nhiễu có thể được thay đổi khi điểm đó lại thuộc vào một lớp được xét sau

ExpandCluster(SetOfPoints,Point,ClusterId,Esp,MinPts):Boolean;

Seeds := SetOfPoints.RegionQuery(Point, Eps);

If Seeds.size < MinPts then

Result := SetOfPoints.RegionQuery(CurrentP, Eps);

If (Result.size >= MinPts) Then

For i := 1 to Result.size do

ResultP := Result.get(i);

If (ResultP.ClId in [UnClassifed, Noise]) then

If ResultP.ClId = UnClassifed then

Lời gọi SetOfPoints.RegionQuery(CurrentP, Eps) trả ra một danh sách các

điểm thuộc vào NEps(CurrentP) với tham số Eps Hàm này có thể được thực hiện bằng phương pháp hiệu quả như R*-tree với thời gian thực hiện là O(log(n)) với tập

dữ liệu nhỏ Trong những trường hợp tổng quát, độ phức tạp thời gian là O(nlog(n)) với n là số điểm dữ liệu trong cơ sở dữ liệu

Trang 38

Nếu hai lớp C1 và C2 quá gần nhau và điểm p thuộc cả hai lớp thì p phải là một điểm biên và thuộc vào lớp nào được xét trước

2.2 Thuật toán DBCLASD

Thuật toán DBCLASD (Distribution Based Clustering of LArge Spatial

Databases) [6] thực hiện dựa trên sự phân bố đồng đều của các điểm trong một lớp

Khi đó, mỗi lớp sẽ được đặc trưng bằng một phân bố xác suất khoảng cách của các điểm lân cận gần nhất Nếu với mỗi lớp ta tìm được sự phân bố đặc trưng này thì có thể dễ dàng xác định được một điểm lân cận có thuộc vào lớp đó hay không Ví dụ trên hình 2.8 bằng trực quan ta dễ dàng thấy được tập các điểm dữ liệu được chia thành hai lớp, và khoảng cách từ một điểm đến lân cận gần nhất của nó trong một lớp nhỏ hơn nhiều so với các điểm ở ngoài lớp

Hình 2.8: Ví dụ dữ liệu tập các điểm được chia thành 2 lớp

2.2.1 Một số định nghĩa

Định nghĩa 7: (Lân cận gần nhất của 1 điểm và khoảng cách lân cận gần nhất)

Với q là điểm đang xét và S là tập các điểm Lân cận gần nhất của q trong S,

ký hiệu NNS(q) là một điểm p thuộc tập S - {q} có khoảng cách đến q là nhỏ nhất Khoảng cách từ q đến lân cận nhỏ nhất của nó trong S gọi là khoảng cách lân cận gần nhất của q, ký hiệu NNdistS(q)

Định nghĩa 8: (Tập các khoảng cách lân cận gần nhất của tập các điểm)

Xét S là tập các điểm và ei là các thành phần trong S Tập các khoảng cách

lân cận gần nhất của S, ký hiệu là NNdistSet(S) để cho ngắn gọn gọi là tập khoảng

cách, là tập các giá trị NNdistS(ei)

Mô hình thống kê với các định nghĩa về lớp

Chúng ta cần xác định phân bố xác suất của các khoảng cách lân cận gần

Trang 39

các điểm Vol(R) Chúng ta có thể tưởng tượng rằng N điểm này sẽ nằm bất kỳ trong không gian dữ liệu R, dẫn đến xác suất để một điểm trong N điểm này nằm vào vùng không gian con S của R với số lượng Vol(S) bằng Vol(S)/Vol(R) Xác suất để khoảng cách lân cận gần nhất D của một điểm đang xét q đến điểm gần nhất của nó nằm trong vùng R lớn hơn một giá trị x nào đó sẽ bằng xác suất để không có điểm nào trong số N điểm nằm trong hình cầu tâm q bán kính x, ký hiệu là SP(q,x) Khi

đó xác suất này sẽ là:

P (D > x) = (1 - Vol(SP(q,x))/Vol(R))NNhư vậy, xác suất để D không lớn hơn x là:

P (D x) = 1 - P(D > x) = 1 - (1-Vol(SP(q,x))/Vol(R))NTrong không gian 2 chiều, hàm phân bố khoảng cách sẽ là:

F(x) = P(D x) = 1 - (1 - x2 / Vol(R))N(*)

Từ (*), chúng ta thấy rằng hàm phân bố có hai tham số N và Vol(R) Trong

đó việc xác định N tương đối đơn giản, nhưng không dễ dàng tính được Vol(R) là tập các điểm có hình dạng bất kỳ

Xác định vùng xấp xỉ của một lớp

Thực chất không thể khoanh vùng chính xác cho một tập điểm mà chỉ ấn định được một vùng xấp xỉ đối với tập con S Tuy nhiên vùng xấp xỉ của tập con S cần đạt được hai yêu cầu: hình dạng của vùng xấp xỉ càng gần giống với hình dạng của lớp quan sát được càng tốt và vùng xấp xỉ phải có tính liên thông nghĩa là nó phải có dạng một đa giác có thể có các lỗ trống ở giữa

Chúng ta sẽ sử dụng phương pháp chia lưới để xác định đa giác xấp xỉ Vấn

đề là ở chỗ cần chọn độ rộng của mỗi ô lưới bao nhiêu là thích hợp nhất Nếu chiều rộng mỗi ô lưới quá lớn, hình dạng của lớp xấp xỉ không chính xác Ngược lại, nếu chọn độ rộng mỗi ô lưới quá nhỏ, vùng xấp xỉ có thể sẽ bị chia thành các vùng đa giác không liên thông Hình 2.9 minh hoạ ảnh hưởng của độ rộng ô lưới đến việc xác định vùng xấp xỉ Ta sẽ chọn độ rộng ô lưới đối với một tập điểm S là thành phần cực đại của NNDistSet(S)

Trang 40

Hình 2.9: Ảnh hưởng của độ rộng ô lưới đến việc xác định vùng xấp xỉ

Một ô lưới được gọi là đang sử dụng nếu ô lưới đó có chứa ít nhất một điểm trong tập các điểm và vùng xấp xỉ của tập S chính là hợp của các ô lưới đang sử dụng Dựa vào việc xác định một vùng cho mỗi lớp, Hình 2.10 so sánh sự phân bố khoảng cách mong đợi và phân bố khoảng cách quan sát đối với lớp 1 trong Hình 2.8

Hình 2.10 chỉ ra sự phù hợp giữa phân bố quan sát và phân bố mong đợi Thông thường chúng ta sử dụng khái niệm 2

- test để xác định sự phân bố khoảng cách quan sát có phù hợp với phân bố mong đợi không

Để kết luận cho những vấn đề đã trình bày ở trên, ta đưa ra một định nghĩa

về lớp dựa vào sự phân bố khoảng cách gần nhất như sau:

Định nghĩa 9: (Lớp) DB là một tập các điểm Một lớp C là một tập con

không rỗng của DB thoả mãn các điều kiện sau:

(1) NNDistSet(C) phải có sự phân bố mong đợi với một mức độ tin cậy xác định (2) C có tính chất cực đại (maximality), nghĩa là khi thêm các điểm lân cận

vào lớp C điều kiện (1) vẫn được thoả mãn

(3) C có tính chất liên thông (connectivity), nghĩa là với mỗi cặp điểm (a, b)

thuộc lớp luôn tồn tại một đường đi qua các ô lưới đã sử dụng nối giữa a và b

Hình 2.10: Phân bố khoảng cách mong đợi và khoảng cách quan sát

Ngày đăng: 06/11/2014, 00:16

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Hoàng Thị Mai, “Khai phá dữ liệu bằng phương pháp phân cụm dữ liệu”, Luận văn thạc sĩ, Trường ĐHSP Hà Nội, 2006 Sách, tạp chí
Tiêu đề: Khai phá dữ liệu bằng phương pháp phân cụm dữ liệu
[2] Nguyễn Trung Sơn, “Phương pháp phân cụm và ứng dụng”, Luận văn thạc sĩ, Khoa Công nghệ thông tin - Đại học Thái Nguyên, Thái Nguyên 2009 Sách, tạp chí
Tiêu đề: Phương pháp phân cụm và ứng dụng
[3] Khai phá dữ liệu - Kỹ thuật ứng dụng, Nguyễn Thanh Thuỷ 8/2001, Bài giảng Trường thu hệ mờ và ứng dụng, Hà Nội Sách, tạp chí
Tiêu đề: Khai phá dữ liệu - Kỹ thuật ứng dụng
[4] Chia lớp trong Cơ sở dữ liệu không gian, Luận văn tốt nghiệp Đại Học 2001, Trần Minh Trí.Tiếng Anh Sách, tạp chí
Tiêu đề: Chia lớp trong Cơ sở dữ liệu không gian
[5] A Density-Based Algorithm for Discovery Clusters in Large Spatial Database with Noise, Martin Ester, Hans-Peter Kriegel, Jửrg Sander, Xiaowei Xu. Published in Proceedings of 2nd International Conference on Knowledge Discovery and Data Mining (KDD-96) Sách, tạp chí
Tiêu đề: A Density-Based Algorithm for Discovery Clusters in Large Spatial Database with Noise
[6] A Distribution- Based Clustering Algorithm for mining in Large Spatial Database, Xiaowei Xu, Martin Ester, Hans-Peter Kriegel, Jửrg Sander.Published in Proceedings of 14th International Conference on Data Engineering (ICDE’98) Sách, tạp chí
Tiêu đề: A Distribution- Based Clustering Algorithm for mining in Large Spatial Database
[7] An Efficient Approach to Clustering in Large Multimedia database with Noise, Alexander Hinneburg, Daniel A. Keim. Institute of Computer Science, University of Halle, Germany Sách, tạp chí
Tiêu đề: An Efficient Approach to Clustering in Large Multimedia database with Noise
[8] Chameleon: A Hierachical Clustering Algorithm Using Dynamic Modeling, George Karypis, Eui-Hong (Sam) Han, Vipin Kumar. University of Minnesota, USA Sách, tạp chí
Tiêu đề: Chameleon: A Hierachical Clustering Algorithm Using Dynamic Modeling
[9] Clustering Algorithm for Spatial Databases: A Survey, Erica Kolatch, 2001 Sách, tạp chí
Tiêu đề: Clustering Algorithm for Spatial Databases: A Survey
[10] Clustering for Mining in Large Spatial Databases, Martin Ester, Hans-Peter Kriegle, Jửrg Sander, Xiaowei Xu. Special Issue on Data mining, KI-Journal, ScienTec Publishing, Vol. 1, 1998 Sách, tạp chí
Tiêu đề: Clustering for Mining in Large Spatial Databases
[11] Data mining - Concepts and Techniques, Jiawei Han, Micheline Kamber. Simon Fraser University, Horgan kaufmann publishers Sách, tạp chí
Tiêu đề: Data mining - Concepts and Techniques
[12] OPTICS: Ordering Points To Identify the Clustering Structure, Mihael Ankerst, Markus M. Breunig, Hans-Peter Kriegel, Jửrg Sander,Proc. ACM SIGMOD’99 Int. Conf. on Management of Data, Philadelphia PA, 1999 Sách, tạp chí
Tiêu đề: OPTICS: Ordering Points To Identify the Clustering Structure
[13] OPTICS-OF: Identifying Local Outliers , Markus M. Breunig, Hans-Peter Kriegel, Raymond T. Ng 1, Jửrg Sander, Institute for Computer Science, University of Munich, Germany Sách, tạp chí
Tiêu đề: OPTICS-OF: Identifying Local Outliers

HÌNH ẢNH LIÊN QUAN

BẢNG THUẬT NGỮ VIẾT TẮ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
BẢNG THUẬT NGỮ VIẾT TẮT (Trang 9)
Hình 1.1: Các bước trong quá trình khám phá tri thức KDD - 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
Hình 1.1 Các bước trong quá trình khám phá tri thức KDD (Trang 19)
Hình 1.2: Biểu đồ Hertzsprung-Russell - 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
Hình 1.2 Biểu đồ Hertzsprung-Russell (Trang 21)
Hình 1.3: Mô tả cách phân nhóm theo phương pháp từ dưới lên - 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
Hình 1.3 Mô tả cách phân nhóm theo phương pháp từ dưới lên (Trang 25)
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 - 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
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 (Trang 28)
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 lưu trữ - 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
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 lưu trữ (Trang 30)
Hình 1.6: Mô phỏng một R*-tree gồm 3 mức - 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
Hình 1.6 Mô phỏng một R*-tree gồm 3 mức (Trang 31)
Hình 2.4: Mật độ liên thông - 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
Hình 2.4 Mật độ liên thông (Trang 35)
Hình 2.6: Mô phỏng thuật toán DBSCAN - 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
Hình 2.6 Mô phỏng thuật toán DBSCAN (Trang 36)
Hình 2.8: Ví dụ dữ liệu tập các điểm đƣợc chia thành 2 lớp - 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
Hình 2.8 Ví dụ dữ liệu tập các điểm đƣợc chia thành 2 lớp (Trang 38)
Hình  2.10 chỉ  ra sự  phù  hợp giữa  phân  bố quan  sát  và  phân  bố mong  đợ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
nh 2.10 chỉ ra sự phù hợp giữa phân bố quan sát và phân bố mong đợi (Trang 40)
Hình 2.9: Ảnh hưởng của độ rộng ô lưới đến việc xác định vùng xấp xỉ - 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
Hình 2.9 Ảnh hưởng của độ rộng ô lưới đến việc xác định vùng xấp xỉ (Trang 40)
Hình 2.11: Ví dụ một cách chia và đánh số trong không gian hai chiều - 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
Hình 2.11 Ví dụ một cách chia và đánh số trong không gian hai chiều (Trang 51)
Hình 3.1: Minh họa số đo chiều rộng, chiều cao một đối tƣợng [14] - 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
Hình 3.1 Minh họa số đo chiều rộng, chiều cao một đối tƣợng [14] (Trang 57)
Hình 3.2: Khoảng cách Euclidean - 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
Hình 3.2 Khoảng cách Euclidean (Trang 59)
Hình 3.3: Các thiết lập để xác định ranh giới các nhóm ban đầu - 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
Hình 3.3 Các thiết lập để xác định ranh giới các nhóm ban đầu (Trang 60)
Hình 3.4: Tính toán trọng tâm của các nhóm mới  Thuật toán K-Means bao gồm các bước cơ bản sau: - 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
Hình 3.4 Tính toán trọng tâm của các nhóm mới Thuật toán K-Means bao gồm các bước cơ bản sau: (Trang 61)
Hình 3.5: Ví dụ các bước của thuật toán K-means - 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
Hình 3.5 Ví dụ các bước của thuật toán K-means (Trang 63)
Hình 3.6: Một số hình dạng khám phá bởi phân nhóm dƣa trên mậ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
Hình 3.6 Một số hình dạng khám phá bởi phân nhóm dƣa trên mật độ (Trang 65)
Hình 4.1: Môi trường thử nghiệm  4.2. Công cụ thử nghiệm - 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
Hình 4.1 Môi trường thử nghiệm 4.2. Công cụ thử nghiệm (Trang 67)
Hình 4.2. Đồ thị khoảng cách với k = 4. Dựa vào đồ thị khoảng cách đó ta có - 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
Hình 4.2. Đồ thị khoảng cách với k = 4. Dựa vào đồ thị khoảng cách đó ta có (Trang 68)
Hình 4.3. Tập các dữ liệu đƣợc biểu diễn trong toạ độ 2 chiều - 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
Hình 4.3. Tập các dữ liệu đƣợc biểu diễn trong toạ độ 2 chiều (Trang 70)
Hình 4.4. Đồ thị k-dist (k = 3) - 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
Hình 4.4. Đồ thị k-dist (k = 3) (Trang 70)
Hình 4.5       Hình 4.6 - 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
Hình 4.5 Hình 4.6 (Trang 71)
Hình 4.8  Nhận xét và đánh giá tham số trên một số tập dữ liệu đặc thù - 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
Hình 4.8 Nhận xét và đánh giá tham số trên một số tập dữ liệu đặc thù (Trang 72)
Hình 4.10: Đồ thị mô tả sự phụ thuộc m(  ) vào   . - 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
Hình 4.10 Đồ thị mô tả sự phụ thuộc m( ) vào (Trang 73)
Hình 4.15: Tập dữ liệu ban đầu - 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
Hình 4.15 Tập dữ liệu ban đầu (Trang 86)
Hình 4.13. Tập dữ liệu lấy từ nguồn tài liệu  Tập dữ liệu 3: Bao gồm các dữ liệu có hình dạng của các lớp là các đa - 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
Hình 4.13. Tập dữ liệu lấy từ nguồn tài liệu Tập dữ liệu 3: Bao gồm các dữ liệu có hình dạng của các lớp là các đa (Trang 86)
Hình 4.17 c  Tập dữ liệu 3 - 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
Hình 4.17 c Tập dữ liệu 3 (Trang 89)

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w