基於約束的聚類分析有哪些型別?
基於約束的聚類方法尋找滿足使用者指定偏好或約束的聚類結果。根據約束的性質,基於約束的聚類可以採用不同的方法。約束主要分為以下幾類:
對單個物件的約束 − 可以對要聚類的物件定義約束。例如,在房地產應用中,可以只想對價值超過一百萬美元的豪華別墅進行空間聚類。此約束將要聚類的物件集合限制在一定範圍內。這可以透過預處理(例如,使用SQL查詢實現選擇)簡單地進行管理,之後問題就簡化為無約束聚類的問題。
對聚類引數選擇的約束 − 使用者可以設定每個聚類引數的期望範圍。聚類引數通常對給定的聚類演算法非常特定。引數示例包括k-means演算法中期望的聚類數k;或DBSCAN演算法中的ε(半徑)和MinPts(最小點數)。
儘管此類使用者指定的引數可以強烈影響聚類結果,但它們通常僅限於演算法本身。因此,它們的微調和處理通常不被視為基於約束的聚類的一種形式。
對距離或相似性函式的約束 − 可以為要聚類的物件的特定屬性定義多個距離或相似性函式,或為有限的成對物件定義不同的距離度量。例如,在對運動員進行聚類時,可以使用不同的權重方案來衡量身高、體重、年齡和技能水平。
使用者指定的對單個聚類屬性的約束 − 使用者可以指定結果聚類的期望特性,這會強烈影響聚類過程。
考慮一家快遞公司,該公司希望確定城市中k個服務站的位置。該公司擁有一個使用者資料庫,其中註冊了使用者的姓名、位置、使用公司服務的時長以及平均月度價格。可以使用基於客戶位置計算的距離函式將此位置選擇問題表述為無約束聚類問題。
一種更智慧的方法是將客戶分為兩類:高價值客戶(需要頻繁、定期的服務)和普通客戶(需要偶爾的服務)。為了節省成本並提供良好的服務,管理人員添加了以下約束:
每個服務站必須至少服務100個高價值客戶。
每個服務站必須至少服務5000個普通客戶。基於約束的聚類將在聚類過程中考慮這些約束。
基於“部分”監督的半監督聚類 − 可以使用某種弱形式的監督來顯著提高無監督聚類的質量。這可以是成對約束的形式(即,標記為屬於相同或不同聚類的物件對)。這種受約束的聚類過程稱為半監督聚類。