?

基于決策樹的Titanic乘客生存預測

2019-07-23 01:11苗水清鄭海英白海濤
山東工業技術 2019年20期
關鍵詞:決策樹預測

苗水清 鄭海英 白海濤

摘 要:本文以史上泰坦尼克號沉船事件對乘客生存進行預測。以決策樹算法對沉船事件進行分析和研究,文中對決策樹進行構造,數據分類測試,結果表決策樹預測模型對應用到事故分析中具有一定的可行性和有效性。

關鍵詞:決策樹;預測;數據分類

DOI:10.16640/j.cnki.37-1222/t.2019.20.175

0 引言

泰坦尼克號的沉沒是歷史上最臭名昭著的沉船事件之一。1912年4月15日,泰坦尼克號在處女航中與冰山相撞,2224名乘客和船員中有1502人喪生。這場轟動性的悲劇震驚了國際社會,并導致了更好的船舶安全法規。

這次海難造成人員傷亡的原因之一是沒有足夠的救生艇供乘客和船員使用。雖然在沉船中幸存下來有一些運氣因素,但有些人比其他人更可能存活下來,如婦女、兒童和上層階級。在這個挑戰中,本文通過機器學習工具來預測哪些乘客在悲劇中幸存下來。

1 構造決策樹進行預測

1.1 決策樹

決策樹方法屬于統計學中分類的一種,該方法中經典算法有ID3、C4.5、CART等[1-2]。決策樹算法是一種從一組無次序,無規則的案例中推理得出的規則。決策樹的構造過程實質是分類的過程[3]。決策樹分析法是一種運用概率與圖論中的樹對決策中的不同方案進行比較,從而獲得最優方案的風險型決策方法。

決策樹采用自頂向下的遞歸方式,在決策樹的內部節點進行屬性值的比較并根據某一規則進行分裂,每一個節點的父節點和子節點相對分裂,直至不能分裂為止,利用每一個非葉子節點作為判斷節點,則在決策樹的葉節點中得到結論。

1.2 決策樹在乘客生存預測中的應用

(1)泰坦尼克號沉船問題,涉及到乘客存活與否的問題,每一位乘客只有兩種結果,這是一個二元分類的問題,過對訓練數據的研究得出對分類比較關鍵的因素有{'Pclass','Sex','Age','SibSp','Parch,Embarked,Survived}。

(2)在(1)中描述的因素中除了年齡取值多樣之外,其他因素均有一定的劃分范圍標簽,因此對年齡也采用了少年,中年,成年分別表示為0,1,2,3,4,5進行了分類,最后采用決策樹方法進行了分類。

決策樹計算主要包含了數據的加載,清洗,信息熵的計算,樹的創建、遍歷,模型存儲、加載等。構造決策樹主要過程是:

Step1:確定分類屬性,篩選必要屬性作為分類關鍵信息,并對一些取值較多的屬性進行包箱處理,例如乘客的年齡,可以把不同乘客的年齡處理成,幼兒,青年,成年,老人四個類別;

Step2:計算各個分類標簽的信息增益,信息增益越大,表明該標簽的分類效果越好;

計算公式為:

其中Gain表示節點的復雜度,Gain越高,說明復雜度越高,分類的效果越明顯。

Step3:對于Step2中分類結果進一步判斷分類結果是否為同一種。如果不是,則返回Step2,否則進入Step4;

Step4:設置該節點為葉子節點,也即分類最終結果標簽。求熵。熵是對集合信息的度量,熵越大,混亂程度越高,也就是純度越低。計算公式:

其中Pi表示類i的數量占比。以二分類問題為例,如果兩類的數量相同,此時分類節點的純度最低,熵等于1;如果節點的數據屬于同一類時,此時節點的純度最高,熵等于0。

Step4:分割數據集,將當前已分類的特征整列數據去掉,選取數據集用于劃分數據集的最優特征。

本文采用python編程,生成的乘客生存決策樹如圖1所示:

1.3 實驗結果

樣本總數為1309個,其中訓練樣本數為891個,用418個樣做測試,結果表明:

(1)能夠正確分類的個數比重0.8975903614457831,未能分類個數為34個。

(2)用訓練集測試樣本,結果為100%。

從實驗結果中能夠發現在輸入訓練集進行測試的時候,決策樹能夠將訓練集中所有情況包含,也即能夠對訓練集樣本做出正確分類,對于測試集樣本,由于有些測試樣本不在訓練集范圍內,可通過提高訓練集的完整度,進一步提高其測試精度。

問題分析:

(1)熵用來描述樣本的不確定度的大小,值越大不確定度越大,而信息熵增益是指整體信息熵和某個特征條件確定的情況下信息熵的差值,差值越大表明通過該特征進行區分樣本會越明顯,因此決策樹按照信息熵增益的大小進行了決策樹構造,當然這種算法有一定的趨向性,也即,總是以特征內類別取值多的屬性作為樹節點,這樣構造的樹隨機性不夠。

(2)決策樹測試中有些樣本不能分類,主要是因為決策樹訓練樣本中并未涵蓋測試集中的所有情況,因此測試集中有的樣本通過決策樹后未能得到分類標簽值,此時需要默認給個標簽或者舍棄該樣本,出現了過擬合現象,后期需進行必要的決策樹剪枝。

2 總結

測試的結果由于是通過遍歷樹來確定的,因此一方面其精度受決策樹的完整度(包含情況的全面性影響,另一方面也需要進行比較的裁剪來處理其過擬合問題,進一步提高其隨機性。此外,雖然本文采用ID3算法構造決策樹時是優先選擇了屬性取值較多的特征作為樹節點的,但是這樣構造的樹深度淺,對于復雜切特征量大的模型,相比于其他深度大的樹來說其查詢速度是一個優勢。當然為了避免ID3算法這種趨向性,增加決策樹的隨機性可以采用信息增益比即C4.5算法,和CART基尼系數進行研究。

參考文獻:

[1]Karagiannis T,Papagiannaki K,Faloutsos M.BLINC: Multilevel traffic classification in the dark[C].Proc of the ACM SIG-COMM,2005.

[2]Erman J,Arlitt M,Mahanti A.Traffic classification using clustering algorithms[C].Proc of the ACM SIGCOMM Workshop on Mining Network Data( MineNet) ,2006.

[3]毛國君.數據挖掘原理與算法[M].北京:清華大學出版社,2007:12.

項目編號:18JK1217? ?課題名稱:基于云計算的室內定位算法應用研究

作者簡介:苗水清(1988-),女,內蒙古人,碩士研究生,講師,研究方向:圖像處理、機器學習。

猜你喜歡
決策樹預測
選修2—2期中考試預測卷(B卷)
選修2—2期中考試預測卷(A卷)
選修2—2期中考試預測卷(A卷)答案與提示
選修2—2期中考試預測卷(B卷)答案與提示
簡述一種基于C4.5的隨機決策樹集成分類算法設計
一種改進的MEP決策樹剪枝算法
決策樹學習的剪枝方法
《福彩3D中獎公式》:提前一月預測號碼的驚人技巧!
決策樹在施工項目管理中的應用
預測高考
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合