非監督學習

2021-10-24 23:16:12 字數 4286 閱讀 7716

想比於監督學習,非監督學習的輸入資料沒有標籤資訊,需要通過演算法模型來挖掘資料內在的結構和模式。非監督學習主要包含兩大類學習方法:資料聚類和特徵變數關聯。其中,聚類演算法往往是通過多次迭代來找到資料的最優分割,而特徵變數關聯則是利用各種相關性分析來找到變數之間的關係。

1 k均值聚類

支援向量機、邏輯回歸、決策樹等經典的機器學習演算法主要用於分類問題,即根據一些已給定類別的樣本,訓練某種分類器,使得它能夠對類別未知的樣本進行分類。

與分類問題不同,聚類是在實現並不知道任何樣本類別標籤的情況下,通過資料之間的額內在關係把樣本劃分為若干類別,使得同類別樣本之間的相似度高,不同類別之間的樣本相似度低。

k均值聚類是最基礎和最常用的聚類演算法。基本思想是,通過迭代方式尋找k個簇的一種劃分方案,使得聚類結果對應的代價函式最小。特別的,代價函式可以定義為各個樣本距離所屬簇中心點的誤差平方和。

知識點:k均值聚類演算法,isodata演算法,em演算法

問題:簡述k均值演算法的具體步驟

k均值聚類的核心目標是將給定的資料集劃分成k個簇,並給出每個資料對應的簇中心點。

問題:k均值演算法的優缺點是什麼,如何對其進行調優?

缺點:例如受初值和離群點的影響每次的結果不穩定、結果通常不是全域性最優而是區域性最優解、無法很好地解決資料簇分布差別比較大的情況(比如一類是另一類樣本數量的100倍)、不太適用於離散分類等。

優點:對於大資料集,k均值聚類演算法相對是可伸縮和高效的,它的計算複雜度是o(nkt)接近於線性,n是資料物件的數目,k是聚類的簇數,t是迭代的輪數。儘管演算法經常以區域性最優結束,但一般情況下達到的區域性最優已經可以滿足聚類的需求。

k均值演算法的調優一般可從以下幾個角度出發:

(1)資料歸一化和離群點處理

k均值聚類本質上是一種基於歐式距離度量的資料劃分方法,均值和方差大的維度將對資料的聚類結果產生決定性的影響,所以未做歸一化處理和統一單位的資料是無法直接參與運算和比較。同時,離群點或少量的雜訊資料就會對均值產生較大的影響,導致中心偏移,因此使用k均值聚類演算法之前通常需要對資料做預處理。

(2)合理選擇k值

k值得選擇是k均值聚類最大的問題之一,這也是k均值聚類演算法的主要缺點。

手肘法,認為拐點就是k的最佳值

手肘法是乙個經驗方法,缺點就是不夠自動化。

gap statistic方法

(3)採用核函式

面對非凸的資料分布形狀時,可能需要引入核函式來優化,這時演算法又稱為核k均值演算法,是核聚類方法中的一種。

核聚類的主要思想是通過乙個非線性對映,將輸入空間中的資料點對映到高位的特徵空間中,並在新的特徵空間中進行聚類。非線性對映增加了資料點線性可分的概率,從而在經典的聚類演算法失效的情況下,引入核函式可以達到更為準確的聚類效果。

問題:針對k均值演算法的缺點,有哪些改進的模型?

主要缺點:

(1)需要人工預先確定初始k值,且該值和真實的資料分布未必吻合。

(2)k均值只能收斂到區域性最優,效果受到初始值很大。

(3)易受到噪點的影響

(4)樣本點只能被劃分到單一的類中

k均值的改進演算法中,對初始值選擇的改進是很重要的一部分。而這類演算法中,最具影響力的是k-means。

原始k均值演算法最開始隨機選取資料集中k個點作為聚類中心,而k-means++按照如下的思想選取k個聚類中心。假設已經選取了n個初始聚類中心,則在選取第n+1個聚類中心時,距離當前n個聚類中心越遠的點會有更高的概率被選為第n+1個聚類中心。在選取第乙個聚類中心時同樣通過隨機的方法。當選擇完初始點後,k-means++後續的執行和經典k均值演算法相同,這也是對初始值選擇進行改進的方法的共同點。

當k值大小不確定時,可以使用isodata演算法(迭代自組織資料分析法)。

思想:當屬於某個類別的樣本數過少時,把該類別去除;當屬於某個類別的樣本數過多、分散程度較大時,把該類別分為兩個子類別。

isodata演算法在k均值演算法的基礎之上增加了兩個操作,一是**操作,對應著增加聚類中心數;二是合併操作,對應著減少聚類中心數。

isodata演算法是乙個比較常見的演算法,缺點是需要指定的引數比較多,不僅僅需要乙個參考的聚類數量k,還需要制定3個閾值。

各個輸入引數:

(1)預期的聚類中心數目 k

0k_0

k0​(2)每個類所要求的的最少樣本數目nmi

nnmin

nmin

(3)最大方差σ。用於控制某個類別中 樣本的分散程度。當樣本的分散程度超過這個閾值時,且**後滿足(2),進行**操作。

(4)兩個聚類中心之間所允許最小距離dmin。如果兩個類靠的非常近,小於該閾值,則對這兩個類進行合併操作。

問題:證明k均值演算法的收斂性

2 高斯混合模型

高斯混合模型(gmm),即用多個高斯分布函式的線性組合來對資料分布進行擬合。也是一種常見的聚類演算法,與k均值演算法類似,同樣適用了em演算法進行迭代計算。高斯混合模型假設每個簇的資料都符合高斯分布(又叫正態分佈),當前資料呈現的分布就是各個簇的高斯分布疊加在一起的結果。

