決策樹模型本質是一顆由多個判斷節(jié)點組成的樹。在樹的每個節(jié)點做參數(shù)判斷,進而在樹的最末枝(葉結點)能夠對所關心變量的取值作出最佳判斷。通常,一棵決策樹包含一個根結點,若干內部節(jié)點和若干葉結點,葉結點對應決策分類結果。分支做判斷,葉子下結論。我們看一個簡單的決策樹的模型,通過動物的一些特點來判斷它是否是魚類,在決策樹模型中,我們來看每一個節(jié)點是如何做判斷的。我們將所有要研究的動物作為樹最上端的起點,對它進行第一個判斷,是否能脫離水生存?如果判斷為是的話,它不是魚類。如果為否的話,我們還要再進行下一個判斷,是否有腳蹼?如果是的話,它就是非魚類,如果否的話就是魚類。我們僅僅是通過最多兩個層次的判斷,在樹最末端的葉子結點,可以對我們感興趣的問題給出了一個相對而言的最佳決策。這個就是決策樹的邏輯,非常簡單且和人腦理解事物的邏輯很類似。決策樹是一種簡單高效并且具有強解釋性的模型,廣泛應用于數(shù)據(jù)分析領域。
- 簡單:邏輯相對簡單,整個算法沒有更復雜的邏輯,只是對節(jié)點進行分叉;
- 強解釋性:模型的判斷邏輯可以用語言清晰的表達出來,比如上述決策樹案例中的判斷,就可以直接用語言表述成:脫離水不能生存的沒有腳蹼的動物,我們判斷它是魚;
決策樹模型應用于數(shù)據(jù)分析的場景主要有三種:
- 驅動力分析:某個因變量指標受多個因素所影響,分析不同因素對因變量驅動力的強弱(驅動力指相關性,不是因果性);

熵是什么?
熵是描述判斷的不確定性,大多數(shù)決策樹的最終判斷,并不是100%準確,決策樹只是基于不確定性,作出最優(yōu)的判斷。比如上述決策樹案例,我們判斷脫離水依然可以生存的是“非魚類”。但是有一種特殊的魚叫做非洲肺魚,它脫離水后依然可以存活4年之久。雖然不是100%正確,我們在這個葉結點做出非魚類的判斷,是因為所有脫離水依然可以生存的動物里,有非常大部分都不是魚。雖然這個判斷有很大可能性是正確的,但判斷依然存在著一些不確定性。那么不確定性指的是什么呢?如下圖,女生占比為50%,具有最大的不確定性;女生占比0%或者100%,則具備最小的不確定性。女生占比30%,具有中等不確定性;如果女性占比為70%的話,我們這個時候猜測是女性,出錯可能性是1-70%,即30%,和剛剛的情況相同。也就是說,10個人中女性占比為30%,或是70%,我們雖然給出的判斷不同,但是兩個判斷出錯的可能性是一樣的,都是30%;圖:在10個人中,判斷隨機挑選出來一個人,性別是男還是女 如果嘗試使用一個統(tǒng)計量E來表示不確定性的話,并且規(guī)定E的取值在0和1之間。他和人群中女性的占比應該滿足這樣一條曲線的關系,當女性占比為0或者100%的時候,進行判斷的不確定性最?。籈取最小值0當女性占比為50%的時候,判斷的不確定性最大,E取最大值1;當女性占比取0到50%,或者50%到100%之間的值的時候,E的取值介于0到1之間。并且取值相對女性占比50%是對稱的。熵即是用來描述以上這種不確定性,它的數(shù)學表達式為:Pi含義:對于事件,有c種可能的結果,每一種可能結果的概率為P1、P2…Pc;熵的取值在0-1之間;一個判斷的不確定性越大,熵越大;

