能源大數(shù)據(jù)分析理論與實踐 課件 4.分類分析_第1頁
能源大數(shù)據(jù)分析理論與實踐 課件 4.分類分析_第2頁
能源大數(shù)據(jù)分析理論與實踐 課件 4.分類分析_第3頁
能源大數(shù)據(jù)分析理論與實踐 課件 4.分類分析_第4頁
能源大數(shù)據(jù)分析理論與實踐 課件 4.分類分析_第5頁
已閱讀5頁,還剩84頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

分類分析04CategoricalAnalysis4.1分類分析概述分類的目標是構建模型,通過學習訓練集中不同類別的特征差異,預測未知數(shù)據(jù)點的類別。在分類問題中,訓練集由已知類別標簽的數(shù)據(jù)組成,這些標簽用于定義數(shù)據(jù)的組結構,常用于特定應用,如識別目標客戶或特征數(shù)據(jù)對象。分類模型通過訓練集學習數(shù)據(jù)模式,對測試數(shù)據(jù)進行預測,測試集由需分類的數(shù)據(jù)點組成。與聚類不同,分類問題是有監(jiān)督學習,訓練集中已知類別標簽,模型可學習數(shù)據(jù)關系。而聚類是無監(jiān)督學習,需自行發(fā)現(xiàn)數(shù)據(jù)間的相似結構,無需類別標簽指引。4.1分類分析概述大多數(shù)分類算法包括訓練階段和測試階段。訓練階段使用訓練集構建模型,學習特征和類別之間的關系;測試階段則利用訓練好的模型對測試集進行分類,預測其類別并評估模型性能。數(shù)據(jù)表示中,訓練集D包含n個數(shù)據(jù)點和d個特征(或維度)。每個數(shù)據(jù)點屬于??類別之一。在二分類問題(??=2)中,通常用0和1表示類別,而在多分類問題中,可采用任意編號作為類別標簽,具體選擇取決于分類模型和應用需求。4.1分類分析概述分類的目標是根據(jù)訓練集構建訓練模型,用于預測未知的測試數(shù)據(jù)點的類別標簽。分類算法的輸出可以是以下兩種類型之一:(1)標簽預測:在這種情況下,對每個測試數(shù)據(jù)點進行類別標簽的預測。將測試數(shù)據(jù)點輸入訓練好的模型中,得到對應的類別標簽。(2)數(shù)值評分:在大多數(shù)情況下,算法會為每個“實例—標簽”組合分配一個數(shù)值分數(shù),來測量實例屬于特定類別的傾向。通過使用最大值或不同類別的數(shù)值分數(shù)的成本加權最大值,可以將該分數(shù)轉換為預測標簽。數(shù)值分數(shù)在某個類別非常罕見的情況下特別有用,并且數(shù)值分數(shù)提供了一種方法,來確定屬于該類別的排名最高的候選者。4.1分類分析概述解決分類問題需要一系列處理流程,首先需要將原始數(shù)據(jù)進行收集、清洗和轉換為標準格式。數(shù)據(jù)可能存儲在商業(yè)數(shù)據(jù)庫系統(tǒng)中,并需要通過使用分析方法進行最終處理。實際上,盡管數(shù)據(jù)挖掘經(jīng)常讓人聯(lián)想到分析算法的概念,但事實是絕大多數(shù)工作都與數(shù)據(jù)準備部分的流程有關。這包括數(shù)據(jù)的預處理、特征工程和選擇適當?shù)乃惴ǖ炔襟E,這些都是構建有效的分類模型的關鍵。分類分析的應用流程如圖4-1所示。圖4-1分類分析的應用流程4.1分類分析概述當訓練集較小時,分類模型容易過擬合,即學習了訓練數(shù)據(jù)中的噪聲和隨機特征,導致在訓練集上表現(xiàn)良好,但對新數(shù)據(jù)泛化能力差,容易做出錯誤預測。為解決過擬合問題,可以增加訓練集規(guī)模,使用正則化來限制模型復雜度,或特征選擇與特征提取減少噪聲和冗余信息。常見分類算法包括Logistic回歸(二分類)、KNN、支持向量機、決策樹等,神經(jīng)網(wǎng)絡近年來應用廣泛。4.1分類分析概述①文檔分類和過濾許多應用程序需要對文檔進行實時分類,如新聞專線服務,分類分析用于組織門戶網(wǎng)站中特定主題下的文檔。特征對應于文檔中的單詞,而類別標簽對應于不同主題,如政治、體育、時事等②多媒體數(shù)據(jù)分析在多媒體數(shù)據(jù)分析中,通常需要對大量的多媒體數(shù)據(jù)(如照片、視頻、音頻等)進行分類。通過訓練示例,可以確定特定多媒體數(shù)據(jù)是否描述了特定活動。這種問題可以建模為二分類問題,其中類別標簽對應于特定活動的發(fā)生或不發(fā)生。③客戶目標營銷在這種情況下,組(或標簽)對應于客戶對特定產(chǎn)品的興趣。通過先前購買行為的訓練示例,企業(yè)可以了解已知人口統(tǒng)計概況但未知購買行為的客戶,是否可能對特定產(chǎn)品感興趣。④醫(yī)療疾病管理數(shù)據(jù)挖掘方法在醫(yī)學研究中的使用越來越受到關注,通過從患者的醫(yī)學測試和治療中提取特征,可以建立一個模型來預測治療效果,這種分類方法有助于醫(yī)療決策和治療規(guī)劃。分類分析的廣泛應用使其成為數(shù)據(jù)分析和決策領域中不可或缺的工具。通過構建有效的分類模型,可以從數(shù)據(jù)中提取有用的信息,并用于各種實際應用。4.2.1貝葉斯分類的原理下面舉一個例子來解釋貝葉斯定理。某慈善組織進行募捐活動,根據(jù)歷史數(shù)據(jù),所有參與募捐活動的人群中年齡大于50歲的人群占6/11,全部年齡段的整體募捐成功率為3/11,而在捐贈成功的個人中,年齡大于50歲的人占5/6。請問,在已知年齡大于50歲的情況下,一個人會捐贈的概率是多少?在這個例子中,可以定義事件E表示個人的年齡大于50歲,事件

表示個人是捐贈者。目標是計算后驗概率

,即在已知年齡大于50歲的情況下,個人捐贈的概率。根據(jù)貝葉斯定理,后驗概率表示為:(4-1)式中,是已知

是捐贈者的情況下個人年齡大于50歲的概率;

是個人是捐贈者的先驗概率(在觀察年齡之前的概率);

是年齡大于50歲的先驗概率。4.2.1貝葉斯分類的原理由前面給出的信息可以得到:個人是捐贈者的先驗概率

,已知是捐贈者的情況下個人年齡大于50歲的概率

,年齡大于50歲的先驗概率

。將這些值代入式(4-1)中,可以計算出后驗概率

,即在已知年齡大于50歲的情況下,個人捐贈的概率為:(4-2)在一維訓練數(shù)據(jù)(如年齡與類別變量)中,若類別可直接從單個特征預測,則可直接計算后驗概率??(??∣??),無需使用貝葉斯定理。但在多維特征組合下,貝葉斯定理提供了有效的推理路徑。通常,條件事件??

