1. Trang chủ
  2. » Công Nghệ Thông Tin

Ứng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà Nội (Luận văn thạc sĩ)

69 884 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 69
Dung lượng 799 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ứng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà NộiỨng dụng phân cụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường đại học kiến trúc Hà Nội

Trang 1

-

Phạm Văn Vượng

ỨNG DỤNG PHÂN CỤM TRONG KHAI PHÁ DỮ LIỆU

TRƯỜNG ĐẠI HỌC KIẾN TRÚC HÀ NỘI

Trang 2

Phạm Văn Vượng

ỨNG DỤNG PHÂN CỤM TRONG KHAI PHÁ DỮ LIỆU

TRƯỜNG ĐẠI HỌC KIẾN TRÚC HÀ NỘI

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

(Theo định hướng ứng dụng)

HÀ NỘI, NĂM 2018

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan đây là đề tài nghiên cứu của riêng tôi, được tôi thực hiện dưới sự hướng dẫn của PGS.TS Trần Đình Quế

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa được ai công bố trong bất cứ công trình nào khác

Hà Nội, tháng 11 năm 2017

TÁC GI Ả

PH ẠM VĂN VƯỢNG

Trang 4

LỜI CẢM ƠN

Lời đầu tiên tôi xin gửi lời cảm ơn sâu sắc tới thầy PGS.TS Trần Đình Quế,

Học viện Công nghệ Bưu chính Viễn thông, người thầy đã tạo mọi điều kiện thuận

lợi, dành nhiều thời gian trực tiếp tận tình chỉ bảo, hướng dẫn em trong suốt quá trình tìm hiểu, nghiên cứu và hoàn thành luận văn

Em xin chân thành cảm ơn các thầy giáo, các cô giáo của Học viện Công nghệ Bưu chính Viễn thông đã cung cấp cho em những kiến thức và tận tình chỉ bảo cho em trong suốt quá trình em học tập tại trường

Bên cạnh đó, để vượt qua mọi khó khăn và hoàn thành luận văn trong thời gian cho phép, em đã nhận được rất nhiều sự giúp đỡ, ủng hộ nhiệt thành từ gia đình, đồng nghiệp, cơ quan và bạn bè Em xin chân thành cảm ơn

Tuy nhiên, do thời gian hạn hẹp, mặc dù đã nỗ lực hết sức và nghiêm túc nghiên cứu đề tài, nhưng luận văn khó tránh khỏi những thiếu sót Em rất mong

nhận được sự thông cảm và góp ý chỉ bảo tận tình của thầy cô và mọi người

Hà Nội, tháng 11 năm 2017

Họ và tên

Trang 5

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT v

DANH MỤC CÁC BẢNG vi

DANH MỤC CÁC HÌNH VẼ vii

MỞ ĐẦU 1

CHƯƠNG 1: TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU 5

1.1 Giới thiệu 5

1.2 Kỹ thuật phân cụm dữ liệu 7

1.2.1 Khái niệm 7

1.2.2 Các bước cơ bản để phân cụm 8

1.2.3 Các loại đặc trưng trong phân cụm 9

1.2.4 Ứng dụng của kỹ thuật phân cụm 10

1.3 Phân loại các thuật toán phân cụm 11

1.4 Kết luận 14

CHƯƠNG 2: PHÂN CỤM CHO TƯ VẤN LỰA CHỌN 15

NGÀNH NGHỀ 15

2.1 Giới thiệu 15

2.2 Phương pháp phân hoạch (Partitioning Methods) 15

2.2.1 Thuật toán K – Means 16

2.2.2 Thuật toán PAM 19

Trang 6

2.2.3 Thuật toán CLARA 21

2.3 Phương pháp phân cụm phân cấp (Hierarchical Methods) 22

2.3.1 Thuật toán BIRCH 24

2.3.2 Thuật toán CURE 26

2.4 Phương pháp phân cụm dựa trên lưới (Grid-Based Methods) 28

2.4.1 Thuật toán STING 29

2.4.2 Thuật toán CLIQUE 30

2.5 Phương pháp phân cụm dựa trên mật độ (Density-Based Methods) 30

2.5.1 Thuật toán DBSCAN (KDD’96) 31

2.5.2 Thuật toán OPTICS 34

2.6 Phương pháp phân cụm dựa trên mô hình (Model-Based Clustering Methods) 35

2.7 Phương pháp phân cụm có dữ liệu ràng buộc (Binding data clustering Methods) 36

2.8 Tổng hợp và đánh giá các phương pháp 37

2.9 Kết luận 40

CHƯƠNG 3: THỬ NGHIỆM VÀ ĐÁNH GIÁ 41

3.1 Giới thiệu 41

3.2 Lựa chọn thuật toán và mô tả 42

3.3 Xây dựng hệ thống 44

3.4 Kết luận 57

KẾT LUẬN 58

DANH MỤC TÀI LIỆU THAM KHẢO 60

Trang 7

DANH M ỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT

Vi ết tắt Ti ếng Anh Ti ếng Việt

Trang 8

DANH MỤC CÁC BẢNG

Bảng 2.1: Bảng tổng hợp các thuật toán 39

Bảng 3.1: Bảng thống kê sinh viên các chuyên ngành trong xây dựng 42

Bảng 3.2: Dữ liệu đặc trưng cho các ngành học 43

Trang 9

DANH MỤC CÁC HÌNH VẼ

Hình 1.1: Ví dụ về phân cụm dữ liệu 7

Hình 1.2: Các bước trong quá trình phân cụm 9

Hình 2.1: Thuật toán K-Means 17

Hình 2.2: Các chiến lược phân cụm phân cấp 23

Hình 2.3: Cấu trúc phân cụm dựa trên lưới 28

Hình 3.1: Mô tả dữ liệu mẫu 45

Hình 3.2: Giao diện chương trình nhập dữ liệu 45

Hình 3.3: Chương trình sau đó phân tích và dựa trên cơ sở thuật toán K-Means: 46

Hình 3.4: Kết quả sau khi đã phân tích dữ liệu đầu vào 48

Hình 3.5: Biểu đồ đánh giá hệ thống 55

Trang 10

MỞ ĐẦU

Tính c ấp thiết của đề tài

Bước vào thế kỷ XXI, nghề nghiệp trong xã hội có những chuyển biến nhiều

so với giai đoạn trước đây Cuộc cách mạng khoa học và công nghệ đang tạo điều

kiện để nhân loại tiến từ nền kinh tế công nghiệp sang nền kinh tế tri thức Đó là

