4 つの属性に基づいてデータを分類する KNeighborsClassifier があります。これらの 4 つの属性を手動で重み付けしたいのですが、常に「オペランドを形状 (1,5) (4) と一緒にブロードキャストできませんでした」という問題が発生します。
weights : [callable] : a user-defined function which accepts an array of distances, and returns an array of the same shape containing the weights.
(ここから)に関するドキュメントはほとんどありません
これは私が今持っているものです:
for v in result:
params = [v['a_one'], v['a_two'], v['a_three'], v['a_four']]
self.training_data['data'].append(params)
self.training_data['target'].append(v['answer'])
def get_weights(array_weights):
return [1,1,2,1]
classifier = neighbors.KNeighborsClassifier(weights=get_weights)