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