估計頻寬 (estimate_bandwidth)#
- sklearn.cluster.estimate_bandwidth(X, *, quantile=0.3, n_samples=None, random_state=0, n_jobs=None)[原始碼]#
估計用於均值漂移演算法的頻寬。
此函數的執行時間至少與
n_samples
成平方關係。對於大型資料集,建議透過設定n_samples
來進行子抽樣。或者,可以將參數bandwidth
設定為一個較小的值,而無需估計它。- 參數:
- X形狀為 (n_samples, n_features) 的類陣列
輸入點。
- quantile浮點數,預設值=0.3
應該介於 [0, 1] 之間。0.5 表示使用所有成對距離的中位數。
- n_samples整數,預設值=None
要使用的樣本數。如果未指定,則使用所有樣本。
- random_state整數、RandomState 實例,預設值=None
用於從輸入點中隨機選擇樣本以進行頻寬估計的產生器。使用整數可使隨機性具有確定性。請參閱詞彙表。
- n_jobs整數,預設值=None
用於鄰居搜尋的平行任務數。
None
表示 1,除非在joblib.parallel_backend
內容中。-1
表示使用所有處理器。有關更多詳細資訊,請參閱詞彙表。
- 返回:
- bandwidth浮點數
頻寬參數。
範例
>>> import numpy as np >>> from sklearn.cluster import estimate_bandwidth >>> X = np.array([[1, 1], [2, 1], [1, 0], ... [4, 7], [3, 5], [3, 6]]) >>> estimate_bandwidth(X, quantile=0.5) np.float64(1.61...)