《機器學習原理與實戰(zhàn)》第5章-無監(jiān)督學習_第1頁
《機器學習原理與實戰(zhàn)》第5章-無監(jiān)督學習_第2頁
《機器學習原理與實戰(zhàn)》第5章-無監(jiān)督學習_第3頁
《機器學習原理與實戰(zhàn)》第5章-無監(jiān)督學習_第4頁
《機器學習原理與實戰(zhàn)》第5章-無監(jiān)督學習_第5頁
已閱讀5頁,還剩53頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

無監(jiān)督學習22-10月-241降維目錄無監(jiān)督學習簡介2聚類任務3無監(jiān)督學習也屬于機器學習,與有監(jiān)督學習最大的區(qū)別在于,無監(jiān)督學習輸入的數(shù)據(jù)集中沒有事先標記好的歷史范例,需要算法自行從數(shù)據(jù)中尋找出潛在的規(guī)律與規(guī)則,自動對輸入的數(shù)據(jù)進行分類和分群。有監(jiān)督學習算法從數(shù)據(jù)集中尋找特定的模式用于特定的用途,而無監(jiān)督學習算法從數(shù)據(jù)集中揭露數(shù)據(jù)中潛在的性質(zhì)與規(guī)則,更為傾向于理解數(shù)據(jù)本身。無監(jiān)督學習簡介無監(jiān)督學習的分類效果精度通常低于有監(jiān)督學習,但也有一定的優(yōu)勢。在實際應用中,給訓練集中的數(shù)據(jù)貼上標簽往往是一個非常耗費時間的過程,并且要能為數(shù)據(jù)貼上標簽還需要具備有先驗知識。使用無監(jiān)督學習算法從龐大的樣本集合中找出不同的類別,由人工對這些類別進行標注后,再進行后續(xù)處理是一種常見的應用方法。無監(jiān)督學習算法也可以用于特征的篩選,之后再用于構建分類器的訓練。無監(jiān)督學習的一個典型應用是聚類分析(ClusterAnalysis),在聚類過程中數(shù)據(jù)依據(jù)相似度自動聚成一簇,這個過程不需要人工干預。除聚類外,常見的無監(jiān)督學習的應用還有降維(DimensionalityReduce)。無監(jiān)督學習簡介1降維目錄無監(jiān)督學習簡介2聚類任務3在進行樣本數(shù)據(jù)的聚類分析時,有時涉及的變量或數(shù)據(jù)組屬性較多,這增加了算法計算的空間復雜度。降維處理是一種行之有效的降低數(shù)據(jù)分析的復雜性手段。其核心思想是,通過原來變量組或數(shù)據(jù)組屬性的線性或非線性重構達到簡化數(shù)據(jù)目的。常見的降維方法有:主成分分析(PrincipalComponentAnalysis,PCA)核線性變換降維PCA是一種通過降維技術把多個變量化為幾個新的綜合變量的統(tǒng)計分析方法。新的綜合變量是原始變量的線性組合,能夠反映原始變量的絕大部分信息,且新變量之間互不相關。設

為一個

維隨機向量,并假定二階矩陣存在,記均值向量為

,協(xié)方差矩陣為

,進行如下所示的線性變換。

PCA上式有以下約束條件。

時,

,即

不相關

這里的

在本章中有其實際意義。設

為的特征值

,

為相應的一組正交單位特征向量,

的主成分就是以

的特征向量為系數(shù)的線性組合,它們互不相關,其方差為

的特征值。PCA當

時,

達到最大值,所求的

就是第一主成分。如果第一主成分所含信息不夠多,不足以代表原始的

個變量,則需要再考慮使用

。為了使

所含的信息與

不重疊,要求

。當

時,

達到最大值,所求的

就是第二主成分。類似的,可以再定義第三主成分,直至第

主成分。一般,

的第

主成分是指約束條件下的

。

,主成分向量

與原始向量

的關系為

,其中。

PCA第

主成分

在總方差

中的比例

稱為主成分

的貢獻率,第一主成分