由多個特征變量的聯(lián)合約束組成,使得直接計算??(??∣??)變得困難。這時,可使用樸素貝葉斯的乘積形式進行估計,提高計算效率。4.2.1貝葉斯分類的原理樸素貝葉斯分類假設所有特征在給定類別條件下獨立,從而簡化概率計算。這樣可以直接用訓練數(shù)據(jù)的頻率估計概率,避免維度增加帶來的計算復雜度問題。在高維特征情況下,直接使用貝葉斯定理可能因數(shù)據(jù)稀疏導致估計困難,而樸素貝葉斯的乘積形式能更可靠地進行概率估計,簡化計算過程。在假設所有特征變量都是分類變量的情況下,一個隨機變量

,表示具有

d

維特征值

的未知類別的測試實例。目標是估計條件概率

,即在給定特征值

的情況下,測試實例屬于類別的概率。4.2.1貝葉斯分類的原理

的各個維度的隨機變量可以表示為

。直接從訓練數(shù)據(jù)中估計

是困難的,因為訓練數(shù)據(jù)可能不包含具有特定特征

的記錄。為了解決這個問題,可以使用貝葉斯定理來得到一個等價的表達式。根據(jù)貝葉斯定理,可以得到:

(4-3)式(4-3)中第二個關系式成立的前提是第一個關系式中分母中的項

與類別無關,因此只需計算分子即可確定具有最大條件概率的類別。

的值是類別

的先驗概率,并且可以通過統(tǒng)計訓練數(shù)據(jù)中屬于類別的數(shù)據(jù)的頻率來估計,這個先驗概率表示在沒有任何特征信息的情況下,某個數(shù)據(jù)屬于類別的概率。4.2.1貝葉斯分類的原理貝葉斯定理的關鍵用途在于可以使用樸素貝葉斯近似來有效估計式(4-3)的結果。樸素貝葉斯近似假設不同特征

的取值在給定類別的情況下是相互獨立的。如果兩個隨機事件A和B在第三事件F的條件下彼此獨立,則遵循

。在樸素貝葉斯近似的情況下,特征之間的條件獨立假設使得計算條件概率變得更加簡單,因為只需要估計每個特征變量的條件概率,而不需要考慮特征變量之間的聯(lián)合概率。每個特征變量的條件概率表示為:因此,用式(4-3)和式(4-4)可以得出,貝葉斯概率可以在一個比例常數(shù)內估計:(4-5)(4-4)4.2.1貝葉斯分類的原理在樸素貝葉斯分類模型中,需要估計兩個概率:

其中,

表示在給定類別

的情況下特征變量

取值為

的概率。這個概率相對容易估計,因為在訓練數(shù)據(jù)中通常會有足夠的樣本來給出可靠的估計。具體來說,只需計算訓練樣本中具有特征值

且屬于類別

的樣本數(shù)量,并用它除以屬于類別的總樣本數(shù)量,就能得到

的估計值:對于

這個概率,由于涉及多個特征變量同時取值的情況,很可能在訓練數(shù)據(jù)中找不到完全符合條件的樣本,因此估計變得困難。為此,引入樸素貝葉斯假設,即假設不同特征值之間是相互獨立的,這樣就可以將

這個復雜的聯(lián)合概率拆分成各個特征值的條件概率相乘的形式。(4-6)4.2.1貝葉斯分類的原理在某些情況下,訓練樣本可能不足,尤其是稀有類別可能只有極少樣本,直接用訓練樣本比例估算條件概率可能導致過擬合或概率值極端化。為了避免這種過擬合問題,可以使用拉普拉斯平滑(LaplaceSmoothing)來對條件概率進行平滑處理。拉普拉斯平滑是一種常用的技術,它通過在分子中添加一個小的平滑參數(shù),并將

乘特征變量

的不同取值數(shù)量

加到分母中,來調整概率的估計值。式中,

是訓練樣本中具有特征值

且屬于類別

的樣本數(shù)量;

是屬于類別

的總訓練樣本數(shù)量;

是一個小的正數(shù)(通常取1);

是第

個特征的不同取值的數(shù)量。拉普拉斯平滑提高了模型的魯棒性和泛化能力,即使訓練集中未出現(xiàn)特定特征值與類別組合,仍能提供合理的非零概率估計,避免極端情況影響模型性能。(4-7)4.2.1貝葉斯分類的原理貝葉斯模型可分為不同類型:樸素貝葉斯模型:假設特征在給定類別條件下相互獨立,計算效率高,但在特征相關性較強時可能影響模型準確性。伯努利模型(貝葉斯二元模型):特征變量僅有兩個可能值(如文本數(shù)據(jù)中單詞的存在或缺失)。多項式模型(廣義貝葉斯模型):特征變量有兩個以上的可能值,適用于分類任務,如文本分類中單詞出現(xiàn)次數(shù)。高斯模型:假設特征服從高斯分布,適用于連續(xù)值數(shù)據(jù),可用于回歸或分類任務。盡管假設能提高計算效率,但在實際問題中,特征往往相關,導致估計偏差。因此,在特征相關性較強時,可以使用多元估計方法(如貝葉斯網(wǎng)絡),但計算成本更高,需在計算復雜度與模型精度之間權衡。4.2.2貝葉斯分類的應用與實例貝葉斯分類可以解決各個領域中的很多問題,例如:教育學中根據(jù)各科成績相近程度對學生進行分類,醫(yī)學中根據(jù)病人的若干癥狀來判斷腫瘤是良性或惡性氣象學中根據(jù)各項氣象指標對降雨量做出預報環(huán)境科學中根據(jù)各種污染氣體的濃度來判定某化工廠對環(huán)境的污染程度經(jīng)濟學中根據(jù)人均國民收入等多種指標來判定一個國家的經(jīng)濟發(fā)展情況4.2.2貝葉斯分類的應用與實例基于貝葉斯分類的光伏系統(tǒng)日總發(fā)電量預測是貝葉斯分類算法在能源大數(shù)據(jù)分析方面的一個例子。太陽能是世界上最清潔的可再生能源之一,太陽能發(fā)電量預測能夠為電力系統(tǒng)平穩(wěn)調節(jié)計劃提供支持。本例使用了樸素貝葉斯模型來預測已安裝光伏系統(tǒng)的日總發(fā)電量。在預測過程中,使用日平均溫度(DAT)、日總日照時長(DTSD)、日全球太陽總輻射量(DTGSR)作為特征變量,對日總發(fā)電量(DTPEG)進行預測,使用的數(shù)據(jù)集是土耳其南部78個太陽能面板一年的歷史數(shù)據(jù)。數(shù)據(jù)集中包含365條數(shù)據(jù),其中292條數(shù)據(jù)組成訓練集,73條數(shù)據(jù)組成測試集。4.2.2貝葉斯分類的應用與實例首先按數(shù)據(jù)值區(qū)間進行離散化處理,將特征變量和預測數(shù)據(jù)劃分為5個類別,如表4-1所示。類別標簽特征變量取值范圍VeryLowDAT[-6.90,-0.40)(°C)DTSD[0.000,2.874)(h)DTGSR[0.000,1.776)(kWh/m2)DTPEG[0.000,25.172)(kWh)LowDAT[-0.40,6.10)(°C)DTSD[2.874,5.748)(h)DTGSR[1.776,3.552)(kWh/m2)DTPEG[25.172,50.344)(kWh)MediumDAT[6.10,12.60)(°C)DTSD[5.748,8.622)(h)DTGSR[3.552,5.328)(kWh/m2)DTPEG[50.344,75.516)(kWh)HighDAT[12.60,19.10)(°C)DTSD[8.622,11.496)(h)DTGSR[5.328,7.104)(kWh/m2)DTPEG[75.516,100.688)(kWh)VeryHighDAT[19.10,25.60)(°C)DTSD[11.496,14.370)(h)DTGSR[7.104,8.880)(kWh/m2)DTPEG[100.688,125.860)(kWh)表4-1特征變量和預測數(shù)據(jù)的劃分方法訓練集中每條數(shù)據(jù)定義為向量

