[英]Custom criteria for kmeans in scikit-learn
我想運行在一個聚類算法scikit學習,並在標准的管道(使用它即,我需要把它寫在對於這個聚類算法,我想運行k均值N
倍(即與N
不同的初始點),然后使用我自己的函數來選擇最佳運行。當前實現的 kmeans 版本有一個內置的方式來運行N
次迭代,並根據最小化的集群內方差選擇最佳。本質上我想復制這個 kmeans函數,但對“最佳”擬合使用不同的標准。
我試圖找出最好的方法來做到這一點。 一個有前途的方法似乎是編寫我自己的估算器(例如,使用https://github.com/scikit-learn-contrib/project-template/ 上的工具)。 這個估計器似乎需要實現fit
、 fit_predict
、 fit_transform
、 get_params
、 predict
、 score
、 set_params
和transform
。 在我看來,這個估計器可以在內部運行 kmeans N
次,然后根據我的標准返回單個最佳質心擬合。
有沒有更簡單的方法來做到這一點?
您是否考慮過使用繼承?
您可以在 Python 中執行 OOP。 因此,您只需覆蓋 sklearn KMeans 類的外部循環,並繼承其他所有內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.