繁体   English   中英

如何在Python的MeanShift模块中估算带宽时选择合适的分位数?

[英]How to choose appropriate quantile value while estimating bandwidth in MeanShift module of python?

我正在对数据集执行均值漂移聚类。 Estimate_bandwidth函数估计适当的带宽以执行均值漂移聚类。

句法:

sklearn.cluster.estimate_bandwidth(X, quantile=0.3, n_samples=None, random_state=0)

我发现,估计带宽随分位数的增加而增加,从而导致簇数减少。 类似地,分位数的减少会减少带宽,因此不会增加带宽。 集群。

因此,似乎没有。 簇的数量取决于选择的分位数。

如何选择最佳分位数?

分位数用于KNN(在estimate_bandwidth函数内部使用)来确定带宽。
具体来说:

n = KNN中的样本数=批次中的样本数*分位数

然后,将基于同一群集中样本之间的平均成对距离(由KNN返回)来计算带宽。 因此,您可以使用它来弄清楚如何设置带宽。 该函数返回的带宽平均将覆盖n个样本,这将严重影响平均移位将返回的簇数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM