預(yù)測建模監(jiān)督機(jī)器學(xué)習(xí)和模式分類概覽_第1頁
預(yù)測建模監(jiān)督機(jī)器學(xué)習(xí)和模式分類概覽_第2頁
預(yù)測建模監(jiān)督機(jī)器學(xué)習(xí)和模式分類概覽_第3頁
預(yù)測建模監(jiān)督機(jī)器學(xué)習(xí)和模式分類概覽_第4頁
預(yù)測建模監(jiān)督機(jī)器學(xué)習(xí)和模式分類概覽_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、預(yù)測建模、監(jiān)督機(jī)器學(xué)習(xí)和模式分類概覽模式分類(pattern classification)和機(jī)器學(xué)習(xí)(machine learning)是非常熱的話題,幾乎在所有的現(xiàn)代應(yīng)用程序中都得到了應(yīng)用:例如郵局中的光學(xué)字符識別(OCR),電子郵件過濾,超市條形碼掃描,等等。在這篇文章中,我會簡要描述一個典型的監(jiān)督學(xué)習(xí)任務(wù)的主要概念,這些概念將作為將來的文章和實(shí)現(xiàn)各種學(xué)習(xí)算法的基礎(chǔ)。機(jī)器學(xué)習(xí)和模式分類預(yù)測建模是建立一個能夠進(jìn)行預(yù)測的模型的通用概念。通常情況下,這樣的模型包括一個機(jī)器學(xué)習(xí)算法,以便從訓(xùn)練數(shù)據(jù)集中學(xué)習(xí)某些屬性做出這些預(yù)測。預(yù)測建??梢赃M(jìn)一步分成兩個子集:回歸和模式分類?;貧w模型基于變量和趨勢

2、之間的關(guān)系的分析,以便做出關(guān)于連續(xù)變量的預(yù)測,如天氣預(yù)報的最高溫度的預(yù)測。與回歸模型不同,模式分類的任務(wù)是分配離散的類標(biāo)簽到特定的observation作為預(yù)測的結(jié)果。回到上面的例子:在天氣預(yù)報中的模式分類任務(wù)可能是一個晴天、雨天或雪天的預(yù)測。拋開所有的可能性,本文的重點(diǎn)將放在“模式分類”,分配預(yù)先定義的類標(biāo)簽到特定實(shí)例將它們分成不同的類別的一般方法?!皩?shí)例”是“observation”或“樣本”的同義詞,描述由一個或多個特征(或稱為“屬性”)組成的“對象”。監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)模式分類任務(wù)可被分成兩個主要的子類別:監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)。在監(jiān)督學(xué)習(xí)中,用于構(gòu)建分類模型的數(shù)據(jù)的類標(biāo)簽是

3、已知的。例如,一個垃圾郵件過濾的數(shù)據(jù)集,它里面將包含垃圾郵件以及“火腿”(=不是垃圾郵件)消息。在有監(jiān)督的學(xué)習(xí)問題中,我們已經(jīng)知道了訓(xùn)練集中的郵件要么是垃圾郵件,要么是火腿。我們將會使用這些信息來訓(xùn)練我們的模型,以達(dá)到能對新增的不明確的郵件進(jìn)行分類。上圖顯示了一個典型的分類任務(wù),用到的樣本具有兩個隨機(jī)變量;訓(xùn)練數(shù)據(jù)(帶有類標(biāo)記)用圖中的散點(diǎn)表示。紅色點(diǎn)劃線表明了線性決策(左側(cè))或者二次決策(右側(cè))的邊界,這些邊界決定了R1和R2的決策區(qū)域。新的observation將會根據(jù)它們所在的區(qū)域而被分配類標(biāo)簽“w1”或“w2”。對于那些未知的實(shí)例,我們已經(jīng)假定我們的分類方法不是完美的,會有一定比例的樣

