《Python數(shù)據(jù)分析基礎(chǔ)與案例實(shí)戰(zhàn)》第6章 6.2 構(gòu)建聚類模型_第1頁
《Python數(shù)據(jù)分析基礎(chǔ)與案例實(shí)戰(zhàn)》第6章 6.2 構(gòu)建聚類模型_第2頁
《Python數(shù)據(jù)分析基礎(chǔ)與案例實(shí)戰(zhàn)》第6章 6.2 構(gòu)建聚類模型_第3頁
《Python數(shù)據(jù)分析基礎(chǔ)與案例實(shí)戰(zhàn)》第6章 6.2 構(gòu)建聚類模型_第4頁
《Python數(shù)據(jù)分析基礎(chǔ)與案例實(shí)戰(zhàn)》第6章 6.2 構(gòu)建聚類模型_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

構(gòu)建聚類模型隨著高鐵、動(dòng)車等鐵路運(yùn)輸?shù)呐d建,航空公司受到巨大的沖擊,行內(nèi)競爭也愈發(fā)激烈。因此,航空公司如何通過乘客乘機(jī)行為測量的數(shù)據(jù),進(jìn)一步評(píng)判乘客的價(jià)值以及對(duì)乘客進(jìn)行細(xì)分,找到有價(jià)值的乘客群體和需關(guān)注的乘客群體,進(jìn)而對(duì)不同價(jià)值的乘客群體提供個(gè)性化服務(wù),制定相應(yīng)的營銷策略,使得航空公司效益得到最大化的提升成為一個(gè)問題。而這個(gè)問題,便可通過聚類分析進(jìn)行解決。構(gòu)建聚類模型1了解K-Means聚類目錄了解常用的聚類算法2了解密度聚類3聚類模型評(píng)價(jià)4與分類不同,聚類分析是在沒有給定劃分類別的情況下,根據(jù)數(shù)據(jù)相似度進(jìn)行樣本分組的一種方法。與分類模型需要使用有類標(biāo)記樣本構(gòu)成的訓(xùn)練數(shù)據(jù)不同,聚類模型可以建立在無類標(biāo)記的數(shù)據(jù)上,是一種非監(jiān)督的學(xué)習(xí)算法。聚類的輸入是一組未被標(biāo)記的樣本,聚類根據(jù)數(shù)據(jù)自身的距離或相似度將它們劃分為若干組,劃分的原則是組內(nèi)(內(nèi)部)樣本距離最小化而組間(外部)樣本距離最大化,如圖所示。了解常用的聚類算法常用聚類方法如表所示。了解常用的聚類算法類別包括的主要算法劃分(分裂)方法K-Means算法(k-均值)、k-medoids算法(k-中心點(diǎn))、CLARANS算法(基于選擇的算法)層次分析方法BIRCH算法(平衡迭代規(guī)約和聚類)、CURE算法(代表點(diǎn)聚類)、CHAMELEON算法(動(dòng)態(tài)模型)基于密度的方法DBSCAN算法(基于高密度連接區(qū)域)、DENCLUE算法(基于密度分布函數(shù))、OPTICS算法(對(duì)象排序識(shí)別)基于網(wǎng)格的方法STING算法(統(tǒng)計(jì)信息網(wǎng)絡(luò))、CLIOUE算法(聚類高維空間)、WAVE-CLUSTER算法(小波變換)基于模型的方法統(tǒng)計(jì)學(xué)算法、神經(jīng)網(wǎng)絡(luò)算法常用聚類算法如表所示。了解常用的聚類算法算法名稱算法描述K-MeansK-Means聚類又稱快速聚類,在最小化誤差函數(shù)的基礎(chǔ)上將數(shù)據(jù)劃分為預(yù)定的聚類數(shù)k。該算法原理簡單并便于處理大量數(shù)據(jù)k-medoidsk-medoids算法不將簇中對(duì)象的均值作為簇中心,而選用簇中離均值最近的對(duì)象作為簇中心DBSCANDBSCAN是指帶有噪聲的應(yīng)用程序的基于密度的空間聚類算法,可查找出高密度的核心樣本并從中擴(kuò)展聚類,適用于包含相似密度簇的數(shù)據(jù)系統(tǒng)聚類系統(tǒng)聚類又稱多層次聚類,分類的單位由高到低呈樹形結(jié)構(gòu),且所處的位置越低,所包含的對(duì)象就越少,但這些對(duì)象間的共同屬性越多。該聚類算法只適合在數(shù)據(jù)量小的時(shí)候使用,數(shù)據(jù)量大的時(shí)候速度會(huì)非常慢1了解K-Means聚類目錄了解常用的聚類算法2了解密度聚類3聚類模型評(píng)價(jià)4K-Means聚類算法是典型的基于距離的非層次聚類算法,在最小化誤差函數(shù)的基礎(chǔ)上將數(shù)據(jù)劃分為預(yù)定的類數(shù)k,采用距離作為相似性的評(píng)價(jià)指標(biāo),即認(rèn)為兩個(gè)對(duì)象的距離越近,其相似度就越大。K-Means聚類算法過程如下。從n個(gè)樣本數(shù)據(jù)中隨機(jī)選取k個(gè)對(duì)象作為初始的聚類中心。分別計(jì)算每個(gè)樣本到各個(gè)聚類中心的距離,將對(duì)象分配到距離最近的聚類中。所有對(duì)象分配完成后,重新計(jì)算k個(gè)聚類的中心。與前一次計(jì)算得到的k個(gè)聚類中心比較,如果聚類中心發(fā)生變化,執(zhí)行步驟(2),否則執(zhí)行下一步驟。當(dāng)聚類中心不發(fā)生變化時(shí)停止并輸出聚類結(jié)果。算法過程聚類的結(jié)果可能依賴于初始聚類中心的隨機(jī)選擇,可能使得結(jié)果嚴(yán)重偏離全局最優(yōu)分類。實(shí)踐中,為了得到較好的結(jié)果,通常會(huì)選擇不同的初始聚類中心,多次運(yùn)行K-Means算法。值得注意的是,在所有對(duì)象分配完成后,重新計(jì)算k個(gè)聚類的中心時(shí),對(duì)于連續(xù)數(shù)據(jù),聚類中心取該簇的均值,但是當(dāng)樣本的某些屬性是分類變量時(shí),均值可能無定義,這時(shí)便需要使用其他的算法進(jìn)行聚類。算法過程對(duì)于連續(xù)屬性,要先對(duì)各屬性值進(jìn)行零-均值標(biāo)準(zhǔn)化,再進(jìn)行距離的計(jì)算。K-Means聚類算法中,一般需要度量樣本之間的距離、樣本與簇之間的距離以及簇與簇之間的距離。度量樣本之間的相似性常用的是歐幾里得距離、曼哈頓距離和閔可夫斯基距離。樣本與簇之間的距離可以用樣本到簇中心的距離表示;簇與簇之間的距離可以用簇中心的距離表示。數(shù)據(jù)類型與相似性的度量1.連續(xù)屬性設(shè)有p個(gè)屬性來表示n個(gè)樣本的數(shù)據(jù)矩陣,則其歐幾里得距離如式(1)所示,曼哈頓距離為如(2)所示,閔可夫斯基距離如式(3)所示。 (1)

