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

THUẬT TOÁN GOM CỤM K-MEDOIDS SỰKHÁC NHAU GIỮA THUẬT TOÁN K-MEDOIDS VÀ THUẬT TOÁN K-MEANS

11 3,5K 18

Đ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 11
Dung lượng 251,35 KB

Nội dung

Thuật toán gom cụm K-Medoids Thuật toán K-Medoids lấy đối tượng trong cụm làm trọng tâm của cụm gọi là đối tượng tâm.. Ý tưởng chính của thuật toán K-Medoids như sau: Để tìm ra k cụm với

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

BÀI THU HOẠCH CHUYÊN ĐỀ KHAI THÁC DỮ LIỆU

TÊN ĐỀ TÀI THUẬT TOÁN GOM CỤM K-MEDOIDS

SỰ KHÁC NHAU GIỮA THUẬT TOÁN K-MEDOIDS VÀ

THUẬT TOÁN K-MEANS

GIẢNG VIÊN: PGS.TS ĐỖ PHÚC HỌC VIÊN: TRẦN NGỌC THUẬN

MÃ SỐ HỌC VIÊN: CH1101141

KHÓA: 6

Trang 2

LỜI MỞ ĐẦU

Ngày nay với sự phát triển nhanh chóng của khoa học công nghệ đặc biệt là trong lĩnh vực công nghệ thông tin Với sự bùng nổ về thông tin lưu trữ thì việc quản lý dữ liệu và khai thác được nguồn dữ liệu vô tận này là một vấn đề rất khó khăn Vì thế khai thác dữ liệu (Data Mining) là vấn đề quan trọng hàng đầu được mọi người quan tâm hiện nay

Trong khai thác dữ liệu cũng chia ra rất nhiều vấn đề quan trọng, trong đó vấn

đề gom cụm dữ liệu (data clustering) là vấn đề đáng được quan tâm

Mục đích của gom cụm là tìm những mẫu tin đại diện hoặc gom dữ liệu tương tự nhau theo một chuẩn đánh giá nào đó thành những cụm Các điểm dữ liệu trong các cụm khác nhau có độ tương tự thấp hơn các điểm nằm trong một cụm

Bài báo cáo trình bày thuật toán gom cụm K-medoids, ví dụ minh hoạ, những ưu

và khuyết điểm của thuật toán, so sánh sự khác nhau với thuật toán K-means

Tôi xin chân thành cám ơn PGS.TS Đỗ Phúc đã cung cấp những kiến thức cơ bản trong chuyên đề Khai thác dữ liệu, cám ơn sự hướng dẫn nhiệt tình của Thầy trong chuyên đề, những thông tin vô cùng bổ ích để tôi hoàn thành bài thu hoạch này

Trang 3

MỤC LỤC

I Giới thiệu chung về Gom cụm dữ liệu (Data Clustering)và

thuật toán gom cụm K-medoids

Trang 1

1 Gom cụm dữ liệu (Data Clustering) Trang 1

2 Thuật toán gom cụm K-Medoids Trang 1

II So sánh giải thuật K-means và K-medoids Trang 6

1 Giải thuật gom cụm K-means Trang 6

2 So sánh giải thuật K-means và K-medoids Trang 7

Trang 4

1

I Giới thiệu chung về Gom cụm dữ liệu (Data Clustering)và thuật toán gom cụm K-medoids

1 Gom cụm dữ liệu (Data Clustering)

 Gom cụm dữ liệu (data clustering) là hình thức học không giám sát (unsupervised learning) trong đó các mẫu học chưa được gán nhãn Mục đích của gom cụm dữ liệu là tìm những mẫu đại diện hoặc gom dữ liệu tương tự nhau (theo một chuẩn đánh giá nào đó) thành những cụm Các điểm dữ liệu trong các cụm khác nhau có độ tương tự thấp hơn các điểm dữ liệu trong cùng một cụm Một số ứng dụng tiêu biểu của gom cụm:

- Xem xét phân bổ dữ liệu

- Tiền xử lý cho các thuật toán khác

- Khám phá thói quen và nhu cầu của khách hàng để có phương pháp tiếp thị thích hợp

- Phân loại đất theo công năng hoặc thực tế sử dụng để có chính sách quy hoạch phù hợp

- Phân loại nhà theo vị trí, giá trị,

- Phân loại khách hàng để có chính sách bảo hiểm hợp lý

- Phân loại bệnh nhân

-

2 Thuật toán gom cụm K-Medoids

Thuật toán K-Medoids lấy đối tượng trong cụm làm trọng tâm của cụm (gọi

là đối tượng tâm) Thuật toán này dựa trên nguyên tắc làm cực tiểu sự khác nhau giữa các đối tượng trong cùng một cụm

