Tải bản đầy đủ (.pdf) (96 trang)

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ạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.45 MB, 96 trang )

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

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





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










THÁI NGUYÊN - 2014
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

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

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

PHÕNG QUẢN LÝ ĐÀO TẠO
SAU ĐẠI HỌC
NGƢỜI HƢỚNG DẪN KHOA HỌC



PGS.TS. LƢƠNG CHI MAI


KHOA ĐIỆN TỬ
TRƢỞNG KHOA


THÁI NGUYÊN - 2014

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

i
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ự




























Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

ii
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ự














Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

iii
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ự



Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

iv
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
2.1.2. Thuật toán DBSCAN 25

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

v
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

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

vi
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
































Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

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


Từ hoặc nhóm từ
Từ viết tắt
Từ tiếng anh
Cơ sở dữ liệu
CSDL
DataBase

Khai phá dữ liệu
KPDL
Data Mining
Khai phá tri thức
KPTT
Knowledge Discovery
Khai phá tri thức trong cơ sở dữ liệu
KDD
Knowledge Discovery in Databases
Phân nhóm dữ liệu
PNDL
Data Clustering






Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

viii
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
Hình 4.1: Môi trƣờng thử nghiệm 56

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

ix
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


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

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. 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

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

2
đƣợ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.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

3
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.
3. Đối tƣợng và phạm vi nghiên cứu

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

4
- 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

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

5
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ả.












Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

6
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

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên


7
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


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

8
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:

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

9

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
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. độ tƣơng tự đƣợc xác định theo một tiêu chuẩn nào đó, tuỳ thuộc vào từng
ứng dụng cụ thể và đƣợc xác định trƣớc.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên


10
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

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

11

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.
Thuật toán K-MEANS bao gồm các bước sau:


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

12
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:
Đầu vào:
Tập X = {x
1
, x
2
, . . ., x
n
} R
m

số lƣợng các nhóm k cần phân chia
Đầu ra: c
1

, c
2
, . . ., c
k
là các lớp.
Thuật toán:
Chọn k điểm nhân s
1
, s
2
, . . ., s
k
.
While không có thay đổi do
For all x
i
do
Đƣa x
i
vào lớp c
j
nếu s
l
d(x
i
, s
j
) d(x
i
, s

l
).// d: hàm khoảng cách
end
for all s
i
do// cập nhật lại các điểm tâm
s
i
= (c
i
)// : hàm tính độ trung bình
end
end
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ó

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

13
đƣợ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 (x
p
, y
p

) vào lớp
)1/()*(
)1/()*(
nyyny
nxxnx
poldtNew
poldtNew

 Khi bớt một điểm (x
p
, y
p
) trong lớp
)1/()*(
)1/()*(
nyyny
nxxnx
poldtNew
poldtNew

với n là số điểm trong lớp, (x
old
, y
old
) là tâm cũ và (x
New
, y
New
) 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.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

14
 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

×