猿问

为什么权重不会改变 sci-kit 学习包中的 K 均值聚类中心位置?

我正在尝试使用权重选项计算集群的中心位置。但是权重似乎不起作用。


这是代表问题的简单脚本


X = []

weights = []

for x in range(-10,10):

    for y in range(-10,10):

        X+= [[x,y]]

        if x>0 and y>0:

            weights += [10000]

        else:

            weights += [1]


X = np.array(X)

weights = np.array(weights)


kmeans = KMeans(n_clusters=1, random_state=0).fit(X,weights)

print kmeans.cluster_centers_

它在第一季度[[-0.5 -0.5]]以权重10000打印。


我希望它是大约 (5,5)


EDIT1:试图将 fit() 称为:


fit(X,sample_weight=weights)

返回:


TypeError: fit() got an unexpected keyword argument 'sample_weight'

添加第二个变量也无济于事:


fit(X,None,weights)

返回:


TypeError: fit() takes at most 3 arguments (4 given)


哆啦的时光机
浏览 183回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答