,包含三個特征變量DAT、DTSD和DTGSR,類別標簽集合為

,即表4-1中的5個類別標簽。4.2.2貝葉斯分類的應用與實例根據(jù)式(4-1)可以獲得DTPEG的預測公式為:式中,概率

對于所有類別標簽是一個常數(shù),因此只需計算

。假設所有特征變量都是獨立的,則

可以根據(jù)下式計算:這樣就可以使用式(4-8)對DTPEG進行預測。(4-9)(4-8)4.3Logistic回歸Logistic回歸又稱邏輯回歸,是一種廣義的線性回歸分析方法。由于Logistic回歸用于分類,因此把Logistic回歸列入分類分析中進行介紹。如果要預測的內容是一個離散變量情況下的分類問題,如判斷郵件是否是垃圾郵件,就可以使用Logistic回歸。Logistic回歸的因變量可以是二分類的,也可以是多分類的,但是二分類的更為常用,也更容易解釋,多分類的可以使用Softmax方法進行處理。實際中常用的就是二分類的Logistic回歸。4.3.1Logistic回歸的原理貝葉斯分類模型和Logistic回歸都是概率分類模型,但其建模方式不同:貝葉斯分類假設類別的條件概率分布已知,通過計算后驗概率進行分類。Logistic回歸直接使用區(qū)分函數(shù)(Logistic函數(shù))建模類別概率,而不依賴具體的概率分布假設。它是一個可導函數(shù),定義域為

,值域為

,導數(shù)為

,由于其導數(shù)的特性,Logistic函數(shù)常常在神經(jīng)網(wǎng)絡中作為激活函數(shù)使用。(4-10)一般的廣義線性回歸的形式是

,或者

,其中

通常稱為聯(lián)系函數(shù)。Logistic回歸使用的聯(lián)系函數(shù)是Logistic函數(shù):4.3.1Logistic回歸的原理在最簡單的Logistic回歸形式中,假設類別變量是二元的,取值為

,但也可以對非二元類別變量進行建模。系數(shù)向量

,

是偏移參數(shù)。對于一個樣本

,使用Logistic函數(shù)對類別變量

取值為+1或-1的概率進行建模。利用式(4-11)求出的就是樣本為正類的概率,利用式(4-12)求出的就是樣本為負類的概率。一個事件的幾率是指該事件發(fā)生的概率與該事件不發(fā)生的概率的比值。很顯然,Logistic回歸模型的值可以轉化為對數(shù)幾率,從而可以轉化為線性回歸模型的值。Logistic回歸的對數(shù)幾率表示為:(4-12)(4-11)(4-13)4.3.1Logistic回歸的原理可以將參數(shù)

看作用于分隔兩個類別的超平面的系數(shù),這個超平面可以看作一個在特征空間中的直線或平面,它將數(shù)據(jù)點分隔成兩個類別。Logistic回歸模型分類效果如圖

4-2所示。當對一個數(shù)據(jù)點

進行預測時,可以計算

的值。這個值可以理解為數(shù)據(jù)點

相對于超平面的位置。如果這個值為正,那么

被劃分到類別+1,如果這個值為負,那么

被劃分到類別-1。因此,Logistic回歸模型是一種線性分類模型,它使用超平面來對數(shù)據(jù)點進行分類。Logistic回歸模型可以視為概率分類模型,Logistic函數(shù)可以將超平面的值轉換為[0,1]范圍內的概率值,輸出概率可以通過將超平面的值輸入Logistic函數(shù)中得到。圖4-2Logistic回歸模型分類效果4.3.2Logistic回歸模型的訓練在Logistic回歸模型中,通常使用極大似然法來估計最佳的模型參數(shù)。假設有兩類數(shù)據(jù):正類和負類,分別用

表示,用

表示第個數(shù)據(jù)點。整個數(shù)據(jù)集

的似然函數(shù)定義如下:似然函數(shù)表示所有訓練樣本遵從Logistic回歸模型分配給它們的類別標簽所得概率的乘積。訓練的目標是找到一組最優(yōu)參數(shù)向量

,使得整個數(shù)據(jù)集的似然函數(shù)值最大化。為了方便計算,損失函數(shù)通常使用對數(shù)似然函數(shù):對于上述對參數(shù)向量

的似然函數(shù),通常使用梯度上升法(GradientAscent)來迭代確定參數(shù)向量的最優(yōu)值。通常梯度向量通過對數(shù)似然函數(shù)對每個參數(shù)求導得到。(4-15)(4-14)4.3.2Logistic回歸模型的訓練對于第

個參數(shù)

,可以通過計算

的偏導數(shù)得到其梯度。梯度表示為:式中,

分別代表正類和負類中錯誤預測的概率。

除此之外,乘法因子

影響了梯度向量

個分量的大小,因此,參數(shù)

的更新公式為:在式(4-17)中,

是步長,可以通過二分查找的方式來確定,以最大化目標函數(shù)值的改進。上述方法使用批量梯度上升法,在每個更新步驟中,所有訓練數(shù)據(jù)都對梯度做出貢獻。實際上,也可以使用隨機梯度上升法,逐一循環(huán)訓練數(shù)據(jù)來進行更新。可以證明似然函數(shù)是凹函數(shù),因此梯度上升法可以找到全局最優(yōu)解。(4-16)(4-17)4.3.3帶正則項的Logistic回歸Logistic回歸可以使用正則化方法減少過擬合問題。1970年,Hoerl和Kennard等提出了嶺回歸(RidgeRegression)方法,實際是在損失函數(shù)的基礎上加上

正則項作為對系數(shù)的懲罰,這也是最早的懲罰函數(shù),形式為:式中,

正則化懲罰項,

;

為正則化參數(shù),

。由于嶺回歸不能把系數(shù)壓縮到0,因此無法產(chǎn)生稀疏解,所以在變量選擇的應用中表現(xiàn)稍差。Tibshirani提出了著名的Lasso方法,該方法通過在損失函數(shù)的基礎上加上對系數(shù)的

正則項來將某些系數(shù)壓縮到0,以此提高模型的解釋能力,形式為:式中,

