機器學習-決策樹中幾個重要量

2021-01-07 浮生偷閒

一下幾個概念是決策樹模型中常用名詞,也較為抽象難以理解,特記錄一下自己的學習心得

信息

信息是用來消除隨機不定性的東西 --香農

其實這句話挺難理解的。 對於具有多個特徵的事物的集合,有一個分類,使得每個分類都有一個類標號表示。我們使用事物屬於某個類的概率來衡量這個類所具有的信息。概率越大,則信息越少,極端情況下,如果網絡之前通信,只能發送1,即概率為1,那麼我們自然無法接受到任何有用信息,因為全部都是1.

舉個例子:

我們有一些男生的集合,每個男生都具有身高、長相、是否有錢這3個特徵屬性,假設他們都去了相親節目,我們用女生是否選擇與男生牽手作為分類的依據,即類標號,那麼我們可以得到:

| 身高 | 長相 | 是否有錢 | 是否牽手 |

|||----|----|

| 矮 | 帥 | 否 | 否 |

| 高 | 帥 | 否 | 是 |

| 挨 | 帥 | 是 | 否 |

只看結果即類標號的話,牽手的概率為1/3, 沒有牽手的概率為2/3 所以我們使用上述公式可以認為牽手這個類具有的信息約為

,而沒有牽手具有信息

信息熵

用于衡量隨機變量的混亂負責程度,值越大,越混亂負責,越難以預測。定義為信息的期望:

可以計算出上表中的信息熵為

條件信息熵

所謂條件信息熵,指如果我們已知了某個特徵或者條件的情況下的熵的情況。 如果根據某個特徵A將數據集分為了v分,定義為:

引用知乎上網友的例子:

X(明天下雨)是一個隨機變量,X的熵可以算出來, Y(明天陰天)也是隨機變量,在陰天情況下下雨的信息熵我們如果也知道的話(此處需要知道其聯合概率分布或是通過數據估計)即是條件熵。

依然以上面的為例,我們計算已知特徵身高的情況下的條件熵:

也就是在上述數據的情況下,如果我們知道了身高情況,那麼隨機性就會消失,熵為0,確實身高高的都牽手成功,矮的都失敗了,符合我們上面談到的熵的意義。

信息增益

直觀感受,隨著我們掌握的信息越多,那麼隨機與混亂程度就會下降,仍然以下雨為例,明天下雨與否我們是無從得知的,假設熵為2,那麼如果我們知道了明天是陰天,直覺是明天下雨是一個大概率事件,在這個條件下我們假設熵為0.1,熵越大,越隨機,那麼我們定義信息增益為:

即如果知道A特徵,我們可以減少多少熵,該值越大,自然越應該成為劃分的依據。這個就是決策樹模型如ID3,常用的一個方法。

信息增益率

信息增益模型偏向具有多輸出的測試,如果我們在上面的例子中加入男生的名字,那麼會發現以名字作為劃分將會得到最大的信息增益,因為

而這並不是我們期望的。

為了克服這種偏移,ID3的後繼模型,C4.5提出了增益率。首先定義分裂信息:

這個的定義類似於Info(D),但是前者是以特徵為分類依據,而後者以類標號為分類依據。再定義增益率:

即可將信息增益規範化,但是在信息趨向於0時,該比率會有較大抖動。另外基於信息增益或者增益率的劃分是不強制要求二分的。

基尼指數

基尼指數是用來衡量一個數據集的不純度,該值越大,那麼不純度越高,定義為:

基尼指數會強制進行二元劃分,所以以某個特徵如A進行一次劃分後會產生兩個劃分D1和D2,定義:

由於強制二分,那麼對A如果是離散值或者連續值是存在多種劃分方式的,一般對於離散值選擇其中一個子集作為D1,該子集的補集作為D2,而連續值則需要在排序後,選擇相鄰兩個數的中點將小於等於該值的作為D1,大於 該值的作為D2,並且對A的劃分需要窮舉所有可能,選擇具有最小

的劃分作為該特徵屬性的劃分,通過劃分後,不純度降低了:

所以選擇使上值最小的屬性,極為分裂屬性。