4、本可能被錯誤分類。如果你對決策邊界是如何被算出來的有興趣,你可以查看我的模式分類庫中的“統(tǒng)計模式分類示例”這一節(jié)的關(guān)于“IPython”部分的內(nèi)容。與此相反,無監(jiān)督學(xué)習(xí)任務(wù)處理未標(biāo)記的實(shí)例,并且這些類必須從非結(jié)構(gòu)化數(shù)據(jù)集中推斷出來。通常情況下,無監(jiān)督學(xué)習(xí)采用聚類技術(shù),使用基于一定的相似性(或距離)的度量方式來將無標(biāo)記的樣本進(jìn)行分組。第三類的學(xué)習(xí)算法使用“強(qiáng)化學(xué)習(xí)”這個概念來描述。在這種算法中,模型是通過一系列的操作而最大化“獎勵函數(shù)”來進(jìn)行學(xué)習(xí)。獎勵函數(shù)的最大化,可以通過懲罰“壞行為”,和/或通過獎勵“好行為”來實(shí)現(xiàn)。強(qiáng)化學(xué)習(xí)的一個常見的例子是根據(jù)環(huán)境反饋而進(jìn)行學(xué)習(xí)自動駕駛的訓(xùn)練過程。我最近還

5、偶然發(fā)現(xiàn)了強(qiáng)化學(xué)習(xí)的另外一個很好的例子,就是訓(xùn)練游戲“Flappy Bird”,使它能夠自己玩。監(jiān)督學(xué)習(xí) - 一個典型的工作流程現(xiàn)今,當(dāng)在“數(shù)據(jù)科學(xué)”領(lǐng)域開始引入各種概念的時候,著名的“鳶尾花(Iris)”花數(shù)據(jù)集可能是最常用的一個例子。1936年,R.A.Fisher在他的判別分析中創(chuàng)建和使用了Iris數(shù)據(jù)集。Iris現(xiàn)在可以從UCI機(jī)器學(xué)習(xí)庫中免費(fèi)得到。在一個監(jiān)督分類任務(wù)中,它將會是一個很好的例子。Iris中的花被分為了三類:Setosa , Virginica , 和Versicolor .而這150個實(shí)例中的每一個樣本(單花)都有四個屬性:· 萼片的寬度 · 萼片的

6、長度 · 花瓣的寬度 · 花瓣的高度(所有測量單位都是厘米)可視化當(dāng)我們需要處理一個新的數(shù)據(jù)集時,采用簡單的可視化技術(shù)來解釋數(shù)據(jù)分析是非常有用的,因?yàn)槿说难劬υ诎l(fā)現(xiàn)模式方面是非常強(qiáng)大的。然而,有時我們必須處理的數(shù)據(jù)由三個以上的維度構(gòu)成,這樣就無法在一副圖像中表達(dá)出來了。為了克服這種限制,一種方式可以將屬性集分解成成對的屬性集,然后創(chuàng)建一個散點(diǎn)圖矩陣。在實(shí)踐中,“良好的且有用的”可視化技術(shù)的選擇高度依賴于數(shù)據(jù)的類型,特征空間的維數(shù),和現(xiàn)實(shí)情況。下面是Iris數(shù)據(jù)集的可視化的幾個例子,或多或少有用。用來創(chuàng)建這些圖形的代碼可以在“可視化技術(shù)進(jìn)行探索性數(shù)據(jù)分析”一節(jié)中的IPytho

7、n部分Matplotlib例子中找到。根據(jù)上面的那些圖,特別是散點(diǎn)圖和(1D)直方圖,我們已經(jīng)可以看到,相對于三種不同的花,花瓣包含的辨別信息相對于花萼來說要更多一些,因?yàn)閳D形中花萼的寬度和長度差別更小一些。那么,該信息就可以用于特征選擇,以去除噪聲和減少我們的數(shù)據(jù)集的大小。工作流程圖在下面的章節(jié)中,我們將會看到一些典型的監(jiān)督學(xué)習(xí)任務(wù)的主要步驟,下圖可以讓我們直觀地了解它們是如何連接的。原始數(shù)據(jù)采集和特征提取當(dāng)我們下載完Iris數(shù)據(jù)集后,我們注意到,它已經(jīng)具有“良好的結(jié)構(gòu)”了,看來是R.A.Fisher已經(jīng)為我們做了一些初步的“預(yù)處理”了。沒有丟失的數(shù)據(jù)和具有數(shù)字化的特征,使得它可以被一種學(xué)習(xí)

