fastText 決策樹 EM演算法

2021-09-22 12:55:06 字數 2646 閱讀 4093

二、決策樹的生成及剪枝操作

三、em演算法

1、fasttext是facebook開源的乙個詞向量與文字分類工具。

2、fasttext的介紹及其與word2vect的比較參見:

(1)有效文字分類 :有監督學習

(2)0學習詞向量表徵:無監督學習

參見博文:

決策樹的評價:

1、 資訊增益( id3)

資料本身是有個熵值的,當乙個特徵確定之後系統的熵值減小,對於整顆決策樹而言,熵值從根節點到葉子結點時逐漸降低的。

(1)對於純的葉子結點來說,熵值為0;

2、 增益率(c4.5)

3、 gini指數(cart)

具體計算公式參見周志華《機器學習》第四章

剪枝操作防止過擬合的一種方法。包括預剪枝和後剪枝。

(1)、邊生成決策樹邊考慮。設定葉子結點中包含的最少樣本,小於該值就不再進行分枝操作。

下面是指定葉子節點中最小的樣本數目,如果葉子節點樣本數目小於3個就不分了

clf = decisiontreeclassifier(criterion='entropy', min_samples_leaf=3)

(2)、給定數的高度或深度

如下設定樹的最大深度為3

clf = decisiontreeclassifier(criterion='entropy', max_depth=3)

(3)、給定熵值,如果熵小於某個數就不再進行結點**。

1、 總體思路:

(1)先計算出所有非葉子結點的剪枝係數,根據剪枝係數由小到大開始剪枝,得到t_0,t_1…t_root等一系列剪枝後的決策樹.

(2)在驗證集上對上面生成的決策樹做評價,選擇損失函式最小的樹。

2、 剪枝係數的確定

(1)h(t): 某葉子結點的熵

(2)nt:葉子節點中的樣本個數

(3)|t_leaf|:葉子結點的數目

(4) α:屬於[0,+無窮)

3、對決策樹的所有非葉子結點計算α,(以非葉子結點 r 為例,以 r 為根的子樹)

(1)剪枝後,只剩 r 乙個結點,c(r)= 該節點中的樣本個數 * 該結點的熵 + α

(2)剪枝前,r是一顆以 r 為根的樹,c(r) = 「看下圖」

(3)令兩者相等,即可求得該結點的 α。

(4)由此可求的所有非葉子結點的 α。

搬運:參見:

我們經常會從樣本觀察資料中,找出樣本的模型引數。 最常用的方法就是極大化模型分布的對數似然函式。但是在一些情況下,我們得到的觀察資料有未觀察到的隱含資料,此時我們未知的有隱含資料和模型引數,因而無法直接用極大化對數似然函式得到模型分布的引數。怎麼辦呢?這就是em演算法可以派上用場的地方了。

em演算法解決這個的思路是使用啟發式的迭代方法,既然我們無法直接求出模型分布引數,那麼我們可以先猜想隱含資料(em演算法的e步),接著基於觀察資料和猜測的隱含資料一起來極大化對數似然,求解我們的模型引數(em演算法的m步)。由於我們之前的隱藏資料是猜測的,所以此時得到的模型引數一般還不是我們想要的結果。不過沒關係,我們基於當前得到的模型引數,繼續猜測隱含資料(em演算法的e步),然後繼續極大化對數似然,求解我們的模型引數(em演算法的m步)。以此類推,不斷的迭代下去,直到模型分布引數基本無變化,演算法收斂,找到合適的模型引數。

從上面的描述可以看出,em演算法是迭代求解最大值的演算法,同時演算法在每一次迭代時分為兩步,e步和m步。一輪輪迭代更新隱含資料和模型分布引數,直到收斂,即得到我們需要的模型引數。

乙個最直觀了解em演算法思路的是k-means演算法,見之前寫的k-means聚類演算法原理。在k-means聚類時,每個聚類簇的質心是隱含資料。我們會假設kk個初始化質心,即em演算法的e步;然後計算得到每個樣本最近的質心,並把樣本聚類到最近的這個質心,即em演算法的m步。重複這個e步和m步,直到質心不再變化為止,這樣就完成了k-means聚類。

當然,k-means演算法是比較簡單的,實際中的問題往往沒有這麼簡單。上面對em演算法的描述還很粗糙,我們需要用數學的語言精準描述。

由於概率分步中不僅有分步引數,還有隱含引數 z,因此用最大化似然的方法無法求出分步引數,因此假設隱含引數服從乙個分步q(z),然後將似然函式轉化為jensen不等式。將最大化似然轉換成最大化不等式右邊式子的值,求z(e步),再已知隱含變數 z 的條件下,求分布引數(m步)。

決策樹演算法

決策樹是一種樹型結構,其中每個內部結點表示在乙個屬性上的測試,每個分支代表乙個測試輸出,每個葉結點代表一種類別。決策樹學習是以例項為基礎的歸納學習,採用的是自頂向下的遞迴方法,其基本思想是以資訊熵為度量構造一棵熵值下降最快的樹,到葉子結點處的熵值為零,此時每個葉節點中的例項都屬於同一類。決策樹學習演...

決策樹演算法

本文主要介紹id3 c4.5和cart演算法 決策樹起源於概念學習系統 cls 概念學習模型 是乙個事先定義的範疇集合和一些有關例子是否落入給定範疇的判定 概念學習的主要任務 是判斷所給定事物的屬性或特性,並且正確地區分這些事物,將其劃分到某乙個範疇 對於如下決策樹模型 我們首先考慮他的屬性outl...

決策樹演算法

引 最近老師布置了課堂展示的作業,主題是決策樹,老師還舉了買西瓜的決策例子,感覺貼近生活也很有意思。在這之前沒有了解過這個概念,通過幾個禮拜的學習收穫不少。一 首先,什麼是決策樹?個人而言,決策樹就是將人在做決策時的思維脈絡以樹的形式展示出來的產物,即決策的過程模型。這是一棵去不去打高爾夫球的決策樹...