信息增益
信息增益表示經過一次決策判斷(分叉)后,人群熵值下降的大小,即母節(jié)點的熵與兩個子節(jié)點熵值和的差值。如上圖,信息增益(IG) = 0.5842 - ( 38% * 0.9507 + 62 * 0 )=0.22
我們繼續(xù)用上一篇文章《如何用線性回歸模型做數(shù)據(jù)分析》中的共享單車服務滿意分數(shù)據(jù)集來做案例,分析哪一類人群更加偏向于成為公司的推薦者,我們需要分析用戶特征,更好的區(qū)分出推薦者。
決策樹模型的第一步,是測量每個節(jié)點對應人群的熵值,最終我們得到可以判斷推薦者的決策樹。如下圖,每個節(jié)點中標注兩個數(shù)字,上面是推薦者比例,下面是用戶群占比。初始節(jié)點的推薦者比例為0.14,再沒任何分叉前,人群占比100%。我們用熵來度量每個節(jié)點對應人群的不確定性,推薦者比例趨近0%和100%的人群,熵的值也趨近于0,推薦者比例趨近50%的人群,熵的值則趨近于1。在這個案例中,我們想知道哪一類人更加偏向成為公司的推薦者,也就是說,我們希望通過決策樹,可以盡量地劃分出是或者不是推薦者這個事情最為確定的人群。如果這樣的人群在樹的最終結點、也就是葉子結點可以被很好地劃分出來的話,那么葉子結點所對應的人群的特征,就是推薦者或者非推薦者的典型特征。反應在人群的熵值計算,更大的確定性對應于比較小的熵值。我們實際上是希望通過決策樹不斷地分叉,使得節(jié)點的熵值越來越低,用戶的label越來越純。節(jié)點分叉規(guī)則:在每個節(jié)點嘗試按照不同特征變量的各種分組方式,選取信息增益最大(熵最?。┑姆绞?。決策樹不會一直不停分叉,決策樹停止分叉的條件通常有:
停止分叉:再分叉會增加復雜度但是效果沒有提高,葉子越多越復雜,會加重解釋復雜性。
決策樹在數(shù)據(jù)分析中的實戰(zhàn)流程
我們了解了決策樹模型的算法原理,那么它如何應用在日常的數(shù)據(jù)分析工作中呢?繼續(xù)我們剛才的案例,我們想探究分析用戶推薦程度的主要影響因素是什么?可以用決策樹模型將用戶按照推薦者比例高低進行分層。一百條數(shù)據(jù),由公司員工隨機采訪100名用戶產生,采訪對象是北京市四個城區(qū)(西城區(qū)、東城區(qū)、海淀區(qū)、朝陽區(qū))的居民,組別分為實驗組和對照組。Python大多數(shù)算法模型無法直接輸入分類變量
通過人群特征取值的判斷,1、我們劃分出了推薦者比例有顯著區(qū)別的人群2、找出了區(qū)分推薦者人群的關鍵特征,例如:海淀區(qū)用戶、29歲及以上等
- 決策樹不只可應用于預測量為分類變量,還可應用于數(shù)值型因變量,只需將熵改為連續(xù)變量的方差;
- 特征劃分的方法除了信息增益方法外,還可以用增益率(**.5決策樹)、基尼指數(shù)(CART決策樹);
- 剪枝是決策樹算法中防止過擬合的主要手段,分為預剪枝與后剪枝。預剪枝指在決策樹生成過程中,對每個結點在劃分前進行估計,若當前結點劃分不能使決策樹泛化能力提升則停止劃分。后剪枝指先從訓練集生成一顆決策樹,自底向上對非葉結點進行考察,若該結點對應的子樹替換為葉結點能使決策樹泛化能力提升,則該子樹替換為葉結點;
本文系作者:
大洛同學
授權發(fā)表,鳥哥筆記平臺僅提供信息存儲空間服務。
本文為作者獨立觀點,不代表鳥哥筆記立場,未經允許不得轉載。
《鳥哥筆記版權及免責申明》
如對文章、圖片、字體等版權有疑問,請點擊
反饋舉報
我們致力于提供一個高質量內容的交流平臺。為落實國家互聯(lián)網信息辦公室“依法管網、依法辦網、依法上網”的要求,為完善跟帖評論自律管理,為了保護用戶創(chuàng)造的內容、維護開放、真實、專業(yè)的平臺氛圍,我們團隊將依據(jù)本公約中的條款對注冊用戶和發(fā)布在本平臺的內容進行管理。平臺鼓勵用戶創(chuàng)作、發(fā)布優(yōu)質內容,同時也將采取必要措施管理違法、侵權或有其他不良影響的網絡信息。
一、根據(jù)《網絡信息內容生態(tài)治理規(guī)定》《中華人民共和國未成年人保護法》等法律法規(guī),對以下違法、不良信息或存在危害的行為進行處理。
1. 違反法律法規(guī)的信息,主要表現(xiàn)為:
1)反對憲法所確定的基本原則;
2)危害國家安全,泄露國家秘密,顛覆國家政權,破壞國家統(tǒng)一,損害國家榮譽和利益;
3)侮辱、濫用英烈形象,歪曲、丑化、褻瀆、否定英雄烈士事跡和精神,以侮辱、誹謗或者其他方式侵害英雄烈士的姓名、肖像、名譽、榮譽;
4)宣揚恐怖主義、極端主義或者煽動實施恐怖活動、極端主義活動;
5)煽動民族仇恨、民族歧視,破壞民族團結;
6)破壞國家宗教政策,宣揚邪教和封建迷信;
7)散布謠言,擾亂社會秩序,破壞社會穩(wěn)定;
8)宣揚淫穢、色情、賭博、暴力、兇殺、恐怖或者教唆犯罪;
9)煽動非法集會、結社、游行、示威、聚眾擾亂社會秩序;
10)侮辱或者誹謗他人,侵害他人名譽、隱私和其他合法權益;
11)通過網絡以文字、圖片、音視頻等形式,對未成年人實施侮辱、誹謗、威脅或者惡意損害未成年人形象進行網絡欺凌的;
12)危害未成年人身心健康的;
13)含有法律、行政法規(guī)禁止的其他內容;
2. 不友善:不尊重用戶及其所貢獻內容的信息或行為。主要表現(xiàn)為:
1)輕蔑:貶低、輕視他人及其勞動成果;
2)誹謗:捏造、散布虛假事實,損害他人名譽;
3)嘲諷:以比喻、夸張、侮辱性的手法對他人或其行為進行揭露或描述,以此來激怒他人;
4)挑釁:以不友好的方式激怒他人,意圖使對方對自己的言論作出回應,蓄意制造事端;
5)羞辱:貶低他人的能力、行為、生理或身份特征,讓對方難堪;
6)謾罵:以不文明的語言對他人進行負面評價;
7)歧視:煽動人群歧視、地域歧視等,針對他人的民族、種族、宗教、性取向、性別、年齡、地域、生理特征等身份或者歸類的攻擊;
8)威脅:許諾以不良的后果來迫使他人服從自己的意志;
3. 發(fā)布垃圾廣告信息:以推廣曝光為目的,發(fā)布影響用戶體驗、擾亂本網站秩序的內容,或進行相關行為。主要表現(xiàn)為:
1)多次發(fā)布包含售賣產品、提供服務、宣傳推廣內容的垃圾廣告。包括但不限于以下幾種形式:
2)單個帳號多次發(fā)布包含垃圾廣告的內容;
3)多個廣告帳號互相配合發(fā)布、傳播包含垃圾廣告的內容;
4)多次發(fā)布包含欺騙性外鏈的內容,如未注明的淘寶客鏈接、跳轉網站等,誘騙用戶點擊鏈接
5)發(fā)布大量包含推廣鏈接、產品、品牌等內容獲取搜索引擎中的不正當曝光;
6)購買或出售帳號之間虛假地互動,發(fā)布干擾網站秩序的推廣內容及相關交易。
7)發(fā)布包含欺騙性的惡意營銷內容,如通過偽造經歷、冒充他人等方式進行惡意營銷;
8)使用特殊符號、圖片等方式規(guī)避垃圾廣告內容審核的廣告內容。
4. 色情低俗信息,主要表現(xiàn)為:
1)包含自己或他人性經驗的細節(jié)描述或露骨的感受描述;
2)涉及色情段子、兩性笑話的低俗內容;
3)配圖、頭圖中包含庸俗或挑逗性圖片的內容;
4)帶有性暗示、性挑逗等易使人產生性聯(lián)想;
5)展現(xiàn)血腥、驚悚、殘忍等致人身心不適;
6)炒作緋聞、丑聞、劣跡等;
7)宣揚低俗、庸俗、媚俗內容。
5. 不實信息,主要表現(xiàn)為:
1)可能存在事實性錯誤或者造謠等內容;
2)存在事實夸大、偽造虛假經歷等誤導他人的內容;
3)偽造身份、冒充他人,通過頭像、用戶名等個人信息暗示自己具有特定身份,或與特定機構或個人存在關聯(lián)。
6. 傳播封建迷信,主要表現(xiàn)為:
1)找人算命、測字、占卜、解夢、化解厄運、使用迷信方式治??;
2)求推薦算命看相大師;
3)針對具體風水等問題進行求助或咨詢;
4)問自己或他人的八字、六爻、星盤、手相、面相、五行缺失,包括通過占卜方法問婚姻、前程、運勢,東西寵物丟了能不能找回、取名改名等;
7. 文章標題黨,主要表現(xiàn)為:
1)以各種夸張、獵奇、不合常理的表現(xiàn)手法等行為來誘導用戶;
2)內容與標題之間存在嚴重不實或者原意扭曲;
3)使用夸張標題,內容與標題嚴重不符的。
8.「飯圈」亂象行為,主要表現(xiàn)為:
1)誘導未成年人應援集資、高額消費、投票打榜
2)粉絲互撕謾罵、拉踩引戰(zhàn)、造謠攻擊、人肉搜索、侵犯隱私
3)鼓動「飯圈」粉絲攀比炫富、奢靡享樂等行為
4)以號召粉絲、雇用網絡水軍、「養(yǎng)號」形式刷量控評等行為
5)通過「蹭熱點」、制造話題等形式干擾輿論,影響傳播秩序
9. 其他危害行為或內容,主要表現(xiàn)為:
1)可能引發(fā)未成年人模仿不安全行為和違反社會公德行為、誘導未成年人不良嗜好影響未成年人身心健康的;
2)不當評述自然災害、重大事故等災難的;
3)美化、粉飾侵略戰(zhàn)爭行為的;
4)法律、行政法規(guī)禁止,或可能對網絡生態(tài)造成不良影響的其他內容。
二、違規(guī)處罰
本網站通過主動發(fā)現(xiàn)和接受用戶舉報兩種方式收集違規(guī)行為信息。所有有意的降低內容質量、傷害平臺氛圍及欺凌未成年人或危害未成年人身心健康的行為都是不能容忍的。
當一個用戶發(fā)布違規(guī)內容時,本網站將依據(jù)相關用戶違規(guī)情節(jié)嚴重程度,對帳號進行禁言 1 天、7 天、15 天直至永久禁言或封停賬號的處罰。當涉及欺凌未成年人、危害未成年人身心健康、通過作弊手段注冊、使用帳號,或者濫用多個帳號發(fā)布違規(guī)內容時,本網站將加重處罰。
三、申訴
隨著平臺管理經驗的不斷豐富,本網站出于維護本網站氛圍和秩序的目的,將不斷完善本公約。
如果本網站用戶對本網站基于本公約規(guī)定做出的處理有異議,可以通過「建議反饋」功能向本網站進行反饋。
(規(guī)則的最終解釋權歸屬本網站所有)