新聞中心
本篇文章為大家展示了如何用Python代碼從零開(kāi)始建立回歸樹(shù),內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
我們提供的服務(wù)有:網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、方城ssl等。為上1000+企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的方城網(wǎng)站制作公司
介紹
流程圖用于通過(guò)可視媒體闡明決策過(guò)程。設(shè)計(jì)需要對(duì)整個(gè)系統(tǒng)有完整的了解,因此也需要人的專業(yè)知識(shí)。問(wèn)題是:“就流程的復(fù)雜性而言,是否可以自動(dòng)創(chuàng)建流程圖以使其設(shè)計(jì)更快,更便宜且更具可擴(kuò)展性?” 答案就是決策樹(shù)!
決策樹(shù)可以自動(dòng)推斷出最能表達(dá)決策內(nèi)部工作的規(guī)則。在經(jīng)過(guò)標(biāo)記的數(shù)據(jù)集上訓(xùn)練時(shí),決策樹(shù)將學(xué)習(xí)規(guī)則樹(shù)(即流程圖),并遵循該樹(shù)來(lái)確定任何給定輸入的輸出。它們的簡(jiǎn)單性和高解釋性使它們成為ML工具箱中的重要資產(chǎn)。
描述了回歸樹(shù)-具有連續(xù)輸出的決策樹(shù)-并實(shí)現(xiàn)了用于學(xué)習(xí)和預(yù)測(cè)的代碼段。使用波士頓數(shù)據(jù)集創(chuàng)建用例場(chǎng)景并學(xué)習(xí)定義房屋價(jià)格的規(guī)則??梢栽趨⒖嘉墨I(xiàn)中找到完整代碼的鏈接。
用于處理COVID-19的流程圖。[1]
學(xué)習(xí)規(guī)則
尋求的規(guī)則,樹(shù)類似的流程圖,是最好的解釋了房子的功能和它的價(jià)格之間的關(guān)系。每個(gè)規(guī)則將成為該樹(shù)中的一個(gè)節(jié)點(diǎn),并將房屋分成不相交的集合,例如具有兩個(gè)房間的房子,具有三個(gè)房間的房子和具有三個(gè)以上房間的房子。規(guī)則也可以基于多種功能,例如帶有兩個(gè)房間且靠近查爾斯河的房屋。因此所有可能的樹(shù)的空間都是巨大的,需要簡(jiǎn)化以計(jì)算方式解決學(xué)習(xí)問(wèn)題。
作為第一個(gè)簡(jiǎn)化,僅考慮二進(jìn)制規(guī)則:將房屋分為兩部分的規(guī)則,例如“房屋是否少于三個(gè)房間?”。作為第二個(gè),省略了特征的組合,因?yàn)榻M合的數(shù)量可能很大,并且僅考慮基于一個(gè)特征的規(guī)則。在這些簡(jiǎn)化下,規(guī)則是具有兩個(gè)部分的“ 小于關(guān)系”:特征(例如房間數(shù)量)和劃分閾值(例如三個(gè))。
基于此規(guī)則定義,我們通過(guò)遞歸搜索將數(shù)據(jù)最好分為兩部分的規(guī)則來(lái)構(gòu)建規(guī)則樹(shù)。
換句話說(shuō),首先將數(shù)據(jù)盡可能地劃分為兩個(gè)拆分,然后再分別考慮每個(gè)拆分。繼續(xù)分割分割,直到滿足預(yù)定條件,例如最大深度。由于簡(jiǎn)化和貪婪規(guī)則搜索,構(gòu)造的樹(shù)只是最佳樹(shù)的近似。在下面,可以找到實(shí)現(xiàn)該學(xué)習(xí)的Python代碼。
用Python實(shí)現(xiàn)的遞歸拆分過(guò)程。
將拆分過(guò)程作為一個(gè)函數(shù)來(lái)實(shí)現(xiàn),并使用訓(xùn)練數(shù)據(jù)(X_train,y_train)來(lái)調(diào)用它。該功能找到將訓(xùn)練數(shù)據(jù)分為兩部分的最佳規(guī)則,并根據(jù)找到的規(guī)則進(jìn)行分割。它通過(guò)使用左右拆分作為訓(xùn)練數(shù)據(jù)來(lái)不斷調(diào)用自己,直到達(dá)到預(yù)先指定的最大深度或訓(xùn)練數(shù)據(jù)太小而無(wú)法劃分為止。當(dāng)滿足停止條件時(shí),它將停止劃分,并以當(dāng)前拆分中訓(xùn)練數(shù)據(jù)的平均價(jià)格來(lái)預(yù)測(cè)房?jī)r(jià)。
在split函數(shù)中,將除法規(guī)則定義為具有l(wèi)eft,right,feature和threshold的鍵的字典。最佳劃分規(guī)則由另一個(gè)功能返回,該功能通過(guò)遍歷訓(xùn)練集中的每個(gè)特征和閾值來(lái)詳盡地掃描可能的規(guī)則。確定特征的閾值取決于特征在整個(gè)數(shù)據(jù)集中所取的值。這是代碼:
查找最佳規(guī)則的功能,該規(guī)則將手頭的訓(xùn)練數(shù)據(jù)分開(kāi)。
該功能通過(guò)測(cè)量規(guī)則建議的分割質(zhì)量來(lái)跟蹤最佳規(guī)則。質(zhì)量通過(guò)名為“ 殘差平方和”(RSS)的“越低越好”度量來(lái)度量(有關(guān)RSS的更多詳細(xì)信息,請(qǐng)參見(jiàn)參考資料中的筆記本)。最后,最佳規(guī)則作為字典返回。
解釋規(guī)則
學(xué)習(xí)算法自動(dòng)選擇特征和閾值以創(chuàng)建最能解釋房屋特征與其價(jià)格之間關(guān)系的規(guī)則。下面以最大深度為3的方式可視化從波士頓數(shù)據(jù)集中學(xué)習(xí)到的規(guī)則樹(shù)??梢杂^察到提取的規(guī)則與人類的直覺(jué)相重疊。此外可以像跟蹤流程圖一樣容易地預(yù)測(cè)房屋價(jià)格。
從波士頓數(shù)據(jù)集中學(xué)習(xí)的最大深度為3的規(guī)則樹(shù)。
現(xiàn)在描述一個(gè)自動(dòng)使用以上流程圖進(jìn)行預(yù)測(cè)的過(guò)程。給定具有數(shù)據(jù)集中特征的房屋,在節(jié)點(diǎn)中提出問(wèn)題并根據(jù)答案進(jìn)行傳播,直到得出預(yù)測(cè)(即葉節(jié)點(diǎn))為止。
例如,位于以下位置的房屋:(i)較低的身份百分比為5.3,(ii)每個(gè)住宅的平均房間為10.2,并且(iii)人均犯罪率為0.01,將第一個(gè)問(wèn)題回答為“是”,第二個(gè)問(wèn)題回答為“ 否”第三個(gè)是YES。因此預(yù)計(jì)其價(jià)格為45.80K??梢栽谙旅嬲业剿裱窂降目梢暬?。
樹(shù)規(guī)則中的示例預(yù)測(cè)路徑。
使用split函數(shù)返回的字典對(duì)預(yù)測(cè)過(guò)程進(jìn)行編碼非常簡(jiǎn)單。通過(guò)比較規(guī)則指定的特征值和閾值來(lái)遍歷規(guī)則字典。根據(jù)答案向左或向右移動(dòng),直到遇到帶有預(yù)測(cè)鍵(即葉節(jié)點(diǎn))的規(guī)則。以下是用于預(yù)測(cè)的代碼段。
使用學(xué)到的樹(shù)來(lái)預(yù)測(cè)房屋價(jià)格的功能。
回歸樹(shù)是用作回歸模型的快速直觀的結(jié)構(gòu)。對(duì)于波士頓數(shù)據(jù)集,當(dāng)適當(dāng)調(diào)整最大深度時(shí),它們可以達(dá)到0.9左右的R2分?jǐn)?shù)。但是它們可能對(duì)數(shù)據(jù)集中的微小變化是脆弱的,這使得它們不可靠地用作單個(gè)預(yù)測(cè)變量。提出了隨機(jī)森林和梯度增強(qiáng)樹(shù)來(lái)解決高靈敏度問(wèn)題,它們可以產(chǎn)生與深度模型相當(dāng)?shù)慕Y(jié)果。
上述內(nèi)容就是如何用Python代碼從零開(kāi)始建立回歸樹(shù),你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享名稱:如何用Python代碼從零開(kāi)始建立回歸樹(shù)
URL鏈接:http://fisionsoft.com.cn/article/gcjeei.html