在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

建立決策樹的邏輯

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 作者:深度學習自然語言 ? 2020-10-10 10:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一個小故事

zenRRan二十出頭了,到了婚配的年齡啦。又因為家是名門望族,所以一堆人搶著想來應聘配偶的職位。但是zenRRan比較挑剔,必須達到他的要求才能有機會成為他的另一半,要求為:

1. 性別女,非女性不要

于是刷刷刷走了一半人,剩下的全部為女性。

2.身高必須要在150-165cm

于是又走了一堆人,剩下的為160-165cm之間的女生。

3.性格要溫柔賢惠

聽到這些,又走了一些人,最后留下的極為最后的應聘候選人。

上述過程可以用樹來表示:

像上面的這樣的二叉樹狀決策在我們生活中很常見,而這樣的選擇方法就是決策樹。機器學習的方法就是通過平時生活中的點點滴滴經驗轉化而來的。

建立決策樹的邏輯

正如上述樹狀圖所示,我們最終會通過特征:

性別,身高,性格

得到了4種分類結果,都存在于葉子節點。

非女生,身高不符合的女生,身高符合性格不符合的女生,都符合的最佳候選人。

現在我們來回想下上面的建立決策的流程:

首先在一群給定數據(應聘者)中,我們先通過一個特征(性別)來進行二分類。當然選取這個特征也是根據實際情況而定的,比如zenRRan選取第一個條件為性別的原因是,來的男的太多了,比例占的有點大,所以先給他分成類放到一邊,剩下的更加好分類而已。

然后,對葉子節點(那些還想繼續分類的節點們)繼續進行上述的流程。

那么怎么選取特征作為當前的分類依據呢?有兩種方法:

信息熵和基尼系數。

信息熵

熵這個概念想必大家都不陌生,熵用來表示數據的確定性程度。研究一個詞,就要從他的來源說起,熵,來自熱動力學,表示原子或者一個事物的穩定程度,溫度越高,原子越活躍,越不穩定;反而溫度越低,就越穩定,越保持不動。所以慢慢的這個概念被用到各個方向,也就有了新的定義詞匯,但是它的本意沒變,就是穩定程度大小的表示。

那么在決策樹里面,我們用的是一種熵,信息熵,來表示類別的穩定程度。

公式為:

注:p為一個類的占比

什么意思呢?具體用數字表示下:

比如一個分類結果由三個類組成,占比為1/3 1/31/3,那么它們的信息熵為:

如果占比為1/10 2/10 7/10,那么它的信息熵為:

那再舉一個極端情況,也就是我們想要得到的類,只包含一種情況,其他的比例為0,那么比如占比情況為:1 0 0,那么它的信息熵為:

我們會發現一個分類結果里,里面的類別比例越是接近,信息熵也就越大,反之越是趨向于一個值,越是小,會達到0。

如果將所有的情況考慮在內的話,就能繪成一個圖(為了好畫,以該分好的類別里有兩種事物為例):

我們會發現,當占比為0.5的時候,也就是另一個事物的占比也是0.5的時候信息熵最高,當傾向于一個事物的時候,信息熵最小,無限接近并達到0。

為什么都占比一樣的時候信息熵最大呢?也就是說最不穩定呢?因為當每個事物都占比一樣的時候,一個小事物進來,不清楚它到底屬于哪一類;如果只有一類事物或者一類事物居多數,那么也就比較明確該屬于哪類,也就穩定,確定了。

那么怎么用呢?

我們通過計算機分類,因為有很多種分類情況,不是每一次分類都是直接將同一類分到一個類別里,而是將該分好的兩個類的信息熵總和最小為依據,不斷地通過暴力尋找最佳選擇。然后遞歸進行對分好類的數據進行再分類。

基尼系數

基尼系數和信息熵在這里具有同樣的性質。先看看它的公式:

公式看不出什么特色之處,就繼續用數字展示下:

比如依然是三分類,類別占比為1/3 1/3 1/3,基尼系數為:

類別占比為1/10 2/10 7/10,基尼系數為:

如果是極端情況下占比為1 0 0,那么基尼系數為;

我們根據公式其實就能看出來,平方的函數為凸函數,而該公式在都相等的時候值最大。

代碼實現

再重說下流程:

通過對每個特征進行嘗試分類,記錄當前分類最小的信息熵(或基尼系數)的特征為當前分類結果。

選取一些點,初始化數據:

X為二維平面的數據點,Y為類別。

數據點分布情況:

信息熵函數:

基尼系數函數:

二者使用一個即可。

下面是一個分類核心的流程:

文字描述為:

對數據點的特征0維進行嘗試分類,先按照0維數據排序,然后取每相鄰的中點值,然后以0維該值分界線,處于分界線兩側的數據分別求信息熵(或基尼系數),如果比之前的小,這就保存該值和當前維度。然后選取第1維進行相同操作,最終的最小信息熵(或基尼系數)最小對應的值為本次分類的結果。

但是這個僅僅是一層分類,如果還子節點還有要分類的數據,繼續上述操作即可。

分類代碼:

分類效果流程圖:

決策樹第一層分類結果為:

當前線為最佳值,1維的數據就是分過的,但是沒有當前的值好,也就沒顯示。

現在已經分出了兩類,左邊的紅色和右邊的綠色+藍色。那么還要對上述的右邊進行分類,獲取該數據,并且繼續進行分類,分類流程圖為:

最終得出的分類結果為上述兩條線。其中粉色為第一層分類,紫色為第二層分類。

批判性思維看決策樹

看到上述的分類結果,其實你心里也想到了決策樹的缺點了,就是分類總是橫平豎直的,不能是曲線。

比如

該四個數據的分類最佳理想條件下應該為上述紫色線條,但是決策樹的結果為;

如果存在數據在:

明明應該屬于藍色點的,但是被劃分到紅色點里。

所以可以看出,決策樹對數據的要求是是苛刻的。

另一個問題是,決策樹的學習問題,從上述代碼實現過程能夠看出來,可以說是暴力求解了。

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 二叉樹
    +關注

    關注

    0

    文章

    74

    瀏覽量

    12629
  • 機器學習
    +關注

    關注

    66

    文章

    8501

    瀏覽量

    134532
  • 決策樹
    +關注

    關注

    3

    文章

    96

    瀏覽量

    13820

