分類 回歸演算法 隨機森林

2021-08-18 03:18:47 字數 1203 閱讀 2754

源位址  

在得到森林之後,當有乙個新的輸入樣本進入的時候,就讓森林中的每一棵決策樹分別進行一下判斷,看看這個樣本應該屬於哪一類,然後看看哪一類被選擇最多,就**這個樣本為那一類。 

回歸:在決策樹的根部,所有的樣本都在這裡,此時樹還沒有生長,這棵樹的殘差平方和就是回歸的殘差平方和。然後選擇乙個變數也就是乙個屬性(feature),這個變數使得通過這個進行分類後的兩部分的分別的殘差平方和的和最小。然後在分叉的兩個節點處,再利用這樣的準則,選擇之後的分類屬性。一直這樣下去,直到生成一顆完整的樹。 

回歸樹——**值為葉節點目標變數的加權均值 

分類樹——某葉節點**的分類值應是造成錯判損失最小的分類值。 

演算法思想解釋:

在上述中,這些決策樹好比是臭皮匠,森林就是臭皮匠的聚集之地。在分類中,倘若臭皮匠大部分都決策出選擇類別a(多數表決法),那麼這就是最終的結果a(三個臭皮匠頂過乙個諸葛亮)。 

演算法知識點:

決策樹就是利用例項(instance)的特徵,進行生成。決策樹實際上是將空間用超平面進行劃分的一種方法,每次分割的時候,都將當前的空間一分為二,需要資訊熵的知識點。比如說下面的決策樹: 

在這裡,x與y分別表示例項中的某個特徵。

因此,在決策樹中就涉及到了對特徵的選取。 

在建立每一棵決策樹的過程中,有兩點需要注意 - 取樣與完全**。首先是兩個隨機取樣的過程,random forest對輸入的資料要進行行、列的取樣。 

對於行取樣:bootstrap方式:採用有放回的方式,也就是在取樣得到的樣本集合中,可能有重複的樣本。假設輸入樣本為n個,那麼取樣的樣本也為n個。這樣使得在訓練的時候,每一棵樹的輸入樣本都不是全部的樣本,使得相對不容易出現over-fitting。 

注: bootstrap方式採取有放回抽樣,因此,針對n個樣本中的某乙個樣本,可能不被選中,也可能被選中多次,這樣組合成為一組訓練集(n個樣本) 

然後進行列取樣:m個feature就是用來做決策的:從m個feature中,選擇m個(m << m)。之後就是對取樣之後的資料使用完全**的方式建立出決策樹,這樣決策樹的某乙個葉子節點要麼是無法繼續**的,要麼裡面的所有樣本的都是指向的同乙個分類。一般很多的決策樹演算法都乙個重要的步驟 - 剪枝,但是這裡不這樣幹,由於之前的兩個隨機取樣的過程保證了隨機性,所以就算不剪枝,也不會出現over-fitting。

邏輯回歸與隨機森林

1.邏輯回歸 邏輯回歸從統計學的角度看屬於非線性回歸中的一種,它實際上是一種分類方法,主要用於兩分類問題 regression問題的常規步驟為 尋找h函式 即假設估計的函式 構造j函式 損失函式 想辦法使得j函式最小並求得回歸引數 資料擬合問題 1 利用了logistic函式 或稱為sigmoid函...

《scikit learn》隨機森林之回歸

今天我們學習下隨機森林做回歸的用法 話不多說直接上測試 看的更加清晰,總體上和回歸樹是一樣的使用流程 from sklearn.datasets import load boston from sklearn.model selection import cross val score from s...

隨機森林演算法

random forest是加州大學伯克利分校的breiman leo和adele cutler於2001年發表的 中提到的新的機器學習演算法,可以用來做分類,聚類,回歸,和生存分析,這裡只簡單介紹該演算法在分類上的應用。random forest 隨機森林 演算法是通過訓練多個決策樹,生成模型,然...