的貢獻率最大,表明它解釋原始變量的能力最強,y2~yp的解釋能力依次減弱。主成分分析的目的就是為了減少變量的個數(shù),因而一般不會使用所有

個主成分,忽略一些帶有較小方差的主成分不會給總方差帶來太大的影響。前

個主成分的貢獻率之和在總方差中的比例

稱為主成分

的累計貢獻率,它表明了

解釋原始變量的能力。通常取較?。ㄏ鄬τ?/p>

)的

,可使得累計貢獻率達到一個較高的百分比(如80%~90%),此時,

可代替

,從而達到降維的目的,而信息的損失卻不多。PCA使用scikit-learn庫中decomposition模塊的PCA類可以創(chuàng)建PCA模型,其基本語法格式如下。PCA類的常用的參數(shù)及其說明,如表所示。PCAclasssklearn.decomposition.PCA(n_components=None,copy=True,whiten=False,svd_solver='auto',tol=0.0,iterated_power='auto',random_state=None)參數(shù)名稱說明n_components接收int或str。表示所要保留的主成分個數(shù)n,即保留下來的特征個數(shù)n,賦值為int時,表示降維的維度,如n_components=1,將把原始數(shù)據(jù)降到一個維度。賦值為str時,表示降維的模式,如取值為'mle'時,將自動選取特征個數(shù)n,使得滿足所要求的方差百分比。默認為NonePCA類的常用的參數(shù)及其說明,如表所示。PCA參數(shù)名稱說明copy接收bool。表示是否在運行算法時,將原始訓練數(shù)據(jù)復制一份。若為True,則運行后,原始訓練數(shù)據(jù)的值不會有任何改變,因為是在原始數(shù)據(jù)的副本上進行運算;若為False,則運行后,原始訓練數(shù)據(jù)的值會發(fā)生改變。默認為Truewhiten接收bool。表示是否白化,使得每個特征具有相同的方差。默認為False采用線性降維方法降低數(shù)據(jù)維度時,通常是在假設從高維空間到低維空間的函數(shù)映射是線性的條件下進行的,然而在有些時候,高維空間是線性不可分的,需要找到一個非線性函數(shù)映射才能進行恰當?shù)慕稻S,這就是非線性降維?;诤俗兓木€性降維方法是非線性降維的常用方法,本節(jié)以核主成分分析(KernelizedPAC,KPAC)為例進行簡要說明。在進行數(shù)據(jù)分析的過程中,如果遇到線性不可分的情況,通??梢圆捎肒PAC方法進行數(shù)據(jù)的主成分分析。KPAC通過將線性不可分的輸入數(shù)據(jù)映射到線性可分的高維特征空間中,然后在特征空間再以PCA降維,進而實現(xiàn)數(shù)據(jù)的降維處理。核化線性降維假設樣本點

通過映射

映射到由確定的超平面之后,且經(jīng)過中心化處理以后的像為。在高維特征空間進行數(shù)據(jù)的主成分分析,即求解下式。在上式中

為協(xié)方差矩陣。由上式可得下式。

核化線性降維在上式中

??紤]到

,

,又可寫為下式。所以式又可改寫為下式。

核化線性降維由于函數(shù)

的具體形式是未知,為便于計算,在此引入核函數(shù)如下式。再將式

與上式代入

,化簡得下式。其中

對應的核矩陣,

,

。對

進行特征值分解,即可完成主成分分析。對于新樣本

,其投影后的第