(2)

(3)數(shù)據(jù)類型與相似性的度量對(duì)于文檔數(shù)據(jù),使用余弦度量相似性。先將文檔數(shù)據(jù)整理成文檔-詞矩陣格式,如表所示。兩個(gè)文檔之間的相似度的計(jì)算公式如式所示。

在式中,i和j為空間中的兩個(gè)向量,|i|和|j|表示向量的模,cos(i,j)則為通過這兩個(gè)向量所計(jì)算出的夾角的余弦值,該余弦值即兩個(gè)文檔之間的相似度d(i,j)。數(shù)據(jù)類型與相似性的度量2.文檔數(shù)據(jù)

lostwinteamscoremusichappysad…coach文檔一142808710…6文檔二113341164…7文檔三96773148…5

目標(biāo)函數(shù)上三個(gè)式子中的符號(hào)說明如表所示。目標(biāo)函數(shù)符號(hào)含義符號(hào)含義k聚類簇的個(gè)數(shù)第i個(gè)簇n數(shù)據(jù)集中樣本的個(gè)數(shù)x對(duì)象(樣本)第i個(gè)簇中樣本的個(gè)數(shù)下面結(jié)合具體案例來解決本節(jié)開始提出的問題。部分汽車評(píng)估數(shù)據(jù)如表所示。目標(biāo)函數(shù)maintpersonslug_bootsafetyvhigh2smallmedvhigh2smallhighvhigh2medlowvhigh2medmedvhigh2medhighvhigh2biglowvhigh2bigmedvhigh2bighighvhigh4smalllowvhigh4smallmed其中維護(hù)費(fèi)用(maint)包含“l(fā)ow”“med”“high”“vhigh”4種取值,乘客人數(shù)(persons)取值為“2”“4”“more”,空間(lug_boot)取值為“small”“med”“big”,安全系數(shù)(safety)取值為“l(fā)ow”“med”“high”,根據(jù)這些數(shù)據(jù)將汽車分類成不同類型。采用K-Means聚類算法,設(shè)定聚類個(gè)數(shù)k為4,最大循環(huán)次數(shù)次數(shù)為500,距離函數(shù)取歐幾里得距離,對(duì)汽車評(píng)估數(shù)據(jù)進(jìn)行聚類目標(biāo)函數(shù)需要注意的是,scikit-learn庫中的K-Means算法僅僅支持歐幾里得距離,原因在于采用其他的距離不一定能夠保證算法的收斂性。運(yùn)行代碼得到的結(jié)果如表所示。目標(biāo)函數(shù)分群類別分群1分群2分群3分群4樣本個(gè)數(shù)432399432464樣本個(gè)數(shù)占比25.01%23.10%25.01%26.86%聚類中心maint2.4814810.5213032.5185190.482759persons1.2222220.9624060.7777781.034483lug_boot0.3333331.2431081.6666670.793103safety1.0740741.7192980.9259260.379310接著用pandas和Matplotlib繪制不同汽車類型的概率密度函數(shù)圖,通過這些圖能比較不同客戶群的價(jià)值,其中屬性取值將自動(dòng)轉(zhuǎn)換為數(shù)字,如“l(fā)ow”轉(zhuǎn)換為0,得到的結(jié)果如圖1所示。圖1目標(biāo)函數(shù)如“med”轉(zhuǎn)換為1,得到的結(jié)果如圖2所示。圖2目標(biāo)函數(shù)如“high”轉(zhuǎn)換為2,得到的結(jié)果如圖3所示。圖3目標(biāo)函數(shù)如“vhigh”轉(zhuǎn)換為3,得到的結(jié)果如圖4所示。圖4目標(biāo)函數(shù)從圖1、圖2、圖3、圖4中可以評(píng)估不同汽車類型,具體如下。分群1特點(diǎn):maint(維修費(fèi)用)集中在low~med;persons(載客人數(shù))集中在2人以上;lug_boot(空間)集中在small;safety(安全性)集中在low~med。分群2特點(diǎn):maint主要集中在high~vhigh;persons集中在2人以上;lug_boot集中在big;safety集中在low。分群3特點(diǎn):maint集中在low~med;persons集中在2人以上;lug_boot集中在big;safety集中在med。分群4特點(diǎn):maint集中在high~vhigh;persons集中在4人以上;lug_boot集中在small;safety集中在med。對(duì)比分析。分群1的汽車維修費(fèi)用低、載客人數(shù)處于中等水平、空間小、安全性處于中等水平,是質(zhì)量中等的類。分群2的汽車維修費(fèi)用高、載客人數(shù)處于中等水平、空間大、安全性低,是質(zhì)量較差的類型。分群3的汽車維修費(fèi)用和載客人數(shù)處于中等水平、空間大、安全性處于中等水平,是質(zhì)量較好的類型。分群4的汽車維修費(fèi)用高、載客人數(shù)多、空間小、安全性較低,是質(zhì)量較差的類型。目標(biāo)函數(shù)1了解K-Means聚類目錄了解常用的聚類算法2了解密度聚類3聚類模型評(píng)價(jià)4