8、算法所使用。然而,讓我們假設(shè)該Iris數(shù)據(jù)集的原始數(shù)據(jù)是一系列的圖像。在這種情況下,首先進(jìn)行的預(yù)處理步驟(特征提取)可能涉及到這些圖像的縮放,平移,和旋轉(zhuǎn),這樣才能夠獲得以厘米表示的萼片和花瓣的尺寸。葉子閉塞就成為一個問題了,這種情況可能會導(dǎo)致數(shù)據(jù)丟失:如果數(shù)據(jù)集中的數(shù)據(jù)丟失,而算法沒有忽略丟失數(shù)據(jù)的選項(xiàng),那么很多機(jī)器學(xué)習(xí)算法將無法使用這些數(shù)據(jù)集正常工作。如果稀疏性(也就是,數(shù)據(jù)集中空缺數(shù)據(jù)的數(shù)量)并不太高,那么通常的建議做法是除去任何包含缺失值的樣本的行,或者丟失數(shù)據(jù)的屬性列。另一種處理丟失的數(shù)據(jù)的策略是估算:使用某些統(tǒng)計數(shù)據(jù)來補(bǔ)充丟失的數(shù)據(jù),而不是徹底清除掉丟失數(shù)據(jù)的樣本。對于分類數(shù)據(jù),丟

9、失的值可以從出現(xiàn)頻率最高的類別中得到;對于一些數(shù)值型的屬性,丟失的值可以使用樣品的平均值來代替。在一般情況下,通過k近鄰插補(bǔ)得到的值來替換丟失數(shù)據(jù)被認(rèn)為是優(yōu)于使用總體樣本均值進(jìn)行替換的。另外的一個關(guān)于特征提取的有趣方法可能包括花瓣和萼片的聚合運(yùn)算,如花瓣或萼片寬度和高度之間的比率。采樣假設(shè)我們從原始數(shù)據(jù)中提取到了某些特征(在這里:萼片寬度,萼片長度,花瓣寬度和花瓣長度),我們現(xiàn)在將把我們的數(shù)據(jù)隨機(jī)分成訓(xùn)練和測試數(shù)據(jù)集。訓(xùn)練數(shù)據(jù)集將被用于訓(xùn)練模型,而測試數(shù)據(jù)集的作用是評價每次訓(xùn)練完成后最終模型的性能。重要的是,我們對測試數(shù)據(jù)集只使用一次,這樣在我們計算預(yù)測誤差指標(biāo)的時候可以避免過度擬合。過度擬合

10、導(dǎo)致分類器在訓(xùn)練的時候表現(xiàn)良好,但是泛化能力一般。這樣會使得在新的模式上面得出的預(yù)測誤差值相當(dāng)高。因此,在模型的創(chuàng)建中使用一些像交叉驗(yàn)證這樣的技術(shù),就能夠提高分類性能。另外的一種策略是重新使用測試數(shù)據(jù)集來對模型進(jìn)行評估,這需要創(chuàng)建第三個數(shù)據(jù)集,即所謂的驗(yàn)證數(shù)據(jù)集。交叉驗(yàn)證交叉驗(yàn)證是評估特征選擇,降維,以及學(xué)習(xí)算法的不同組合的最有用的技術(shù)之一。交叉驗(yàn)證有許多種,最常見的一種很可能是k折交叉驗(yàn)證了。在k-折交叉驗(yàn)證中,原始訓(xùn)練數(shù)據(jù)集被分成k個不同的子集(即所謂的“折疊”),其中,1個折疊被保留作為測試集,而另外的K-1個折疊被用于訓(xùn)練模型。例如,如果我們設(shè)定k等于4(即,4折疊),原始訓(xùn)練集的3個