Ý tưởng chính của thuật toán K-Medoids như sau: Để tìm ra k cụm với n đối tượng thì K-medoids chọn ngẫu nhiên k đối tượng vào k cụm, coi mỗi đối tượng này là trọng tâm của cụm Phân bổ các đối tượng còn lại vào cụm mà sự khác nhau của nó với đối tượng trọng tâm của cụm là ít nhất (còn gọi là gần nhất) Sau đó lặp lại quá trình: thay đổi đối tượng trọng tâm của mỗi cụm sao cho chất lượng của cụm được cải thiện Chất lượng của cụm được lượng giá bởi một hàm

đo sự khác nhau giữa một đối tượng và đối tượng trọng tâm chứa nó Quá trình lặp cho đến khi không còn sự thay đổi nào về lực lượng cũng như hình dạng của các cụm

Để chọn một đối tượng không là đối tượng trọng tâm Orandom thay thế tốt cho một đối tượng trọng tâm Oi thì mỗi đối tượng p xét theo 4 trường hợp sau đây:

- p đang thuộc vào cụm có trọng tâm Oi Nếu Oj được thay thế bởi

Orandom và p gần nhất với Oi (i≠j) thì p được gán lại vào Oi

- p đang thuộc vào Oi Nếu Oi được thay thế bởi Orandom và p gần nhất với Orandom thì p được gán lại vào Orandom

- P đang thuộc vào Oj Nếu Oj được thay thế bởi Orandom và p vẫn gần nhất với Oj thì không thay đổi gì cả tức là p vẫn thuộc Oj

- P đang thuộc vào Oj (i≠j) Nếu Oj được thay thế bởi Orandom và p gần nhất với Orandom thì p được gán lại vào Orandom

Trang 5

 Thuật toán K-medoids có thể được mô tả cụ thể như sau:

đến đối tượng trọng tâm của cụm chứa nó là nhỏ nhất

Thuật toán:

B ước 1: Chọn k đối tượng bất kì vào k cụm Coi mỗi đối tượng này là tâm của nhóm

B ước 2: Lặp

B ước 3: Gán mỗi đối tượng còn lại vào một cụm mà nó gần với đối tượng tâm của cụm nhất

B ước 4: Chọn ngẫu nhiên một đối tượng không là đối tượng tâm, Orandom

B ước 5: Tính lại giá trị, S, đối với việc đổi Oj với Orandom

B ước 6: Nếu S<0 thì đổi Oj với Orandom để tạo ra một tập với đối tượngtâm mới

B ước 7: Đến khi không có sự thay đổi nào nữa thì dừng

Ví d ụ với k=2

 Ví dụ minh hoạ thuật toán K-medoids

Giả sử ta có bảng dữ liệu như sau:

X1 2 6

X2 3 4

X3 3 8

X4 4 7

Trang 6

3

X5 6 2

X6 6 4

X7 7 3

X8 7 4

X9 8 5

X10 7 6

Ta chọn k=2 và chọn x2(3,4) và x8(7,4) là tâm của 2 cụm

Suy ra ta được 2 cụm: c1(3,4) và c2(7,4)

Bây giờ chúng ta tính toán khoảng cách của những điểm còn lại với 2 cụm bằng khoảng cách Manhattan (là khoảng cách Minkowski khi q=1)

Khoảng cách Minkowski:

Ta được bảng khoảng cách như sau:

Khoảng cách từ các điểm còn lại đến cụm 1

Điểm Toạ độ điểm trọng tâm c1 Toạ độ điểm không phải là trọng tâm Khoảng cách

Khoảng cách từ các điểm còn lại đến cụm 2

Điểm Toạ độ điểm trọng tâm c2 Toạ độ điểm không phải là trọng tâm Khoảng cách

So sánh 2 bảng dữ liệu ở trên ta thấy:

Trang 7

Điểm 1,3,4 có khoảng cách gần cụm c1 hơn nên gom các điểm này vào chung cụm c1

Cụm c1 lúc này thành: c1={1,2,3,4} hoặc theo toạ độ

c1={(2,6),(3,4),(3,8),(4,7)}

Điểm 5,6,7,9,10 có khoảng cách gần cụm c2 hơn nên gọm các điểm này vào chung cụm c2

Cụm c2 lúc này thành: c2={5,6,7,8,9,10} hoặc theo toạ độ

c2={(6,2),(6,4),(7,3),(7,4),(8,5),(7,6)}

Bây giờ ta tính tổng giá trị (total cost)của các điểm có trung tâm là c1 và c2

Công thức tính giá trị giữa các điểm là:

Cost(x,c)=∑

=

d

i

c x