。后來,為了進一步改進Lasso方法,學者們針對正則項提出較多的設計,如自適應的Lasso方法、彈性網(wǎng)方法、GroupBridge方法、cMCP方法等。(4-19)(4-18)4.3.3帶正則項的Logistic回歸帶有各種正則項的Logistic回歸模型有許多不同的優(yōu)勢,但是某些正則項的不光滑、非凸等性質給計算造成了很大的困難。針對傳統(tǒng)Logistic回歸問題的求解,常采用的算法是牛頓法和梯度下降法,由于牛頓法中Hessian矩陣的逆矩陣的計算較為復雜,所以常用改進后的擬牛頓法進行求解。針對為解決傳統(tǒng)Logistic回歸的非稀疏和過擬合問題而提出的正則化方法,學者們開發(fā)出了相應的有效算法,如Efron等提出的最小角回歸(LeastAngleRegression,LARS)算法可以有效求解Lasso類高維線性問題,Balamurugan為解決ENT-Logistic回歸問題提出了對偶坐標下降投影算法。4.3.4Logistic回歸的應用Logistic回歸適用于二元分類問題,廣泛用于人口發(fā)展預測、微生物生長、經(jīng)濟學等領域,仍在多個行業(yè)中發(fā)揮重要作用。局限性不具備稀疏性:傳統(tǒng)Logistic回歸的參數(shù)估計值通常不為0,即便某些解釋變量對模型影響較小,仍可能增加模型復雜性并降低可解釋性。過擬合問題:在訓練集中表現(xiàn)良好,但在其他數(shù)據(jù)集上泛化能力較弱。變量選擇與改進在實際問題中,可能初始引入了大量解釋變量,但許多變量與被解釋變量的相關性較低,使模型難以解釋。常見的變量選擇方法包括:逐步回歸(前向選擇、后向剔除)Lasso與ElasticNet(自動選擇關鍵變量)這些方法有助于減少冗余特征,提高模型的穩(wěn)定性和可解釋性,在多個行業(yè)中得到廣泛應用。4.4KNNKNN算法是一種常用的分類和回歸算法,其核心思想是基于特征空間中樣本的近鄰程度來進行分類或預測。具體而言,對于一個待分類樣本,首先在特征空間中找出

個與其最近鄰的樣本,然后通過這

個樣本中所屬類別的投票來確定待分類樣本的類別。如果

個最近鄰的樣本中大多數(shù)屬于某一個類別,那么待分類樣本也會被劃分到這個類別,并且具有這個類別上的樣本特征。計算已知類別數(shù)據(jù)集中的點與當前點之間的距離按照距離遞增次序排序選取與當前點距離最小的k個點確定前k個點所在類別的出現(xiàn)頻率返回前k個點出現(xiàn)頻率最高的類別作為當前點的預測分類KNN算法的具體步驟為:上述KNN算法涉及數(shù)據(jù)準備、距離度量和k值選擇問題,下面分別對這三個問題進行介紹。4.4KNN1)數(shù)據(jù)準備在使用KNN算法進行分類或回歸任務時,首先需要準備一個帶有標簽的訓練集,其中包含已知類別或數(shù)值的數(shù)據(jù)樣本,以及它們對應的類別標簽(或數(shù)值標簽)。這些樣本和類別標簽用于訓練KNN模型,使其能夠根據(jù)最近鄰的樣本來確定未知樣本的類別。對于回歸問題,訓練集中的每個樣本有一個連續(xù)的數(shù)值標簽,表示該樣本對應的實際數(shù)值。例如,對于房價預測任務,訓練集中的樣本可以包含房屋的特征(如面積、臥室數(shù)量、地理位置等),而對應的數(shù)值標簽是該房屋的實際銷售價格。KNN算法將使用這些特征和數(shù)值標簽來學習并預測未知樣本的房價。4.4KNN1)數(shù)據(jù)準備在準備數(shù)據(jù)時,需要確保訓練集是具有代表性的,涵蓋各個類別或數(shù)值范圍的樣本,以便KNN算法能夠更好地進行分類或回歸。另外,數(shù)據(jù)預處理是很重要的,如特征縮放、去除異常值、處理缺失值等,可以提高KNN算法的性能和準確性。一旦準備好帶有標簽的訓練集,就可以使用KNN算法來對新樣本進行分類或回歸預測了。對于分類問題,KNN算法會根據(jù)新樣本與訓練樣本之間的距離來找出最近鄰的k個樣本,并根據(jù)這些樣本的類別標簽來進行投票,從而決定新樣本的類別。對于回歸問題,KNN算法會使用k個最近鄰樣本的均值或加權均值來預測新樣本的數(shù)值標簽。4.4KNN2)距離度量KNN算法使用距離來衡量數(shù)據(jù)點之間的相似性。常見的距離度量方法包括歐氏距離、曼哈頓距離、閔可夫斯基距離等。歐氏距離是常用的距離度量方法,它度量兩個數(shù)據(jù)點之間的直線距離。在多維特征空間中,假設兩個點的特征向量分別為

,則它們的歐氏距離為:KNN算法通過計算待預測點與訓練樣本的距離,選取最近的??

個鄰居進行分類或回歸。距離度量可根據(jù)數(shù)據(jù)特征選擇,如特征量綱差異較大時,可進行歸一化,避免某些特征對距離計算的主導作用;距離加權方法可賦予距離較近的鄰居更高權重,提高分類或回歸精度,通常采用距離倒數(shù)加權方式,使更近的樣本對決策影響更大。(4-20)4.4KNN3)k值選擇對于一個新的待預測點,需要在訓練集中找到距離它最近的

k個數(shù)據(jù)點,這些數(shù)據(jù)點被稱為最近鄰數(shù)據(jù)點。k值是KNN算法中的一個重要參數(shù),它決定了要考慮的最近鄰數(shù)據(jù)點的個數(shù)。如圖4-3所示,若取

,則將待預測點預測為黑點代表的類別,而當取

時,則將待預測點預測為三角形代表的類別。K值的選擇影響KNN模型性能。K過小會導致模型過擬合,易受噪聲和異常值影響;K過大會導致欠擬合,難以捕捉數(shù)據(jù)細節(jié)。常用的K值選擇方法包括交叉驗證和啟發(fā)式方法。交叉驗證通過劃分訓練集和驗證集,在不同K值下訓練并評估,選擇最佳K值,能有效提升模型泛化能力,避免過擬合和欠擬合。圖4-3KNN算法的示例4.4KNN啟發(fā)式方法基于經(jīng)驗或領域知識選擇

k值。例如,當數(shù)據(jù)集較大時,可以選擇較大的

k值,當數(shù)據(jù)集較小時,可以選擇較小的