維坐標為下式。上式中已經(jīng)經(jīng)過標準化,是的第個分量。核化線性降維使用scikit-learn庫中decomposition模塊的KernelPCA類可以創(chuàng)建KernelPCA模型,其基本語法格式如下。核化線性降維classsklearn.decomposition.KernelPCA(n_components=None,kernel=’linear’,gamma=None,degree=3,coef0=1,kernel_params=None,alpha=1.0,fit_inverse_transform=False,eigen_solver=’auto’,tol=0,max_iter=None,remove_zero_eig=False,random_state=None,copy_X=True,n_jobs=None)KernelPCA類的常用的參數(shù)及其說明,如表所示。核化線性降維參數(shù)名稱說明n_components接收int。表示所要保留的主成分個數(shù)n,即保留下來的特征個數(shù)n,若為None時,則保留所有非零特征。默認為Nonekernel接收str。表示使用的核函數(shù),可選“l(fā)inear”“poly”“rbf”“sigmoid”“cosine”“precomputed”。默認為“l(fā)inear”gamma接收str。表示核函數(shù)指定為“rbf”“poly”“sigmoid”時所使用的系數(shù);取值為“auto”時,系數(shù)為1/n_features。默認為Nonedegree接收int。表示當核函數(shù)是多項式時,指定多項式的系數(shù),對于其他核函數(shù)無效。默認為3KernelPCA類的常用的參數(shù)及其說明,如表所示。核化線性降維參數(shù)名稱說明eigen_solver接收str。表示求解特征值的算法?!癮uto”表示自動選擇,“dense”表示使用dense特征值求解器,“arpack”表示使用arpack特征值求解器,用于特征數(shù)量遠小于樣本數(shù)量的情形。默認為“auto”tol接收int。表示arpock特征值求解器的收斂闕值,0表示自動選擇闕值。默認為0max_iter接收int。表示arpock特征值求解器的最大迭代次數(shù),None表示自動選擇。默認為Nonerandom_state接收int或RandomStateinstance。該參數(shù)為int類型時,為隨機數(shù)生成器使用的種子;該參數(shù)為RandomStateinstance時,為隨機數(shù)生成器;若為None時,使用的隨機數(shù)生成器為np.random模塊使用的RandomState實例。默認為None1降維目錄無監(jiān)督學習簡介2聚類任務3在無監(jiān)督學習中,樣本的標記信息是未知的,目標是通過對無標記樣本的學習來揭示數(shù)據(jù)的內(nèi)在性質(zhì)及規(guī)律,為進一步的數(shù)據(jù)分析提供基礎。在此類學習任務中,應用最廣泛的就是聚類。假定樣本集合

,其中

。聚類的目的就是將集合

按照一定規(guī)則劃分成若干子集

,且滿足

,且

。聚類得到的每個子集

稱為一個簇,若

,稱

的簇標記,則聚類的結果可以用向量

表示。聚類的目的是把待分類數(shù)據(jù)按照一定規(guī)則分成若干類,這些類不是事先給定的,而是根據(jù)待分類數(shù)據(jù)的特征確定,且對類的數(shù)目和結構不做任何假定。例如,市場分析人員通過聚類將客戶分成不同的客戶群,以購買模式刻畫不同客戶群特征。聚類任務聚類性能度量指標也稱為聚類有效性指標,用以衡量聚類結果的優(yōu)劣。另外,若已明確了性能度量指標,則也可將其作為聚類過程中的優(yōu)化目標,從而更好地提高聚類效果。當通過一定的聚類算法得到聚類結果之后,通常認為簇內(nèi)相似度高越好,而簇間的相似度低越好。聚合性能度量的指標,若是由某個參考模型給出,這類指標稱為外部指標;若是通過直接考察聚類結果給出,這類指標稱為內(nèi)部指標。性能度量假設樣本集合

的聚類結果為

,

為簇標記量;參考模型給出的聚類結果為

,

為簇標記量。定義如下四個集合分別為:性能度量1.外部指標若令

,

則可以給出常用的3個聚類性能度量外部指標。Jaccard系數(shù)(JaccardCoeffient,JC),如下式。FM系數(shù)(FowlkesandMallowsIndex,F(xiàn)MI),如下式。

性能度量Rand指數(shù)(RandIndex,RI),如下式。

以上3個聚類性能度量外部指標的計算結果在[0,1]區(qū)間內(nèi),值越大越好。性能度量假設樣本集合

的聚類結果為

。定義如下4個函數(shù):性能度量2.內(nèi)部指標其中,為距離計算函數(shù),用于計算兩個樣本之間的距離,代表簇的中心點。顯然,對應簇內(nèi)樣本間的平均距離,對應簇內(nèi)樣本間的最遠距離,對應簇與簇最近樣本間的距離,對應簇與簇中心點間的距離?;谑健?、和