11、不同的子集將被用于訓(xùn)練模型,而第四個折疊將用于評價。經(jīng)過4次迭代后,我們可以計算出最終模型的平均錯誤率(和標(biāo)準(zhǔn)差),這個平均錯誤率可以讓我們看到模型的泛化能力如何。規(guī)范化為了能夠比較不同的屬性(比如,在聚類分析中通過計算距離或相似性),特別是當(dāng)屬性具有不同的度量時(比如,溫度具有開爾文和攝氏表達(dá)方式),就需要用到規(guī)范化和其他的一些屬性變換技術(shù)。對特征進(jìn)行恰當(dāng)?shù)淖儞Q,是大多數(shù)機(jī)器學(xué)習(xí)算法的一個要求?!耙?guī)范化”常用的代名詞是“最小-最大變換”:屬性值被變換到一個特定的范圍內(nèi),比如0到1之間。另一種常見的方法是(Z值)“標(biāo)準(zhǔn)化”或“變換到單位方差”的過程:每個樣品減去屬性的平均值,然后除以標(biāo)準(zhǔn)差,這

12、樣屬性將具有標(biāo)準(zhǔn)正態(tài)分布(= 0,= 1)的性質(zhì)。我們必須要記住其中很重要的一點(diǎn):如果我們在訓(xùn)練集上使用了任何一種規(guī)范化或變換技術(shù),那么我們就必須在測試集和未知數(shù)據(jù)集上使用相同的方法。更詳細(xì)的描述可以看另一篇的文章:About Feature Scaling and Normalization and the effect of standardization for machine learning algorithms .特征選擇和降維乍一看,特征選擇和降維之間的區(qū)別似乎違反直覺,因?yàn)樘卣鬟x擇,最終會導(dǎo)致(降維)到一個較小的特征空間。在實(shí)踐中,術(shù)語“特征選擇”和“降維”之間的主要區(qū)別在于:

13、我們在特征選擇中保持了“原始特征坐標(biāo)軸”,而降維通常涉及變換技術(shù)。這兩種方法的主要目的是為了去除噪聲,通過只保留“有用的”(可區(qū)分的)信息提高計算效率,并避免過度擬合(“維數(shù)災(zāi)難”)。在特征選擇中,我們感興趣的是只保留那些“有意義”的功能,也就是那些可以幫助建立一個“好”的分類器的功能。舉例來說,如果我們有一大堆描述花鳶尾的屬性(顏色,高度等),那么特征選擇可能最終會只保留4種測量數(shù)據(jù),也就是描述花瓣和萼片尺寸的數(shù)據(jù)?;蛘撸绻覀円婚_始就有了4個屬性(萼片和花瓣長度和寬度),我們可以進(jìn)一步縮小我們的選擇,只保留花瓣的長度和寬度,從而將我們的特征空間從4維減少到2維。特征選擇往往是基于領(lǐng)域知識

14、的(可以看到,咨詢領(lǐng)域內(nèi)的專家對特征選擇總是有幫助的),或探索性分析的,如我們在前面看到的直方圖或散點(diǎn)圖。想要找到一個特定大小的特征子集,用來最優(yōu)化分類模型的性能,往往需要一個窮舉搜索搜索采樣的所有可能組合。然而,在實(shí)際使用中,由于運(yùn)算的限制,這種方法可能不具有可行性。所以常用序列特征選擇或遺傳算法來選出一個次優(yōu)的特征子集。常用的降維技術(shù)是線性變換,如主成分分析(PCA)和線性判別分析(LDA)。PCA可以看成是一個“無監(jiān)督”算法,因?yàn)樗昂雎浴绷祟悇e,它的目標(biāo)是找到數(shù)據(jù)集中方差最大的方向(所謂的主成分)。相對于PCA,LDA是帶“監(jiān)督”的,它計算出多個類之間的最大區(qū)分的方向(“線性判別式”)