nền kinh tế được xây dựng trên cơ sở sản xuất, phân phối và sử dụng tri thức, thông tin, trong đó máy tính và các công nghệ truyền thông viễn thông là những yếu tố chiến lược Trong khi ngành công nghệ thông tin phát triển không ngừng như hiện nay, để đạt được mục tiêu trên, chúng ta cần một lực lượng lao động có đủ trình độ năng lực và làm chủ được công nghệ kỹ thuật mới, đủ điều kiện đảm bảo hoàn thành tốt công việc trong mọi lĩnh vực của đời sống xã hội Nếu chúng ta không chiếm hữu được tri thức, không sáng tạo và sử dụng được thông tin trong các ngành

sản xuất thì không thể thành công trong sự cạnh tranh quyết liệt của thị trường Chính vì vậy việc nâng cao trình độ học vấn, trình độ văn hóa cho nhân dân, đặc biệt là việc định hướng ngành học và định hướng nghề nghiệp cho thế hệ

trẻ hôm nay, chủ nhân tương lai của đất nước, cần được quan tâm hơn bao giờ hết Như vậy nghề nghiệp luôn được coi là một trong nhiều yếu tố quan trọng quyết định đến tương lai mỗi con người Vì thế lựa chọn cho mình một ngành nghề phù hợp là vấn đề được nhiều bạn trẻ quan tâm, đặc biệt là những bạn sinh viên trẻ

học tập những năm đầu tại các trường đại học Theo khảo sát tại trường đại học

Kiến trúc Hà Nội, rất nhiều bạn sinh viên sau khi ra trường không tìm được công

việc phù hợp với năng lực cũng như sở thích của bản thân Có một số sinh viên do định hướng kém lựa chọn chuyên ngành không đúng khả năng dẫn đến quá trình

học tập kết quả kém, sau thời gian học tập không đạt kết quả tốt dẫn đến việc bỏ học ngay từ những năm đầu, tạo tâm lý chán nản, không có động lực trong học tập

Vì những lý do trên nên học viên đã quyết định lựa chọn đề tài: Ứng dụng

phân c ụm trong khai phá dữ liệu cho tư vấn ngành nghề sinh viên trường Đại

h ọc Kiến trúc Hà Nội

Trang 11

T ổng quan về vấn đề nghiên cứu

Kỹ thuật khai phá tri thức và khai phá dữ liệu đã và đang được nghiên cứu, ứng dụng trong nhiều lĩnh vực khác nhau ở các nước trên thế giới, tại Việt Nam kỹ thuật này tương đối còn mới mẻ tuy nhiên cũng đang được nghiên cứu và dần đưa vào ứng dụng trong những năm gần đây Những vấn đề được quan tâm là phân lớp nhận dạng mẫu, luật kết hợp, phân cụm dữ liệu, phần tử dị biệt,…

Phân cụm cơ sở dữ liệu là một trong những phương pháp quan trọng trong quá trình tìm kiếm tri thức Phân cụm là phương pháp học từ quan sát (learning from obversation) hay còn gọi là học không có giám sát Phân cụm đặc biệt hiệu

quả khi ta không biết về thông tin của các cụm, hoặc khi ta quan tâm tới những thuộc tính của cụm mà chưa biết hoặc biết rất ít về những thông tin đó Phân cụm được coi như một công cụ độc lập để xem xét phân bố dữ liệu, làm bước tiền xử lý cho các thuật toán khác Việc phân cụm dữ liệu có rất nhiều ứng dụng như trong

tiếp thị, sử dụng đất, bảo hiểm, hoạch định thành phố, định hướng nghề nghiệp …

Hiện nay, phân cụm dữ liệu là một hướng được nghiên cứu rất nhiều trong Tin học

Thực tế hiện nay tại trường Đại học Kiến trúc Hà Nội rất nhiều sinh viên năm đầu còn phân vân lựa chọn các ngành học trong khoa đã đăng ký do thiếu thông tin và chưa có sự lựa chọn đúng đắn dựa trên khả năng và sở thích của bản thân Do vậy,

để sinh viên có thể phát huy hết khả năng, nhiệt huyết và thuận lợi cho việc đi làm sau này cần có những định hướng đúng đắn và kịp thời ngay những năm đầu đại

học

Trong luận văn này tập trung khảo sát các thuật toán phân cụm để từ đó áp

dụng vào phân loại sinh viên nhằm đưa ra giải pháp tư vấn, định hướng giúp sinh viên và các khoa trong trường đại học Kiến trúc Hà Nội lựa chọn ngành nghề phù

hợp

Trang 12

M ục đích lu ận văn

- Tìm hiểu các kỹ thuật khai phá dữ liệu, một số thuật toán phân cụm dữ liệu

- Lựa chọn thuật toán và ứng dụng giải quyết bài toán phân loại sinh viên

nhằm hỗ trợ định hướng các ngành học cho sinh viên các khoa trong trường

- Thu thập dữ liệu và cài đặt thử nghiệm chương trình

Đối tượng nghiên cứu

- Tìm hiểu một số thuật toán phân cụm dữ liệu

- Lựa chọn một thuật toán phân cụm dữ liệu phù hợp có thể áp dụng giải quyết yêu cầu bài toán

- Thu thập dữ liệu: Sinh viên năm đầu đang học tập tại trường Đại học Kiến trúc Hà Nội Tuy nhiên số lượng sinh viên năm đầu rất lớn nên dữ liệu mẫu

sẽ được thu hẹp vào sinh viên của một khoa trong trường

- Tiến hành thực nghiệm trên tập dữ liệu mẫu

Phương pháp nghiên cứu:

- Nghiên cứu lý thuyết về khai phá dữ liệu

- Tìm hiểu một số thuật toán phân cụm dữ liệu

- Xây dựng và phân tích yêu cầu bài toán đặt ra

- Lựa chọn một thuật toán phân cụm dữ liệu phù hợp có thể áp dụng giải quyết yêu cầu bài toán

- Tiến hành thực nghiệm trên tập dữ liệu mẫu

- Phân tích, đánh giá kết quả đạt được

- Phương hướng phát triển

C ấu trúc luận văn:

Ngoài phần mở đầu và kết luận, luận văn có cấu trúc gồm 03 chương có nội dung như sau:

Trang 13

Chương 1: Tổng quan về phân cụm dữ liệu

Trình bày tổng quan về phân cụm dữ liệu và giới thiệu một số phương pháp phân cụm dữ liệu, đưa ra so sánh, đánh giá, lựa chọn

Chương 2: Phân cụm cho tư vấn lựa chọn ngành nghề

Chương này trình bày khái quát một số kỹ thuật phân cụm đặc trưng Phân tích, đánh giá ứng dụng các kỹ thuật phân cụm để lựa chọn ra được thuật toán thích

hợp xây dựng và giải quyết bài toán đặt ra

Chương 3: Thử nghiệm và đánh giá

Giới thiệu về bài toán thực tế, những khó khăn của sinh viên khi lựa chọn ngành nghề phù hợp với nhu cầu và năng lực của bản thân Dựa trên kỹ thuật phân