k值。一般來說,k值應該是一個奇數(shù),這樣可以避免在投票機制中出現(xiàn)平局情況。KNN算法具有其獨特的優(yōu)點和缺點,在實際應用中需要根據(jù)具體問題的需求和數(shù)據(jù)集的特點,綜合考慮KNN算法的優(yōu)缺點,并進行適當?shù)恼{參和優(yōu)化。優(yōu)點缺點4.4KNNKNN算法廣泛應用于分類、回歸和模式識別等任務。在分類問題中,KNN通過計算數(shù)據(jù)點間距離,選擇最近鄰數(shù)據(jù)點,并采用投票機制確定類別,適用于復雜的非線性邊界問題。在回歸問題中,KNN采用最近鄰數(shù)據(jù)點的數(shù)值均值或加權均值進行預測。在模式識別中,KNN可用于人臉識別、指紋識別、語音識別等任務,通過匹配最相似的訓練樣本,實現(xiàn)有效識別。4.5支持向量機支持向量機(SVM)是一種用于二分類的數(shù)據(jù)分類方法,也可擴展到多分類問題。其核心思想是利用分離超平面作為分類邊界,并通過優(yōu)化問題確定最優(yōu)超平面,實現(xiàn)最大間隔分類,提高泛化能力。對于線性可分數(shù)據(jù),SVM可找到最優(yōu)超平面,將類別完全分開。然而,實際數(shù)據(jù)常存在噪聲或異常值,導致無法完全線性分割,因此需要對SVM進行調整,以適應更復雜的分類情況。4.5.1線性可分數(shù)據(jù)的支持向量機當數(shù)據(jù)線性可分的時候,有許多不同的超平面可以將兩個類別正確分開。然而,其中一些超平面可能對未知的測試數(shù)據(jù)表現(xiàn)得更好,另一些超平面可能對未知的測試數(shù)據(jù)表現(xiàn)得更差,因此需要選擇一個最優(yōu)的超平面來確保泛化能力。為了理解這一點,考慮一個測試數(shù)據(jù),它位于兩個類別之間的模糊邊界區(qū)域,很難根據(jù)訓練數(shù)據(jù)準確判斷其所屬類別。在這種情況下,我們希望選擇一個能夠最大化兩個類別之間的最小垂直距離的超平面,這樣可以使支持向量機更加穩(wěn)定。這個最小垂直距離可以通過超平面的邊緣來量化,被稱為余量。4.5.1線性可分數(shù)據(jù)的支持向量機對于可分離的線性分類問題,找到一個分離超平面,使得其到其最近的兩個類別中每個類別的訓練數(shù)據(jù)的距離之和最大化,從而形成一個邊界,將兩個類別的訓練數(shù)據(jù)完全分開。假設這兩個類別之間的最小垂直距離是相同的,則可以構建兩個平行超平面,分別接觸兩個類別的訓練數(shù)據(jù),這兩個平行超平面上的訓練數(shù)據(jù)被稱為支持向量,并且兩個超平面之間的距離被稱為余量。如果嚴格讓所有數(shù)據(jù)都不在超平面之間,并且位于正確的一邊,這就是硬間隔分類,也稱為硬分類。為提高魯棒性,SVM可采用軟分類,允許部分數(shù)據(jù)點位于超平面錯誤的一側,在保持較大間隔的同時,平衡分類邊界的柔性,適應實際數(shù)據(jù)中的噪聲和異常值。4.5.1線性可分數(shù)據(jù)的支持向量機支持向量機的硬分類和軟分類如圖4-4所示。在圖4-4(a)中,超平面1和超平面2由虛線表示,它們都是可分離的線性分類模型。很明顯,超平面1的余量大于超平面2的余量。因此,超平面1在未知的測試數(shù)據(jù)上具有更好的泛化能力,它在“困難”的不確定區(qū)域中能更準確地分離兩個類別,這是分類錯誤最可能發(fā)生的地方。圖4-4支持向量機的硬分類和軟分類4.5.1線性可分數(shù)據(jù)的支持向量機要確定最大余量超平面,可以建立一個非線性規(guī)劃優(yōu)化問題,通過將最大余量作為一個關于分離超平面系數(shù)的函數(shù)來尋找最優(yōu)解。通過求解這個優(yōu)化問題,可以得到最優(yōu)的超平面系數(shù)。假設訓練集D中有n個數(shù)據(jù),表示為

,其中

是對應于第

個數(shù)據(jù)的

維行向量,

是第

個數(shù)據(jù)的類別標簽。那么分離超平面的表達式可以寫成以下形式:(4-21)這里

,是表示超平面的法線方向的

維行向量;

是標量,也稱為偏置量。向量

調節(jié)超平面的方向,偏置量

調節(jié)超平面與原點的距離。需要從訓練數(shù)據(jù)中學習與向量

和偏置量

對應的

個系數(shù),以最大化兩個類別之間的分離余量。4.5.1線性可分數(shù)據(jù)的支持向量機假設類別是線性可分的,這意味著存在一個超平面可以完美地將兩個類別的數(shù)據(jù)分開。對于任意一個滿足

的數(shù)據(jù),它們都位于超平面的滿足

的一側。類似地,對于任意一個滿足

的數(shù)據(jù),它們都位于超平面的滿足

的一側,兩個分離超平面可以形成邊界約束,將數(shù)據(jù)空間分成三個區(qū)域,如圖4-5所示。假設兩個超平面之間的不確定性決策邊界區(qū)域沒有訓練數(shù)據(jù),則訓練數(shù)據(jù)的逐點約束可以表示為圖4-5超平面示意圖(4-23)(4-22)4.5.1線性可分數(shù)據(jù)的支持向量機超平面的定義與邊距:兩個超平面之間的距離被稱為“邊距”,通過最大化邊距,可以確保兩個平行超平面之間盡可能隔開支持不同類別的樣本。兩個平行超平面之間的距離公式為拉格朗日目標函數(shù):為了求解支持向量機的分類問題,引入了拉格朗日松弛方法,目標函數(shù)為:該目標函數(shù)是在最大化邊距的約束條件下構建的。(4-24)4.5.1線性可分數(shù)據(jù)的支持向量機解法:將目標函數(shù)相對于

的梯度設置為零,可以得到最優(yōu)解的表達式:(4-26)(4-25)這表明

是所有訓練樣本的加權和,其中權重是拉格朗日乘子?。Kuhn-Tucker條件:邊界樣本(支持向量)滿足條件偏置項

b:可以從任何訓練數(shù)據(jù)

中推導出:(4-27)4.5.1線性可分數(shù)據(jù)的支持向量機對于一個測試數(shù)據(jù)

,它的類別標簽表示為

,可以通過使用拉格朗日乘子代替

來定義判定邊界:

可以完全用訓練數(shù)據(jù)和測試數(shù)據(jù)之間的乘積、類別標簽、拉格朗日乘子

來表示。這意味著在執(zhí)行分類時,不需要知道確切的訓練數(shù)據(jù)或測試數(shù)據(jù)的特征值,而只需要知道它們之間的乘積。拉格朗日乘子

可以通過梯度上升法來更新。將式(4-25)和式(4-26)代入式(4-24)中,可以將其簡化為僅涉及最大化變量

的拉格朗日對偶問題

:(4-29)(4-28)4.5.1線性可分數(shù)據(jù)的支持向量機相應的基于梯度的的更新公式如下:初始解選擇:拉格朗日乘子的初始解可以選擇為零向量,這是一個可行解。約束條件的挑戰(zhàn):在更新拉格朗日乘子時,可能會違反約束條件(式4-26)投影修正:為了解決上述問題,需要將梯度向量沿超平面的法線方向投影。投影通過使用單位向量(類別標簽的值)實現(xiàn),從梯度向量中減去法線方向的分量,得到修改后的梯度向量。這種修正確保更新后不會違反約束條件,且所有負值都會被重置為0。偏置量的處理:式(4-26)是通過目標函數(shù)對

??的梯度設置為0得到的。一些方案中,可以將偏置量包含在

??中(通過增加維度)。在這種情況下,梯度更新可以簡化為新的公式(如式4-30),從而無需再考慮約束條件。(4-30)4.5.2不可分離數(shù)據(jù)的支持向量機實際應用中的挑戰(zhàn):在實際應用中,數(shù)據(jù)通常是不可完全線性可分的,部分數(shù)據(jù)可能會落在錯誤的一側。支持向量機通過引入“軟間隔”的概念來允許某種程度的誤分類,以應對這些復雜的情況。軟間隔支持向量機:在允許誤分類的情況下,SVM通過尋找兩個邊界超平面,使它們之間的間隔最大,同時允許某些數(shù)據(jù)落在錯誤的一側,從而增強模型的泛化能力。軟間隔的引入使得SVM適應更復雜的非線性和噪聲數(shù)據(jù),同時通過最大化間隔保持較好的分類效果松弛變量的引入:使用松弛變量

表示違反邊界約束的程度,超平面上的新的軟約束集合可以表示為:(4-31)4.5.2不可分離數(shù)據(jù)的支持向量機軟邊界支持向量機的目標函數(shù)定義為:軟邊界支持向量機的優(yōu)化問題可以通過拉格朗日對偶方法來解決。為了引入懲罰項和松弛約束,引入附加乘數(shù)

來表示松弛變量

的松弛約束:通過將

關于

的梯度設置為0,可以得到與硬邊界情況相同的

值和相同的乘數(shù)約束[式(4-25)和式(4-26)]。此外,可以證明,軟邊界情況下的拉格朗日對偶的目標函數(shù)

與硬邊界情況下的目標函數(shù)

相同,唯一變化是非負拉格朗日乘子滿足

的附加約束,該約束是通過設置偏導數(shù)

關于

為0得到的。(4-33)(4-32)4.5.2不可分離數(shù)據(jù)的支持向量機通過這種方法,可以得到硬邊界支持向量機和軟邊界支持向量機的等價對偶問題。軟邊界支持向量機的對偶問題是最大化

,約束條件為

,其中

是用戶定義的參數(shù),前面已經(jīng)推導出了松弛非負約束的Kuhn-Tucker最優(yōu)性條件為

。由于

,因此可以得到

。在參數(shù)

的求解中,考慮任何具有零松弛的支持向量

,其中

,同樣可以使用式(4-27)來對的值進行計算。軟邊界支持向量機還可以通過同時消除邊界約束和松弛約束來求解,在式(4-32)中代入

來實現(xiàn),可以變?yōu)闊o約束的優(yōu)化(最小化)問題:除拉格朗日對偶方法外,軟邊界支持向量機還可以使用梯度下降法來求解。(4-34)4.5.3非線性支持向量機非線性決策曲面如圖4-6所示,圖4-6中的數(shù)據(jù)并不是線性可分的,其決策邊界是一個橢圓(用虛線表示)。圖4-6非線性決策曲面一種解決方法是首先將其轉變?yōu)榫€性可分問題,然后使用前面兩節(jié)的理論進行求解。假設圖4-6中橢圓方程為:通過把

