You are on page 1of 10

HỌC VIỆN HÀNG KHÔNG VIỆT NAM

KHOA ĐIỆN – ĐIỆN TỬ

BÁO CÁO CHUYÊN ĐỀ 2

ĐỀ TÀI : K-means Clustering


SVTH : Phan Hồng Doanh
MSSV : 1953020071 Deleted[PHAN HỒNG DOANH]:

Lớp : 19 ĐH ĐT-02
GVHD : Trần Quốc Khải

Thành Phố Hồ Chí Minh – 2023


MỤC LỤC
1. Giới thiệu k-means clustering ................................................................................ 2
2. Ý tưởng của thuật toán K-means ...........................................................................2
3. Ứng dụng của thuật toán ........................................................................................ 3
4. Hạn chế của thuật toán ........................................................................................... 4
5. Code ví dụ ...............................................................................................................4

1
1. Giới thiệu k-means clustering
Thuật toán K- means clustering là thuật toán cơ bản nhất trong unsupervised
learning. là một phương pháp được sử dụng trong phân tích tính chất cụm của
dữ liệu. Nó đặc biệt được sử dụng nhiều trong khai phá dữ liệu và thống kê. Nó
phân vùng dữ liệu thành k cụm khác nhau. Giải thuật này giúp chúng ta xác định
được dữ liệu của chúng ta nó thực sử thuộc về nhóm nào.
2. Ý tưởng của thuật toán K-means

 Khởi tạo K điểm dữ liệu trong bộ dữ liệu và tạm thời coi nó là tâm của các
cụm dữ liệu của chúng ta.
 Với mỗi điểm dữ liệu trong bộ dữ liệu, tâm cụm của nó sẽ được xác định
là 1 trong K tâm cụm gần nó nhất.
 Sau khi tất cả các điểm dữ liệu đã có tâm, tính toán lại vị trí của tâm cụm
để đảm bảo tâm của cụm nằm ở chính giữa cụm.
 Bước 2 và bước 3 sẽ được lặp đi lặp lại cho tới khi vị trí của tâm cụm
không thay đổi hoặc tâm của tất cả các điểm dữ liệu không thay đổi.

2
+ KHỞI TẠO : chọn K trọng tâm {ci}(i=1/K}
+ TÍNH TOÁN KHOẢNG CÁCH

+ CẬP NHẬT LẠI TRỌNG TÂM

+ ĐIỀU KIỆN DỪNG : lặp lại các bước 2 và 3 cho tới khi không có sự thay
đổi trọng tâm của cụm
3. Ứng dụng của thuật toán
+ phân cụm tài liệu web
- tìm kiếm và trích rút tài liệu
- tiền xử lý tài liệu : quá trình tách từ và vector hóa tài liệu: tìm kiếm và thay thế
các từ bới chỉ số của từ đó trong từ điển. Biểu diến dữ liệu dưới dạng vecto
- áp dụng K-mean
Kết quả trả về là cụm tài liệu và các trọng tâm tương ứng
+ phân vùng ảnh
+ Xử lý ảnh và video: K-means clustering có thể được sử dụng để phân đoạn
hình ảnh, loại bỏ nhiễu hoặc nén hình ảnh.
+Phân tích khách hàng: K-means clustering có thể được sử dụng để phân tích
hành vi của khách hàng và phân nhóm khách hàng dựa trên hành vi của họ.
+ Phân tích dữ liệu về sức khỏe: K-means clustering có thể được sử dụng để
phân nhóm bệnh nhân dựa trên các yếu tố như lịch sử bệnh, giới tính và tuổi.
+ Phân tích thị trường tài chính: K-means clustering có thể được sử dụng để
phân loại các chứng khoán và tìm ra các mối tương quan giữa chúng.

3
+ Xử lý ngôn ngữ tự nhiên: K-means clustering có thể được sử dụng để phân
loại các từ trong văn bản và tìm ra các nhóm từ có liên quan với nhau.
+Điều khiển robot: K-means clustering có thể được sử dụng để giúp robot học
và phát hiện môi trường xung quanh để thực hiện các tác vụ như định vị và điều
Hướng
4. Hạn chế của thuật toán
+ chúng ta cần biết số lượng cluster cần clustering : Trong thực tế, nhiều trường
hợp chúng ta không xác định được giá trị này
+ Nghiệm cuối cùng phụ thuộc vào các centers được khởi tạo ban đầu:
Tùy vào các center ban đầu mà thuật toán có thể có tốc độ hội tụ rất chậm hoặc
thậm chí cho chúng ta nghiệm không chính xác
+ các cluster cần có số lượng điểm gần bằng nhau
+ các cluster cần có dạng hình tròn
5. Code ví dụ
VD1 :Để kiểm tra mức độ hiểu quả của một thuật toán, chúng ta sẽ làm một ví
dụ đơn giản (thường được gọi là toy example). Trước hết, chúng ta chọn center
cho từng cluster và tạo dữ liệu cho từng cluster bằng cách lấy mẫu theo phân
phối chuẩn có kỳ vọng là center của cluster đó và ma trận hiệp phương sai
(covariance matrix) là ma trận đơn vị.

4
5
Trong đồ thị trên, mỗi cluster tương ứng với một màu. Có thể nhận thấy rằng có
một vài điểm màu đỏ bị lẫn sang phần cluster màu xanh.
VD2 :

6
Từ kết quả này chúng ta thấy rằng thuật toán K-means clustering làm việc khá
thành công, các centers tìm được khá gần với kỳ vọng ban đầu. Các điểm thuộc
cùng một cluster hầu như được phân vào cùng một cluster (trừ một số điểm màu đỏ
ban đầu đã bị phân nhầm vào cluster màu xanh da trời, nhưng tỉ lệ là nhỏ và có thể
chấp nhận được).

7
KẾT QUẢ TÌM ĐƯỢC BẰNG THƯ VIỆN scikit-learn

VD3:

8
9

You might also like