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