決策樹、ID3決策樹(信息熵、信息增益)

目錄

一、決策樹簡介

決策樹建立過程

二、ID3決策樹

核心思想:決策樹算法通過計算??信息增益??來選擇最佳分裂特征

1、信息熵

2、信息熵的計算方法

3、信息增益

4、信息增益的計算(難點)

5、ID3決策樹構建案例

三、總結

一、決策樹簡介

????????決策樹 (Decision Tree) 是一種??樹形結構的預測模型??,它代表的是對象屬性與對象值之間的一種映射關系。決策樹通過學習數據特征,構建一套層次化的“判斷-分支”規則,最終在葉子節點給出預測結果(每個葉子節點代表一種分類結果)。

根節點 (Root Node)??:代表整個數據集的起始點,包含所有樣本。

內部節點 (Internal Node)??:對應特征或屬性上的判斷條件,每個判斷會產生分支。

葉節點 (Leaf Node)??:代表決策的最終結果,即分類的類別或回歸的預測值。

決策樹建立過程

構建決策樹的核心是??遞歸地選擇最優特征??對數據進行劃分,目標是使劃分后子集的“純度”最高。

????????1.特征選擇:選取有較強分類能力的特征。

????????2.決策樹生成:根據選擇的特征生成決策樹。

????????3. 決策樹也易過擬合,采用剪枝的方法緩解過擬合

二、ID3決策樹

????????ID3(Iterative Dichotomiser 3)是一種經典的決策樹學習算法,由 Ross Quinlan 在 1986 年提出,主要用于分類問題。它通過??信息增益??來選擇特征進行劃分,構建樹形結構,其核心目標是生成一棵盡可能小的決策樹(奧卡姆剃刀原理)。

核心思想:決策樹算法通過計算??信息增益??來選擇最佳分裂特征

  1. 計算當前數據集的初始信息熵(Entropy),衡量數據的混亂程度或不確定性
  2. 針對每個特征,計算其信息增益。信息增益表示使用該特征劃分數據后,不確定性減少的程度
  3. 選擇信息增益最大的特征??作為當前節點的劃分標準
  4. 根據該特征的每個取值,將數據集劃分為不同的子集,并為每個子集創建新的子節點
  5. 對每個子節點??遞歸地重復??上述過程,直到滿足停止條件(如所有樣本屬于同一類別,或沒有更多特征可用)

1、信息熵

????????熵 Entropy :信息論中代表隨機變量不確定度的度量

????????熵越大,數據的不確定性度越高,信息就越多(有序向無序變化)
????????熵越小,數據的不確定性越低

2、信息熵的計算方法

H(x) = -\sum_{i=0}^n P(x_i)log_2P(x_i)

總的熵 = 各個熵的累加和

?????其中 P(xi)表示數據中類別出現的概率,H(x) 表示信息的信息熵值,信息熵的單位是??比特?? (bit)

舉例

????????計算數據 α(ABCDEFGH) 信息熵,其中A、B、C、D、E、F、G、H 出現的概率為:1/8

????????計算數據 β(AAAABBCD) 信息熵,其中A 出現的概率為1/2,B 出現的概率為1/4,C、D 出現的概率為1/8

3、信息增益

????????信息增益衡量的是,在知道某個特征的信息之后,目標變量的??不確定性減少的程度??。它的核心思想比較知道特征前后不確定性的變化。

????????信息增益??就是??初始熵條件熵的差值??。這個差值越大,說明該特征對于降低目標變量不確定性的貢獻越大,也就越重要。

????????條件熵??描述了在已知第二個隨機變量?Y的值的前提下,隨機變量?X的??剩余不確定性??或信息熵?。換句話說,它表示在我們已經知道?Y的一些信息后,要完全確定?X的值還需要多少額外的信息。

4、信息增益的計算(難點)

g(D, a) = H(D)-H(D|A),即信息增益 = 熵 - 條件熵

熵看標簽,條件熵看特征和標簽

????????條件熵的計算

舉例計算

已知6個樣本,根據特征a:

α 部分對應的目標值為: AAAB

β 部分對應的目標值為:BB? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

解析:一共6個樣本,下面有兩個類別:α和β

????????1、計算信息熵:H(x) = -\sum_{i=0}^n P(x_i)log_2P(x_i)

A的信息熵 =?-\frac{3}{6}log_{2}(\frac{3}{6})

B的信息熵 =?-\frac{3}{6}log_{2}(\frac{3}{6})

信息熵 =?-\frac{3}{6}log_{2}(\frac{3}{6})?× 2 = 1

????????2、計算條件熵(條件熵 = 每個自己的信息熵 × 在整個數據集占比的概率)

α 的條件熵 =?-\frac{1}{4}log_{2}\frac{1}{4}+ -\frac{3}{4}log_{2}\frac{3}{4} =0.81