cụm và thuật toán lựa chọn xây dựng hệ thống tư vấn lựa chọn ngành nghề cho sinh viên, giúp họ có những lựa chọn đúng đắn cho tương lai công việc sau này

Trang 14

CHƯƠNG 1: TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU

1.1 Gi ới thiệu

Dữ liệu do con người tạo ra ngày càng nhiều hơn về số lượng, tăng nhanh về

khối lượng, phát triển mạnh về quy mô khiến việc phân loại, lựa chọn, khai thác, sử

dụng gặp những khó khăn nhất định Khái niệm Khai phá dữ liệu ra đời hỗ trợ công

việc này; vậy cụ thể khai phá là gì, khai phá dữ liệu được khai thác như thế nào, công nghệ khai phá dữ liệu sử dụng là gì…

Khai phá dữ liệu là một tập hợp các kỹ thuật được sử dụng để tự động khai thác và tìm ra các mối quan hệ lẫn nhau của dữ liệu trong một tập hợp dữ liệu khổng

lồ và phức tạp, đồng thời cũng tìm ra các mẫu tiềm ẩn trong tập dữ liệu đó Về cơ

bản, khai phá dữ liệu là xử lý dữ liệu và nhận biết các mẫu và các xu hướng trong thông tin đó để bạn có thể quyết định hoặc đánh giá

Nếu căn cứ vào lớp các bài toán cần giải quyết, thì KPDL bao gồm các kỹ thuật áp dụng sau [2]:

− Phân lớp và dự đoán (Classification and prediction)

− Phân cụm (Clustering/ Segmentation)

− Luật kết hợp (Association rules)

− Phân tích hồi quy (Regression analysis)

− Phân tích các mẫu tuần tự hay theo thời gian (Sequential/Temporal patterns)

− Mô tả khái niệm (Concept description and summarization)

Phân cụm là kỹ thuật rất quan trọng trong khai phá dữ liệu, nó thuộc lớp các phương pháp học không giám sát trong học máy Có rất nhiều định nghĩa khác nhau

về kỹ thuật này, nhưng về bản chất ta có thể hiểu phân cụm là các qui trình tìm

cách nhóm các đối tượng đã cho vào các cụm (clusters), sao cho các đối tượng

Trang 15

trong cùng 1 cụm tương tự (similar) nhau và các đối tượng khác cụm thì không tương tự (Dissimilar) nhau

Phân cụm dữ liệu là xử lý một tập các đối tượng vào trong các lớp các đối tượng giống nhau được gọi là phân cụm Một cụm là một tập hợp các đối tượng dữ

liệu giống nhau trong phạm vi cùng một cụm và không giống nhau với các đối tượng trong các cụm khác Số các cụm dữ liệu được phân ở đây có thể được xác định trước theo kinh nghiệm hoặc có thể được tự động xác định của phương pháp phân cụm

Mục đích của phân cụm là tìm ra bản chất bên trong các nhóm của dữ liệu Các thuật toán phân cụm (Clustering Algorithms) đều sinh ra các cụm (clusters) Tuy nhiên, không có tiêu chí nào là được xem là tốt nhất để đánh hiệu của của phân tích phân cụm, điều này phụ thuộc vào mục đích của phân cụm như: data reduction,

“natural clusters”, “useful” clusters, outlier detection

K ỹ thuật phân cụm có thể áp dụng trong rất nhiều lĩnh vực như [4]:

• Marketing: Xác định các nhóm khách hàng (khách hàng tiềm năng, khách hàng giá trị, phân loại và dự đoán hành vi khách hàng,…) sử dụng sản phẩm hay dịch

vụ của công ty để giúp công ty có chiến lược kinh doanh hiệu quả hơn;

• Biology: Phận nhóm động vật và thực vật dựa vào các thuộc tính của chúng;

• Libraries: Theo dõi độc giả, sách, dự đoán nhu cầu của độc giả…;

• Insurance, Finance: Phân nhóm các đối tượng sử dụng bảo hiểm và các dịch vụ tài chính, dự đoán xu hướng (trend) của khách hàng, phát hiện gian lận tài chính

• WWW: Phân loại tài liệu (document classification); phân loại người dùng web

Trang 16

1.2 K ỹ thuật phân cụm dữ liệu

1.2.1 Khái ni ệm

Phân cụm dữ liệu là một trong những phương pháp quan trọng trong quá

trình tìm kiếm tri thức Phân cụm là phương pháp học từ quan sát (learning from

obversation ) hay còn gọi là học không có giám sát (unupervised learning or

automatic classfication) trong trí tuệ nhân tạo Phân cụm đặc biệt hiệu quả khi ta không biết về thông tin của các cụm, hoặc khi ta quan tâm tới những thuộc tính của cụm mà chưa biết hoặc biết rất ít về những thông tin đó Phân cụm được coi như một công cụ độc lập để xem xét phân bố dữ liệu, làm bước tiền xử lý cho các thuật toán khác Việc phân cụm dữ liệu có rất nhiều ứng dụng như trong tiếp thị, sử dụng đất, bảo hiểm, hoạch định thành phố, tư vấn, dự đoán …

Hình 1.1: Ví d ụ về phân cụm dữ liệu

Phân cụm dữ liệu (Data Clustering) hay phân cụm, cũng có thể gọi là phân tích cụm, phân tích phân đoạn, phân tích phân loại, là quá trình nhóm một tập các đối tượng thực thể hay trừu tượng thành lớp các đối tượng tương

tự Một cụm là một tập hợp các đối tượng dữ liệu mà các phần tử của nó tương tự nhau cùng trong một cụm và phi tương tự với các đối tượng trong

Trang 17

các cụm khác Một cụm các đối tượng dữ liệu có thể xem như là một nhóm trong nhiều ứng dụng

1.2.2 Các bước cơ bản để phân cụm

Chọn lựa đặc trưng : Các đặc trưng phải được chọn lựa một cách hợp lý

để có thể “mã hoá” nhiều nhất thông tin liên quan đến công việc quan tâm Mục tiêu

chính là phải giảm thiểu sự dư thừa thông tin giữa các đặc trưng Các đặc trưng cần được tiền xử lý trước khi dùng trong các bước sau

Chọn độ đo gần gũi: Đây là một độ đo chỉ ra mức độ tương tự hay không

tương tự giữa hai vector đặc trưng Phải đảm bảo rằng tất cả các vector đặc trưng góp phần như nhau trong việc tính toán độ đo gần gũi và không có đặc trưng nào át hẳn đặc trưng nào Điều này được đảm nhận bởi quá trình tiền xử lý

Tiêu chuẩn phân cụm: Điều này phụ thuộc vào sự giải thích của chuyên

gia cho thuật ngữ “dễ nhận thấy” dựa vào loại của các cụm được chuyên gia cho rằng đang ẩn dấu dưới tập dữ liệu Chẳng hạn, một cụm loại chặt (compact) của các

