




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
人工智能技術(shù)基礎(chǔ)第四章機(jī)器學(xué)習(xí)01人工智能基本概念02模型構(gòu)建03經(jīng)典算法介紹01機(jī)器學(xué)習(xí)概述機(jī)器學(xué)習(xí)概述
機(jī)器學(xué)習(xí)(MachineLearningML)是研究通過已有的經(jīng)驗可以進(jìn)行自動改進(jìn)的計算機(jī)算法,是人工智能的一個子集。機(jī)器學(xué)習(xí)算法基于樣本數(shù)據(jù)(即已有的“訓(xùn)練數(shù)據(jù)”)建立數(shù)學(xué)模型,以便做出預(yù)測或決策,而無需經(jīng)過明確的編程。機(jī)器學(xué)習(xí)算法被廣泛應(yīng)用于各種應(yīng)用中,如電子郵件過濾、計算機(jī)視覺以及推薦系統(tǒng)等領(lǐng)域。機(jī)器學(xué)習(xí)概述機(jī)器學(xué)習(xí)概述機(jī)器學(xué)習(xí)是從數(shù)據(jù)中自動分析獲得模型,并利用模型對未知數(shù)據(jù)進(jìn)行預(yù)測。機(jī)器學(xué)習(xí)一般流程大致分為數(shù)據(jù)采集、預(yù)處理數(shù)據(jù)、特征提取以及訓(xùn)練模型和評估模型,然后優(yōu)化模型等步驟,如圖所示。數(shù)據(jù)預(yù)處理數(shù)據(jù)集、特征和標(biāo)簽HousingMedianAge
(房齡特征)TotalRooms
(總數(shù)特征)TotalBedrooms
(臥室特征)MedianHouseValue
(價格標(biāo)簽)15561212836690019765019018010017720174857001415013377340020145432665500在該數(shù)據(jù)集中,表格中房齡、房屋總數(shù)、臥室三列表示的變量都是房屋價格變動的因素,或者說是用來預(yù)測和解釋房屋價格因素的,可以認(rèn)為是自變量,在機(jī)器學(xué)習(xí)中稱為特征。我們關(guān)注的房屋價格信息,房屋價格這一列是我們關(guān)注的結(jié)果,我們可以把這一列作為因變量,也就是標(biāo)簽列。數(shù)據(jù)預(yù)處理訓(xùn)練集、驗證集和測試集在機(jī)器學(xué)習(xí)中,我們通常將一個完整的數(shù)據(jù)集人為劃分為訓(xùn)練集、驗證集和測試集三個部分。三個數(shù)據(jù)集分別作用于機(jī)器學(xué)習(xí)算法進(jìn)行訓(xùn)練、預(yù)測和評估的不同階段。訓(xùn)練集(Trainset)——用于訓(xùn)練模型,擬合的數(shù)據(jù)樣本。驗證集(Developmentset)——是模型訓(xùn)練過程中單獨留出的樣本集,它可以用于調(diào)整模型的超參數(shù)和優(yōu)化算法。測試集(Testset)——對于已經(jīng)構(gòu)建和訓(xùn)練好的機(jī)器學(xué)習(xí)模型進(jìn)行各方面的性能評估。一個結(jié)構(gòu)完成的數(shù)據(jù)集是機(jī)器學(xué)習(xí)的基礎(chǔ),沒有高質(zhì)量的數(shù)據(jù),就沒有高質(zhì)量的機(jī)器學(xué)習(xí)結(jié)果(高質(zhì)量的預(yù)測必須依賴于高質(zhì)量的數(shù)據(jù))。然而現(xiàn)實世界獲取的數(shù)據(jù)集合常常伴有大量的噪聲,‘臟數(shù)據(jù)’以及存在著錯誤、或異常(偏離期望值)的數(shù)據(jù)。例如:一個數(shù)據(jù)集中通常會存在以下問題:●數(shù)據(jù)缺失(Incomplete)是屬性值為空的情況?!駭?shù)據(jù)噪聲(Noisy)是數(shù)據(jù)值不合常理的情況?!駭?shù)據(jù)不一致(Inconsistent)是數(shù)據(jù)前后存在矛盾的情況?!駭?shù)據(jù)冗余(Redundant)是數(shù)據(jù)量或者屬性數(shù)目超出數(shù)據(jù)分析需要的情況?!駭?shù)據(jù)集不均衡(Imbalance)是各個類別的數(shù)據(jù)量相差懸殊的情況?!耠x群點/異常值(Outliers)是遠(yuǎn)離數(shù)據(jù)集中其余部分的數(shù)據(jù)?!駭?shù)據(jù)重復(fù)(Duplicate)是在數(shù)據(jù)集中出現(xiàn)多次的數(shù)據(jù)。對于數(shù)據(jù)中存在的問題,數(shù)據(jù)的預(yù)處理主要有以下方法與步驟,包括:(1)數(shù)據(jù)清洗(DataCleansing)(2)數(shù)據(jù)轉(zhuǎn)換(DataTransformation)(3)數(shù)據(jù)描述(DataDescription)(4)特征選擇(FeatureSelection)(5)特征抽取(FeatureExtraction)數(shù)據(jù)預(yù)處理1、數(shù)據(jù)清洗數(shù)據(jù)清洗是整個數(shù)據(jù)預(yù)處理過程中非常重要的一個環(huán)節(jié),其結(jié)果質(zhì)量直接關(guān)系到機(jī)器學(xué)習(xí)建模效果和最終結(jié)論。在實際操作中,數(shù)據(jù)清洗通常會占據(jù)分析過程的50%—80%的時間,數(shù)據(jù)清洗的主要內(nèi)容包括:(1)缺失值清洗●確定缺失值范圍。●去除不需要的字段。●填充缺失內(nèi)容。(2)格式內(nèi)容清洗●時間、日期、數(shù)值、全半角等顯示格式不一致●內(nèi)容中有不該存在的字符●內(nèi)容與該字段應(yīng)有內(nèi)容不符(3)第三步:邏輯錯誤清洗●去除冗余數(shù)據(jù)●去除不合理值●修正矛盾內(nèi)容數(shù)據(jù)預(yù)處理2.數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)標(biāo)準(zhǔn)化是將樣本數(shù)據(jù)的屬性縮放到某個指定的范圍。數(shù)據(jù)標(biāo)準(zhǔn)化的原因:某些算法要求樣本具有零均值和單位方差;需要消除樣本不同屬性具有不同量級時的影響:①數(shù)量級的差異將導(dǎo)致量級較大的屬性占據(jù)主導(dǎo)地位;②數(shù)量級的差異將導(dǎo)致迭代收斂速度減慢;③依賴于樣本距離的算法對于數(shù)據(jù)的數(shù)量級非常敏感。
數(shù)據(jù)預(yù)處理3.?dāng)?shù)據(jù)描述數(shù)據(jù)的一般性描述有Mean,Median,Mode,Variance。其中Mean是均值;Median是中位數(shù),取數(shù)據(jù)排序后在中間位置的值,避免因為極端離群點影響客觀評價;Mode是出現(xiàn)頻率最高的元素,其使用的比較少;Variance是方差衡量數(shù)據(jù)集與其均值的偏離。數(shù)據(jù)之間的相關(guān)性可以使用Pearsoncorrelationcoefficient(皮爾森相關(guān)系數(shù))和Pearsonchis-quare(皮爾森卡方檢驗)進(jìn)行度量。前者適用與有Metricdata的情況,后者適用于分類統(tǒng)計的情況。Pearson相關(guān)系數(shù)(PearsonCorrelationCoefficient)是用來衡量兩個數(shù)據(jù)集合是否在一條線上面,它用來衡量定距變量間的線性關(guān)系。皮爾森卡方檢驗是一個樣本中已發(fā)生事件的次數(shù)分配會遵守某個特定的理論分配。數(shù)據(jù)預(yù)處理4.特征選擇在我們做特定分析的時候,可能屬性非常多,但有些屬性是不相關(guān)的,有些屬性是重復(fù)的,所以我們需要用特征選擇挑選出來最相關(guān)的屬性降低問題難度。我們可以通過熵增益(Entropyinformationain)、分支定界(Branchandbound)等方式進(jìn)行特征選擇。特征選擇還有Sequentialforward(序列前向選擇),Sequentialbackward(序列反向選擇),Simulatedannealing(模擬退火),Tabusearch(競技搜索),Geneticalgorithms(遺傳算法)等方式去優(yōu)化。為了提高復(fù)雜關(guān)系的擬合能力,在特征工程中經(jīng)常會把一些離散特征兩兩組合,構(gòu)成高階特征,提高機(jī)器學(xué)習(xí)算法的擬合能力。特征選擇01機(jī)器學(xué)習(xí)基礎(chǔ)02人工智能發(fā)展歷史03經(jīng)典算法介紹02模型構(gòu)建第四章機(jī)器學(xué)習(xí)
模型訓(xùn)練在機(jī)器學(xué)習(xí)流程中,在對于數(shù)據(jù)集進(jìn)行預(yù)處理以后,需要利用訓(xùn)練集建立預(yù)測模型,然后將這種訓(xùn)練好的模型應(yīng)用于測試集(即作為新的、未見過的數(shù)據(jù))上進(jìn)行預(yù)測。根據(jù)模型在測試集上的表現(xiàn)來選擇最佳模型,為了獲得最佳模型,還需要進(jìn)行參數(shù)優(yōu)化。在進(jìn)行模型訓(xùn)練時可以使用例如梯度下降方法,加速機(jī)器學(xué)習(xí)算法的訓(xùn)練速度和尋找最優(yōu)參數(shù)的速度。模型訓(xùn)練梯度下降(Gradientdescent)在機(jī)器學(xué)習(xí)中應(yīng)用十分的廣泛,不論是在回歸分析還是分類分析中都有廣泛的應(yīng)用,它的主要目的是通過迭代計算找到目標(biāo)函數(shù)的最小值,或者收斂到最小值。梯度下降法的基本思想可以看成是一個下山的過程。假設(shè)場景:一個人被困在山上,需要從山上下來(找到山的最低點,也就是山谷)。但此時山上的濃霧很大,導(dǎo)致可視度很低。因此,下山的路徑無法通過肉眼確定,必須利用自己周圍的信息一步一步地找到下山的路。這個時候,便可利用梯度下降算法來幫助自己找到下山的路。具體方法:首先以當(dāng)前的所處的位置為基準(zhǔn),尋找這個位置最陡峭的地方,然后朝著下降方向走一步,然后又繼續(xù)以當(dāng)前位置為基準(zhǔn),再找最陡峭的地方,再走直到最后到達(dá)最低處;同理上山也是如此,只是這時候就變成梯度上升算法。梯度下降目前,常用的梯度下降的方法有:1、全量梯度下降法(BatchgradientdescentBGD)全量梯度下降法每次學(xué)習(xí)都使用整個訓(xùn)練集,因此每次更新都會朝著正確的方向進(jìn)行,最后能夠保證收斂于極值點,凸函數(shù)收斂于全局極值點,非凸函數(shù)可能會收斂于局部極值點,BGD的缺陷是學(xué)習(xí)時間長,消耗大量內(nèi)存。2、隨機(jī)梯度下降法(StochasticGradientDescentSGD)隨機(jī)梯度下降法一輪迭代只用一條隨機(jī)選取的數(shù)據(jù),SGD的迭代次數(shù)比BGD大很多,但一次學(xué)習(xí)時間非常快。SGD的缺點在于每次更新可能并不會按照正確的方向進(jìn)行,參數(shù)更新具有高方差,從而導(dǎo)致?lián)p失函數(shù)劇烈波動。如果目標(biāo)函數(shù)有盆地區(qū)域,SGD會使優(yōu)化的方向從當(dāng)前的局部極小值點跳到另一個更好的局部極小值點,這樣對于非凸函數(shù),可能最終收斂于一個較好的局部極值點,甚至全局極值點。其缺點是出現(xiàn)損失函數(shù)波動,并且無法判斷是否收斂同時它并不是每次迭代都向著整體最優(yōu)化方向。3、小批量梯度下降法(Mini-BatchGradientDescentMBGD)SGD相比BGD收斂速度快,在更新每一參數(shù)時都使用一部分樣本來進(jìn)行更新。MBGD的設(shè)計是為了克服上面兩種方法的缺點,同時又兼顧兩種方法的優(yōu)點。但是MBGD也的缺點,是收斂時浮動,不穩(wěn)定,在最優(yōu)解附近波動,難以判斷是否已經(jīng)收斂。當(dāng)BatchSize選擇合理,不僅收斂速度比SGD更快、更穩(wěn)定,而且在最優(yōu)解附近的跳動也不會很大,甚至得到比BGD更好的解。這樣就綜合了SGD和BGD的優(yōu)點,同時弱化了缺點。總之,MBGD是兼顧了SGD和BGD的優(yōu)點,同時盡量克服它們的缺點。梯度下降過(欠)擬合對于機(jī)器學(xué)習(xí)模型而言,我們不僅要求它對訓(xùn)練數(shù)據(jù)集有很好的擬合(訓(xùn)練誤差),同時也希望它可以對未知數(shù)據(jù)集(測試集)有很好的擬合結(jié)果(泛化能力),所產(chǎn)生的測試誤差被稱為泛化誤差。度量泛化能力的好壞,最直觀的表現(xiàn)就是模型的過擬合(Overfitting)和欠擬合(Underfitting),過擬合和欠擬合是用于描述模型在訓(xùn)練過程中的兩種狀態(tài)。一般來說,訓(xùn)練過程會是如圖所示的一個曲線圖。過擬合是指訓(xùn)練誤差和測試誤差之間的差距太大,模型復(fù)雜度高于實際問題,模型在訓(xùn)練集上表現(xiàn)很好,但在測試集上卻表現(xiàn)很差。模型對訓(xùn)練集"死記硬背"(記住了不適用于測試集的訓(xùn)練集性質(zhì)或特點),沒有理解數(shù)據(jù)背后的規(guī)律,泛化能力差。相對過擬合欠擬合容易理解。欠擬合一般是由于訓(xùn)練樣本被提取的特征比較少,樣本數(shù)理不足,導(dǎo)致訓(xùn)練出來的模型不能很好地匹配算法模型,數(shù)據(jù)預(yù)測表現(xiàn)得很差,甚至樣本本身都無法高效的識別。在機(jī)器學(xué)習(xí)與深度學(xué)習(xí)中,我們一般使用交叉驗證(Cross-Validation)和正則化來避免模型過擬合?,F(xiàn)在常用的判斷方法是從訓(xùn)練集中隨機(jī)選一部分作為一個驗證集,采用K折交叉驗證的方式,用訓(xùn)練集訓(xùn)練的同時在驗證集上測試算法效果。在缺少有效預(yù)防欠擬合和過擬合措施的情況下,隨著模型擬合能力的增強(qiáng),錯誤率在訓(xùn)練集上逐漸減小,而在驗證集上先減小后增大;當(dāng)兩者的誤差率都較大時,處于欠擬合狀態(tài)(Highbias,Lowvariance);當(dāng)驗證集誤差率達(dá)到最低點時,說明擬合效果最好,由最低點增大時,處與過擬合狀態(tài)(Highvariance,Lowbias)。過(欠)擬合交叉驗證首先我們了解LOOCV方法,即(Leave-one-outcross-validation留一交叉驗證)。LOOCV方法包含將數(shù)據(jù)集分為訓(xùn)練集和測試集,只用一個數(shù)據(jù)作為測試集,其他的數(shù)據(jù)都作為訓(xùn)練集,并將此步驟重復(fù)N次(N為數(shù)據(jù)集的數(shù)據(jù)數(shù)量)。Leave-one-outcross-validation留一交叉驗證
交叉驗證
交叉驗證模型評估1混淆矩陣
混淆矩陣(Confusionmatrix)是機(jī)器學(xué)習(xí)中總結(jié)分類模型預(yù)測結(jié)果的情形分析表,以矩陣形式將數(shù)據(jù)集中的記錄按照真實的類別與分類模型預(yù)測的類別判斷兩個標(biāo)準(zhǔn)進(jìn)行匯總。其中矩陣的行表示真實值,矩陣的列表示預(yù)測值,以二分類為例,看下矩陣表現(xiàn)形式,如表:
混淆矩陣預(yù)測值正負(fù)真實值正ab負(fù)cd模型評估現(xiàn)在假設(shè)有一個貓狗圖片分類器對100張圖片數(shù)據(jù)集進(jìn)行分類,其中貓的圖片有25張,狗的照片為75張。分類結(jié)果顯示有38張圖片是貓,62張圖片是狗,經(jīng)與真實標(biāo)簽對比后發(fā)現(xiàn),38張貓的圖片中有20張是分類正確的,62張狗的圖片中有57張是分類正確的。模型評估如何來讀這個矩陣呢?以“分類結(jié)果為例:縱向看為預(yù)測的結(jié)果,其中預(yù)測為貓的數(shù)量為20+18=38;橫線為真實標(biāo)簽結(jié)果,其中真實貓的數(shù)量為20+5=25。同時,各個數(shù)值的具體含義為:TruePositive(TP):表示將正樣本預(yù)測為正樣本,即預(yù)測正確;FalsePositive(FP):表示將負(fù)樣本預(yù)測為正樣本,即預(yù)測錯誤;FalseNegative(FN):表示將負(fù)樣本預(yù)測為正樣本,即預(yù)測錯誤;TrueNegative(TN):表示將負(fù)樣本預(yù)測為負(fù)樣本,即預(yù)測正確;模型評估分類問題的評估指標(biāo)
TP=20FP=18
FN=5TN=57分類問題的評估指標(biāo)
模型評估一條ROC曲線實質(zhì)代表了無數(shù)個分類器。ROC曲線,其都是上升的曲線(斜率大于0),且都通過點(0,0)和點(1,1)。這些點代表著一個分類器在不同閾值下的分類效果,具體的,曲線從左往右可以認(rèn)為是閾值從0到1的變化過程。當(dāng)分類器閾值為0,代表不加以識別全部判斷為0,此時TP=FP=0,TPR=TP/P=0,F(xiàn)PR=FR/N=0;當(dāng)分類器閾值為1,代表不加以識別全部判斷為1,此時FN=TN=0,P=TP+FN=TP,TPR=TP/P=1,N=FP+TN=FP,FPR=FR/N=1。所以,ROC曲線描述的其實是分類器性能隨著分類器閾值的變化而變化的過程。對于ROC曲線,一個重要的特征是它的面積,面積為0.5為隨機(jī)分類,識別能力為0,面積越接近于1識別能力越強(qiáng),面積等于1為完全識別。模型評估AUC曲線AUC(AreaUnderrocCurve)是一種用來度量分類模型好壞的另一個標(biāo)準(zhǔn)。雖然用ROCCurve來表示分類器的性能很直觀,但是一般希望能有一個數(shù)值來標(biāo)志分類器的好壞,于是AreaUnderrocCurve(AUC)就出現(xiàn)了。顧名思義,AUC的值就是處于ROCCurve下方的那部分面積的大小。通常,AUC的值介于0.5到1.0之間,較大的AUC代表了分類器較好的性能,如圖3-6。AUC被定義為ROC曲線下的面積(ROC的積分),通常大于0.5小于1。隨機(jī)挑選一個正樣本以及一個負(fù)樣本,分類器判定正樣本的值高于負(fù)樣本的概率就是AUC值。AUC值(面積)越大的分類器,性能越好。模型評估第四章機(jī)器學(xué)習(xí)01機(jī)器學(xué)習(xí)基礎(chǔ)02模型構(gòu)建03人工智能技術(shù)與應(yīng)用03經(jīng)典算法介紹回歸算法線性模型(linearmodel)線性模型試圖學(xué)得一個通過屬性的線性組合來進(jìn)行預(yù)測(目標(biāo)屬性)的函數(shù)x12.06.05.01.04.0x27.09.03.02.05.0y52.896.721.26.0?回歸算法形式簡單,易于建模蘊(yùn)含機(jī)器學(xué)習(xí)的基本思想是其他非線性模型的基礎(chǔ)權(quán)重體現(xiàn)出各屬性重要性,可解釋性強(qiáng)x12.06.05.01.04.0x27.09.03.02.05.0y52.896.721.26.0?線性回歸x31724y4.52.58.53.5?線性回歸試圖學(xué)得使得如何確定,關(guān)鍵在于如何減小
與
的差別。線性回歸目標(biāo)函數(shù)(單變量)均方誤差最小化(最小二乘法)找到一條直線,使所有樣本到直線上的歐式距離之和最小線性回歸目標(biāo)函數(shù)(單變量)令目標(biāo)函數(shù)對
和
的偏導(dǎo)為零可解得:線性回歸線性回歸在基于Python語言中的Scikit-learn機(jī)器學(xué)習(xí)庫中實現(xiàn)了許多算法,可以供我們使用。sklearn.linear_model中的LinearRegression可實現(xiàn)線性回歸LinearRegression
的構(gòu)造方法:LinearRegression(
fit_intercept=True,#默認(rèn)值為True,表示計算隨機(jī)變量,F(xiàn)alse表示不計算隨機(jī)變量
normalize=False,#默認(rèn)值為False,表示在回歸前是否對回歸因子X進(jìn)行歸一化True表示是,
copy_X=True
)
線性回歸LinearRegression
的常用方法有:decision_function(X)#返回X的預(yù)測值yfit(X,y[,n_jobs])#擬合模型get_params([deep])#獲取LinearRegression
構(gòu)造方法的參數(shù)信息predict(X)#求預(yù)測值#同decision_function
線性回歸決策樹決策樹是回歸分析和分類分析中機(jī)器學(xué)習(xí)的常用方法。決策樹因其易于解釋、處理分類特征、可以擴(kuò)展到多分類設(shè)置、不需要特征縮放、能夠捕捉非線性和特征交互等特點而得到廣泛地應(yīng)用。決策樹基本上就是把我們以前的經(jīng)驗總結(jié)出來。如果我們要出門打籃球,一般會根據(jù)“天氣”、“溫度”、“濕度”、“刮風(fēng)”這幾個條件來判斷,最后得到結(jié)果:去打籃球?還是不去?上面這個圖就是一棵典型的決策樹。我們在做決策樹的時候,會經(jīng)歷兩個階段:構(gòu)造和剪枝。構(gòu)造構(gòu)造就是生成一棵完整的決策樹。簡單來說,構(gòu)造的過程就是選擇什么屬性作為節(jié)點的過程,那么在構(gòu)造過程中,會存在三種節(jié)點:
根節(jié)點:就是樹的最頂端,最開始的那個節(jié)點。在上圖中,“天氣”就是一個根節(jié)點;內(nèi)部節(jié)點:就是樹中間的那些節(jié)點,比如說“溫度”、“濕度”、“刮風(fēng)”;葉節(jié)點:就是樹最底部的節(jié)點,也就是決策結(jié)果。決策樹剪枝剪枝就是給決策樹瘦身,這一步想實現(xiàn)的目標(biāo)就是,不需要太多的判斷,同樣可以得到不錯的結(jié)果。之所以這么做,是為了防止“過擬合”(Overfitting)現(xiàn)象的發(fā)生。過擬合:指的是模型的訓(xùn)練結(jié)果“太好了”,以至于在實際應(yīng)用的過程中,會存在“死板”的情況,導(dǎo)致分類錯誤。欠擬合:指的是模型的訓(xùn)練結(jié)果不理想。決策樹造成過擬合的原因:一是因為訓(xùn)練集中樣本量較小。如果決策樹選擇的屬性過多,構(gòu)造出來的決策樹一定能夠“完美”地把訓(xùn)練集中的樣本分類,但是這樣就會把訓(xùn)練集中一些數(shù)據(jù)的特點當(dāng)成所有數(shù)據(jù)的特點,但這個特點不一定是全部數(shù)據(jù)的特點,這就使得這個決策樹在真實的數(shù)據(jù)分類中出現(xiàn)錯誤,也就是模型的“泛化能力”差。泛化能力:指的分類器是通過訓(xùn)練集抽象出來的分類能力,你也可以理解是舉一反三的能力。如果我們太依賴于訓(xùn)練集的數(shù)據(jù),那么得到的決策樹容錯率就會比較低,泛化能力差。因為訓(xùn)練集只是全部數(shù)據(jù)的抽樣,并不能體現(xiàn)全部數(shù)據(jù)的特點。決策樹剪枝的方法:預(yù)剪枝:在決策樹構(gòu)造時就進(jìn)行剪枝。方法是,在構(gòu)造的過程中對節(jié)點進(jìn)行評估,如果對某個節(jié)點進(jìn)行劃分,在驗證集中不能帶來準(zhǔn)確性的提升,那么對這個節(jié)點進(jìn)行劃分就沒有意義,這時就會把當(dāng)前節(jié)點作為葉節(jié)點,不對其進(jìn)行劃分。后剪枝:在生成決策樹之后再進(jìn)行剪枝。通常會從決策樹的葉節(jié)點開始,逐層向上對每個節(jié)點進(jìn)行評估。如果剪掉這個節(jié)點子樹,與保留該節(jié)點子樹在分類準(zhǔn)確性上差別不大,或者剪掉該節(jié)點子樹,能在驗證集中帶來準(zhǔn)確性的提升,那么就可以把該節(jié)點子樹進(jìn)行剪枝。方法是:用這個節(jié)點子樹的葉子節(jié)點來替代該節(jié)點,類標(biāo)記為這個節(jié)點子樹中最頻繁的那個類。如何判斷要不要去打籃球?決策樹我們該如何構(gòu)造一個判斷是否去打籃球的決策樹呢?再回顧一下決策樹的構(gòu)造原理,在決策過程中有三個重要的問題:將哪個屬性作為根節(jié)點?選擇哪些屬性作為后繼節(jié)點?什么時候停止并得到目標(biāo)值?顯然將哪個屬性(天氣、溫度、濕度、刮風(fēng))作為根節(jié)點是個關(guān)鍵問題,在這里我們先介紹兩個指標(biāo):純度和信息熵。(1)純度:可以把決策樹的構(gòu)造過程理解成為尋找純凈劃分的過程。數(shù)學(xué)上,我們可以用純度來表示,純度換一種方式來解釋就是讓目標(biāo)變量的分歧最小。舉個例子,假設(shè)有3個集合:集合1:6次都去打籃球;集合2:4次去打籃球,2次不去打籃球;集合3:3次去打籃球,3次不去打籃球。按照純度指標(biāo)來說,集合1>集合2>集合3。因為集合1的分歧最小,集合3的分歧最大。決策樹
決策樹
決策樹舉個例子,假設(shè)有2個集合:集合1:5次去打籃球,1次不去打籃球;集合2:3次去打籃球,3次不去打籃球。在集合1中,有6次決策,其中打籃球是5次,不打籃球是1次。那么假設(shè):類別1為“打籃球”,即次數(shù)為5;類別2為“不打籃球”,即次數(shù)為1。那么節(jié)點劃分為類別1的概率是5/6,為類別2的概率是1/6,帶入上述信息熵公式可以計算得出:同樣,集合2中,也是一共6次決策,其中類別1中“打籃球”的次數(shù)是3,類別2“不打籃球”的次數(shù)也是3,那么信息熵為多少呢?我們可以計算得出:從上面的計算結(jié)果中可以看出,信息熵越大,純度越低(目標(biāo)變量分歧越小)。當(dāng)集合中的所有樣本均勻混合時,信息熵最大,純度最低。決策樹此外,在構(gòu)造決策樹的時候,通常還會基于純度來構(gòu)建?!安患兌取钡闹笜?biāo)有三種,分別是信息增益(ID3算法)、信息增益率(C4.5算法)以及基尼指數(shù)(Cart算法)。決策樹集成學(xué)習(xí)在機(jī)器學(xué)習(xí)的各種有監(jiān)督的算法中,比如線性回歸、決策樹,我們使用分類器可以得到多個結(jié)果,但是這些分類器結(jié)果中可能有的在某些方面表現(xiàn)的很好(如結(jié)果穩(wěn)定,預(yù)測準(zhǔn)確性高),但是在另一些方面的表現(xiàn)可能不是很好(如局部最優(yōu),收斂慢),而機(jī)器學(xué)習(xí)算法的目標(biāo)結(jié)果是希望得到一個各個方面都表現(xiàn)較好的算法模型。集成學(xué)習(xí)(EnsembleLearning)方法通過組合和合并多個相同或者不同種類的機(jī)器學(xué)習(xí)分類器來完成學(xué)習(xí)任務(wù),避免使用單一學(xué)習(xí)模型帶來的學(xué)習(xí)模型缺陷,從而盡可能的使得機(jī)器學(xué)習(xí)的效果達(dá)到盡可能的最優(yōu)。從集成學(xué)習(xí)流程圖中可以看到,集成學(xué)習(xí)中一個重要問題是如何構(gòu)建合適的分類器組合策略,將多個相同種類或者不同種類分類器的結(jié)果進(jìn)行組合合并,從而構(gòu)建一個強(qiáng)化分類器。目前常用集成學(xué)習(xí)方式有三種,分類為Bagging(BootstrapAggregating套袋)方式、Booting(助推)方式和Stacking(堆疊)方式。集成學(xué)習(xí)隨機(jī)森林隨機(jī)森林是一種基于Bagging類型的集成學(xué)習(xí)算法。隨機(jī)森林的基礎(chǔ)是決策樹,其通過隨機(jī)的方式將多顆相互之間沒有關(guān)聯(lián)的決策樹進(jìn)行組合,構(gòu)成森林。在隨機(jī)森林的決策樹組合策略中一般采用投票法和均值法。(1) 投票法:1.絕對多數(shù)投票法:當(dāng)決策時的分類票數(shù)超過半數(shù),則預(yù)測為該標(biāo)記,否則拒絕預(yù)測。2.相對多數(shù)投票法:選擇得票最多的標(biāo)記,如有多個最高得票則擇隨機(jī)抽取一個。(2)均值法:1.簡單均值法即計算均值。2.加權(quán)平均值法聚類分析聚類分析是根據(jù)在數(shù)據(jù)中發(fā)現(xiàn)的描述對象及其關(guān)系的信息,將數(shù)據(jù)對象分組。目的是,組內(nèi)的對象相互之間是相似的(相關(guān)的),而不同組中的對象是不同的(不相關(guān)的)。組內(nèi)相似性越大,組間差距越大,說明聚類效果越好。
聚類分析聚類算法的特征:首先,我們確定要聚類的數(shù)量,并隨機(jī)初始化它們各自的中心點。為了確定要聚類的數(shù)量,需要快速查看數(shù)據(jù)并嘗試識別任何不同的分組。中心點是與每個數(shù)據(jù)點向量長度相同的向量,是上圖中的“×”。通過計算當(dāng)前點與每個組中心之間的距離,對每個數(shù)據(jù)點進(jìn)行分類,然后歸到與距離最近的中心的組中。基于迭代后的結(jié)果,計算每一類內(nèi),所有點的平均值,作為新簇中心。迭代重復(fù)這些步驟,或者直到組中心在迭代之間變化不大。您還可以選擇隨機(jī)初始化組中心幾次,然后選擇看起來提供最佳結(jié)果。聚類分析層次聚類是最簡單和較為直觀的一類聚類方法。層次聚類方法是將數(shù)據(jù)對象組成一個聚類樹。根據(jù)層次分解順序分為自頂向上或是自頂向下完成。1.凝聚層次聚類:自底向上首先將每個對象作為一個簇,然后合并這些原子簇為越來越大的簇,直到某個終結(jié)條件被滿足2.分裂層次聚類:自頂向下首先將所有對象置于一個簇中,然后逐漸細(xì)分為越來越小的簇,直到達(dá)到了某個終結(jié)條件。層次聚類計算簇間距離層次聚類層次聚類采用距離系數(shù)作為分類統(tǒng)計量,在聚類時主要考慮兩個因素:(1)樣本之間相似性度量(2)類之間的相似度度量。樣本之間相似性度量有多種方式,可以通過使用歐幾里得距離、余弦函數(shù)、相關(guān)系數(shù)方法進(jìn)行樣本間的相似度度量。類之間的度量同樣有多種度量方式,根據(jù)聚類對象的性質(zhì)與特征,需要選擇合適的類間相似度度量。層次聚類的相似度度量
樣本間相似度度量簇間相似度度量1Similaritydistance(相似度距離)1SingleLink(單鏈接)2CosineAngle(余弦角)2CompleteLink(完全鏈接)3correlationcoefficient(相關(guān)系數(shù))3Average(類均值)4Relativeerrordistancez(相對誤差距離)4WeightedMean(加權(quán)平均數(shù))5Maximumdissimilaritycoefficient(最大不相關(guān)系數(shù))5SumofSquaresofDeviations(WARD離差平方和)層次聚類層次聚類層次聚類的思想是先將每個對象作為一個簇,然后合并這些原子簇為越來越大的簇,直到所有對象都在一個簇中,或者某個終結(jié)條件被滿足。絕大多數(shù)層次聚類屬于凝聚型層次聚類,它們只是在簇間相似度的定義上有所不同。凝聚層次聚類算法流程:(1)將每個對象看作一類,計算樣本之間的最小距離;(2)將距離最小的兩個類合并成一個新類;(3)重新計算新類與所有類之間的距離;(4)重復(fù)(2)、(3),直到所有類最后合并成一類。層次聚類K-均值聚類K-means是一種基于相似距離的聚類算法。它將n個觀察實例分類到k個聚類中,以使得每個觀察樣本距離它所在的聚類的中心點比其他的聚類中心點的距離更小。在算法實現(xiàn)上采用逐次迭代修正的方式。先選定中心個數(shù)k作為初始分類,通過不斷改變樣本在k類中的劃分和k個質(zhì)心點的位置,使得聚類樣本與質(zhì)心點離差平方和最小。1)優(yōu)點●原理簡單,容易理解,聚類效果不錯,容易局部最優(yōu),但往往局部最優(yōu)就夠了;●處理大數(shù)據(jù)集的時候,該算法可以保證較好的伸縮性;●當(dāng)簇近似高斯分布的時候,效果較好?!袼惴◤?fù)雜度低。2)缺點●K值是人為設(shè)定,不同K值得到的結(jié)果可能完全不一樣,容易出現(xiàn)局部最優(yōu)解;●對初始的簇中心敏感,不同選取方式會得到不同結(jié)果;●對異常值敏感;樣本只能歸為一類,不適合多分類任務(wù);●不適合太離散的分類、樣本類別不平衡的分類、非凸形狀的分類。K-Means聚類
K-Means聚類數(shù)據(jù)降維數(shù)據(jù)降維
在高維數(shù)據(jù)空間中,往往包含有冗余信息以及噪音信息,在實際應(yīng)用中例如圖像識別中造成了誤差,降低了分析的準(zhǔn)確率。在機(jī)器學(xué)習(xí)問題中,有時需要在高維特征空間(每個特征都能夠取一系列可能值)的有限數(shù)據(jù)樣本中學(xué)習(xí)一種“自然狀態(tài)”(可能是無窮分布),要求有相當(dāng)數(shù)量的訓(xùn)練數(shù)據(jù)含有一些樣本組合,但是數(shù)據(jù)維度并不是越高越好,通常在給定固定數(shù)量的訓(xùn)練樣本,其預(yù)測能力隨著數(shù)據(jù)維度的增加而減小,這就是機(jī)器學(xué)習(xí)中的“維度災(zāi)難”。而通過數(shù)據(jù)降維技術(shù),我們希望減少高維數(shù)據(jù)中冗余信息所造成的誤差,降低數(shù)據(jù)的維度,提高識別(或其他應(yīng)用)的準(zhǔn)確度,同時希望通過降維算法來尋找數(shù)據(jù)內(nèi)部的本質(zhì)結(jié)構(gòu)特征,方便我們對數(shù)據(jù)進(jìn)行進(jìn)一步的處理與分析。
主成分分析方法主成分分析(Principalcomponentsanalysis,PCA)是目前最重要的降維方法之一。在數(shù)據(jù)壓縮消除冗余和數(shù)據(jù)噪音消除等領(lǐng)域都有廣泛的應(yīng)用。主成分分析是一種數(shù)學(xué)降維方法,利用正交變換(orthogonaltransformation)把一系列可能線性相關(guān)的變量轉(zhuǎn)換為一組線性不相關(guān)的新變量,也稱為主成分,從而利用新變量在更小的維度下展示數(shù)據(jù)的特征。
數(shù)據(jù)降維
數(shù)據(jù)降維
數(shù)據(jù)降維4協(xié)方差矩陣特征值在獲得協(xié)方差矩陣后,我們可以計算協(xié)方差矩陣的特征值與特征向量。協(xié)方差矩陣的特征值與特征向量計算與一般方陣的特征值與特征向量計算方式相同,在這里就不做過多介紹。協(xié)方差特征值對應(yīng)的特征向量就是理想中想取得正確的坐標(biāo)軸,而特征值就等于數(shù)據(jù)在旋轉(zhuǎn)之后的坐標(biāo)上對應(yīng)維度上的方差。也就是說,求出矩陣的特征向量得出對應(yīng)的特征向量。我們就能找到旋轉(zhuǎn)后正確的坐標(biāo)軸。這個就是特征值和特征向量的一個實際應(yīng)用:“得出使數(shù)據(jù)在各個維度區(qū)分度達(dá)到最大的坐標(biāo)軸。”所以,在數(shù)據(jù)挖掘中,就會直接用特征值來描述對應(yīng)特征向量方向上包含的信息量,而某一特征值除以所有特征值的和的值就為:該特征向量的方差貢獻(xiàn)率(方差貢獻(xiàn)率代表了該維度下蘊(yùn)含的信息量的比例)。數(shù)據(jù)降維
數(shù)據(jù)降維
3.3.2主成分分析實例
我們使用Sklearn實現(xiàn)的PCA方法來實現(xiàn)數(shù)據(jù)的降維。假設(shè)我們生成一個2行6列的矩陣,現(xiàn)在我們需要進(jìn)行數(shù)據(jù)降維,提取前2-3列作為該矩陣的主成分,使用PCA方法進(jìn)行數(shù)據(jù)降維:Sklearn
進(jìn)行PCA降維:importnumpyasnpfromsklearn.decompositionimportPCAr1=[1,2,3,4,5,9]r2=[4,5,4,5,2,5]array=np.array([r1,r2])cov_f=np.cov(array)print("協(xié)方差矩陣:",cov_f)eigenvalue,featurevector=np.linalg.eig(cov_f)print("特征值:",eigenvalue)print("特征向量:",featurevector)數(shù)據(jù)降維輸出:協(xié)方差矩陣:[[8.0.2][0.21.3
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥物相互作用案例分析試題及答案
- 傅秦生考試題及答案
- 汽車智能系統(tǒng)維護(hù)基礎(chǔ)試題及答案
- 2024年統(tǒng)計學(xué)考試重點考查題目及答案
- 汽車維修工消防安全知識及技能試題及答案
- 幼兒園保育教師培訓(xùn)內(nèi)容
- 2024年敏感肌膚護(hù)理試題及答案
- 統(tǒng)計學(xué)考試結(jié)構(gòu)性問題剖析試題及答案
- 美容師職場轉(zhuǎn)型的機(jī)會與挑戰(zhàn)及試題及答案
- 河北省張家口市橋西區(qū)2023-2024學(xué)年八年級下學(xué)期期中考試英語試題(含答案)
- GB/T 13384-2008機(jī)電產(chǎn)品包裝通用技術(shù)條件
- 新教科版五年級下冊科學(xué)期中測試卷(含答案)
- 員工培訓(xùn)請給我結(jié)果課件
- 2022年4月自考質(zhì)量管理(一)試題及答案含評分標(biāo)準(zhǔn)
- 人教精通版五年級下英語unit 4 Revision優(yōu)秀課件
- 思修堅定理想信念宣講教育課件
- 兩臺37kW三相交流電動機(jī)的動力配電柜設(shè)計
- 拖欠房租起訴書【5篇】
- 醫(yī)院臨時用藥申請表
- 農(nóng)民合作社財務(wù)報表(專業(yè)應(yīng)用)
- T∕CIS 71001-2021 化工安全儀表系統(tǒng)安全要求規(guī)格書編制導(dǎo)則
評論
0/150
提交評論