、

、

代入式(4-35),將訓練數(shù)據(jù)變換到新的四維空間中,從而使得這些空間中的類是線性可分的。這樣,利用前面兩節(jié)的理論可以在變換后的空間中作為線性模型求解。(4-35)隨著超平面中系數(shù)向量

的維度增加,問題的復雜度隨之增加,特別是對于高階多項式,需要學習大量的系數(shù)。因此,如果沒有足夠的訓練數(shù)據(jù)可用,則可能導致過擬合問題。為了克服這些問題,非線性支持向量機使用了核技巧(KernelTrick)。核技巧允許SVM在不顯式執(zhí)行特征變換的情況下,計算高維特征空間中的數(shù)據(jù)內積,從而高效學習非線性決策邊界,處理復雜分類問題,同時避免過擬合。4.5.3非線性支持向量機引入核函數(shù)

,它的自變量是原始輸入空間的向量。核函數(shù)必須滿足條件:

映射到高維空間的向量,即規(guī)定核函數(shù)等于向量映射到高維空間后的內積,這個等式隱含著一個從低維空間到高維空間的映射關系

。

常用的核函數(shù)如下。高斯徑向基核函數(shù):多項式核函數(shù):Sigmoid核函數(shù):其中Tanh是雙曲正切函數(shù),

,4.5.3非線性支持向量機用線性分類方法求解非線性分類問題分為兩步:首先使用一個變換將原空間的數(shù)據(jù)映射到新空間,然后在新空間中用線性分類學習方法從訓練數(shù)據(jù)中學習分類模型。當求解線性可分問題時,將式(4-29)中

的換為

即可形成新的目標函數(shù),此時

都是經(jīng)過映射后的高維空間中的向量,要在這個新的高維空間中求解出一個超平面,使數(shù)據(jù)被正確分類。所謂核技巧,就是指可以直接計算

(核函數(shù)是已知的,根據(jù)充要條件可以構造),而不需要真正地去找一個

(通常是很難找到的)。也就是說,并不需要關心低維空間到高維空間的映射

是什么樣子的,只需要構造一個函數(shù)

,使得該函數(shù)可以表示為映射后空間中數(shù)據(jù)的內積,同時求解出的超平面是位于高維空間的。4.6決策樹什么是決策樹?決策樹(DecisionTree)是機器學習領域中一種極具代表性的算法,它可以用于解決分類問題(Classification)和回歸問題(Regression),具有易于理解、計算效率高等特點。本節(jié)將詳細介紹決策樹的基本原理、構建過程及常見的優(yōu)化方法。4.6.1決策樹簡介圖4-7是一個簡單的新能源開發(fā)項目投資決策樹的例子采用遞歸的方法構造決策樹:為當前節(jié)點選擇特征項,以便將該節(jié)點擁有的樣本集劃分為兩個子集,形成分支節(jié)點,反復添加節(jié)點直到所有子集的分類標簽一致。選擇最合適的特征項作為分支節(jié)點是算法的核心。常用算法:ID3:引發(fā)研究熱潮,J.R.Quinlan,1986C4.5:最流行,J.R.Quinlan,1993CART(classificationandregressiontree):通用的(sklearn中默認),L.Brieman等,1984圖4-7新能源開發(fā)項目投資決策樹4.6.2ID3算法ID3算法最早是由Quinlan于1986年提出的一種決策樹算法,算法的核心是“信息熵”。ID3算法以信息論為基礎,以信息增益為度量標準,從而實現(xiàn)對數(shù)據(jù)的分類。ID3算法計算每個特征的信息增益,并選取具有最高信息增益的特征作為給定的測試特征。信息熵用于衡量信息的大小,單位為比特。熵度量了事物的不確定性,越不確定的事物,它的熵越大。隨機變量

的熵表示為:式中,

代表

種不同的離散取值;

代表

取值為

的概率;

代表以2或

e為底的對數(shù)。變量

的熵很容易推廣到多個變量的聯(lián)合熵,兩個變量

的聯(lián)合熵表示為:(4-36)(4-37)4.6.2ID3算法條件熵的表達式為

,條件熵類似于條件概率,它度量了

在已知

時的不確定性。

度量了

的不確定性,條件熵

度量了在已知

的不確定性,那么

呢?從上面的描述可以看出,它度量了

在已知

時不確定性的減少程度。直觀上,如果一個特征具有更好的分類能力,或者說,按照這個特征將訓練集分割成子集,可以使得各個子集在當前條件下有更好的分類,那么就應該選擇這個特征。信息增益能夠很好地表示這個直觀的準則。(4-38)4.6.2ID3算法ID3算法的核心思想是分別計算每個特征劃分前后數(shù)據(jù)的信息熵之差(信息增益),當分裂節(jié)點時,以最大信息增益的特征為節(jié)點,即把最能有效分類的條件特征用作節(jié)點進行分裂,以保證每次分裂的樣本最純,生成的決策樹最簡潔。經(jīng)過反復迭代,直至葉子節(jié)點只有一類或所有條件特征均用作分裂節(jié)點。ID3算法沒有考慮連續(xù)特征,如長度、密度等,這種特征無法在ID3算法中應用。ID3算法采用信息增益大的特征優(yōu)先建立決策樹的節(jié)點,導致某些節(jié)點可能會在決策樹中占據(jù)主導地位,從而影響模型的泛化能力。ID3算法對于缺失值和過擬合的問題也沒有考慮,這些是ID3算法的不足之處。4.6.3C4.5算法ID3算法選擇特征用的是子樹的信息增益,為了避免使用信息增益的弊端,C4.5算法引入了信息增益率,而且在決策樹構造過程中進行剪枝,實現(xiàn)了對連續(xù)特征和缺失值的處理。C4.5算法是Quinlan(1993年)對ID3算法的改進,改進體現(xiàn)在四個方面。①連續(xù)特征的處理②信息增益率用信息增益作為標準容易偏向于取值較多的特征,C4.5算法引入信息增益率