1

) (

Trong đó:

x: là tất cả các điểm không phải là trọng tâm

c: là các điểm trọng tâm

d:là số cụm (trong trường hợp này là 2)

> total cost={cost(c1,1) + cost(c1,3) + cost(c1,4)}

+ {cost(c2,5) + cost(c2,6) + cost(c2,7)

+ cost(c2,9)+cost(c2,10)}

= (3+4+4)+(3+1+1+2+2)

= 20

 Với điểm trọng tâm c1=x2=(3,4) Ta xét các điểm không phải là trọng tâm

- Xét x7=(7,3)

Lúc này ta có 2 trọng tâm mới là c1=x2=(3,4) và c2=x7=(7,3)

Ta tính lại khoảng cách từ các điểm khác đến 2 trọng tâm:

Khoảng cách tới cụm c1:

Điểm Toạ độ điểm trọng tâm c1 Toạ độ điểm không phải là trọng tâm Khoảng cách

Khoảng cách tới cụm c2

Điểm Toạ độ điểm

trọng tâm c2

Toạ độ điểm không phải

là trọng tâm

Khoảng cách

Trang 8

5

Total cost1 = (3+4+4)+(2+2+1+3+3) = 22

Ta thấy total cost1-total cost=22-20=2>0

 Không thay đổi vị trí của điểm x7

 Tương tự ta xét tất cả các điểm x còn lại và tính khoảng cách nhỏ nhất so với total cost ban đầu

 Kết quả cho ta là dữ liệu vẫn không thay đổi  Chúng ta chỉ gom được 2 cụm như ban đầu

Cụm 1: c1={x1,x2,x3,x4}

Cụm 2: c2={x5,x6,x7,x8,x9,x10}

Điểm mạnh:

Xử lý được với dữ liệu nhiễu và mẫu cá biệt

Điểm yếu:

- Tốn chi phí, độ phức tạp O(ik(n-k)2)

- Kém hiệu quả

- Chọn được số cụm k trước

- Kết quả và thời gian chạy phụ thuộc vào phân hoạch ban đầu

Trang 9

II So sánh giải thuật K-means và K-medoids

1 Giải thuật gom cụm K-means

K-means là một trong những phương pháp học không giám sát trong số những phương pháp gom cụm Nó phân lớp một tập dữ liệu thành k cụm Mỗi cụm sẽ

có một trọng tâm Mỗi đối tượng dữ liệu sẽ được đưa vào mỗi cụm gần trọng tâm nhất Tiến trình sẽ lặp lại cho đến khi

Giải thuật

- Chọn ngẫu nhiên k điểm làm trọng tâm ban đầu của k cụm

- Gán (hoặc gán lại) từng điểm vào cụm có trọng tâm gần điểm đang xét nhất

Nếu không có phép gán lại nào thì dừng Vì không có phép gán lại nào có nghĩa là các cụm đã ổn định và thuật toán không thể cải thiện làm giảm độ phân biệt hơn được nữa

- Tính lại trọng tâm cho từng cụm

- Quay lại bước 2

Minh hoạ thuật toán với k=2

Điểm mạnh

- Hiệu quả với dữ liệu lớn và rộng, độ phức tạp O(ikn), trong đó i là số lần lặp, k

là số cụm, n là tổng dữ liệu (k<<n và i<<n)

- Dễ dàng hiểu và cài đặt

Điểm yếu:

- Chỉ thực thi được khi chọn được số lượng cụm

- Cụ thể số cum k

- Khó phát hiện các loại cụm có hình dạng phức tạp và nhất là các dạng cụm không lồi

- Không thể làm được với dữ liệu nhiễu và mẫu cá biệt

- Chỉ có thể áp dụng khi tính được trọng tâm

Trang 10

7

2 So sánh giải thuật K-means và K-medoids

Bảng so sánh giải thuật K-medoids và K-means

Độ phức tạp O(ikn) O(ik(n-k)2)

Tính hiệu quả Nhiều hơn Thấp hơn

Tính thực thi Dễ dàng cài đặt Phức tạp

Tính nhạy cảm của dữ

liệu

Cụm có hình dạng lồi Có Không nhiều

Tính tối ưu Tách được cụm Tách được cụm

Tập dữ liệu nhỏ

 Giải thuật K-means dùng giá trị trung bình của các điểm trong cụm làm trọng tâm, còn ở k-medoids thì dùng chính điểm làm trọng tâm

Trang 11

TÀI LIỆU THAM KHẢO

1 Đỗ Phúc, Giáo trình Khai thác dữ liệu, NXB Đại học Quốc gia Thành phố

Hồ Chí Minh 2006

2 The IEEE International Confrence on Data Mining (ICDM), 2001

3 Ng, R and J Han (1994) Efficient and Effective Clustering Methods for Spatial Data Mining

Proceedings of the 20th International Conference on Very Large Databases, Santiago, Chile

Ngày đăng: 09/04/2015, 22:01

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

TÀI LIỆU LIÊN QUAN

w