β的條件熵 =?-\frac{2}{2}log_{2}\frac{2}{2} =0

條件熵 =?\frac{4}{6}\times 0.81+\frac{2}{6}\times 0=0.54

????????3、計算:信息增益 = 熵 - 條件熵

信息增益?= 1 - 0.54 = 0.46

????????至此計算完了特征a的信息增益,以此類推計算其他特征列的信息增益。

????????與其他列相比,誰大誰當根節點。

5、ID3決策樹構建案例

已知? 某一個論壇客戶流失率數據

需求:考察性別、活躍度特征哪一個特征對流失率的影響更大

分析:

?????15條樣本:5個正樣本、10個負樣本

  1. 計算熵
  2. 計算性別信息增益
  3. 計算活躍度信息增益
  4. ?比較兩個特征的信息增益

????????結論:活躍度的信息增益比性別的信息增益大,對用戶流失的影響比性別大。由此可知,偏向于選擇種類多的特征作為分裂依據。

三、總結

????????ID3算法是決策樹家族的奠基性算法,它通過??信息增益??選擇特征來構建樹形分類模型。雖然它存在對連續特征和不完整數據支持不佳、容易過擬合等局限,但其核心思想清晰且易于理解,為后續更強大的算法(如C4.5和CART)奠定了基礎。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/95713.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/95713.shtml
英文地址,請注明出處:http://en.pswp.cn/web/95713.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SpringBoot文件下載(多文件以zip形式,單文件格式不變)

SpringBoot文件下載(多文件以zip形式,單文件格式不變)初始化文件服務器(我的是minio)文件下載# 樣例# # 單文件# # 多文件初始化文件服務器(我的是minio) private static MinioClient minioClie…

【C++題解】貪心和模擬

4小時編碼練習計劃,專注于貪心算法和復雜模擬題,旨在鍛煉您的算法思維、代碼實現能力和耐心。 下午 (4小時): 貪心思維與代碼實現力 今天的重點是兩種在算法競賽和工程中都至關重要的能力:貪心選擇和復雜邏輯的精確實現。貪心算法考察的是能否…

JS多行文本溢出處理

在網頁開發中,多行文本溢出是常見的界面問題。當文本內容超出容器限定的高度和寬度時,若不做處理會破壞頁面布局的整潔性,影響用戶體驗。本文將詳細介紹兩種主流的多行文本溢出解決方案,并從多個維度進行對比,幫助開發…

C++(Qt)軟件調試---bug排查記錄(36)

C(Qt)軟件調試—bug排查記錄(36) 文章目錄C(Qt)軟件調試---bug排查記錄(36)[toc]1 無返回值函數風險2 空指針調用隱患3 Debug/Release差異4 ARM架構char符號問題5 linux下找不到動態庫更多精彩內容👉內容導航 &#x1…

人工智能領域、圖歐科技、IMYAI智能助手2025年8月更新月報

IMYAI 平臺 2025 年 8 月功能更新與模型上新匯總 2025年08月31日 功能更新: 對話與繪畫板塊現已支持多文件批量上傳。用戶可通過點擊或拖拽方式一次性上傳多個圖片或文件,操作更加便捷。2025年08月25日近期更新亮點: 文檔導出功能增強&#x…

2025獨立站技術風向:無頭電商+PWA架構實戰指南

根據 Gitnux 的統計數據,預計到 2025 年,北美將有 60% 的大型零售商采用無頭平臺。而仍在傳統架構上運營的獨立站,平均頁面加載速度落后1.8秒,轉化率低32%。無獨有偶,Magento Association 的一項調查顯示,7…

淘寶京東拼多多爬蟲實戰:反爬對抗、避坑技巧與數據安全要點

一、先搞懂:電商爬蟲的 3 大核心挑戰(比普通爬蟲更復雜的原因) 做電商爬蟲前,必須先明確「為什么難」—— 淘寶、京東、拼多多的反爬體系是「多層級、動態化、行為導向」的,絕非簡單的 UA 驗證或 IP 封禁:…

【1】MOS管的結構及其工作原理

以nmos舉例,mos管由三個電極:G極(gate)、D極(drain)、S極(source)和一個襯底組成,而這三個電極之間通過絕緣層相隔開;①既然GDS三個電極之間兩兩相互絕緣&…

如何保存訓練的最優模型和使用最優模型文件

一 保存最優模型主要就是我們在for循環中加上一個test測試,并且我還在test函數后面加上了返回值,可以返回準確率,然后每次進行一次對比,然后取大的。然后這里有兩種保存方式,一種是保存了整個模型,另一個是…

vue3+ts+echarts多Y軸折線圖