,它是信息增益和特征熵的比值,公式為:式中,

為樣本特征輸出的集合;

為樣本特征。特征熵的公式為:特征數(shù)越多的特征對應的特征熵越大,特征熵作為分母,可以校正信息增益容易偏向于取值較多的特征的問題。(4-40)(4-39)4.6.3C4.5算法③缺失值處理缺失值處理需要解決的是兩個問題,一是在樣本某些特征缺失的情況下選擇劃分特征,二是選擇劃分特征后對于在該特征上缺失值的樣本的處理。④決策樹的剪枝處理“過擬合”分為預剪枝、后剪枝兩類預剪枝是每個結點劃分前就進行估計,考慮結點對于整體劃分效果是否有提升。如果當前結點的劃分不能對決策樹泛化性能有提高嗎,則停止劃分并將當前結點標記為葉結點。后剪枝是先從訓練集中生成一棵完整的決策樹,然后自底向上的考察每一個非葉結點,和預剪枝相反,如果將該結點對應的子樹替換為葉結點能給決策樹帶來性能上的提升,則將該子樹替換為葉結點。4.6.3C4.5算法)決策樹剪枝(pruning)后剪枝臍部=?好瓜好瓜壞瓜驗證集精度:劃分前:42.9%劃分后:71.4%預剪枝決策:劃分①②③④凹陷稍凹平坦驗證集精度:劃分前:71.4%劃分后:57.1%預剪枝決策:禁止劃分色澤=?驗證集精度:剪枝前:57.1%剪枝后:71.4%后剪枝決策:剪枝根蒂=?預剪枝臍部=?壞瓜①③④凹陷稍凹平坦根蒂=?色澤=?壞瓜好瓜好瓜好瓜好瓜②色澤=?好瓜壞瓜青綠烏黑淺白稍蜷蜷縮硬挺青綠烏黑淺白⑤紋理=?好瓜壞瓜好瓜模糊清晰稍糊⑥驗證集精度:劃分前:71.4%劃分后:71.4%預剪枝決策:禁止劃分好瓜驗證集精度:剪枝前:42.9%剪枝后:57.1%后剪枝決策:剪枝好瓜4.6.4CART算法CART(ClassificationAndRegressionTree)算法由Breiman等在1984年提出,該算法用基尼指數(shù)來選擇特征(分類),或者用均方差來選擇特征(回歸)。CART算法既可以用于創(chuàng)建分類樹,又可以用于創(chuàng)建回歸樹,兩者在創(chuàng)建的過程中稍有差異。如果目標變量是離散的,則稱為分類樹;如果目標變量是連續(xù)的,則稱為回歸樹。C4.5算法使用信息增益率來選擇特征,以盡量避免信息增益容易造成選擇特征值多的特征的問題。CART算法使用基尼指數(shù)來代替信息增益(率),基尼指數(shù)代表了模型的不純度,基尼指數(shù)越小,則不純度越低,特征越好。這和信息增益(率)是相反的4.6.4CART算法基尼不純度——CART分類樹基尼不純度使用基尼指數(shù)來表示。在分類問題中,假設有

個類別,第

個類別的概率為

,則基尼指數(shù)表示為:如果是二分類問題,那么計算就更加簡單了,如果屬于第一個樣本輸出的概率是

,則

。對于一個給定的樣本,假設有

個類別,第

個類別的數(shù)量為

,則樣本

的基尼指數(shù)表示為:特別地,對于樣本

,如果根據(jù)特征

的某個值

,把

分成

兩個部分,則在特征

的條件下,

的基尼指數(shù)表示為:(4-43)(4-42)(4-41)4.6.4CART算法CART回歸樹CART算法除進行分類外,還可以進行回歸。CART回歸樹和CART分類樹的建立流程大部分是類似的,所以這里只討論二者的不同之處。除了概念的不同,CART回歸樹和CART分類樹的建立和預測的區(qū)別主要有下面兩點:連續(xù)特征的處理方法不同、進行預測的方式不同。對于連續(xù)特征的處理,使用了常見的和方差的度量方式,CART回歸樹的度量目標是:對于任意劃分特征

對應的任意劃分點

兩邊劃分成的樣本集

和樣本集

,求出使

各自的均方差最小時所對應的特征和特征值劃分點。表達式為:式中,

為樣本集

的樣本輸出均值;

為樣本集

的樣本輸出均值。在決策樹建立后進行預測的方式中,CART分類樹采用葉子節(jié)點中概率最大的類別作為當前節(jié)點的預測類別,而CART回歸樹的輸出不是類別,它采用最終葉子節(jié)點的均值或中位數(shù)來預測輸出結果。(4-44)4.6.4CART算法CART樹的剪枝由于決策時算法很容易對訓練集過擬合,從而導致泛化能力差,因此需要對CART樹進行剪枝,類似于線性回歸的正則化,來增強CART樹的泛化能力。CART算法采用的是后剪枝,即先生成原始樹,再生成所有可能的剪枝后的CART樹,最后使用交叉驗證來檢驗各種剪枝的效果,選擇泛化能力最好的剪枝策略。在剪枝的過程中,對于任意的一棵子樹

,其損失函數(shù)表示為:式中,

為正則化參數(shù),這和線性回歸的正則化一樣;

為訓練數(shù)據(jù)的預測誤差,分類樹采用基尼指數(shù)度量,回歸樹采用均方差度量;

是子樹

的葉子節(jié)點的數(shù)量。(4-45)4.7集成學習集成學習本身不是一種單獨的機器學習算法,而是通過構建并結合多個學習器來完成學習任務的。集成學習可以用于分類問題集成、回歸問題集成、特征選取集成、異常點檢測集成等,這種方法在大數(shù)據(jù)分析領域應用非常廣泛。4.7.1集成學習概述對于訓練數(shù)據(jù),通過訓練若干個體學習器,使用一定的結合策略,來完成學習任務,就可以最終形成一個強學習器(常??梢垣@得比個體學習器顯著優(yōu)越的學習器)。個體學習器一般就是常見的機器學習算法,如決策樹、神經(jīng)網(wǎng)絡等。集成學習的思想如圖4-8所示。集成學習是一種技術框架,其按照不同的思路來組合基礎模型,從而達到更強的目的。集成學習有兩個主要的問題需要解決,第一是如何得到若干個體學習器,第二是如何選擇一種結合策略,將這些個體學習器集合成一個強學習器。圖4-8集成學習的思想4.7.1集成學習概述集成學習通過將多個個體學習器結合,通常都會獲得比單一個體學習器顯著優(yōu)越的泛化能力,也可能會獲得相同或更差的泛化能力。要想獲得較好的集成學習性能,個體學習器需要滿足兩個基本條件:

