1. 程式人生 > >經典的機器學習模型(叄)

經典的機器學習模型(叄)

1 CART(Classification and Regression Tree)

決策樹的本質就是將空間分為若干個區域,對空間向量的垂直分割。
給定訓練資料 D = { ( x (

1 ) , y ( 1 ) )
, ( x ( 2 ) , y
( 2 )
) . . . ( x ( n ) , y ( n ) ) } D=\{ (x^{(1)},y^{(1)}),(x^{(2)},y^{(2)})...(x^{(n)},y^{(n)})\} 我們想要學習一個CART來最小化下列函式:
L o s s = m i n ( m i n x R 1 ( j , s ) ( y ( i ) c 1 ) 2 + m i n x R 2 ( j , s ) ( y ( i ) c 2 ) 2 ) Loss=min(min_{x\in R_1(j,s)}\sum(y^{(i)}-c_1)^2+min_{x\in R_2(j,s)}\sum(y^{(i)}-c_2)^2)
R 1 ( j , s ) = { x x j s } R_1(j,s)=\{ x|x_j\leq s\}
R 2 ( j , s ) = { x x j > s } R_2(j,s)=\{ x|x_j> s\}
C m = 1 N m x R m ( j , s ) y ( i ) C_m=\frac{1}{N_m}\sum_{x\in R_m(j,s)}y^{(i)} , m = 1 , 2 m=1,2
CART
在上圖中,資料被分成兩段,在此劃分下的損失函式是,左半邊的資料平均值與真實資料的差值的平方和,加上右半邊資料平均值與差值的平方和,我們想要求出使得損失函式最小時的分割點。在構造CART時,如果我們有多個變數,那麼我們需要遍歷每一個變數找到最佳的劃分點,使得損失函式最小化。

2 整合學習(Ensemble Learning )

2.1 整合學習在機器學習演算法中具有較高的準去率,不足之處就是模型的訓練過程可能比較複雜,效率不是很高。目前接觸較多的整合學習主要有2種:基於Boosting的和基於Bagging,前者的代表演算法有Adaboost、GBDT、XGBOOST、後者的代表演算法主要是隨機森林。

2.2 整合學習的主要思想
整合學習的主要思想是利用一定的手段學習出多個分類器,而且這多個分類器要求是弱分類器,然後將多個分類器進行組合公共預測。核心思想就是如何訓練處多個弱分類器以及如何將這些弱分類器進行組合。

2.3、整合學習中弱分類器選擇
一般採用弱分類器的原因在於將誤差進行均衡,因為一旦某個分類器太強了就會造成後面的結果受其影響太大,嚴重的會導致後面的分類器無法進行分類。常用的弱分類器可以採用誤差率小於0.5的,比如說邏輯迴歸、SVM、神經網路。

2.4、多個分類器的生成
可以採用隨機選取資料進行分類器的訓練,也可以採用不斷的調整錯誤分類的訓練資料的權重生成新的分類器。

2.5、多個弱分類區如何組合
基本分類器之間的整合方式,一般有簡單多數投票、權重投票,貝葉斯投票,基於D-S證據理論的整合,基於不同的特徵子集的整合。

2.1 Bagging(Bootstrap Aggregating)

Bootstrap取樣

有放回的取樣法,可以更真實的瞭解資料,忽略一些噪聲的影響。

隨機森林(Random Forest)

兩個隨機過程:第一個就是輸入資料是隨機的從整體的訓練資料中選取一部分作為一棵決策樹的構建,而且是有放回的選取;第二個就是每棵決策樹的構建所需的特徵是從整體的特徵集隨機的選取的,這兩個隨機過程使得隨機森林很大程度上避免了過擬合現象的出現。

演算法步驟:

1、從訓練資料中選取n個數據作為訓練資料輸入,一般情況下n是遠小於整體的訓練資料N的,這樣就會造成有一部分資料是無法被去到的,這部分資料稱為袋外資料,可以使用袋外資料做誤差估計。

2、選取了輸入的訓練資料的之後,需要構建決策樹,具體方法是每一個分裂結點從整體的特徵集M中選取m個特徵構建,一般情況下m遠小於M。

3、在構造每棵決策樹的過程中,按照選取最小的基尼指數進行分裂節點的選取進行決策樹的構建。決策樹的其他結點都採取相同的分裂規則進行構建,直到該節點的所有訓練樣例都屬於同一類或者達到樹的最大深度。

4、 重複第2步和第3步多次,每一次輸入資料對應一顆決策樹,這樣就得到了隨機森林,可以用來對預測資料進行決策。

5、 輸入的訓練資料選擇好了,多棵決策樹也構建好了,對待預測資料進行預測,比如說輸入一個待預測資料,然後多棵決策樹同時進行決策,最後採用多數投票的方式進行類別的決策。

