[英]Measuring dissimilarity within the cluster - Kmodes
我正在使用分類數據進行聚類。 我遇到了Kmodes算法,發現它非常適合我的要求。 現在,我想針對所有群集測量群集內的差異。 我正在考慮使用群集來衡量差異,並盡可能減少它。 有什么辦法嗎? 另外,是否有任何方法可以檢查我的數據集群的效率? 由於我的數據是分類數據,因此將距離視為度量標准的方法可能無濟於事。
要衡量集群中的差異,您需要提出某種度量標准。 對於分類數據,計算不相似度的可能方法之一可能是以下幾種:
d(i, j) = (p - m) / p
哪里:
p
是數據中類別/類別的數量 m
是樣本i
和j
之間的匹配數 例如,如果您的數據具有3個分類特征和樣本,則i
和j
如下:
Feature1 Feature2 Feature3
i x y z
j x w z
所以在這里,我們有3個分類特征,所以p=3
,在這三個特征中,兩個特征對於樣本i
和j
具有相同的值,所以m=2
。 因此
d(i,j) = (3 - 2) / 3
d(i,j) = 0.33
另一種選擇是將分類變量轉換為單熱編碼特征,然后計算jaccard相似度 。
因此,為了衡量集群中的差異,您可以計算集群中每個對象之間的成對差異,然后取其平均值。
基於這些度量,您還可以使用silhoutte分數來評估聚類的質量(但是您需要帶着一粒鹽來接受它,有時該分數可能很好,而聚類可能不是您所期望的)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.