Hiện nay có rất nhiều các thuật toán khác nhau được sử dụng để xây dựng các nhóm phân biệt từ cơ sở dữ liệu lớn. Trong phần này, học viên sẽ trình bày về hai thuật toán phân cụm cổ điển và một số thuật toán khác liên quan đến những vấn đề và tập dữ liệu cụ thể.
2.2.1. Các thuật toán phân cụm cơ bản.
Thuật toán phân cấp: Thuật toán phân cấp tạo ra một chuỗi lồng nhau các nhóm con, phân rã tập dữ liệu/đối tượng có thứ tự phân cấp theo một tiêu chí nào đó. Mỗi mức phân rã là sự gộp (hay tách) hai cụm từ mức phân rã cao hơn hoặc thấp hơn. Có hai loại phân rã:
- Nhóm gộp có thứ bậc - bottom up: + Bắt đầu với những cụm chỉ là 1 phần tử
+ Ở mỗi bước, gộp 2 cụm gần nhau thành 1cụm.
+ Khoảng cách giữa 2 cụm: 2 điểm gần nhất từ 2 cụm, hoặc khoảng cách trung bình, vv...
- Nhóm phân chia có thứ bậc - top down: + Bắt đầu với 1 cụm bao gồm tất cả dữ liệu + Phân chia 2 cụm con
+ Tiếp tục phân chia trên 2 cụm con
+ Kết quả sinh ra là sơ đồ hình cây, thể hiện các mức phân rã.
phân cụm dừng lại khi mọi đối tượng được gộp trong một nhóm duy nhất hoặc bất kỳ nhóm nào mà người dùng mong muốn. Thuật toán top down thì theo một quy trình ngược lại.
Hình minh họa dưới đây thể hiện các phương pháp khác nhau của thuật toán phân cấp. Hình 2.1a và 2.1b minh họa việc gộp 2 cụm thành một hoặc tách 1 cụm thành 2 cụm con. Hình 2.1c và 2.1d thể hiện sự khác nhau giữa việc nhóm p1 với p2 và nhóm p3 với p4 với các bước thao tác tương tự nhau.
Hình 2.1a. Thuật toán phân cụm phân cấp 1 ( L.Kaufman & P.J. Rousseeuw, 1990); hình 2.1b. Sơ đồ cây 1 (Periklis Andritsos, 2002)
Hình 2.1c. Thuật toán phân cụm phân cấp 2 ( L.Kaufman & P.J. Rousseeuw, 1990); hình 2.1d. Sơ đồ cây 2 (Periklis Andritsos, 2002) 1990); hình 2.1d. Sơ đồ cây 2 (Periklis Andritsos, 2002)
Thuật toán phân vùng: Thuật toán phân vùng (hình 2.2) phân chia các đối tượng dữ liệu thành các nhóm nhỏ hay cụm không chồng lấp nhau, tức là mỗi đối tượng dữ liệu nằm trong một cụm riêng. Vì thế thuật toán này trái ngược với thuật toán phân cấp. Phân chia Gộp Đối tượng Phân chia Gộp Đối tượng Phân rã Gộp
Hình 2.2: Thuật toán phân vùng (L.Kaufman & P.J. Rousseeuw, 1990) Hai thuật toán phân vùng và phân cấp có thể tích hợp với nhau. Có nghĩa là kết Hai thuật toán phân vùng và phân cấp có thể tích hợp với nhau. Có nghĩa là kết quả do thuật toán phân cấp tạo ra có thể được phát triển nhờ các bước phân vùng.
2.2.2. Các độ đo sử dụng trong phân cụm.
Giả sử trong một miền dữ liệu D, một phần tử dữ liệu p được biểu diễn bằng một véc tơ có số chiều là n (p1, p2,…,pn), trong đó mỗi chiều biểu diễn một thuộc tính mô tả phần tử dữ liệu p. Tùy thuộc vào kiểu giá trị biểu diễn mà độ tương tự giữa hai phần tử p1 và p2 có thể được tính toán bằng các cách khác nhau. Ở đây, học viên chỉ đề cập đến cách tính khoảng cách cho trường hợp giá trị biểu diễn pi các thuộc tính là liên tục (hay là các số thực).
Độ đo khoảng cách Manhattan:
Độ đo khoảng cách Euclide:
Độ đo khoảng cách Minkowski:
Các điểm ban đầu Phân cụm phân vùng
(2.1)
(2.2)
Từ công thức tính độ đo khoảng cách Minkowski, khi q = 1 là độ đo Manhattan, khi q = 2 là độ đo Euclide.