vector đặc trưng trong không gian ℓ-chiều có thể dễ nhận thấy theo một tiêu chuẩn,

trong khi một cụm loại “dài và mỏng” lại có thể đươc dễ nhận thấy bởi một tiêu

chuẩn khác Tiêu chuẩn phân loại có thể được diễn đạt bởi hàm chi phí hay một vài loại quy tắc khác

Thuật toán phân loại: Cần lựa chọn một sơ đồ thuật toán riêng biệt nhằm

làm sáng tỏ cấu trúc cụm của tập dữ liệu

Công nhận kết quả: Khi đã có kết quả phân loại thì ta phải kiểm tra tính

đúng đắn của nó Điều này thường được thực hiện bởi việc dùng các kiểm định phù hợp

Giải thích kết quả: Trong nhiều trường hợp, chuyên gia trong lĩnh vực

ứng dụng phải kết hợp kết quả phân loại với bằng chứng thực nghiệm và phân tích

để đưa ra các kết luận đúng đắn Trong một số trường hợp, nên có cả bước khuynh hướng phân cụm; trong bước này có các kiểm định khác nhau để chỉ ra một dữ liệu

Trang 18

Hình 1.2 : Các bước trong quá trình phân cụm [8]

1.2.3 Các lo ại đặc trưng trong phân cụm

Có bốn loại đặc trưng, đó là:

- Các đặc trưng danh nghĩa (nominal): Gồm các đặc trưng mà các giá trị của nó

mã hoá các trạng thái Chẳng hạn cho một đặc trưng là giới tính của một người thì

Trang 19

các giá trị có thể của nó là 1 ứng với nam và 0 ứng với nữ Rõ ràng là bất kỳ sự so sánh về lượng nào giữa các giá trị loại này đều là vô nghĩa

- Các đặc trưng thứ tự (ordinal): Là các đặc trưng mà các giá trị của nó có thể

sắp một cách có ý nghĩa Ví dụ về một đặc trưng thể hiện sự hoàn thành khoá học

của một sinh viên Giả sử các giá trị có thể là 4, 3, 2, 1 tương ứng với các ý nghĩa:

”xu ất sắc”, “rất tốt“, “tốt“, “không tốt“ Các giá trị này được sắp xếp theo một thứ

tự có ý nghĩa nhưng sự so sánh giữa hai giá trị liên tiếp là không quan trọng lắm về lượng

- Các đặc trưng đo theo khoảng ( interval – scaled): Với một đặc trưng cụ thể

nếu sự khác biệt giữa hai giá trị là có ý nghĩa về mặt số lượng thì ta có đặc trưng đo theo khoảng (còn gọi là thang khoảng) Ví dụ về đặc trưng nhiệt độ, nếu từ 10 – 15

độ thì được coi là rét đậm, còn nếu

- Các đặc trưng đo theo tỷ lệ (ratio-scaled): Cũng với ví dụ nhiệt độ ở trên ta

không thể coi tỷ lệ giữa nhiệt độ Hà Nội 10 độ với nhiệt độ Matxcơva 1 độ mang ý nghĩa rằng Hà Nội nóng gấp mười lần Matxcơva Trong khi đó, một người nặng

100 kg được coi là nặng gấp hai lần một người nặng 50 kg Đặc trưng cân nặng là

một đặc trưng đo theo tỷ lệ (thang tỷ lệ)

1.2.4 Ứng dụng của kỹ thuật phân cụm

Phân cụm là một công cụ quan trọng trong một số ứng dụng Sau đây là một

số ứng dụng của nó:

Giảm dữ liệu: Giả sử ta có một lượng lớn dữ liệu (N) Phân cụm sẽ nhóm

các dữ liệu này thành m cụm dữ liệu dễ nhận thấy và m << N Sau đó xử lý mỗi cụm

như một đối tượng đơn

Rút ra các gi ả thuyết: Các giả thuyết này có liên quan đến tính tự nhiên

của dữ liệu và phải được kiểm tra bởi việc dùng một số tập dữ liệu khác

Ki ểm định giả thuyết: Ta sẽ phân cụm để xét xem có tồn tại một tập dữ

liệu nào đó trong tập dữ liệu thoả mãn các giả thuyết đã cho hay không Chẳng

Trang 20

hạn xem xét giả thuyết sau đây: “Các công ty lớn đầu tư ra nước ngoài “ Để kiểm

tra, ta áp dụng kỹ thuật phân cụm với một tập đại diện lớn các công ty Giả sử rằng

mỗi công ty được đặc trưng bởi tầm vóc, các hoạt động ở nước ngoài và khả năng hoàn thành các dự án Nếu sau khi phân cụm, một cụm các công ty được hình thành

gồm các công ty lớn và có vốn đầu tư ra nước ngoài (không quan tâm đến khả năng hoàn thành các dự án) thì giả thuyết đó được củng cố bởi kỹ thuật phân cụm đã thực

hiện

D ự đoán dựa trên các cụm: Đầu tiên ta sẽ phân cụm một tập dữ liệu

thành các cụm mang đặc điểm của các dạng mà nó chứa Sau đó, khi có một dạng

mới chưa biết ta sẽ xác định xem nó sẽ có khả năng thuộc về cụm nào nhất và dự đoán được một số đặc điểm của dạng này nhờ các đặc trưng chung của cả cụm

1.3 Phân lo ại các thuật toán phân cụm

Các thuật toán phân cụm có thể được xem như các sơ đồ cung cấp cho ta các

cụm “dễ nhận thấy” bởi việc chỉ xem xét một phần của tập chứa tất cả các cách phân cụm của X Kết quả phân cụm phụ thuộc vào thuật toán và tiêu chuẩn phân

cụm Như vậy, một thuật toán phân cụm là một chức năng học cố gắng tìm ra các đặc trưng riêng biệt của các cụm ẩn dấu dưới tập dữ liệu Có nhiều cách để phân loại các thuật toán phân cụm, sau đây là một cách phân loại:

Các thu ật toán phân cụm tuần tự (Sequential Algorithms):

Các thuật toán này sinh ra một cách phân cụm duy nhất, chúng là các phương pháp trực tiếp và thuật toán một hoặc vài lần (không hơn 6 lần) Kết quả cuối cùng thường phụ thuộc nhanh Trong hầu hết các thuật toán thuộc loại này, tất cả các vector đặc trưng tham gia vào vào thứ tự các vector tham gia vào thuật toán Những

sơ đồ loại này có khuynh hướng sinh ra các cụm có hình dạng chặt siêu cầu hoặc siêu elipxoit tuỳ theo độ đo được dùng

Trang 21

Các thu ật toán phân cụm phân cấp (Hierachical Algorithms)

- Các thu ật toán tích tụ (Agglomerative Algorithms):

