Thuật toán phân cụm Girvan-Newman

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu mô hình phân cụm có thứ bậc các đồ thị dữ liệu (Trang 46 - 49)

Thay vì việc tìm kiếm những nút mạng trong đồ thị có độ gắn kết cao với nhau, phương pháp phân cụm bằng thuật toán phân chia được đưa ra như một cách giải quyết hữu hiệu. Để tránh các khuyết điểm của phương pháp phân nhóm có thứ bậc, thay vì cố gắng để xây dựng một biện pháp tìm cạnh trung tâm của cụm, chúng ta đi tìm những cạnh ít trung tâm nhất, cạnh đó được gọi tên là cạnh giữa cụm. Thuật toán này dựa trên quan niệm cho rằng khi các cụm được gắn kết với nhau thì đường đi giữa cụm này đến cụm khác sẽ đi qua các cạnh nối giữa các cụm với tần suất cao. Mục đích chính của thuật toán là tìm những cạnh nối đó. Thay vì việc xây dựng cụm bằng cách thêm vào các cạnh mạnh mẽ nhất, chúng ta sẽ xây dựng bằng cách loại bỏ dần dần các cạnh nối từ đồ thị ban đầu. Khi đó, các cụm trong mạng sẽ bị ngắt kết nối với nhau, ta có thể xác định được cách phân vùng đồ thị thành các phần nhỏ riêng

rẽ. Để làm được việc này, điều quan trọng nhất của thuật toán là việc tính toán như thế nào, sử dụng tính chất nào để phát hiện ra những cạnh nối này, từ đó loại bỏ chúng ra khỏi đồ thị. Thuật toán lần đầu tiên được đề xuất bởi Freeman. Theo Freeman, các cạnh được coi là cạnh có số lượng con đường ngắn nhất giữa các cặp đỉnh khác nhau chạy qua nó. Cạnh nối có ảnh hưởng rất lớn đến dòng chảy của thông tin giữa các nút khác, đặc biệt là trong trường hợp thông tin lưu truyền trong mạng chủ yếu theo con đường ngắn nhất. Thuật toán điển hình nhất trong các thuật toán chia này là thuật toán Girvan-Newman [9, 13, 16].

Để tìm các cạnh trong mạng nối hai đỉnh thuộc hai cụm khác nhau, khái quát đây là cạnh có độ trung gian cao, và xác định độ đo trung gian này bằng cách tính số đường đi ngắn nhất giữa các cặp đỉnh mà có qua nó. Với một đồ thị m cạnh và n đỉnh thì thời gian tính toán cho giai đoạn này là O(mn) .Với đồ thị có trọng số, độ đo trung gian của cạnh có trọng số đơn giản được tính bằng độ đo trung gian của cạnh không có trọng số chia cho trọng số của cạnh đó.

Nếu một mạng lưới bao gồm các cụm hoặc nhóm chúng chỉ được liên kết nối yếu bằng một nhóm cạnh, thì tất cả các đường đi ngắn nhất giữa các cụm khác nhau sẽ phải đi dọc theo một trong số ít các cạnh thuộc nhóm cạnh đó. Vì vậy, các cạnh kết nối các cụm sẽ là cạnh có độ đô trung gian cao. Bằng cách loại bỏ các cạnh, thuật toán Girvan-Newman tách được thành các nhóm riêng biệt. Thuật toán được thực hiện theo các bước sau:

1. Tính độ đo trung gian cho tất cả các cạnh trong mạng. 2. Hủy bỏ các cạnh có độ trung gian cao nhất.

3. Tính lại độ trung gian cho tất cả các cạnh bị ảnh hưởng theo các cạnh đã loại bỏ.

Hình 2.5: Ví dụ phát hiện cụm sử dụng thuật toán Girvan - Newman [7]. Thuật toán Girvan-Newman khá đơn giản và dễ hiểu. Toàn bộ thuật toán có thể được biểu diễn trong một dendrogram, ở đây ta có thể hiểu là thuật toán đi từ gốc đến các lá. Các nhánh của cây biểu diễn cho các phép loại bỏ cạnh để chia đồ thị thành các cụm riêng rẽ. Thuật toán Girvan-Newman đưa lại kết quả tương đối tốt trong nhiều trường hợp, mặc dù vậy nó vẫn gặp phải một số nhược điểm:

1. Thuật toán Girvan-Newman sử dụng phương pháp loại trừ đến khi không có cạnh nào vượt qua ngưỡng của độ trung gian cao nhất, vì vậy nên số lượng cụm hoàn toàn không kiểm soát trước được. Bên cạnh đó, thuật toán sử dụng nhiều phép phân vùng, khó có thể xác định được phép phân vùng nào mang lại hiệu quả tốt nhất.

2. Do tại mỗi lượt thực hiện, thuật toán tính lại độ trung gian của mỗi cạnh liên quan sau khi xóa đi cạnh có độ trung gian lớn nhất nên độ phức tạp thời gian là khá cao. Giả sử với đồ thị n đỉnh, số cạnh phải xóa đi khỏi đồ thị là m cạnh thì ta cần lượng thời gian tính toán O(mn) cho mỗi lần lặp. Tổng thời gian chạy thuật toán O(m2n). Trong trường hợp xấu nhất, mỗi đỉnh được chia ra thành một cụm riêng rẽ thì độ phức tạp thời gian của thuật toán sẽ lên đến O(n3).

3. Trên thực tế, mỗi đơn vị nút mạng có thể thuộc vào rất nhiều cụm khác nhau. Ví dụ với một cá nhân A, đóng góp vai trò là một nút trên mạng xã hội có thể thuộc vào nhiều nhóm: Bạn cùng lớp, đồng nghiệp cùng công ty, anh em họ hàng trong gia đình, … Nhưng với cách phân chia của Girvan-Newman không giải quyết được hiện tượng chồng chéo cụm trên.

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu mô hình phân cụm có thứ bậc các đồ thị dữ liệu (Trang 46 - 49)

Tải bản đầy đủ (PDF)

(87 trang)