




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、The algorithm of Kmeans主要內(nèi)容:Kmeans實(shí)戰(zhàn)聚類算法簡介Kmeans算法詳解Kmeans算法的缺陷及若干改進(jìn) Kmeans的單機(jī)實(shí)現(xiàn)與分布式實(shí)現(xiàn)策略 聚類算法簡介123聚類的目標(biāo):將一組向量分成若干組,組內(nèi)數(shù)據(jù)是相似的,而組間數(shù)據(jù)是有較明顯差異。與分類區(qū)別:分類與聚類最大的區(qū)別在于分類的目標(biāo)事先已知,聚類也被稱為無監(jiān)督機(jī)器學(xué)習(xí)聚類手段:傳統(tǒng)聚類算法 劃分法 層次方法 基于密度方法 基于網(wǎng)絡(luò)方法 基于模型方法什么是Kmeans算法?Q1:K是什么?A1:k是聚類算法當(dāng)中類的個數(shù)。Summary:Kmeans是用均值算法把數(shù)據(jù)分成K個類的算法! Q2:means是什么?
2、A2:means是均值算法。Kmeans算法詳解(1)步驟一:取得k個初始初始中心點(diǎn)Kmeans算法詳解(2)Min of threedue to the EuclidDistance步驟二:把每個點(diǎn)劃分進(jìn)相應(yīng)的簇Kmeans算法詳解(3)Min of threedue to the EuclidDistance步驟三:重新計(jì)算中心點(diǎn)Kmeans算法詳解(4)步驟四:迭代計(jì)算中心點(diǎn)Kmeans算法詳解(5)步驟五:收斂Kmeans算法流程從數(shù)據(jù)中隨機(jī)抽取k個點(diǎn)作為初始聚類的中心,由這個中心代表各個聚類計(jì)算數(shù)據(jù)中所有的點(diǎn)到這k個點(diǎn)的距離,將點(diǎn)歸到離其最近的聚類里調(diào)整聚類中心,即將聚類的中心移動到
3、聚類的幾何中心(即平均值)處,也就是k-means中的mean的含義重復(fù)第2步直到聚類的中心不再移動,此時算法收斂最后kmeans算法時間、空間復(fù)雜度是:時間復(fù)雜度:上限為O(tKmn),下限為(Kmn)其中,t為迭代次數(shù),K為簇的數(shù)目,m為記錄數(shù),n為維數(shù) 空間復(fù)雜度:O(m+K)n),其中,K為簇的數(shù)目,m為記錄數(shù),n為維數(shù)決定性因素Input & centroidsSelected kMaxIterations & ConvergenceMeassures數(shù)據(jù)的采集和抽象初始的中心選擇最大迭代次數(shù)收斂值 k值的選定 度量距離的手段factors?主要討論初始中心點(diǎn)輸入的數(shù)據(jù)及K值的選擇距
4、離度量我們主要研究的三個方面因素。初始中心點(diǎn)的劃分討論初始中心點(diǎn)意義何在?下面的例子一目了然吧?初始中心點(diǎn)收斂后你懂的 如何衡量Kmeans算法的精確度?在進(jìn)一步闡述初始中心點(diǎn)選擇之前,我們應(yīng)該先確定度量kmeans的算法精確度的方法。一種度量聚類效果的標(biāo)準(zhǔn)是:SSE(Sum of Square Error,誤差平方和)SSE越小表示數(shù)據(jù)點(diǎn)越接近于它們的質(zhì)心,聚類效果也就越好。因?yàn)閷φ`差取了平方所以更重視那些遠(yuǎn)離中心的點(diǎn)。一種可以肯定降低SSE的方法是增加簇的個數(shù)。但這違背了聚類的目標(biāo)。因?yàn)榫垲愂窃诒3帜繕?biāo)簇不變的情況下提高聚類的質(zhì)量。現(xiàn)在思路明了了我們首先以縮小SSE為目標(biāo)改進(jìn)算法。改進(jìn)的算
5、法二分Kmeans算法為了克服k均值算法收斂于局部的問題,提出了二分k均值算法。該算法首先將所有的點(diǎn)作為一個簇,然后將該簇一分為二。之后選擇其中一個簇繼續(xù)劃分,選擇哪個簇進(jìn)行劃分取決于對其劃分是否可以最大程度降低SSE值。偽代碼如下:將所有的點(diǎn)看成一個簇當(dāng)簇?cái)?shù)目小于k時對于每一個簇計(jì)算總誤差在給定的簇上面進(jìn)行K均值聚類(K=2)計(jì)算將該簇一分為二后的總誤差選擇使得誤差最小的那個簇進(jìn)行劃分操作二分Kmeans算法的效果雙擊此處添加文字內(nèi)容既然是改進(jìn)算法就要體現(xiàn)改進(jìn)算法的優(yōu)越性。為此控制變量,在相同的實(shí)驗(yàn)環(huán)境下,取相同的k值取。選取相同的的距離度量標(biāo)準(zhǔn)(歐氏距離)在相同的數(shù)據(jù)集下進(jìn)行測試。一組實(shí)驗(yàn)
6、結(jié)果一組不好的初始點(diǎn)產(chǎn)生的Kmeans算法結(jié)果二分kmeans產(chǎn)生的結(jié)果要強(qiáng)調(diào)的是盡管只是這一組實(shí)驗(yàn)不得以得出二分kmeans的優(yōu)越性,但是經(jīng)過大量實(shí)驗(yàn)得出的結(jié)論卻是在大多數(shù)情況下二分kmeans確實(shí)優(yōu)于樸素的kmeans算法。全局最小值二分kmeans真的能使SSE達(dá)到全局最小值嗎?從前面的講解可以看到二分kmeans算法的思想有點(diǎn)類似于貪心思想。但是我們會發(fā)現(xiàn)貪心的過程中有不確定的因素比如:二分一個聚類時選取的兩個中間點(diǎn)是隨機(jī)的,這會對我們的策略造成影響。那么如此一來二分kmeans算法會不會達(dá)到全局最優(yōu)解呢?答案是:會!盡管你可能驚詫于下面的說法,但全局最小值的定義卻是:可能的最好結(jié)果。
7、K值的選擇以及壞點(diǎn)的剔除 討論k值、剔除壞點(diǎn)的意義何在?下面以一個例子來說明k值的重要性。有一組關(guān)于濕度和溫度的數(shù)據(jù)想把它劃分為冬天和夏天兩部分。(k=2)氣象學(xué)家打了個盹不小心把(100,1000%)和(101,1100%)加入了數(shù)據(jù),并不幸選取(100,1000%)作為其中一個初始點(diǎn)于是得到兩個很不靠譜的聚類結(jié)果。為什么會出錯?上面的例子當(dāng)中出錯的原因很明顯。憑直覺我們很容易知道不可能有這樣的天氣它的氣溫是100,濕度是1100%。可見壞點(diǎn)對kmeans的影響之大。另一方面,季節(jié)有春夏秋冬之分,而我們強(qiáng)行的把它們分為夏冬兩個類也是不太合理的。如果分為四個類我們也許可以“中和”掉壞點(diǎn)的影響。
8、究竟哪里錯了!帶canopy預(yù)處理的kmeans算法(1)將數(shù)據(jù)集向量化得到一個list后放入內(nèi)存,選擇兩個距離閾值:T1和T2。(2)從list中任取一點(diǎn)P,用低計(jì)算成本方法快速計(jì)算點(diǎn)P與所有Canopy之間的距離(如果當(dāng)前不存在Canopy,則把點(diǎn)P作為一個Canopy),如果點(diǎn)P與某個Canopy距離在T1以內(nèi),則將點(diǎn)P加入到這個Canopy;(3)如果點(diǎn)P曾經(jīng)與某個Canopy的距離在T2以內(nèi),則需要把點(diǎn)P從list中刪除,這一步是認(rèn)為點(diǎn)P此時與這個Canopy已經(jīng)夠近了,因此它不可以再做其它Canopy的中心了;(4)重復(fù)步驟2、3,直到list為空結(jié)束帶canopy預(yù)處理的kmea
9、ns算法的優(yōu)點(diǎn)canopy可以自動幫我我們確定k值。有多少canopy,k值就選取多少。Canopy可以幫我們?nèi)コ皦狞c(diǎn)”。去除離群的canopy帶canopy預(yù)處理的kmeans算法的新挑戰(zhàn)Canopy預(yù)處理這么好,我們以后就用它好了!我看不見得,它雖然解決kmeans當(dāng)中的一些問題,但其自身也引進(jìn)了新的問題:t1、t2的選取。大數(shù)據(jù)下kmeans算法的并行策略 VS單挑OR群毆?!大數(shù)據(jù)下kmeans算法的并行策略 面對海量數(shù)據(jù)時,傳統(tǒng)的聚類算法存在著單位時間內(nèi)處理量小、面對大量的數(shù)據(jù)時處理時間較長、難以達(dá)到預(yù)期效果的缺陷以上算法都是假設(shè)數(shù)據(jù)都是在內(nèi)存中存儲的,隨著數(shù)據(jù)集的增大,基于內(nèi)存的
10、就難以適應(yīng)是一個為并行處理大量數(shù)據(jù)而設(shè)計(jì)的編程模型。 Kmeans算法都是假設(shè)數(shù)據(jù)都是在內(nèi)存中存儲的,隨著數(shù)據(jù)集的增大,基于內(nèi)存的就難以適應(yīng)是一個為并行處理大量數(shù)據(jù)而設(shè)計(jì)的編程模型,它將工作劃分為獨(dú)立任務(wù)組成的集合。Map-reduce的過程簡介Map函數(shù)設(shè)計(jì)函數(shù)的設(shè)計(jì)框架中 函數(shù)的輸入為,對,其中:為輸入數(shù)據(jù)記錄的偏移量;為當(dāng)前樣本的各維坐標(biāo)值組成的向量首先計(jì)算該向量到各個聚簇中心點(diǎn)的距離,然后選擇最小的距離的聚簇作為該樣本所屬的簇,之后輸出,其中是距最近的聚簇的標(biāo)識符,為表示該樣本的向量Combine函數(shù)設(shè)計(jì)函數(shù)的設(shè)計(jì)函數(shù)的輸入為,對,即函數(shù)的輸出首先,從中解析出各個向量,然后將解析出的向量相加并記錄集合中向量的個數(shù)輸出是,對,其中:是聚簇的標(biāo)識符;是以上集合中所有的向量相加所得的向量及集合中向量的數(shù)目Reduce函數(shù)設(shè)計(jì)函數(shù)的輸入是,鍵值對,其中:為聚簇的標(biāo)識符;為節(jié)點(diǎn)處理的聚簇中含有的樣本的個數(shù)及用向量表示的聚簇的中心點(diǎn)輸出為,對,其中:為聚簇的標(biāo)識符;為新的聚簇中心函數(shù)首先從函數(shù)的輸入中解析出屬于同一個聚簇的樣本的個數(shù)及各個節(jié)點(diǎn)傳過來的,然后將個數(shù)及各個相加,之后將所得到的向量除以個數(shù)得到新的中心點(diǎn)坐標(biāo)。一個運(yùn)行結(jié)果一個實(shí)驗(yàn)所有實(shí)驗(yàn)都是在實(shí)驗(yàn)室搭建的平臺上運(yùn)行的平臺有 臺機(jī)器,都是四核處理器,內(nèi)存版本,版本每臺
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年工礦有軌專用車輛(窄軌機(jī)車車輛)項(xiàng)目合作計(jì)劃書
- 2024年建德市社區(qū)工作者招聘真題
- 2025年南通市教師發(fā)展學(xué)院選聘考試筆試試題【答案】
- 2025年吉林省農(nóng)業(yè)農(nóng)村廳下屬事業(yè)單位招聘考試筆試試題【答案】
- 項(xiàng)目經(jīng)濟(jì)測算案例-項(xiàng)目經(jīng)濟(jì)測算資料文檔
- 消費(fèi)者行為學(xué)洞察中國消費(fèi)者第三版課后答案
- 連鎖百貨實(shí)習(xí)報告范文
- 房管局領(lǐng)導(dǎo)2025上半年述職報告范文
- 湘藝版二年級下冊教案第六課“六一”的歌
- 教育技術(shù)引領(lǐng)下的混學(xué)課堂創(chuàng)新模式探討與實(shí)踐研究報告
- (2025)全國交管12123學(xué)法減分考試題庫附答案
- 虛擬現(xiàn)實(shí)行業(yè)標(biāo)準(zhǔn)-深度研究
- 旋挖鉆機(jī)勞務(wù)合同范本
- T-ZHCA 025-2023 化妝品抗氧化人體測試方法
- 包皮環(huán)切術(shù)的健康宣教
- 班級優(yōu)化大師使用培訓(xùn)
- 醫(yī)院后勤保障與傳染病防控
- 北師版五年級下冊數(shù)學(xué)30道說理題
- 質(zhì)量管理的五年規(guī)劃
- 《商業(yè)攝影》課件
- 華為員工職業(yè)發(fā)展手冊
評論
0/150
提交評論