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。