相關焦點

  • 好男孩的三個標準-機器學習(決策樹)
    作者:張澤平 來源:人工智慧學習圈決策樹(Decision Tree)是在已知各種情況發生概率的基礎上,通過構成決策樹來求取淨現值的期望值大於等於零的概率,評價項目風險,判斷其可行性的決策分析方法,是直觀運用概率分析的一種圖解法。決策樹是一種樹形結構,其中每個內部節點表示一個屬性上的測試,每個分支代表一個測試輸出,每個葉節點代表一種類別。
  • 跟我做機器學習——你也能掌握決策樹分析!
    顧名思義,決策樹分析 (Decision Tree analysis)是通過已知數據生成一種樹狀結構的模型,進而以if-then的二分法樹形結構邏輯對未知數據進行分析的一系列過程。看起來決策樹有點複雜,但是,其實我們在日常生活中,經常會不經意間使用到決策樹的思想。因此,決策樹的分析並不神秘。通過本篇文章您可以了解:決策樹是如何運作的,利用R語言實現決策樹,讀解決策樹的分析結果以及可視化。
  • 機器學習----回歸模型(決策樹)
    終止條件有如下幾種:1、特徵已經用完了:沒有可供使用的特徵再進行分裂了,則樹停止分裂;3、子節點中沒有樣本了:此時該結點已經沒有樣本可供劃分,該結點停止分裂;3、樹達到了人為預先設定的最大深度:depth >= max_depth,樹停止分裂。
  • 決策樹學習筆記(三):CART算法,決策樹總結
    ,旨在從最簡單的決策樹開始學習,循序漸進,最後理解並掌握複雜模型GBDT,Xgboost,為要想要深入了解機器學習算法和參加數據挖掘競賽的朋友提供幫助。李航 「統計學習方法」 中的分類樹算法流程僅僅是針對特徵是離散型的情況,並沒有提及連續值的情況。
  • 關於「樹」的算法:現實生活中的決策樹
    全文共2874字,預計學習時長8分鐘樹的結構給了我們開發算法的靈感,並再將其反饋到機器,讓它們學習我們希望它們學習的東西,以解決現實生活中的問題。這些基於樹的學習算法被認為是最好和最常用的監督學習方法之一:決策樹、隨機森林、梯度提升等方法在各種數據科學問題中得到了廣泛應用。對於每一個機器學習的初學者來說,學習這些算法並將其用於建模非常重要。
  • 決策樹與隨機森林(4)—— 決策樹C5.0算法
    這是許多決策樹構建的一個過程,然後這些決策樹通過投票表決的方法為每個案例選擇最優的分類。Question 2: 什麼叫做 Adaboost ?簡單來說,對於一個數據集,我們通過某種算法建立了第一個分類器,若第一個分類器對樣本 x1, x2 的分類效果好,對 x3 的分類效果差,那麼第二個分類器通過一個神奇的公式,把對 x3 的權重增加,x1, x2的權重降低。為什麼呢?
  • 決策樹,回歸樹,自動分類,三種自動化學習方法
    關於自動化機器學習的研究一直很火爆,隨著人工智慧的發展,越來越多的人對它感興趣,我也是希望對機器學習感興趣的人關注我的專欄,探索機器學習相關知識。自動機器學習,將統計學、機器學習、深度學習結合到一起,從而可以讓神經網絡能夠應用於各種不同數據類型。
  • 每天學習一個《查理芒格的100個思維模型》之決策樹思維模型
    2.決策樹思維模型用途1、決策樹其實多應用於企業經營管理中,有專業軟體和算法,非常複雜,屬於機器學習的工具;2、我們取其精華,應用到個人的生活、工作中,輔助我們做一些重大的決策;3、決策樹的思維模型相當科學、相當客觀、相當理性,在下面的分享中會一一舉例闡述。
  • 使用Scikit-Learn了解決策樹分類
    決策樹決策樹(以下簡稱DT)算法的思想是學習一組if/else問題來進行決策。決策樹可以組合數值數據和分類數據。一些用於決策樹的術語如下圖所示在這裡,我們看到了如何根據節點在DT中的位置劃分節點。在剩下的10個樣本中,我們分別有5個「Yes」和「No」。然後選擇「 Humidity_High」作為特徵,節點的基尼雜質為0.5,依此類推。從某種意義上說,基尼不純性計算可能會比熵具有一點優勢,因為為熵較大的數據集構建決策樹可能花費更少的時間。
  • sklearn學習(三):決策樹
    樹的組成        根節點(第一個選擇點);非葉子節點與分枝(中間過程);葉子節點(最終的決策結果)        增加節點相當於在數據中切一刀(分一類),越多的特徵就會有越多的節點,理論上越多的節點就表示著切的越精細。
  • 機器學習 | 決策樹之分類樹
    今天推出機器學習系列筆記第1期,本期分享內容為:機器學習之決策樹中的分類樹。(筆者使用的是Mac系統)決策樹(Decision Tree):是一種非參數的有監督學習算法,在已知各種情況發生概率的基礎上,通過構成決策樹來取淨現值的期望值大於等於零的概率,是直觀運用概率分析的圖解法,以解決分類和回歸問題。分為分類樹和回歸樹。
  • 決策樹
    決策樹簡介3.   構造決策樹的基本算法4.   決策樹的應用一、前言機器學習中分類和預測算法的評估:1.準確率:    算法達到的準確率是多少?2.速度    算法的速度怎麼樣?算法複雜度高不高?5.可解釋性    當算法做出特徵值的選擇或者歸類的時候,能否非常容易的解釋學習出來的模型和我們的直覺是相符合的    以上這5方面是進行算法評估和比較的時候參照的,介紹的時候可以看針對這5方面,算法表現如何二、決策樹簡介1. 什麼是決策樹/判定樹(decisiontree)?
  • 決策樹怎麼畫?圖文解析繪製決策樹全教程
    決策樹的常見用途繪製出一幅決策樹的前提便是要有足夠的數據來支撐計算,當有足夠多的數據後,決策樹便能根據數據進行整理和計算,決策樹也可以對人們日常生活中的學習或者各種選擇進行分析和預測。1、企業的方案制定當企業在面臨機遇或者危機時,急需找到正確的決策,那麼便可以用決策樹對自己目前的狀況進行分析,選擇出適合當前的決策,來將利益最大化。
  • 【算法】決策樹與ID3算法
    2 決策樹適合解決什麼問題?1. 什麼是決策樹/判定樹(decision tree)?決策樹(Decision Tree)算法是機器學習(Machine Learning)中分類算法中的一個重要算法,屬於監督學習(Supervised Learning)算法。決策樹算法是一種逼近離散函數值的方法。它是一種典型的分類方法,首先對數據進行處理,利用歸納算法生成可讀的規則和決策樹,然後使用決策對新數據進行分析。
  • python分類-決策樹
    1、熵:熵表示的是數據中包含的信息量大小,或者是數據的混亂度;    混亂度越低,數據純度越低,數據混亂程度越高,熵越大。其中pi表示第i個類的數量佔比    信息增益=分裂前熵-分裂後熵。信息增益越大,意味使用某幾個屬性來進行分裂節點創建子節點所獲得的純度提升越大。    信息增益比=信息增益/分裂前熵。信息增益率越高,說明分裂的效果越好。
  • 決策樹學習筆記(一):特徵選擇
    作者:xiaoyu介紹:一個半路轉行的數據挖掘工程師相信很多朋友已經對決策樹很熟悉了,決策樹是機器學習中的一種基本的可用於分類與回歸的方法,它是一些集成學習如GBDT,XGboost等複雜模型的基礎。這些高級模型比如XGboost可以非常好地擬合數據,在數據挖掘比賽以及工業界中都有著非常出色的表現,受到了無數愛好者的追捧。
  • 進化決策樹:當機器學習從生物學中汲取靈感時
    這類分類器使用進化算法來構建魯棒性更強,性能更好的決策樹。進化算法依賴於生物進化啟發的機制。決策樹是什麼?如何根據進化算法搭建決策樹?與其它分類器相比,進化決策樹的表現如何?數據集為了說明本文中提及的概念,我將使用航空公司乘客滿意度的調查結果數據集。有關此數據集的更多信息,請參見此處。
  • 機器學習中決策樹的原理與算法 | 科普
    我們知道,在機器學習中有兩類十分重要的問題,一類是分類問題,一類是回歸問題。我們今天所要探討的就是在分類和回歸問題中所用到的一種非常基本的方法,叫決策樹。決策樹也是重要的標籤學習方法。這篇文章裡面的部分內容來自於 AI 慕課學院的《機器學習理論與實戰高級特訓班》課程筆記。
  • 一文看懂決策樹 - Decision tree(3個步驟+3種典型算法+10個優缺點)
    本文將介紹決策樹的基本概念、決策樹學習的 3 個步驟、3 種典型的決策樹算法、決策樹的 10 個優缺點。什麼是決策樹?決策樹是一種解決分類問題的算法,想要了解分類問題和回歸問題,可以看這裡《監督學習的2個任務:回歸、分類》。決策樹算法採用樹形結構,使用層層推理來實現最終的分類。
  • 決策樹模型
    那也不能忍第三個決策節點:(收入)分支一,高 見面分支二,中 先見見,再往下分支三,低 不見第四個決策點潛力「是 熱愛學習否」。第四個決策節點:(潛力)分支一,愛學習上進 見面分支二,不愛學習懶惰 不見於是,我們可以畫出這樣的決策樹圖形:為了便於統一大家的理解(共同討論決策)我們一般把決策樹圖形給規範化成三類圖形:決策結點、狀態結點