首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在python的MeanShift模块中,如何选择合适的分位数来估计带宽?

在python的MeanShift模块中,如何选择合适的分位数来估计带宽?
EN

Stack Overflow用户
提问于 2015-02-05 10:15:14
回答 1查看 3.8K关注 0票数 4

我正在对一个数据集执行均值漂移聚类。estimate_bandwidth函数估计执行mean-shift聚类的适当带宽。

语法:

代码语言:javascript
复制
sklearn.cluster.estimate_bandwidth(X, quantile=0.3, n_samples=None, random_state=0)

我发现,估计的带宽随着分位数的增加而增加,从而导致簇的数量减少。类似地,分位数的减少会降低带宽,因此no会更高。集群的数量。

所以,看起来不是。群集的数量取决于所选的分位数。

如何选择最佳分位数?

EN

回答 1

Stack Overflow用户

发布于 2019-04-05 05:59:11

在KNN中使用分位数(在estimate_bandwidth函数中使用)来确定带宽。

具体地说:

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

然后,将根据同一群集中样本之间的平均成对距离(由KNN返回)来计算带宽。所以你可以用它来弄清楚如何设置带宽。此函数返回的带宽将平均覆盖n个样本,这将强烈影响Mean将返回的簇数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28335070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档