![](/img/trans.png)
[英]ImportError: No module named sklearn.cluster in dbscan example
[英]How to assign sample_weights in sklearn.cluster DBSCAN?
我正在使用DBSCAN查找RGB图像的像素值的群集。
db = DBSCAN(eps=0.3, min_samples=10).fit(X)
其中, X
是N x 3
矩阵。 X
每一行都包含RGB三胞胎。
现在,我想为像素值分配权重,该权重是距图像中心的距离的函数。 这是我正在使用的功能:
score = 1 / (1 + math.exp(-a * distance)) # a = 0.001
我计算weight_matrix
用上面的score
填充的weight_matrix
接下来,我这样做:
db = DBSCAN(eps=0.3, min_samples=10).fit(X,y=None, sample_weight=weight_matrix)
其中weight_matrix
数组的长度等于X
的行数。
但是我收到以下错误:
TypeError: fit() got an unexpected keyword argument 'y'
所以我尝试这样做:
db = DBSCAN(eps=0.3, min_samples=10).fit(X, sample_weight=weight_matrix)
现在我得到这个错误:
TypeError: fit() got an unexpected keyword argument 'sample_weight'
我认为我传递的参数有误,但不能确定。 我的scikit-learn版本是0.14.0。
似乎您正在使用scikit-learn v <= 0.15,因为这是DBSCAN具有适合形式的最后一个版本
fit(X)
从0.16开始
fit(X, y=None, sample_weight=None)
只需将scikit-learn更新为0.16或0.17.X
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.