gpt4 book ai didi

python - 当我只在行中获得聚类时,如何微调 K 均值聚类?

转载 作者:行者123 更新时间:2023-11-30 09:25:17 27 4
gpt4 key购买 nike

这是我第一次尝试使用 Python 和 Sci-Kit Learn 进行 K 均值聚类,我不知道最终的聚类图如何构成,也不知道如何微调我的 K 均值聚类算法。

我的最终目标是找到描述一些有趣或有用的行为特征的用户类别聚类。

尝试 1:

输入:性别、年龄范围、国家/地区(所有这些都经过热编码,因为数据是分类的)和帐户年龄(以周为单位的数字)

enter image description here

代码:

# Convert DataFrame to matrix
mat2 = all_dummy.as_matrix()
# Using sklearn
km2 = sklearn.cluster.KMeans(n_clusters=6)
km2.fit(mat2)
# Get cluster assignment labels
labels2 = km2.labels_
# Format results as a DataFrame
results2 = pd.DataFrame([all_dummy.index,labels2]).T

plot_x2 = results2[0].tolist()
plot_y2 = results2[1].tolist()
pyplot.scatter(plot_x2,plot_y2)
pyplot.show()

剧情:

enter image description here

具体问题:

  1. 该图的 X 轴和 Y 轴是什么?
  2. 这张图到底告诉了我什么?
  3. 为什么当我输入 6 个簇时只显示 3 个簇? (通过第一条评论和更新的代码和图表回答)
  4. 如果我不知道我要寻找的关系是什么,如何微调此图表以告诉我更多信息并显示有用的关系?

最佳答案

了解 k 均值的局限性。

特别要注意的是

  1. 您必须删除所有标识符列

  2. k-means 对尺度非常敏感。所有属性都需要根据其值范围、分布和重要性进行仔细调整。预处理至关重要!

  3. k-means 假设变量是连续的。即使是单热编码的,对分类数据的使用也是值得怀疑的。它有时工作得“还不错”,但几乎从来没有工作过“好”。

关于python - 当我只在行中获得聚类时,如何微调 K 均值聚类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41325117/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com