了解密度聚類

了解密度聚類

了解密度聚類對(duì)生成的兩簇非凸數(shù)據(jù)和一簇對(duì)比數(shù)據(jù)使用DBSCAN類構(gòu)建密度聚類模型,密度聚類結(jié)果如圖所示。由圖可以看出,密度聚類模型對(duì)于非凸數(shù)據(jù)(中的2個(gè)空心圓部分)的聚類效果很好,可以區(qū)分出不同的非凸數(shù)據(jù)。其中,三角形表示噪聲數(shù)據(jù)。使用scikit-learn庫中的cluster模塊的DBSCAN類可以實(shí)現(xiàn)采用密度聚類算法對(duì)數(shù)據(jù)進(jìn)行聚類。了解密度聚類DBSCAN類常用的參數(shù)及其說明如表所示。了解密度聚類參數(shù)名稱參數(shù)說明eps接收float。表示同一個(gè)簇中兩個(gè)樣本之間的最大距離,該距離被視為另一個(gè)樣本的鄰域。默認(rèn)為0.5min_samples接收int。表示一個(gè)點(diǎn)附近被視為核心點(diǎn)的樣本數(shù)量。默認(rèn)為5metric接收str或callable。表示計(jì)算要素陣列中實(shí)例之間的距離時(shí)使用的度量。默認(rèn)為euclideanmetric_params接收dict。表示度量功能的其他關(guān)鍵字參數(shù)。默認(rèn)為Nonealgorithm接收算法名稱。表示NearestNeighbors模塊將使用該算法來計(jì)算逐點(diǎn)距離并查找最近的鄰居。默認(rèn)為auton_jobs接收int。表示要運(yùn)行的并行作業(yè)數(shù)。默認(rèn)為None1了解K-Means聚類目錄了解常用的聚類算法2了解密度聚類3聚類模型評(píng)價(jià)4雷美梅聚類分析僅根據(jù)樣本數(shù)據(jù)本身將樣本分組,組內(nèi)的樣本相互之間是相似的(相關(guān)的),而不同組中的樣本是不同的(不相關(guān)的)。組內(nèi)的樣本相似性越大,組間的樣本差別越大,聚類效果就越好。常見的聚類評(píng)價(jià)方法有purity評(píng)價(jià)法、RI評(píng)價(jià)法、F值評(píng)價(jià)法、FM系數(shù)等。聚類模型評(píng)價(jià)

聚類模型評(píng)價(jià)1.purity評(píng)價(jià)法RI評(píng)價(jià)法是一種用排列組合原理來對(duì)聚類進(jìn)行評(píng)價(jià)的方法。RI評(píng)價(jià)公式如式所示。在式中,R是指被聚在一類的兩個(gè)對(duì)象被正確分類了,W是指不應(yīng)該被聚在一類的兩個(gè)對(duì)象被正確分開了,M是指不應(yīng)該放在一類的對(duì)象被錯(cuò)誤地放在了一類,D是指不應(yīng)該分開的對(duì)象被錯(cuò)誤地分開了。聚類模型評(píng)價(jià)2.RI評(píng)價(jià)法F值評(píng)價(jià)法是基于上述RI評(píng)價(jià)法衍生出的一個(gè)方法。F值評(píng)價(jià)公式如式所示。在式中,,。

實(shí)際上RI評(píng)價(jià)法就是將準(zhǔn)確率p和召回率r看得同等重要,事實(shí)上有時(shí)候我們可能需要某一特性

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論