sklearn内部数据集调用及应用 (3)

sklearn内部数据集调用及应用

target # 这里我们也可以再拿出原始标签相互对比

sklearn内部数据集调用及应用

  当然啦,先人们也是一早就想着:得找个办法来衡量一下聚类效果啊。
  于是乎,轮廓系数就诞生了。
  且看下方代码。

'''这里插入一下轮廓系数的一些知识点吧 1.对于第i个对象,计算它到所属簇中所有其他对象的平均距离,记ai(体现凝聚度) 2.对于第i个对象和不包含该对象的任意簇,计算该对象到给定簇中所有对象的平均距离,取最小,记bi(体现分离度) 3.第i个对象的轮廓系数为si=(bi-ai)/max(ai, bi) 所以,很明显:轮廓系数取值为[-1,1],且越大越好;若值为负,即ai>bi,说明样本被分配到错误的簇中,不可接受;若值接近0,ai≈bi,表明聚类结果有重叠的情况。 ''' from sklearn.metrics import silhouette_score # 轮廓系数 import matplotlib.pyplot as plt silhouettteScore = [] for i in range(2,15): kmeans = KMeans(n_clusters = i,random_state=123).fit(X) ##构建并训练模型 score = silhouette_score(X,kmeans.labels_) # X是零一化之后的数据 silhouettteScore.append(score) plt.figure(figsize=(10,6)) plt.plot(range(2,15),silhouettteScore,linewidth=1.5, linestyle="-") plt.show()

sklearn内部数据集调用及应用

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zygyzd.html