因為放在了子組件才監聽&#xff0c;加載渲染調用&#xff0c;有暗黑模式才調用&#xff0c;<!-- 溫濕度傳感器 --><el-row v-if"deviceTypeId 2"><el-col :xs"24" :sm"24" :md"24" :lg"24" :xl"24&qu…

基于Taro4打造的一款最新版微信小程序、H5的多端開發簡單模板

基于Taro4、Vue3、TypeScript、Webpack5打造的一款最新版微信小程序、H5的多端開發簡單模板 特色 &#x1f6e0;? Taro4, Vue 3, Webpack5, pnpm10 &#x1f4aa; TypeScript 全新類型系統支持 &#x1f34d; 使用 Pinia 的狀態管理 &#x1f3a8; Tailwindcss4 - 目前最流…

ITU-R P.372 無線電噪聲預測庫調用方法

代碼功能概述&#xff08;ITURNoise.c&#xff09;該代碼是一個 ITU-R P.372 無線電噪聲預測 的計算程序&#xff0c;能夠基于 月份、時間、頻率、地理位置、人為噪聲水平 計算特定地點的 大氣噪聲、銀河噪聲、人為噪聲及其總和&#xff0c;并以 CSV 或標準輸出 方式提供結果。…

《從報錯到運行:STM32G4 工程在 Keil 中的頭文件配置與調試實戰》

《從報錯到運行&#xff1a;STM32G4 工程在 Keil 中的頭文件配置與調試實戰》文章提綱一、引言? 闡述 STM32G4 在嵌入式領域的應用價值&#xff0c;說明 Keil 是開發 STM32G4 工程的常用工具? 指出頭文件配置是 STM32G4 工程在 Keil 中開發的關鍵基礎環節&#xff0c;且…

Spring 事務提交成功后執行額外邏輯

1. 場景與要解決的問題在業務代碼里&#xff0c;常見訴求是&#xff1a;只有當數據庫事務真正提交成功后&#xff0c;才去執行某些“后置動作”&#xff0c;例如&#xff1a;發送 MQ、推送消息、寫審計/埋點日志、刷新緩存、通知外部系統等。如果這些動作在事務提交前就執行&am…

Clickhouse MCP@Mac+Cherry Studio部署與調試

一、需求背景 已經部署測試了Mysql、Drois的MCP Server,想進一步測試Clickhouse MCP的表現。 二、環境 1)操作系統 MacOS+Apple芯片 2)Clickhouse v25.7.6.21-stable、Clickhouse MCP 0.1.11 3)工具Cherry Studio 1.5.7、Docker Desktop 4.43.2(199162) 4)Python 3.1…

Java Serializable 接口:明明就一個空的接口嘛

對于 Java 的序列化,我之前一直停留在最淺層次的認知上——把那個要序列化的類實現 Serializbale 接口就可以了嘛。 我似乎不愿意做更深入的研究,因為會用就行了嘛。 但隨著時間的推移,見到 Serializbale 的次數越來越多,我便對它產生了濃厚的興趣。是時候花點時間研究研…

野火STM32Modbus主機讀取寄存器/線圈失敗(三)-嘗試將存貯事件的地方改成數組(非必要解決方案)(附源碼)

背景 盡管crc校驗正確了&#xff0c;也成功發送了EV_MASTER_EXECUTE事件&#xff0c;但是eMBMasterPoll( void )中總是接收的事件是EV_MASTER_FRAME_RECEIVED或者EV_MASTER_FRAME_SENT&#xff0c;一次都沒有執行EV_MASTER_EXECUTE。EV_MASTER_EXECUTE事件被別的事件給覆蓋了&…

微信小程序校園助手程序(源碼+文檔)

源碼題目&#xff1a;微信小程序校園助手程序&#xff08;源碼文檔&#xff09;?? 文末聯系獲取&#xff08;含源碼、技術文檔&#xff09;博主簡介&#xff1a;10年高級軟件工程師、JAVA技術指導員、Python講師、文章撰寫修改專家、Springboot高級&#xff0c;歡迎高校老師、…

59-python中的類和對象、構造方法

1. 認識一下對象 世間萬物皆是"對象" student_1{ "姓名":"小樸", "愛好":"唱、跳、主持" ......... }白紙填寫太落伍了 設計表格填寫先進一些些 終極目標是程序使用對象去組織數據程序中設計表格&#xff0c;我們稱為 設計類…

向成電子驚艷亮相2025物聯網展,攜工控主板等系列產品引領智造新風向

2025年8月27-29日&#xff0c;IOTE 2025 第二十四屆國際物聯網展深圳站在深圳國際會展中心&#xff08;寶安&#xff09;盛大啟幕&#xff01;作為全球規模領先的物聯網盛會之一&#xff0c;本屆展會以“生態智能&#xff0c;物聯全球”為核心&#xff0c;匯聚超1000家全球頭部…