sklearn.cluster.mean_shift¶
sklearn.cluster.mean_shift(X, *, bandwidth=None, seeds=None, bin_seeding=False, min_bin_freq=1, cluster_all=True, max_iter=300, n_jobs=None)
使用平面内核对数据执行均值移位聚类。
在用户指南中阅读更多内容。
参数 | 说明 |
---|---|
X | array-like of shape (n_samples, n_features) 输入数据 |
bandwidth | float, default=None 核的带宽。 如果不给出带宽,如果不给出带宽,则使用基于所有成对距离的中值的启发式方法来确定。sklearn.cluster.estimate_bandwidth函数做这个是很有效的。 |
seeds | array-like of shape (n_seeds, n_features) or None 指出初始内核位置的点。如果为None并且bin_seeding=False,则每个数据点都用作种子。如果为None并且bin_seeding=True,请参见see bin_seeding。 |
bin_seeding | bool, default=False 如果是True,初始内核位置不是所有点的位置,而是点的离散版本的位置,其中点被绑定到一个网格上,网格的粗度与带宽相对应。将此选项设置为True将加快算法的速度,因为初始化的种子将减少。默认值为False。如果种子参数是None,就忽略它。 |
min_bin_freq | int, default=1 要加快算法的速度,只接受那些至少有min_bin_freq个点的箱子作为种子。 |
cluster_all | bool, default=True 如果为True,那么所有的点都是聚在一起的,甚至那些不在任何内核中的孤立点也是如此。孤立点被分配到最近的内核。如果为False,则为孤立点指定聚类标签-1。 |
max_iter | int, default=300 如果尚未收敛,则聚类操作终止之前的每个种子点的最大迭代次数(对于该种子点)。 |
n_jobs | int, default=None 用于计算的任务数。这是通过计算n_init中的每一个并行运行来实现的。None 意味着1,除非在joblib.parallel_backend 上下文中。-1 指使用所有处理器。有关详细信息,请参阅Glossary。新版本0.17:使用n_jobs并行执行。 |
返回值 | 说明 |
---|---|
cluster_centers | array, shape=[n_clusters, n_features] 簇中心坐标 |
labels | array, shape=[n_samples] 每一点的聚类标签 |
注意
有关示例,请参见examples/cluster/plot_mean_shift.py。