Chúng sinh ra một dãy cách phân cụm mà số cụm, m, giảm dần ở mỗi bước

Cách phân cụm ở mỗi bước là kết quả của cách phân cụm ở bước trước đó bằng việc trộn hai cụm vào một Các đại diện chính của loại này là thuật toán liên kết đơn (phù hợp với các cụm dài và mỏng) và thuật toán liên kết đầy đủ (phù hợp với các cụm chặt) Các thuật toán tích tụ thường dựa trên lý thuyết đồ thị và lý thuyết ma trận

- Các thu ật toán phân rã (Divise Algorithms):

Sinh ra một dãy cách phân cụm mà số cụm, m, tăng dần ở mỗi bước Cách

phân cụm ở mỗi bước là kết quả cách phân cụm ở bước trước đó bằng việc chia đôi một cụm đơn

Các thuật toán phân cụm dựa trên việc tối ưu hoá hàm chi phí:

Hàm chi phí J đo độ “dễ nhận thấy” của các cách phân cụm Thường thì số các cụm, m, là cố định Thuật toán sẽ dùng các khái niệm về phép tính vi phân và

sinh ra các cách phân cụm liên tiếp trong khi cố gắng tối ưu hoá J Thuật toán sẽ

dừng khi một tối ưu địa phương được xác định Các thuật toán loại này cũng được gọi là các sơ đồ tối ưu hoá hàm lặp Chúng được phân tiếp như sau:

- Các thu ật toán phân cụm chặt hay rõ:

Vector thuộc hoàn toàn vào một cụm cụ thể Việc đưa một vector về các cụm

cụ thể được thực hiện một cách tối ưu theo tiêu chuẩn phân cụm tối ưu

- Các thu ật toán phân cụm theo các hàm xác suất:

Dựa vào lý thuyết phân lớp Bayes và mỗi vector x được phân về cụm thứ i

nếu

p(Ci | x ) là lớn nhất (xác suất để x được phân đúng vào cụm Ci)

Trang 22

- Các thu ật toán phân cụm mờ:

Các vector thuộc về một cụm nào đó với một độ chắc chắn

- Các thu ật toán phân cụm theo khả năng :

Trong trường hợp này ta đo khả năng một vector đặc trưng thuộc về một cụm nào đó

- Các thu ật toán phát hiện biên phân tách :

Các thuật toán này cố gắng đặt các biên phân tách một cách tối ưu giữa các cụm

Các thu ật toán khác

- Các thu ật toán phân cụm nhánh và cận :

Các thuật toán này cung cấp cho ta các cách phân cụm tối ưu toàn cục mà

không phải xét tới tất cả các cách phân cụm có thể, với m cố định và một tiêu chuẩn

phân cụm định trước Nhưng đòi hỏi rất nhiều tính toán

- Các thu ật toán phân cụm di truyền :

Sử dụng dân số ban đầu của các cách phân cụm có thể và sinh ra các số dân mới một cách lặp đi lặp lại Số dân mới này nhìn chung chứa các cách phân cụm tốt hơn so với thế hệ trước, theo một tiêu chuẩn đã định trước

- P hương pháp thư giãn ngẫu nhiên :

Đảm bảo rằng với các điều kiện chắc chắn, độ hội tụ theo xác suất tới cách phân cụm tối ưu toàn cục nhưng tốn nhiều thời gian tính toán

- Thu ật toán phân cụm tìm khe :

Xem mỗi vector đặc trưng như là một biến ngẫu nhiên x Chúng dựa trên một giả định được công nhận rộng rãi rằng vùng phân bố của x nơi có nhiều vector

tương ứng với vùng mật độ cao của hàm mật độ xác suất (probability density function), vì vậy việc ước lượng các hàm mật độ xác suất sẽ làm rõ các khu vực nơi

Trang 23

các cụm hình thành

- Thu ật toán học cạnh tranh:

Không dùng các hàm chi phí, chúng tạo ra vài cách phân cụm và các cách này hội tụ tới cách dễ nhận thấy nhất Các đại diện tiêu biểu của loại này là sơ đồ học cạnh tranh cơ bản và thuật toán học lỗ rò

- Các thu ật toán dựa trên kỹ thuật biến đổi hình thái học :

Cố gắng đạt được sự phân chia tốt hơn giữa các cụm

1.4 K ết luận

Chương 1 đã trình bày cái nhìn tổng quát nhất về khai phá dữ liệu, giới thiệu

cơ bản kỹ thuật phân cụm dữ liệu cũng như nhìn nhận và giới thiệu cụ thể từng phương pháp Trong đó tập trung vào giới thiệu một số phương pháp phân cụm dữ liệu để giải quyết bài toán phân cụm được đặt ra Chương 2 tiếp theo đây sẽ đi vào tìm hiểu kỹ hơn các phương pháp này

Trang 24

CHƯƠNG 2: PHÂN CỤM CHO TƯ VẤN LỰA CHỌN

NGÀNH NGH Ề 2.1 Giới thiệu

Hiện nay, lĩnh vực nghiên cứu khai thác dữ liệu giáo dục đang tiếp tục phát triển, vô số các kỹ thuật khai thác dữ liệu đã được áp dụng cho một loạt các phạm vi giáo dục Trong mỗi trường hợp, mục tiêu là để dịch dữ liệu thô thành các thông tin

có ý nghĩa về quá trình học tập để đưa ra quyết định tốt hơn về thiết kế và quy trình

của một môi trường học tập

Các kỹ thuật phân cụ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 cụm khám phá được và tốc độ thực hiện của thuật toán Hiện nay, các kỹ thuật phân cụm có thể phân loại theo các phương pháp tiếp cận chính sau: phương pháp phân hoạch (Partitioning Methods); phương pháp phân cấp (Hierarchical Methods); phương pháp dựa trên mật độ (Density-Based Methods); phương pháp dựa trên lưới (Grid- Basesd Methods) [4]

2.2 Phương pháp phân hoạch (Partitioning Methods)

Kỹ thuật này phân hoạch một tập hợp dữ liệu có n phần tử thành k nhóm cho đến khi xác định số các cụm được thiết lập Số các cụm được thiết lập là các đặc trưng được lựa chọn trước Phương pháp này là tốt cho việc tìm các cụm hình cầu trong không gian Euclidean Ngoài ra, phương pháp này cũng phụ thuộc vào khoảng cách cơ bản giữa các điểm để lựa chọn các điểm dữ liệu nào có quan hệ là

gần nhau với mỗi điểm khác và các điểm dữ liệu nào không có quan hệ hoặc có quan hệ là xa nhau so với mỗi điểm khác Tuy nhiên, phương pháp này không thể

xử lí các cụm có hình dạng kỳ quặc hoặc các cụm có mật độ các điểm dầy đặc Các thuật toán phân hoạch dữ liệu có độ phức tạp rất lớn khi xác định nghiệm tối ưu toàn cục cho vấn đề phân cụm dữ liệu, do nó phải tìm kiếm tất cả các cách phân