個體學習器要有一定的性能,至少不差于隨機猜測的性能,即個體學習器的準確率不低于50%;

個體學習器要具有多樣性,即個體學習器間要有差異。124.7.1集成學習概述集成學習的第一個問題就是如何得到若干個體學習器,一般有以下兩種選擇。

同質個體學習器,即所有的個體學習器屬于同一種類,如都是決策樹個體學習器,或者都是神經(jīng)網(wǎng)絡個體學習器,如Boosting和Bagging系列。

異質個體學習器,即所有的個體學習器不全屬于同一種類,如對于某一個分類問題,先對訓練集采用支持向量機、Logistic回歸和樸素貝葉斯等不同的個體學習器來學習,再通過某種結合策略來確定最終的強學習器,這種集成學習稱為Stacking。124.7.1集成學習概述提升集成學習性能主要通過增加多樣性來實現(xiàn),主要做法是對數(shù)據(jù)樣本、輸入特征、輸出表示、算法參數(shù)進行擾動處理。數(shù)據(jù)樣本擾動數(shù)據(jù)樣本擾動通常使用采樣法來實現(xiàn),如Bagging系列算法中的自助采樣法。數(shù)據(jù)樣本擾動對決策樹、神經(jīng)網(wǎng)絡這種對數(shù)據(jù)樣本變化敏感的機器學習算法非常有效.輸入特征擾動輸入特征擾動是指在樣本的特征空間中產(chǎn)生不同的特征子集。在包含大量冗余特征的樣本中,在特征子集中訓練個體學習器不僅能產(chǎn)生多樣性大的個體學習器,還會因特征數(shù)的減少而大幅節(jié)省時間開銷。輸出表示擾動輸出表示擾動是指對輸出表示進行操縱以增強多樣性。可以對訓練樣本的標簽稍作變動,如隨機改變一些訓練樣本的標簽,也可以對輸出表示進行轉化,如將分類輸出轉化為回歸輸出后構建個體學習器。算法參數(shù)擾動算法參數(shù)擾動在深度學習算法中較為常見,主要原因是神經(jīng)網(wǎng)絡有很多參數(shù)可以設置,不同的參數(shù)往往可以產(chǎn)生差異較大的個體學習器。4.7.2隨機森林隨機森林是Breiman于2001年提出的一種Bagging(自舉匯聚)方法,通過有放回抽樣構建多個訓練數(shù)據(jù)集,并訓練多個分類器。最終通過多數(shù)投票或均值統(tǒng)計分類結果,提高模型的穩(wěn)定性和泛化能力。隨機森林本質上是多棵決策樹的集成,每棵樹獨立學習并做出分類,最終所有樹的投票結果決定最終類別。這種集成學習方法能夠提升分類準確率,同時減少過擬合。圖4-9隨機森林的算法框架4.7.2隨機森林隨機森林隨機森林的生成步驟如果訓練集大小為N,對于每棵樹而言,隨機且有放回地從訓練集中抽取N個訓練樣本作為該樹的訓練集(bootstrapsample方法);如果每個樣本的特征維度為M,指定一個常數(shù)m<<M。對于每一個節(jié)點,隨機地從M個特征中選取m個特征子集,每次樹進行分裂時,從這m個特征中選擇最優(yōu)的;根據(jù)(1)和(2)構建一棵決策樹,每棵樹都盡最大程度地生長,并且沒有剪枝過程;重復(1)-(3)的過程n次,可以得到n棵決策樹;輸入一個測試樣本,使用這n棵決策樹獲得n個分類結果,使用簡單的投票機制就可以獲得該測試樣本的最終分類結果。不同訓練集,同一訓練集內,樣本都可以重復4.7.3AdaBoost

核心思想是針對同一個訓練集訓練不同的分類器(弱分類器),然后把這些弱分類器集合起來,構成一個最終分類器(強分類器)。

4.7.4GBDT

在迭代的每一步構建一個能夠沿著梯度最陡的方向降低損失的學習器來彌補已有模型的不足。負梯度殘差4.7.4GBDTGBDT算法(GradientBoostDecisionTree)例:項目名稱裝機容量日照時間季節(jié)日發(fā)電量A2000kW4h冬季200kWhB5000kW6h夏季1000kWhC6000kW9h冬季1200kWhD9000kW12h夏季2800kWh表4-2太陽能發(fā)電項目數(shù)據(jù)圖4-10太陽能發(fā)電項目案例的一棵決策樹圖4-11GBDT算法的迭代過程4.7.5XGBoostXGBoost算法(ExtremeGradientBoosting)陳天琦在2016年提出,是GBDT算法的改進(GBDT利用了一階導數(shù),XGBoost對損失函數(shù)做了二階泰勒展開,并在目標函數(shù)之外加入了正則項)

訓練誤差,可用平方誤差基分類器的復雜程度,如決策樹的葉節(jié)點個數(shù)或樹深度

4.7.5XGBoostXGBoost算法(ExtremeGradientBoosting)

const4.7.5XGBoostXGBoost算法(ExtremeGradientBoosting)4.8分類器評估為了判斷分類器的好壞,需要對其進行性能評估,而進行性能評估就需要評估指標。針對分類器類型的不同,評估指標也不相同。一般而言,回歸任務的評估指標是擬合度和均方誤差,分類任務則有很多的評估方法,下面來討論分類任務中常見的性能評估指標。1)混淆矩陣針對一個二分類問題,可以將實例分成正類(Positive)或負類(Negative),在實際分類中會出現(xiàn)以下四種情況。①

若一個實例是正類,并且被預測為正類,則為真正類TP(TruePositive)。②

若一個實例是正類,但是被預測為負類,則為假負類FN(FalseNegative)。③

若一個實例是負類,但是被預測為正類,則為假正類FP(FalsePositive)。④

若一個實例是負類,并且被預測為負類,則為真負類TN(TrueNegative)。4.8分類器評估二分類問題的混淆矩陣可以用表4-3表示。預測值正類負類真實值正類TP(真正類)FN(假負類)負類FP(假正類)TN(真負類)對于多分類問題,混淆矩陣也可以采用二分類問題的表示方法,這里以三分類問題為例,其混淆矩陣如表4-4所示。預測值類別1類別2類別3真實值類別1abc類別2def類別3ghi與二分類問題的混淆矩陣一樣,矩陣行數(shù)據(jù)相加是真實值類別數(shù),列數(shù)據(jù)相加是分類后的類別數(shù)。表4-3二分類問題的混淆矩陣表4-4三分類問題的混淆矩陣4.8分類器評估2)準確率準確率(Accuracy)是指預測正確的樣本數(shù)量占總量的百分比,計算公式為準確率有一個缺點,那就是如果樣本不均衡,則這個指標不能評估模型的性能優(yōu)劣。假如一個測試集中有正樣本99個,負樣本1個,模型把所有的樣本都預測為正樣本,那么模型的Accuracy為99%,僅看準確率指標,模型的效果很好,但實際上模型對負樣本沒有任何預測能力(4-45)4.8分類器評估3)精準率精準率(Precision)又稱為查準率,是指在模型預測為正樣本的結果中,真正是正樣本的結果所占的百分比,計算公式為:精準率的含義就是在預測為正樣本的結果中,有多少是準確的。這個指標比較謹慎,

溫馨提示

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

評論

0/150

提交評論