,可得到如下2個常用的聚類性能度量的內(nèi)部指標。性能度量DB指數(shù)(Davies-BouldinIndex,DBI),如下式。Dunn指數(shù)(DunnIndex,DI),如下式。顯然,DBI的計算結果越小越表明聚類效果好,而DI則正相反。性能度量聚類分析的目的是把分類對象按照一定的規(guī)則分成若干類,同一類的對象具有某種相似性,而不同類的對象之間不相似。通常情況下,聚類結果的優(yōu)劣可以采用對象之間距離的遠近來評價。在聚類分析中,給定樣本點

,

,常用的距離計算公式包括以下幾種。歐式距離(Euclideandistance),如下。距離計算曼哈頓距離(Manhattandistance),如下。切比雪夫距離(Chebyshevdistance),如下。閔文斯基距離(Minkowskidistance),如下。距離計算針對于無序?qū)傩?,無若令

表示在屬性

上取值為

的樣本數(shù),

表示第

個樣本簇中在屬性

上取值為

的樣本數(shù),

為樣本簇個數(shù),則在屬性

上兩個離散值

的距離,可采用VDM距離,如下。距離計算原型聚類亦稱為“基于原型的聚類”。此類算法假設聚類結構能夠通過一組原型刻畫,在實踐操作中極為常用。通常情形下,算法先對原型進行初始化,然后對原型進行迭代更新求解。采用不同的原型表示、不同的求解方式,將產(chǎn)生不同的算法。下面重點介紹3種常用的原型聚類算法。原型聚類在K均值(K-Means)算法中,首先隨機初始化類的中心,然后將每個樣本點按照距離最近的原則劃歸為相應的類內(nèi),更新類中心,直至樣本點到相應類中心的距離平方和達到最小。假設樣本集合

,給定需劃分的簇數(shù),聚類的結果為

。則K均值算法的優(yōu)化目標的表達式如下式。式中,為簇的均值向量。原型聚類1.K均值算法雖然理論上可以窮舉所有聚類的結果,然后給出最后的聚類結果,但是該方法的計算復雜性過大而無法實際應用。因此在實際中,對K均值算法采用貪婪策略,求得優(yōu)化目標的近似解。K均值算法的基本過程,如圖所示。原型聚類K均值算法的具體步驟如下。(1)輸入樣本集合及聚類簇數(shù)。(2)從樣本集中隨機選擇K個樣本點作為K個簇中心。(3)計算每個樣本點到每個簇中心的距離。(4)按照距離遠近將每個樣本點歸入相應的簇內(nèi)。(5)更新每個簇的中心。(6)重復步驟(2)~(5),直至簇中心不再變化。(7)輸出聚類結果。原型聚類學習向量量化(LearningVectorQuantization,LVQ)也是一種原型聚類算法。LVQ算法不同于K均值算法,該算法是假設樣本數(shù)據(jù)是帶有類別標記的,通過監(jiān)督信息來輔助聚類。在該算法中,引入了原型向量的更新學習規(guī)則,根據(jù)每次迭代中樣本點與聚類原型的類標記是否相同,針對聚類原型進行更新,直到滿足終止條件。原型聚類2.學習向量量化假設樣本集合

,給定原型向量個數(shù)

,學習率

,預設標記為

。給定一組初始聚類原型向量,在樣本集合中隨機選取樣本

,該樣本點最近的原型向量為

。LVQ按照如下的規(guī)則將原型

更新到原型

。原型聚類當

時,原型

更新為

,否則原型

更新為

