《機器學習》第四章決策樹答案

2021-09-30 16:34:15 字數 1952 閱讀 3634

1、證明對於不含衝突資料(即特徵向量完全相同但標記不同)的訓練集,必存在與訓練集一致(即訓練誤差為0)的決策樹

anser 1:假設不存在與訓練集一致的決策樹,那麼訓練集訓練得到的決策樹至少有乙個節點上存在無法劃分的多個資料(若節點上沒有衝突資料,那麼總是能夠將資料分開的)。這與前提-不含衝突資料 矛盾,因此必存在與訓練集一致的決策樹

anser 2:考慮決策樹的生成(書p74圖4.2),演算法生成葉節點,並遞迴返回條件有:

當前節點的所有樣本屬於同一類,葉節點類標籤 -> 當前類;

當前節點的所有樣本在屬性上取值相同,葉節點類標籤 -> 樣本中最多類;

由此可見,若兩訓練資料樣本特徵向量相同,那麼它們會到達決策樹的同一葉節點(只代表某一類),若二者資料標籤不同(衝突資料),則會出現訓練誤差,決策樹與訓練集不一致。

如果沒有衝突資料,到達某節點的樣本會出現以下兩種情況:

樣本間特徵向量相同且屬於同一類,滿足遞迴結束條件,該節點為葉節點,類標籤正確(無訓練誤差);

樣本間特徵向量不同時,遞迴結束條件不滿足,資料會根據屬性繼續劃分,直到上一條情況出現。

綜上得證,當資料集不含衝突資料時,必存在與訓練集一致(訓練誤差為0)的決策樹。

2、試析使用「最小訓練誤差」作為決策樹劃分選擇的缺陷。

anser:若以最小訓練誤差作為決策樹劃分的依據,由於訓練集和真實情況總是會存在一定偏差,這使得這樣得到的決策樹會存在過擬合的情況,對於未知的資料的泛化能力較差。因此最小訓練誤差不適合用來作為決策樹劃分的依據。

3、試程式設計實現基於資訊熵進行劃分選擇的決策樹演算法,並為表4.3中資料生成一棵決策樹

anser 1:

anser 2:

4、試程式設計實現基於基尼指數進行劃分選擇的決策樹演算法,並為表4.2中資料生成預剪枝、後剪枝決策樹,並與未剪枝決策樹進行比較。

anser 1:

anser 2:

5、試程式設計實現基於對率回歸進行劃分選擇的決策樹演算法,並為表4.3中資料生成一棵決策樹

anser:

6、試選擇4個uci資料集,對上述3種演算法所產生的未剪枝、預剪枝、後剪枝決策樹進行實驗比較,並進行適當的統計顯著性檢驗。

anser:

7、圖4.2是乙個遞迴演算法,若面臨巨量資料,則決策樹的層數會很深,使用遞迴方法易導致「棧」溢位,試使用「佇列」資料結構,以引數maxdepth控制數的最大深度,寫出與圖4.2等價、但不使用遞迴的決策樹生成演算法。

anser:

8、試將決策樹生成的深度優先搜尋過程修改為廣度優先搜尋,以引數maxnode控制樹的最大結點數,將題4.7中基於佇列的決策樹演算法進行改寫。對比題4.7中的演算法,試分析哪種方式更易於控制決策樹所需儲存不超過記憶體。

anser:本題實際上是bfs與dfs的比較:

對於深度優先搜尋,每深入一層需要儲存上一層節點的資訊以方便回溯遍歷(其儲存的是一條路徑);

對於廣度優先搜尋,每深入一層需要儲存當前層兄弟節點資訊以實現遍歷(其儲存的是每層資訊,儲存量會大一些);

兩種方法各自有防止佇列過大化的閾值(即maxdepth和maxnode),所以兩種方法均可將記憶體消耗控制在一定範圍之內。

當資料屬性相對較多,屬性不同取值相對較少時,樹會比較寬,此時深度優先所需記憶體較小,反之寬度優先較小。

9、試將4.4.2節對缺失值的處理機制推廣到基尼指數的計算中去。

anser:此處要求實現一種多變數決策樹演算法。實際上3、4題anser 2就是多變數決策樹演算法。其在西瓜資料集3.0上產生的結果與p85的圖4.8一致。

附上機器學習完整答案:

機器學習 第四章 決策樹

決策樹原理介紹 決策樹 decision tree 是一類常見的機器學習方法,目的是為了產生一棵泛化能力強,即處理未見示例能力強的決策樹。劃分選擇 決策樹學習的關鍵在於,在每個 節點處如何選擇最優劃分屬性。一般而言,隨著劃分過程不斷進行,我們希望決策樹的分支節點所包含的樣本盡可能屬於同一類別,即節點...

第四章 決策樹

一般的,一棵決策樹包含乙個根節點,若干個內部節點和若干個葉節點。決策學習的目的是為了產生一棵泛化能力強,即處理未見示例能力強的決策樹。決策樹學習的關鍵是如何選擇劃分屬性。隨著劃分過程的不斷進行,我們希望決策樹的分支節點所包含的樣本盡可能屬於同一類別,即節點的 純度 越來越高。1 資訊增益 資訊熵是度...

周志華 機器學習 第四章(決策樹) 筆記 習題答案

1.基本流程 2.劃分選擇 資訊增益 假定當前樣本集合d中第k類樣本所佔的比例為 pk k 1,2,iyi 則d的資訊熵定義為 資訊增益為 資訊增益準則對可取值數目較多的屬性有所偏好。增益率為減少這種偏好可能帶來的不利影響,使用 增益率 表示式如下 需注意的是,增益率準則對可取值數目較少的屬性有所偏...