Computer >> Máy Tính >  >> Lập trình >> Lập trình

Phân cụm đa quan hệ là gì?

Phân cụm đa quan hệ là quá trình phân vùng các đối tượng dữ liệu thành một tập hợp các cụm dựa trên sự giống nhau của chúng, sử dụng thông tin trong nhiều quan hệ. Trong phần này, nó có thể giới thiệu CrossClus (Phân cụm quan hệ chéo với hướng dẫn người dùng), một thuật toán dành cho phân cụm đa quan hệ khám phá cách sử dụng hướng dẫn người dùng trong phân nhóm và truyền nhiều ID để tránh kết hợp vật lý.

Có một thách thức lớn trong phân nhóm đa quan hệ là có quá nhiều thuộc tính trong các quan hệ khác nhau và thông thường, chỉ một phần nhỏ trong số đó có liên quan đến một nhiệm vụ phân nhóm cụ thể.

Hãy xem xét cơ sở dữ liệu của khoa khoa học máy tính. Nó có thể ra lệnh cho các sinh viên, các thuộc tính bao gồm nhiều khía cạnh khác nhau của thông tin, chẳng hạn như các môn học của sinh viên, các ấn phẩm của sinh viên, cố vấn và các nhóm nghiên cứu của sinh viên, v.v.

Người dùng thường quan tâm đến việc phân nhóm sinh viên bằng cách sử dụng một khía cạnh thông tin nhất định (ví dụ:phân nhóm sinh viên theo lĩnh vực nghiên cứu của họ). Người dùng thường nắm bắt rất tốt các yêu cầu của ứng dụng và ngữ nghĩa dữ liệu của họ. Do đó, quản lý của Auser trong cấu trúc của một truy vấn đơn giản và có thể được sử dụng để cải thiện hiệu quả và chất lượng của phân nhóm đa quan hệ nhiều chiều.

CrossClus chấp nhận các truy vấn của người dùng có chứa mối quan hệ đích và một hoặc nhiều thuộc tính thích hợp, các thuộc tính này cùng xác định mục tiêu phân nhóm của người dùng. CrossClusde xác định các thuộc tính đa quan hệ. Thuộc tính đa quan hệ A ’được xác định bởi một đường dẫn tham gia R t ⋈ R 1 …. ⋈ R k một thuộc tính R k . A trong số R k và có thể là một toán tử tổng hợp (ví dụ:trung bình, đếm, tối đa).

A ’được đại diện chính thức bởi [A’. tham gia đường dẫn, A ’.attr, A’ .aggr], trong đó A ’. aggr là tùy chọn. Thuộc tính đa quan hệ A ’là một đặc điểm phân loại hoặc một số, tùy thuộc vào R k . A là phân loại hoặc số. Nếu A ’là một đối tượng phân loại, thì đối với một bộ mục tiêu t, t. A ’biểu thị sự phân phối giá trị giữa các bộ giá trị trong R k có thể kết hợp với t.

Trong quy trình phân nhóm đa quan hệ, CrossClus cần tìm kiếm các thuộc tính thích hợp trên nhiều quan hệ. CrossClus phải giải quyết hai thách thức lớn trong quá trình tìm kiếm. Đầu tiên, quan hệ đích, R t , thường có thể tham gia với mỗi quan hệ không mục tiêu, R, thông qua nhiều đường dẫn liên kết khác nhau và mỗi thuộc tính trong R có thể được sử dụng như một thuộc tính đa quan hệ.

Không thể thực hiện bất kỳ loại tìm kiếm toàn diện nào trong không gian tìm kiếm khổng lồ này. Thứ hai, trong số rất nhiều thuộc tính, một số thuộc tính phù hợp với truy vấn của người dùng (ví dụ:cố vấn của sinh viên có liên quan đến lĩnh vực nghiên cứu của cô ấy), trong khi nhiều thuộc tính khác thì không liên quan (ví dụ:thông tin cá nhân của bạn cùng lớp của học sinh).