hoạch có thể được Chính vì vậy, trên thực tế thường đi tìm giải pháp tối ưu cục bộ

Trang 25

cho vấn đề này bằng cách sử dụng một hàm tiêu chuẩn để đánh giá chất lượng của

cụm cũng như để hướng dẫn cho quá trình tìm kiếm phân hoạch dữ liệu Như vậy, ý tưởng chính của thuật toán phân cụm phân hoạch tối ưu cục bộ là sử dụng chiến lược ăn tham (Greedy) để tìm kiếm nghiệm

Điển hình trong phương pháp tiếp cận theo phân cụm phân họach là các thuật toán như: K_means, K-medoids, PAM, CLARA (Clustering Large Applications), CLARANS (Clustering Large Applications based on RAndomized Search) [][]

2.2.1 Thuật toán K – Means

Thuật toán k-means do MacQueen giới thiệu trong tài liệu “J Some methods for Classification and Analysis of Multivariate Observations” năm 1967 Mục đích của thuật toán là sinh ra k cụm dữ liệu {C1, C2,…, Ck} từ một tập dữ liệu ban đầu gồm n đối tượng trong không gian d chiều Xi= (xi1, xi2, …, xid) (i = ¯1¯,¯n¯), sao

cho hàm tiêu chuẩn E = ∑k ∑s ∈C i D2(x − mi) đạt giá trị cực tiểu Trong đó mi là trọng tâm của cụm Ci D là khoảng cách giữa hai đối tượng

K-Means là thuật toán rất quan trọng và được sử dụng phổ biến trong kỹ thuật phân cụm Tư tưởng chính của thuật toán K-Means là tìm cách phân nhóm các đối tượng (objects) đã cho vào K cụm (K là số các cụm được xác đinh trước, K nguyên dương) sao cho tổng bình phương khoảng cách giữa các đối tượng đến tâm nhóm (centroid ) là nhỏ nhất

Trang 26

Hình 2.1: Thu ật toán K-Means

Thuật toán K-Means thực hiện qua các bước chính sau:

1 Chọn ngẫu nhiên K tâm (centroid) cho K cụm (cluster) Mỗi cụm được đại diện bằng các tâm của cụm

2 Tính khoảng cách giữa các đối tượng (objects) đến K tâm (thường dùng khoảng cách Euclidean)

3 Nhóm các đối tượng vào nhóm gần nhất

4 Xác định lại tâm mới cho các nhóm

5 Thực hiện lại bước 2 cho đến khi không có sự thay đổi nhóm nào của các đối tượng

Trình bày thu ật toán:

Input: Số các cụm k, cơ sở dữ liệu gồm n đối tượng

Output: Các cụm Ci(i=1,…, k) sao cho hàm tiêu chuẩn E đạt giá trị tối thiểu

Trang 27

Bước 1: Khởi tạo k điểm trọng tâm cụm bằng cách chọn k đối tượng tùy ý Bước 2: Lặp các bước

- Với mỗi đối tượng Xi (1 ≤ i ≤ n), tính khoảng cách từ nó tới mỗi trọng tâm mjvới j=1,…,k Sau đó tìm trọng tâm gần nhất đối với mỗi đối tượng

- Với mỗi j=1,…,k, cập nhật trọng tâm cụm mjbằng cách xác định trung bình cộng của các vector đối tượng dữ liệu

Bước 3: Thuật toán dừng khi giá trị E không thay đổi

Để khoảng cách giữa điểm tâm tới các điểm, dùng độ đo khoảng cách Euclidean

Thuật toán k-means chỉ áp dụng khi trung bình của một cụm được xác định

Đánh giá thuật toán:

- Ưu điểm:

Thuật toán có độ phức tạp O(K.N.l) với l là số lần lặp

Có khả năng mở rộng, có thể dễ dàng sửa đổi với những dữ liệu mới

Bảo đảm hội tụ sau 1 số bước lặp hữu hạn

Các cụm không phân cấp và không bị chồng chéo dữ liệu lên nhau

- Nhược điểm:

Không có khả năng tìm ra các cụm không lồi hoặc các cụm có hình dạng phức tạp Khó để chọn ra được số lượng cụm tối ưu ngay từ đầu, mà phải qua nhiều lần thử để tìm ra được số lượng cụm tối ưu

Rất nhạy cảm với nhiễu và các phần tử ngoại lai trong dữ liệu

Trang 28

Không phải lúc nào mỗi đối tượng cũng chỉ thuộc về 1 cụm, chỉ phù hợp với đường biên giữa các cụm rõ

2.2.2 Thu ật toán PAM

Thuật toán PAM (Partitioning Around Medoids) được Kaufman và

Rousseeuw đề xuất 1987, là thuật toán mở rộng của thuật toán k-means, nhằm có

khả năng xử lý hiệu quả đối với dữ liệu nhiễu hoặc các phần tử ngoại lai Thay vì sử dụng các trọng tâm như k-means, PAM sử dụng các đối tượng medoid để biểu diễn cho các cụm dữ liệu, một đối tượng medoid là đối tượng đặt tại vị trí trung tâm nhất bên trong của mỗi cụm Vì vậy, các đối tượng medoid ít bị ảnh hưởng của các đối

tượng ở rất xa trung tâm, trong khi đó các trọng tâm của thuật toán k-means lại rất

bị tác động bởi các điểm xa trung tâm này Ban đầu, PAM khởi tạo k đối tượng

medoid và phân phối các đối tượng còn lại vào các cụm với các đối tượng medoid đại diện tương ứng sao cho chúng tương tự với đối tượng medoid trong cụm nhất

Để xác định các medoid, PAM bắt đầu bằng cách lựa chọn k đối tượng medoid bất kỳ Sau mỗi bước thực hiện, PAM cố gắng hoán chuyển giữa đối tượng

medoid O m và đối tượng O p không phải medoid, miễn là sự hoán chuyển này nhằm cải thiện chất lượng của phân cụm, quá trình này kết thúc khi chất lượng của phân cụm không thay đổi Chất lượng phân cụm được đánh giá thông qua hàm tiêu chuẩn, chất lượng phân cụm tốt nhất khi hàm tiêu chuẩn đạt giá trị tối thiểu

Để quyết định hoán chuyển hai đối tượng O m và O p hay không, thuật toán

PAM sử dụng giá trị tổng chi phí hoán chuyển C jmplàm căn cứ:

- O m: là đối tượng medoid hiện thời cần thay thế

- O p : là đối tượng medoid mới thay thế cho O m

- O j: là đối tượng không phải medoid, có thể được di chuyển sang cụm khác

- O m,2 : là đối tượng medoid hiện thời khác với O m mà g ần đối tượng O j nhất