原文標題:【機器學習】決策樹的理論與實踐

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    玩具語音方案選型決策OTP vs Flash 的成本功耗與靈活性

    玩具語音芯片方案選型的選擇有很多的,但是基于各方面的限制和功能上的需求,那么在OTP和FLASH語音芯片之間如何做抉擇? ? 一、決策樹總覽 玩具語音方案選型可先考慮產品語音內容后期是否需要修改
    的頭像 發表于 07-08 17:08 ?146次閱讀

    電源工程師的核心技能體系

    電源工程師的核心技能體系需覆蓋從基礎理論到專業實踐、工具應用及行業適配的全鏈條能力。以下是系統化的技能框架,按知識層級和應用場景展開,幫助從業者明確能力提升路徑: 一、基礎理論層:核心知識根基
    的頭像 發表于 06-05 09:44 ?616次閱讀

    白話理解RCC時鐘(可下載)

    時鐘就像是單片機的“心臟”,單片機正常工作離不開時鐘的支持,下圖是我們單片機的時鐘 ,它反映了單片機的時鐘關系。我們來詳細描述一下時鐘的工作原理。寄存器上電后有一個復位值,大家看我畫紅線的這個
    發表于 03-27 13:50 ?0次下載

    求解答,設備問題

    請問,rk3588j要再提取一個USB3.0接口設備怎么改
    發表于 02-20 11:22

    Kaggle知識點:7種超參數搜索方法

    問題。一些常見的超參數例子包括梯度基算法中的學習率,或者決策樹算法中的深度,這些可以直接影響模型準確擬合訓練數據的能力。超參數調優涉及在復雜的、高維的超參數空間中
    的頭像 發表于 02-08 14:28 ?940次閱讀
    Kaggle知識點:7種超參數搜索方法

    科技在物聯網方面

    據傳輸的需求。例如,利用5G的低延遲、高帶寬特性,實現機器人與云端服務器之間的快速數據傳輸,提高機器人的響應速度和智能化水平。 智能決策與數據分析 邊緣計算與云計算結合:宇科技的機器人采用了邊緣
    發表于 02-04 06:48

    xgboost超參數調優技巧 xgboost在圖像分類中的應用

    一、XGBoost超參數調優技巧 XGBoost(eXtreme Gradient Boosting)是一種基于梯度提升決策樹(GBDT)的高效梯度提升框架,在機器學習競賽和實際業務應用中取得了卓越
    的頭像 發表于 01-31 15:16 ?1212次閱讀

    xgboost的并行計算原理

    之一。 XGBoost簡介 XGBoost是一種基于梯度提升框架的集成學習算法,它通過構建多個決策樹來提高模型的預測性能。與傳統的梯度提升相比,XGBoost在算法上進行了優化,包括正則化項的引入、缺失值的處理、剪枝操作等,這些都有助于提高模型的泛化能力。 并行計
    的頭像 發表于 01-19 11:17 ?995次閱讀

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-初識設備之設備組成和結構

    前邊講解了內核編譯選項的配置,這一節我們詳細講一下設備。設備的知識是Linux驅動開發人員必備的技能,我們現在使用的Linux內核,絕大多數都是支持設備功能的,掌握設備是軟件嵌
    發表于 01-08 08:32

    飛凌嵌入式ElfBoard ELF 1板卡-初識設備之設備組成和結構

    前邊講解了內核編譯選項的配置,這一節我們詳細講一下設備。設備的知識是Linux驅動開發人員必備的技能,我們現在使用的Linux內核,絕大多數都是支持設備功能的,掌握設備是軟件嵌
    發表于 01-07 09:16

    邏輯異或和邏輯或的比較分析

    邏輯異或(Exclusive OR,簡稱XOR)和邏輯或(OR)是數字邏輯和編程中兩種基本的邏輯運算,它們各自具有獨特的功能和應用場景。以下是對邏輯
    的頭像 發表于 11-19 09:48 ?1436次閱讀

    簡單認識邏輯電路的用途

    在數字電子的世界里,每一個決策、每一條指令、每一次數據處理,都離不開CMOS邏輯IC的掌控。CMOS邏輯IC大致包括兩種邏輯,即組合邏輯和時
    的頭像 發表于 11-01 15:44 ?704次閱讀

    什么是默克爾(Merkle Tree)?如何計算默克爾根?

    01 默克爾的概念 默克爾(Merkle Tree)是一種特殊的二叉,它的每個節點都存儲了一個數據塊的哈希值。哈希值是一種可以將任意長度的數據轉換為固定長度的字符串的算法,它具有唯一性和不可
    的頭像 發表于 09-30 18:22 ?2280次閱讀
    什么是默克爾<b class='flag-5'>樹</b>(Merkle Tree)?如何計算默克爾根?

    數字邏輯怎么把邏輯圖畫成電路圖

    將數字邏輯中的邏輯圖畫成電路圖是一個涉及多個步驟的過程,以下是一個詳細的指導: 一、理解邏輯圖 首先,需要深入理解邏輯圖所表達的邏輯功能。
    的頭像 發表于 08-21 17:36 ?1972次閱讀

    數字系統的核心:邏輯門電路

    數字邏輯門是一種電子電路,它根據輸入端的數字信號組合做出邏輯決策。數字邏輯門可以有多個輸入,例如輸入A、B、C、D等,但通常僅具有一個數字輸出(Q)。單個
    的頭像 發表于 07-16 10:04 ?2156次閱讀
    數字系統的核心:<b class='flag-5'>邏輯</b>門電路
    主站蜘蛛池模板: 午夜国产精品理论片久久影院 | 中文字幕成人乱码在线电影 | 亚洲va中文字幕 | 日韩精品在线一区二区 | 免费高清在线观看a网站 | 国产成人在线影院 | 中文在线三级中文字幕 | 久久天天躁夜夜躁狠狠躁2015 | 两性午夜欧美高清做性 | 欧美高清xx| 日本国产黄色片 | 免费又黄又爽1000禁片 | 亚洲免费一区二区 | 俺去插| 亚洲国产人久久久成人精品网站 | 亚洲爱爱图片 | 永久免费在线观看 | 天天操天天干天天玩 | 天天摸夜夜摸成人免费视频 | 性欧美大胆高清视频 | www.色五月| 日韩精品一区二区三区毛片 | 岛国中文字幕 | 视频一区二区三区在线观看 | 夜夜夜夜夜夜夜工噜噜噜 | 精品国产中文一级毛片在线看 | 日本人亚洲人成人 | 免费一级欧美片在线观免看 | 干干干操操操 | 新版天堂中文资源官网 | 欧美成人一区二区三区在线电影 | 一级特级aaaa毛片免费观看 | 欧洲精品不卡1卡2卡三卡 | av网址在线看 | 五等分的新娘免费漫画 | 亚洲大尺度视频 | 99色视频在线观看 | 202z欧美成人 | 美女扒开腿让男人桶尿口 | 日本s色大片在线观看 | 人人干人人爱 |