K means的改進 二分K means演算法

2021-07-25 20:38:12 字數 654 閱讀 3455

(1)演算法的初始中心點選擇與演算法的執行效率密切相關,而隨機選取中心點有可能導致迭代次數很大或者限於某個區域性最優狀態;通常 k << n,且 t  << n,所以演算法經常以區域性最優收斂。

(2)k均值的最大問題是要求使用者必須事先給出 k 的值,k 的選擇一般都基於一些經驗值和多次試驗結果,對於不同的資料集,k 的取值沒有可借鑑性。

(3)對異常偏離的資料敏感——離群點;k均值對 「 雜訊 」 和孤立點資料都是敏感的,少量的這類資料就能對平均值造成極大的影響。

由於傳統的k_means演算法的聚類結果容易受到初始聚類中心點選擇的影響,因此在傳統的k_means演算法的基礎上進行演算法的改進,對初始中心點的選擇比較嚴格,各個中心點的距離較遠,這就避免了初始聚類中心會選到乙個類上,一定程度上克服了演算法陷入區域性最優的狀態。

二分k_means(bisecting k_means)演算法的主要思想是:首先將所有點作為乙個簇,然後將該簇一分為二。之後選擇能最大限度降低聚類的代價函式(也就是誤差平方和)的簇劃分為兩個簇。依此進行下去,直到簇的數目等於使用者給定的數目 k 為止。以上隱含乙個原則是:因為聚類的誤差平方和能夠度量聚類的效能,該值越小表示資料點越接近於他們的質心,聚類的效果越好。所以我們就需要對誤差平方和最大的簇進行再一次劃分,因為誤差平方和越大,表示該聚類效果越不好,越有可能是多個簇被當成了乙個簇,所以我們首先需要對這個簇進行劃分。

k Means 二分k 均值演算法)

在上一節中我們已經講了k 均值演算法,當時我們選取的質心是隨機選取的,沒有什麼依據,所以聚類的結果很可能出現誤差,為了降低這種誤差的出現我們今天來研究一種優化的k 均值演算法 二分k 均值演算法,看到名稱我們就能明白在每次劃分的時候都是將資料劃分成倆份,直到達到我們要求的聚類數。怎麼來分?選取哪一堆...

二分查詢法及改進

二分查詢演算法基本思想 二分查詢演算法的前置條件是,乙個已經排序好的序列 在本篇文章中為了說明問題的方便,假設這個序列是公升序排列的 這樣在查詢所要查詢的元素時,首先與序列中間的元素進行比較,如果大於這個元素,就在當前序列的後半部分繼續查詢,如果小於這個元素,就在當前序列的前半部分繼續查詢,直到找到...

二分查詢以及改進演算法

二分查詢又稱折半查詢,優點是比較次數少,查詢速度快,平均效能好 其缺點是要求待查表為有序表,且插入刪除困難。因此,折半查詢方法適用於不經常變動而查詢頻繁的有序列表。首先,假設表中元素是按公升序排列,將表中間位置記錄的關鍵字與查詢關鍵字比較,如果兩者相等,則查詢成功 否則利用中間位置記錄將表分成前 後...