Trong bốn trường hợp mô tả như trên, PAM tính giá trị hoán đổi C jmp cho tất

cả các đối tượng O j Trong mỗi trường hợp C jmp được tính với bốn cách khác nhau

Trang 29

như sau:

+ Trường hợp 1: Giả sử O j hi ện thời thuộc về cụm có đại diện là O m và O j

tương tự với O m,2 hơn O p , (d(O j , O p )≥d(O j ,O m,2)) Trong trường hợp này, ta thay thế O m b ởi đối tượng medoid mới O p và O j sẽ thuộc về cụm có đối tượng

đại diện là O m,2 Vì thế, giá trị hoán chuyển C jmp = d(O j , O m,2 ) – d(O j , O m), giá

trị C jmp là không âm

+ Trường hợp 2: O j hi ện thời thuộc về cụm có đại diện là O m , nhưng O j ít

tương tự với O m,2 so v ới O p (d(O j , O p )<d(O j , O m,2)) Nếu thay thế O m b ởi O p thì

O j s ẽ thuộc về cụm có đại diện là O p Vì thế, C jmp = d(O j , O p )-d(O j , O m ) C jmp ở đây có thể là âm hoặc dương

+ Trường hợp 3: Giả sử O jhiện thời không thuộc về cụm có đối tượng đại

diện là O m , mà thuộc về cụm có đối tượng đại diện là O m,2 Mặt khác, giả sử O j

tương tự với O m,2 hơn so với O p , khi đó, nếu O m được thay thế bởi O p thì O j

vẫn sẽ ở lại trong cụm có đại diện là O m,2 Do đó, C jmp =0

+ Trường hợp 4: O j hi ện thời thuộc về cụm có đối tượng đại diện là O m,2

nhưng O j ít tương tự với O m,2 hơn so với O p Vậy nên, nếu ta thay thế Om bởi

Op thì O j s ẽ chuyển từ cụm O m,2 sang c ụm O p Do đó, C jmp = d(O j , O p ) - d(O j ,

O m,2 ) C jmp ở đây luôn âm

Kết hợp cả bốn trường hợp trên, tổng giá trị hoán chuyển O m bằng O pđược xác định như sau: TC mp= ∑j Cjmp

Các bước thực hiện thuật toán:

Input: Số nguyên k và CSDL gồm n đối tượng cần phân cụm

Output: Một tập gồm k cụm mà tổng giá trị của sự khác nhau của tất cả các đối tượng đến đối tượng tâm của nhóm chứa nó là nhỏ nhất

Bước 1: Chọn k đối tượng medoid bất kỳ

Bước 2: Tính TC mp cho t ất cả các cặp đối tượng O m, , O p Trong đó, O m là đối

Trang 30

tượng medoid và O plà đối tượng không phải medoid

Bước 3: Với mỗi cặp đối tượng O m và O p Tính minO m , minO p , TC mp Nếu

TC mp là âm, thay th ế O m b ởi O p và quay l ại bước 2 Nếu TC mpdương, chuyển sang bước 4

Bước 4: Với mỗi đối tượng không phải medoid, xác định đối tượng medoid

tương tự với nó nhất, đồng thời gán nhãn cụm cho chúng

Đánh giá thuật toán PAM:

Trong bước 2 và bước 3, PAM phải duyệt tất cả k(n-k) cặp O m , O p Với mỗi

cặp, việc tính toán TC mpyêu cầu kiểm tra n-k đối tượng Vì vậy độ phức tạp tính toán của PAM là O(Ik(n-k)2), trong đó I là số vòng lặp Như vậy, thuật toán PAM

kém hiệu quả về thời gian tính toán khi giá trị của k và n lớn

2.2.3 Thuật toán CLARA

CLARA (Clustering LARge Application) được Kaufman và Rousseeuw đề xuất năm 1990, thuật toán này nhằm khắc phục nhược điểm của thuật toán PAM

trong trường hợp giá trị của k và n lớn CLARA tiến hành trích mẫu cho tập dữ liệu

có n phần tử và áp dụng thuật toán PAM cho mẫu này và tìm ra các các đối tượng medoid của mẫu này Người ta thấy rằng, nếu mẫu dữ liệu được trích một cách ngẫu nhiên, thì các medoid của nó xấp xỉ với các medoid của toàn bộ tập dữ liệu ban đầu

Để tiến tới một xấp xỉ tốt hơn, CLARA đưa ra nhiều cách lấy mẫu rồi thực hiện phân cụm cho mỗi trường hợp này và tiến hành chọn kết quả phân cụm tốt nhất khi thực hiện phân cụm trên các mẫu này Để cho chính xác, chất lượng của các cụm được đánh giá thông độ phi tương tự trung bình của toàn bộ các đối tượng dữ liệu trong tập đối tượng ban đầu Kết quả thực nghiệm chỉ ra rằng, 5 mẫu dữ liệu có kích

thước 40+2k cho các kết quả tốt Các bước thực hiện của thuật toán CLARA như

sau:

Trang 31

INPUT: CSDL gồm n đối tượng, số cụm k

OUTPUT: k cụm dữ liệu

1 For i = 1 to

5 do Begin

2 Lấy một mẫu có 40 + 2k đối tượng dữ liệu ngẫu nhiên từ tập dữ liệu và áp

dụng thuật toán PAM cho mẫu dữ liệu này nhằm để tìm các đối tượng medoid đại

End;

Đánh giá thuật toán:

Độ phức tạp tính toán của thuật toán là O(k(40+k)2

+ k(n-k)), và CLARA có

thể thực hiện đối với tập dữ liệu lớn Chú ý đối với kỹ thuật tạo mẫu trong PCDL:

kết quả phân cụm có thể không phụ thuộc vào tập dữ liệu khởi tạo nhưng nó chỉ đạt

tối ưu cục bộ

2.3 Phương pháp phân cụm phân cấp (Hierarchical Methods)

Phương pháp này xây dựng một phân cấp trên cơ sở các đối tượng dữ liệu đang xem xét Nghĩa là sắp xếp một tập dữ liệu đã cho thành một cấu trúc có dạng hình cây, cây phân cấp này được xây dựng theo kỹ thuật đệ quy Có hai cách tiếp cận phổ biến của kỹ thuật này đó là: hòa nhập nhóm, thường được gọi là tiếp cận (Bottom-Up); phân chia nhóm, thường được gọi là tiếp cận (Top-Down)

Trang 32

- Phương pháp “dưới lên” (Bottom up) : Phương pháp này bắt đầu với mỗi

đối tượng được khởi tạo tương ứng với các cụm riêng biệt, sau đó tiến hành nhóm các đối tượng theo một độ đo tương tự (như khoảng cách giữa hai trung tâm của hai nhóm), quá trình này được thực hiện cho đến khi tất cả các nhóm được hòa nhập vào một nhóm (mức cao nhất của cây phân cấp) hoặc cho đến khi các điều kiện kết thúc thỏa mãn Như vậy, cách tiếp cận này sử