15、。關(guān)于PCA和LDA更多細(xì)節(jié)可以在這兩篇文章中找到:· Linear Discriminant Analysis bit by bit · Implementing a Principal Component Analysis ( PCA ) in Python step by step下面的圖像顯示了通過線性判別分析(LDA)將Iris數(shù)據(jù)轉(zhuǎn)換到二維特征子空間后的情形。黑線表示了線性決策邊界,它將特征空間分成了3個決策區(qū)域(R1,R2,R3)。在此決策區(qū)域的基礎(chǔ)上,新的觀測結(jié)果可被分為三個不同的花種之一:R1 Virginica , R2 Versicolor , and

16、 R3 Setosa .學(xué)習(xí)算法和超參數(shù)調(diào)整學(xué)習(xí)算法各式各樣,數(shù)量龐大,有各種文章和應(yīng)用對最流行的算法做了詳細(xì)的介紹。下面僅是對四種常用的監(jiān)督學(xué)習(xí)算法所做的一個非常簡短的總結(jié):· 支持向量機(jī)(SVM)是利用采樣超平面分隔兩個或多個類的分類方法。最終,具有最大間隔的超平面被保留,其中“間隔”指的是從采樣點(diǎn)到超平面的最小距離。組成間隔的采樣點(diǎn)稱為支持向量,從而建立起最終的SVM模型。 · 貝葉斯分類器是基于一個統(tǒng)計的模型(即貝葉斯定理:后驗(yàn)概率的計算基于先驗(yàn)概率和所謂的似然)。一個樸素貝葉斯分類器假定所有屬性都是條件獨(dú)立的,因此,計算似然可以簡化為計算帶有特定類標(biāo)簽的獨(dú)立屬性的

17、條件概率的乘積就行了。 · 人工神經(jīng)網(wǎng)絡(luò)(ANN)是模仿人或動物“大腦”的圖類分類器,其中相互連接的節(jié)點(diǎn)模擬的是神經(jīng)元。 · 決策樹分類器 是樹形圖,其中,圖中的節(jié)點(diǎn)用于測試某個特征子集的特定條件,然后分支把決策分割到葉子節(jié)點(diǎn)上。圖中的樹葉表示最低級別,用于確定類的標(biāo)簽。通過最小化基尼雜質(zhì),或者最大化信息增益可以訓(xùn)練成為最佳樹??梢允褂肐ris得到一個非常簡單的決策樹,像這樣:如果分類器或者評估器的參數(shù)不是從機(jī)器學(xué)習(xí)步驟中直接得到的,而是利用單獨(dú)的優(yōu)化得到,那么這些參數(shù)稱為超參數(shù)。超參數(shù)優(yōu)化的目標(biāo)是提高分類器的性能,實(shí)現(xiàn)學(xué)習(xí)算法的良好泛化能力。一種常用的超參數(shù)優(yōu)化方法是網(wǎng)格

18、搜索。通常情況下,網(wǎng)格搜索是通過對候選參數(shù)進(jìn)行窮舉搜索(相對于隨機(jī)參數(shù)優(yōu)化)而實(shí)現(xiàn)的。當(dāng)模型的所有參數(shù)組合都被評估之后,最佳組合將被保留下來。預(yù)測誤差指標(biāo)和模型選擇混淆矩陣是一種用于性能評估的方便工具,它是一個方陣,里面的列和行存放的是樣本的實(shí)際類vs預(yù)測類的數(shù)量?!袄]件與火腿”分類問題的混淆矩陣可以是這樣的:通常,使用預(yù)測“準(zhǔn)確率”或“差錯率”來報告分類性能。準(zhǔn)確率定義為正確分類的樣本占總樣本的比值;它經(jīng)常被用作特異性/精密性的同義詞,盡管它的計算方法不同。準(zhǔn)確率的計算公式是:其中,TP =真陽性,TN =真陰性,P =陽性,N =陰性。分類模型的經(jīng)驗(yàn)誤差可以通過計算1-準(zhǔn)確率得到。然而,如何選擇一個適當(dāng)?shù)念A(yù)測誤差度量是高度依賴于具體問題的。在“垃圾郵件”分類的情況中,我們更加關(guān)注的是低誤報率。

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論