決策樹分類

2021-07-26 16:51:57 字數 2092 閱讀 6934

一:分類的概念

分類是一種重要的資料分析形式,分類方法用於**資料物件的離散類別,而**則用於**資料物件的連續取值;資料分類是兩個階段的過程,包括學習階段和分類階段;學習階段(訓練階段)就是建立描述預先定義的資料類或概念集的分類器;而訓練集是有資料庫元祖和與他們相互關聯的類標號組成;類標號屬性是離散值和無序的,它是分類的,因為每個值充當乙個類;提供個每個訓練元祖的類標號,這一階段也稱為監督學習(及分類器的學習在被告知每個訓練元祖屬於哪個類的「監督」下進行的),無監督學習:每個訓練元祖的類標號是未知的;過分擬合:如果用訓練集來度量分類器的準確率,則評估結果可能是樂觀的,因為分類器趨向於過分擬合該資料;而是要用檢驗集資料要度量分類器的準確率;

二:決策樹分類演算法

決策樹就是乙個類似流程圖的樹型結構,其中樹的每個內部結點代表對乙個屬性(取值)的測試,其分支就代表測試的每個結果;而樹的每個葉結點就代表乙個類別。樹的最高層結點就是根結點;

下面就用乙個案例描述怎麼建立乙個決策樹;下面圖示是乙個訓練樣本集合,以下訓練集訓練乙個決策樹分類器

第一步:決策樹開始時,作為乙個單個結點(根結點)包含所有的訓練樣本集;

第二步:確定**屬性;構造決策樹的關鍵步驟是**屬性。所謂**屬性就是在某個節點處按照某一特徵屬性的不同劃分構造不同的分支,其目標是讓各個**子集盡可能地「純」。盡可能「純」就是盡量讓乙個**子集中待分類項屬於同一類別。**屬性分為三種不同的情況:

1、屬性是離散值且不要求生成二叉決策樹。此時用屬性的每乙個劃分作為乙個分支。

2、屬性是離散值且要求生成二叉決策樹。此時使用屬性劃分的乙個子集進行測試,按照「屬於此子集」和「不屬於此子集」分成兩個分支。

3、屬性是連續值。此時確定乙個值作為**點split_point,按照》split_point和<=split_point生成兩個分支。

屬性選擇度量演算法有很多,一般使用自頂向下遞迴分治法,並採用不回溯的貪心策略。這裡介紹id3和c4.5兩種常用演算法。

id3使用資訊增益作為屬性選擇度量,選擇具有最高資訊增益的屬性作為節點n的**屬性,該屬性使結果跟去中對元祖分類鎖需要的資訊量最小,具體公式步驟如下;

a:  計算元祖分類所需要的期望資訊,公式如下

設訓練集中buys_computer =yes 為c1類,buys_computer = no 為c2類;|c1| = 9 ,|c2|=5;故可以算出 p1 = 9/15, p2=5/14,把p1和p2代入上面公式可得:

b: 計算每個屬性的資訊增益,屬性的資訊增益公式如下:

那先以age屬性為例,先算infoage(d),

c4.5使用一種資訊增益率作為**的標準;

分類決策樹

決策樹是基於特徵對例項進行分類的樹形結構。決策樹學習演算法包括 特徵選擇 樹的生成和樹的剪枝。2.1.id3 1 針對當前的集合,計算每個特徵的資訊增益 2 選擇資訊增益最大的特徵作為當前節點的決策決策特徵 3 根據特徵不同的類別劃分到不同的子節點 比如年齡特徵有青年,中年,老年,則劃分到3顆子樹 ...

分類決策樹

決策樹是乙個簡單易用的機器學習演算法,具有很好的實用性。在風險評估 資料分類 專家系統中都能見到決策樹的身影。決策樹其實是一系列的if then規則的集合,它有可讀性良好,分類速度快等優點。把決策樹看成是一些if then規則的集合,在每一層樹上根據屬性的值判斷走勢,至到遇到葉節點,葉節點對應的就是...

決策樹分類

決策樹 decision tree 又稱為判定樹,是運用於分類的一種樹結構。當中的每乙個內部結點 internal node 代表對某個屬性的一次測試,每條邊代表乙個測試結果,葉結點 leaf 代表某個類 class 或者類的分布 class distribution 最上面的結點是根結點。決策樹分...