实例化集群模型和可视化工具
model = KMeans(random_state = 42)
visualizer = KElbowVisualizer(model, k=(2,10))使数据适合可视化工具
visualizer.fit(df_final.values)最终确定并渲染图形
visualizer.show()发布于 2021-05-13 16:30:22
K-means是一种无监督学习,该技术中的聚类数量称为K,用户必须定义这个数量。
现在,
visualizer = KElbowVisualizer(model, k=(2,10))在上面的代码行中,我们定义了在2-9的范围内传递给模型的K的数量范围,并选择K,其中形成了一个弯头,这基本上意味着当K的值和平方误差和小于时,该K被选择。
此外,只有当数据非常聚集时,这种肘部方法才能很好地工作。
后来,
visualizer.fit(df_final.values)上面的线将拟合可视化工具上的数据,并在图形上绘制不同的值,在x轴上使用不同的K和y轴上的失真分数。
示例代码:(https://www.scikit-yb.org/en/latest/api/cluster/elbow.html)
from sklearn.cluster import KMeans
from sklearn.datasets import make_blobs
from yellowbrick.cluster import KElbowVisualizer
# Generate synthetic dataset with 8 random clusters
X, y = make_blobs(n_samples=1000, n_features=12, centers=8, random_state=42)
# Instantiate the clustering model and visualizer
model = KMeans()
visualizer = KElbowVisualizer(model, k=(4,12),)
visualizer.fit(X) # Fit the data to the visualizer
visualizer.draw() 输出

https://stackoverflow.com/questions/67513693
复制相似问题