2.2 Boosting(Bootstrap Aggregating)

概念:若分類器在樣本上訓練形成基礎分類器,Boosting框架對訓練樣本集的操作,形成新樣本(樣本的權重不同),利用之前的基分類器重新訓練生成第二個基分類器,迴圈n次,形成n個基分類器,然後按照一定的權重比例形成最終的分類器。

Adaboost(Adaptive Boost)

Adaboost是boosting中較為代表的演算法,基本思想是通過訓練資料的分佈構造一個分類器,然後通過誤差率求出這個若弱分類器的權重,通過更新訓練資料的分佈,迭代進行,直到達到迭代次數或者損失函式小於某一閾值。

演算法流程:
訓練樣本: D = { ( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) . . . ( x ( n ) , y ( n ) ) } D=\{ (x^{(1)},y^{(1)}),(x^{(2)},y^{(2)})...(x^{(n)},y^{(n)})\} x ( i ) R n x^{(i)}\in R^n , y ( i ) { + 1 , 1 } y^{(i)}\in \{+1,-1\}
對於每個 x ( i ) x^{(i)} 都有一個對應的權重 W ( i ) W^{(i)} , W ( i ) R W^{(i)}\in R .

Step1:初始化
W = ( W ( 1 ) , W ( 2 ) , . . . W ( n ) ) , W ( i ) = 1 N , i = 1 , 2 , . . . . N W=(W^{(1)},W^{(2)},...W^{(n)}),W^{(i)}=\frac{1}{N},i=1,2,....N

Step2:遍歷 k = 1 , 2 , 3.... K k=1,2,3....K
G k ( x ) G_k(x) 是一個弱分類器,可以是樸素貝葉斯,決策樹,神經網路,SVM等等。
對每一個 G k ( x ) G_k(x) ,誤差 e k e_k

相關推薦

經典機器學習模型

1 CART(Classification and Regression Tree) 決策樹的本質就是將空間分為若干個區域,對空間向量的垂直分割。 給定訓練資料 D

經典機器學習模型

決策樹 ID3 演算法的核心問題是選取在樹的每個結點要測試的屬性。我們希望選擇的是最有 助於分類例項的屬性。那麼衡量屬性價值的一個好的定量標準是什麼呢?這裡將定義一 個統計屬性,稱為“資訊增益(information gain)”,用來衡量給定的屬性區分訓練樣例 的能力。ID3 演算

經典機器學習模型

1 K近鄰演算法K-Nearest Neighbor (k-NN) KNN是通過測量不同特徵值之間的距離進行分類。它的思路是:如果一個樣本在特徵空間中的k個最相似(即特徵空間中最鄰近)的樣本中的大多數屬於某一個類別,則該樣本也屬於這個類別,其中K通常是不大於20的整數。KNN演算法中

機器學習筆記線性迴歸模型

一、線性迴歸模型 (一)引入—梯度下降演算法 1. 線性假設: 2. 方差代價函式:   3. 梯度下降:   4. : learning rate (用來控制我們在梯度下降時邁出多大的步子,值較大,梯度下降就很迅速) 值過大易造成無法收斂到minimum(每一步邁更大)

機器學習筆記十三:TensorFlow實戰五經典卷積神經網路: LeNet -5

1 - 引言 之前我們介紹了一下卷積神經網路的基本結構——卷積層和池化層。通過這兩個結構我們可以任意的構建各種各樣的卷積神經網路模型,不同結構的網路模型也有不同的效果。但是怎樣的神經網路模型具有比較好的效果呢? 下圖展示了CNN的發展歷程。 經過人們不斷的嘗試,誕生了許多有

一文掌握常用的機器學習模型文末福利

AI 科技大本營按:本文節選自微軟亞洲研究院機器學習研究團隊劉鐵巖、陳薇、王太峰、高飛合著的《分散式機器學習:演算法、理論與實踐》一書。為了讓大家更好地理解分散式機器學習,AI科技大本營聯合華章科技特別邀請到了本書的作者之一——微軟亞洲研究院副院長劉鐵巖老師進行線上公開課分享,詳

機器學習筆記Logistic迴歸模型

Logistic迴歸模型 1. 模型簡介: 線性迴歸往往並不能很好地解決分類問題,所以我們引出Logistic迴歸演算法,演算法的輸出值或者說預測值一直介於0和1,雖然演算法的名字有“迴歸”二字,但實際上Logistic迴歸是一種分類演算法(classification y = 0 or 1)。 Log

機器學習筆記 第三章 線性模型

3.1 基本形式 樣本x由d個屬性描述 x= (x1; x2;…; xd), 線性模型試圖學得一個通過屬性的線性組合來進行預測的函式: 向量形式: w和b學得之後,模型就得以確定. 3.2 線性迴歸 線性迴歸試圖學得 為確定w,b,學習到泛化效能最好的模型

