聚类效果评价——Davies-Bouldin(DB指标)——内部评估标准(3)

Davies, David L., and Donald W. Bouldin. “A cluster separation measure.” IEEE transactions on pattern analysis and machine intelligence 2 (1979): 224-227.

公式与简介

指标越小表明聚类效果越好,最小值为0

首先计算: R i j = s i + s j d i j R_{ij} = \frac{s_i + s_j}{d_{ij}} Rij=dijsi+sj

其中 s i s_i si表示这个类的直径; d i j d_{ij} dij表示类 i i i j j j的质心(centroids)之间的距离

然后取最大的 R i j R_{ij} Rij即可得到DB指标值: D B = 1 k ∑ i = 1 k max ⁡ i ≠ j R i j DB = \frac{1}{k} \sum_{i=1}^k \max_{i \neq j} R_{ij} DB=k1i=1kmaxi=jRij

代码实现

import pandas as pd
import numpy as np
from sklearn import metrics
from sklearn.cluster import KMeans

dataframe = pd.DataFrame(data=np.random.randint(0, 50, size=(200, 10)))
# 以kmeans聚类方法为例
kmeans_model = KMeans(n_clusters=3, random_state=1).fit(dataframe)
labels = kmeans_model.labels_
# 计算指标
score = metrics.davies_bouldin_score(dataframe, labels)
print(score)
  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Davies-Bouldin值(DBV)是一种用于评估聚类结果的指标,它基于聚类簇内的紧密度和不同聚类之间的分离度。其数学理论基础和计算公式如下: 1. 对于每个聚类簇i,计算其簇内数据点的平均距离a(i),用来衡量簇内数据点的紧密度。计算公式为:a(i) = (1 / n_i) * Σ(d(x, c_i)),其中d(x, c_i)表示数据点x与簇中心c_i之间的距离,n_i表示簇内数据点的数量。 2. 对于每对不同的聚类簇i和j,计算它们之间的距离d(i, j),用来衡量不同聚类之间的分离度。一般使用聚类中心之间的欧氏距离作为衡量指标,计算公式为:d(i, j) = d(c_i, c_j),其中d(c_i, c_j)表示簇中心c_i和c_j之间的欧氏距离。 3. 计算每个聚类簇i的散布度s(i),表示簇i内数据点与其他簇之间的平均距离。对于每个聚类簇i,计算其与其他聚类簇之间的平均距离,然后取最大值。计算公式为:s(i) = max[ (1 / (n_i-1)) * Σ(d(i, j)) ],其中n_i表示簇i内数据点的数量。 4. 对于每个聚类簇i,计算其Davies-BouldinDBV(i),表示该聚类簇的好坏程度。计算公式为:DBV(i) = (a(i) + a(j)) / d(i, j),其中j表示与簇i不同的聚类簇。 5. 对于所有聚类簇的Davies-Bouldin值,计算均值得到整个聚类结果的Davies-BouldinDBV。计算公式为:DBV = (1 / k) * ΣDBV(i),其中k表示聚类簇的数量。 Davies-Bouldin值的范围在0到正无穷之间,越接近0表示聚类结果越好,数值越大表示聚类结果越差。通过计算Davies-Bouldin值,可以帮助评估聚类算法的性能和选择最佳的聚类数量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆萌的代Ma

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值