dụng chiến lược ăn tham trong quá trình phân cụm

Hình 2.2: Các chi ến lược phân cụm phân cấp [4]

- Phương pháp “trên xuống” (Top Down) : Bắt đầu với trạng thái là tất cả

các đối tượng được xếp trong cùng một cụm Mỗi vòng lặp thành công, một

cụm được tách thành các cụm nhỏ hơn theo giá trị của một phép đo độ tương

tự nào đó cho đến khi mỗi đối tượng là một cụm, hoặc cho đến khi điều kiện

dừng thỏa mãn Cách tiếp cận này sử dụng chiến lược chia để trị trong quá trình phân cụm

Điển hình trong phương pháp tiếp cận theo phân cụm phân cấp là các thuật toán như : AGNES (Agglomerative Nesting), DIANA (Divisive Analysis), BIRCH (1996), CURE (1998), CHAMELEON (1999)

Trang 33

Thực tế áp dụng, có nhiều trường hợp kết hợp cả hai phương pháp phân cụm phân hoạch và phân cụm phân cấp, nghĩa là kết quả thu được của phương pháp phân cấp có thể cải tiến thông qua bước phân cụm phân hoạch Phân cụm phân hoạch và phân cụm phân cấp là hai phương pháp phân cụ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

2.3.1 Thu ật toán BIRCH

BIRCH (Balanced Iterative Reducing and Clustering Using Hierarchies) do

Tian Zhang, amakrishnan và Livny đề xuất năm 1996, là thuật toán phân cụm phân cấp sử dụng chiến lược Top down Ý tưởng của thuật toán là không cần lưu toàn bộ các đối tượng dữ liệu của các cụm trong bộ nhớ mà chỉ lưu các đại lượng thống kê Đối với mỗi cụm dữ liệu, BIRCH chỉ lưu một bộ ba (n, LS, SS), với n là số đối tượng trong cụm, LS là tổng các giá trị thuộc tính của các đối tượng trong cụm và

SS là tổng bình phương các giá trị thuộc tính của các đối tượng trong cụm Các bộ

ba này được gọi là các đặc trưng của cụm CF=(n, LS, SS) (Cluster Features - CF)

và được lưu giữ trong một cây được gọi là cây CF

Cây CF là cây cân bằng, nhằm để lưu trữ các đặc trưng của cụm Cây CF chứa các nút trong và nút lá Nút trong lưu giữ tổng các đặc trưng cụm của các nút con của nó Một cây CF được đặc trưng bởi hai tham số:

- Y ếu tố nhánh (B): Nhằm xác định số tối đa các nút con của mỗi nút trong của

cây;

- Ngưỡng (T): Khoảng cách tối đa giữa bất kỳ một cặp đối tượng trong nút lá

của cây, khoảng cách này còn gọi là đường kính của các cụm con được lưu tại các nút lá

Hai tham số này có ảnh hưởng lớn đến kích thước của cây CF

Thu ật toán BIRCH thực hiện qua các bước sau:

Trang 34

I NPUT: CSDL gồm n đối tượng, ngưỡng T

OUTPUT: k cụm dữ liệu

Bước 1: Duyệt tất cả các đối tượng trong CSDL và xây dựng một cây

CF khởi tạo Một đối tượng được chèn vào nút lá gần nhất tạo thành cụm con

Nếu đường kính của cụm con này lớn hơn T thì nút lá được tách Khi một đối tượng thích hợp được chèn vào nút lá, tất cả các nút trỏ tới gốc của cây được

cập nhật với các thông tin cần thiết

Bước 2: Nếu cây CF hiện thời không có đủ bộ nhớ trong thì tiến hành

xây dựng một cây CF nhỏ hơn bằng cách điều khiển bởi tham số T (vì tăng T

sẽ làm hoà nhập một số các cụm con thành một cụm, điều này làm cho cây CF

nhỏ hơn) Bước này không cần yêu cầu bắt đầu đọc dữ liệu lại từ đầu nhưng

vẫn đảm bảo hiệu chỉnh cây dữ liệu nhỏ hơn

Bước 3: Thực hiện phân cụm: Các nút lá của cây CF lưu giữ các đại

lượng thống kê của các cụm con Trong bước này, BIRCH sử dụng các đại lượng thống kê này để áp dụng một số kỹ thuật phân cụm thí dụ như k-means

và tạo ra một khởi tạo cho phân cụm

Bước 4: Phân phối lại các đối tượng dữ liệu bằng cách dùng các đối

tượng trọng tâm cho các cụm đã được khám phá từ bước 3: Đây là một bước

tuỳ chọn để duyệt lại tập dữ liệu và gán nhãn lại cho các đối tượng dữ liệu tới các trọng tâm gần nhất Bước này nhằm để gán nhãn cho các dữ liệu khởi tạo

và loại bỏ các đối tượng ngoại lai

Khi hòa nhập 2 cụm ta có CF=CF1+CF2= (n1+n2, LS1+LS2, SS1+SS2) Khoảng cách giữa các cụm có thể đo bằng khoảng cách Euclid,

Manhatta,

Đánh giá thuật toán:

- Ưu điểm: Sử dụng cấu trúc cây CF làm cho thuật toán BIRCH có tốc độ

thực hiện PCDL nhanh và có thể áp dụng đối với tập dữ liệu lớn, BIRCH

Ngày đăng: 28/02/2018, 12:04

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Nguy ễn Thị Ngọc Diễm (2013) Lu ận văn So sánh m ột số thuật toán phân cụm d ữ liệu. H ọc viện công nghệ bưu chính viễn thông, Hà Nội Sách, tạp chí
Tiêu đề: Luận văn So sánh một số thuật toán phân cụm dữ liệu
[2]. Tr ần Nguyên Hương (2009) Lu ận văn Một số thuật toán phân cụm cơ bản trong DataMiningTài Li ệu Tiếng Anh Sách, tạp chí
Tiêu đề: Luận văn Một số thuật toán phân cụm cơ bản trong DataMining
[4]. Dr. Osmar R.Zaiane, Principles of knowledge discovery in databases” Fall 2001, University of Alberta Sách, tạp chí
Tiêu đề: Principles of knowledge discovery in databases”
[7]. Raymond and Hendrk (2000) Web Mining Research: A Survey, ACM. Tài li ệu tham khảo từ Internet Sách, tạp chí
Tiêu đề: Web Mining Research: A Survey
[5]. Jiawei Han and Micheline Kamber (2011) Data Mining: Concepts and Techniques Khác
[6]. Raghu Krishnapuram, Anupam Joshi, and Liyu Yi (2001) A Fuzzy Relative of the K – Medoids Algorithm with Application to Web Document and Snippet Clustering Khác

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w