深入理解JAVA虛擬機器學習筆記JVM記憶體模型

一、JVM記憶體模型概述 JVM記憶體模型其實也挺簡單的,這裡先提2個知識點: 1、組成:java堆,java棧(即虛擬機器棧),本地方法棧,方法區和程式計數器。 2、是否共享:其中方法區和堆區是執行緒共享的,虛擬機器棧,本地方法棧和程式計數器是執行緒私有的,也稱執行緒

機器學習筆記EM演算法及實踐以混合高斯模型GMM為例來次完整的EM

今天要來討論的是EM演算法。第一眼看到EM我就想到了我大楓哥,EM Master,千里馬,RUA!!!不知道看這個部落格的人有沒有懂這個梗的。好的,言歸正傳,今天要講的EM演算法,全稱是Expectation maximization,期望最大化。怎麼個意思呢,就是給你一

機器學習cs229——區域性加權迴歸、邏輯迴歸、感知器、牛頓方法、廣義線性模型

 首先,我們先來討論一下欠擬合(underfitting)和過擬合(overfitting)問題。比如我們同樣採用線性迴歸來對一組房屋價格和房屋大小的資料進行擬合,第一種情況下我們只選取一個數據特徵(比如房屋大小 x)採用直線進行擬合。第二種情況下選取兩個資料特徵(比如房屋大

機器學習筆記:線性模型

線性模型是機器學習常用的眾多模型中最簡單的模型,但卻蘊含著機器學習中一些重要的基本思想。許多功能更為強大的非線性模型可線上性模型的基礎上通過引入層級結構或高維對映得到,因此瞭解線性模型對學習其他機器學習模型具有重要意義。 本文主要介紹機器學習中常用的線性模型,內

機器學習筆記:概率圖模型

機器學習最重要的任務,是根據一些已觀察到的證據(例如訓練樣本)來對感興趣的未知變數(例如類別標記)進行估計和推測。概率模型提供了一種描述框架,將學習任務歸結為計算變數的概率分佈。概率圖模型(probabilistic graphical model,簡稱PGM)是一類用圖來表達變數相關關係的概率模型

機器學習基礎——詞集模型SOW和詞袋模型BOW

(1)詞集模型:Set Of Words,單詞構成的集合,集合自然每個元素都只有一個,也即詞集中的每個單詞都只有一個 (2)詞袋模型:Bag Of Words,如果一個單詞在文件中出現不止一次,並統計

機器學習系列——迴歸模型

迴歸(Regression)模型是指機器學習方法學到的函式的輸出是連續實數值,迴歸模型可以用於預測或者分類,這篇部落格中主要整理用於預測的線性迴歸模型和多項式迴歸模型。 線性迴歸 按照機器學習建模的三個步驟,首先需要確定選用的模型,這裡就是線性迴歸(Li

機器學習筆記:關於隱含馬爾科夫模型

這篇文章是我在看完吳軍老師的數學之美一書中關於隱馬爾科夫模型之後所寫,旨在記錄一下自己對隱馬爾科夫模型的認識, 隱馬爾科夫模型我在很早之前就有所接觸,在學習語音識別的時候,會涉及到隱馬爾科夫模型,當時是完全不懂,現在雖然還是一知半解,因為沒有再次去使用,接下來的主攻方向是機器視覺,對隱馬爾可

機器學習演算法:邏輯迴歸模型Logistic Regression, LR

轉自:https://blog.csdn.net/weixin_39910711/article/details/81607386 線性分類器:模型是引數的線性函式,分類平面是(超)平面;非線性分類器:模型分介面可以是曲面或者超平面的組合。 典型的線性分類器有感知機,LDA,邏輯斯特迴歸,SVM

公開課機器學習筆記7Softmax迴歸模型

在本節中,我們介紹Softmax迴歸模型,該模型是logistic迴歸模型在多分類問題上的推廣,在多分類問題中,類標籤  可以取兩個以上的值。 Softmax迴歸模型對於諸如MNIST手寫數字分類等問題是很有用的,該問題的目的是辨識10個不同的單個數字。Softmax迴歸

機器學習1——學習樸素貝葉斯-三種模型理論+python程式碼程式設計例項

本文來源於: 部落格:http://blog.csdn.net/u012162613/article/details/48323777 http://blog.csdn.net/zhihaoma/article/details/51052064  感謝作者的分享,非常感謝

非監督學習之混合高斯模型和EM演算法——Andrew Ng機器學習筆記

0、內容提要 這篇博文主要介紹: - 混合高斯模型(mixture of Gaussians model) - EM演算法(Expectation-Maximization algorithm) 1、引入 假設給定一個訓練集{x(1),...,x(m)