知識點:高斯分布,高斯混合模型,em演算法

高斯混合模型的核心思想是,假設資料可以看做從多個高斯分布中生成出來的。在該假設下,每個單獨的分模型都是標準高斯模型,其均值和方差都是待估計的引數。此外,每個分模型都還有乙個引數π,可以理解為權重或生成資料的概率。

高斯混合模型的計算,便成了最佳的均值、方差、權重的尋找,這類問題通常通過最大似然估計來求解。然而,此問題中直接使用最大似然估計,得到的是乙個複雜的非凸函式,目標函式是和的對數,難以展開和對其求偏導。

因此,用em演算法框架來求解該優化問題。em演算法是在最大化目標函式時,先固定乙個變數使整體函式變為凸優化函式,求導得到最值,然後利用最優引數更新被固定的變數,進入下乙個迴圈。

具體到高斯混合模型的求解,em演算法的迭代過程如下:

首先,初始隨機選擇各引數的值。然後,重複下屬兩步:

(1)e步驟。根據當前的引數,計算每個點由某個分模型生成的概率。

(2)m步驟。根據e步驟估計出的概率,來改進每個分模型的均值,方差和權重。

高斯混合模型與k均值演算法的相同點是,它們都是可用於聚類的演算法;都需要指定k值;都是用em演算法來求解;都往往只能收斂於區域性最優。而它相比於k均值演算法的優點是,可以給出乙個樣本屬於某類的概率是多少;不僅僅可以用於聚類,還可以用於概率密度估計;並且可以用於生成新的樣本點。

3 自組織對映神經網路

自組織對映神經網路(som)是無監督學習方法中的一類重要方法,可以用作聚類、高維視覺化、資料壓縮、特徵提取等多種用途。

問題:自組織對映神經網路是如何工作的?它與k均值演算法有何區別?

區別:(1)k均值演算法需要事先定下類的個數,也就是k的值。而自組織對映神經網路則不用,隱藏層中的某些節點可以沒有任何輸入資料屬於它,因此聚類結果的實際簇數可能會小於神經元的個數。而k均值演算法受k值設定的影響要更大一些。

(2)k均值演算法為每個輸入資料找到乙個最相似的類後,只更新這個類的引數;自組織神經網路則會更新臨近的節點。所以,k均值演算法受noise data的影響比較大,而自組織對映神經網路的準確性可能會比k均值演算法低(因為也更新了臨近節點)

(3)相比較而言,自組織對映神經網路的視覺化比較好,而且具有優雅的拓撲關係圖。

問題:怎樣設計自組織對映神經網路並設定網路訓練引數?

4 聚類演算法的評估

問題:以聚類問題為例,假設沒有外部標籤資料,如何評估兩個聚類演算法的優劣?

為了評估不同聚類演算法的效能優劣,需要了解常見的資料簇的特點:

聚類評估的任務時估計在資料集上進行聚類的可行性,以及聚類方法產生結果的質量。這一過程又分為三個子任務:

(1)估計聚類趨勢

這一步驟是檢測資料分布中是否存在非隨機的簇結構。如果資料是基本隨機的,那麼聚類的結果也是毫無意義的。可以觀察聚類誤差是否隨聚類類別數量的增加而單調製化,如果資料是基本隨機的,即不存在非隨機簇結構,那麼聚類誤差隨聚類類別數量增加而變化的幅度應該較不顯著,並且也找不到乙個合適的k對應資料的真實簇數。

可用霍普金斯統計量來判斷資料在空間上的隨機性。

(2)判定資料簇數

確定聚類趨勢之後,需要找到與真實資料分布最為吻合的簇數,據此判定聚類結果的質量。資料簇數的判定方法有很多,如手肘法和gap statistic方法。用於評估的最佳資料簇數可能與程式輸出的簇數是不同的。

(3)測定聚類質量

在無監督的情況下,可以通過考察簇的分離情況和簇的緊湊情況來評估聚類的效果。

常見指標:

輪廓係數

均方根標準偏差(rmsstd),可以看做經過歸一化的標準差

r方(r-square):代表了聚類之後的結果與聚類之前相比,對應的平方誤差和指標的改進幅度。

監督學習和非監督學習

重新看一遍ng的機器學習課程,第一次寫讀書筆記,希望能夠堅持下來!對於監督學習,首先來看乙個例子,如下圖.圖中的資料來自r語言中的boston資料集,其中lstat軸表示地位較低的人口比重,medv軸表示median value of owner occupied homes in 1000s。如果...

監督學習和非監督學習

監督學習 監督學習就是分類,把人們已經處理好的訓練樣本 即已知資料和對應輸出 給計算機,計算機通過規律訓練出乙個最佳模型,再用這個模型對輸入的資料進行分類,得出對應的輸出。從而使計算機具有對未知資料進行分類的功能。特點 目標明確 需要帶標籤的訓練樣本 分類效果很容易評估 非監督學習 非監督學習沒有訓...

監督學習和無監督學習 監督學習與非監督學習

監督學習 supervised learning 的任務是學習乙個模型,使模型能夠對任意給定的輸入,對其相應的輸出做出乙個好的 即 利用訓練資料集學習乙個模型,再用模型對測試樣本集進行 例如kaggle上的鐵達尼號比賽。官方提供旅客資料 資料集1 姓名,年齡,性別,社會經濟階層,是否生存等 要求參賽...