。根據(jù)以上的原型更新規(guī)則,LVQ算法的基本過程如圖所示。原型聚類LVQ算法的具體步驟如下。(1)輸入樣本集合、預設類標記及學習率。(2)從樣本集中隨機選擇K個樣本點作為K個原型。(3)隨機選擇一個樣本點,計算該樣本點到k個原型的距離,并確定與之最近的原型。(4)更新選擇出的原型。(5)重復步驟(2)~(4)直至滿足停止條件(通常為最大迭代次數(shù))。(6)輸出原型向量。(7)計算每個樣本點到原型向量的距離,并歸類。(8)輸出聚類結果。原型聚類高斯混合(Mixture-of-Gaussian)聚類算法是通過高斯混合分布的概率模型,給出聚類結果的一種原型聚類算法。在高斯混合聚類算法中涉及3個主要參數(shù)的更新,以下作簡要介紹。高斯混合分布的密度函數(shù)如下,該分布共由個混合成分組成,每個混合成分對應一個高斯分布。上式中

分別為第

個高斯分布的均值向量與協(xié)方差矩陣,

為相應的“混合系數(shù)”,且滿足

。原型聚類3.高斯混合聚類高斯混合聚類算法將輸入樣本假設為是由以上高斯混合分布密度生成的。若輸入樣本為

顯然,樣本

是由第

個個高斯分布生成,其先驗概率為

,后驗概率

可根據(jù)下式計算。原型聚類高斯混合聚類算法在迭代次數(shù)到達一定時,將按照后驗概率的大小將樣本點

劃分入相應的簇中。根據(jù)極大似然原理,算法迭代過程中將不斷更新高斯混合分布的密度函數(shù)的參數(shù),更新為下式子。原型聚類更新為下式子。原型聚類根據(jù)以上高斯混合概率模型的更新規(guī)則,算法的基本過程如圖所示。原型聚類算法的具體步驟如下。(1)輸入樣本集合、初始化高斯混合分布的模型參數(shù)。(2)計算每個樣本點的后驗概率。(3)更新每個多維正態(tài)分布的參數(shù)。(4)重復步驟(2)~(3),直至滿足停止條件(通常為最大迭代次數(shù))。(5)計算每個樣本點的后驗概率。(6)將每個樣本點按照后驗概率大小歸類。(7)輸出聚類結果。原型聚類基于密度的聚類算法簡稱密度聚類算法,該類算法假設聚類結果能夠通過樣本分布的緊密程度確定。其基本思想是:以樣本點在空間分布上的稠密程度為依據(jù)進行聚類,若區(qū)域中的樣本密度大于某個閾值,則把相應的樣本點劃入與之相近的簇中。具有噪聲的基于密度聚類(Density-BasedSpatialClusteringofApplicationswithNoise,DBSCAN)是一種典型的密度聚類算法。該算法從樣本密度的角度進行考察樣本之間的可聯(lián)接性,并由可聯(lián)接樣本不斷擴展直到獲得最終的聚類結果。密度聚類對于樣本集

,給定距離參數(shù)

,數(shù)目參數(shù)

,任一樣本點

,定義以下幾個概念。(1)將集合

稱為樣本點的鄰域,若

,則稱

為一個核心對象。(2)若樣本點

屬于

鄰域,且

為一個核心對象,則稱

密度直達。(3)對于樣本點

和,若存在樣本點序列

,且

密度直達,則稱

密度可達。(4)若存在樣本點

,使得樣本點

和均由

密度可達,稱

密度相聯(lián)。密度聚類如果取距離參數(shù)

,數(shù)目參數(shù)

,下圖給出了以上概念的直觀表示。密度聚類在上圖中,對于當前參數(shù)而言,例如樣本點

,

,

為核心對象,樣本點

不是核心對象;

密度直達,并且

密度可達?;谝陨详P于樣本點之間可聯(lián)接性的定義,DBSCAN算法將簇

描述為滿足以下兩個條件的非空子集。(1),,則

密度相聯(lián)。(2),由

密度可達,則

。密度聚類DBSCAN算法的基本過程,如圖所示。密度聚類DBSCAN算法的具體步驟如下。(1)輸入樣本集合、初始化距離參數(shù)

,數(shù)目參數(shù)

。(2)確定核心對象集合。(3)在核心對象集合中,隨機選擇一個核心對象作為種子。(4)依據(jù)簇劃分原則生成一個簇,并更新核心對象集合。(5)若核心對象集

溫馨提示

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

評論

0/150

提交評論