大數(shù)據(jù)分析決策預(yù)測

大數(shù)據(jù) 分析 決策 預(yù)測| 2022-09-05 admin
決策樹

大數(shù)據(jù)分析
我們喝牛奶時的思考過程就是決策樹的一種,通過不同的條件分支生成不斷的結(jié)果,而結(jié)果又有新的條件分支生成新的結(jié)果……
上面的例子是:

沒過期 沒超過三天 新鮮 不新鮮 已經(jīng)買了放在冰箱里的牛奶 確認(rèn)保質(zhì)期 過期與否 過期了幾天 喝 過期超過三天 喝 喝 丟了

鮮牛奶的貯藏過程中得益于現(xiàn)在的貯藏技術(shù)越來越好,一般稍有過期的產(chǎn)品價格低且仍讓可使用,而保質(zhì)期是指的最佳食用期而不是過了這個期限就不可食用了。因此,對于喝牛奶這個行為,用決策樹來表達(dá)自己影響自己做出決定的方式就如上圖展現(xiàn)了。
在這個決策樹種,根部的選擇不是隨機(jī)的,根部往往是對決策產(chǎn)生最核心影響的原因,而其他的葉部分均為根的派生。在使用決策樹進(jìn)行預(yù)測森林覆蓋時,我們需要考慮的條件有很多,如光照、土質(zhì)、風(fēng)力等;諸多的元素會對決策造成影響,而我們的目標(biāo)就是通過決策樹創(chuàng)建一個合理的模型,能夠令其預(yù)測出因素變化產(chǎn)生的結(jié)果。在這個過程中,我們面臨一個問題,到底哪一個因素才是最重要的?才是決策樹的根部,對于我們一般思考而言,只能說樹的栽培光照突然風(fēng)力雨露等因素都是重要的,卻無法真正意義上區(qū)分出哪一個更重要,而我們又需要決策樹來生成并幫助我們預(yù)測結(jié)果,這個過程就是我們接下來探討的過程。

例子

大數(shù)據(jù)分析
為客人推薦寵物的機(jī)器人工作。它需要根據(jù)我們給定的資料來模擬,確定出決策樹判斷的優(yōu)先條件,這里的條件有體重,腿數(shù)目,顏色三要素。

大數(shù)據(jù)分析

上圖反映的判斷一個動物是否適合做寵物:

  1. 體重大于100kg與否,大于則不適合
  2. 若體重小于100Kg,是否是綠色,綠色則不適合

這樣的簡單模型對上面的數(shù)據(jù)進(jìn)行過濾可以得到一個不太準(zhǔn)確的結(jié)果,會出現(xiàn)2個判斷錯誤的例子。我們可以通過在是綠色后面再追加一個新的判斷語句,根據(jù)腿數(shù)判斷來將這個訓(xùn)練數(shù)據(jù)的預(yù)測值達(dá)到100%準(zhǔn)確。但是:

當(dāng)我們創(chuàng)建一個簡單的模型時,會發(fā)現(xiàn)幾個問題:模型的指定會出現(xiàn)一些對訓(xùn)練數(shù)據(jù)不準(zhǔn)確反映的現(xiàn)象,但是如果我們針對這種現(xiàn)象去豐滿模型,就可能出現(xiàn)過擬合,導(dǎo)致對普適性差,泛性差的情況。因此我們需要去找到一個平衡點(diǎn),來找到普適性模型。

2.今天要不要去打高爾夫
大數(shù)據(jù)分析
對應(yīng)的生成樹:
大數(shù)據(jù)分析
這個決策樹的普適性很高,我們可以借此來總結(jié)一下決策樹。
大數(shù)據(jù)分析
一個好的決策樹對于每個事件的判斷,我們希望能夠盡可能簡介,所有的后續(xù)判斷盡可能只發(fā)生在一側(cè)。舉個例子,像起初的牛奶例子,每個判斷完成后,都有一個簡潔的終結(jié)選項(xiàng)——喝;而對應(yīng)的其他多種多樣的判斷條件也沒有過多的展開。然而實(shí)際上決策樹的判斷更多的是上圖中的例子,相對復(fù)雜且每一個節(jié)點(diǎn)都可能有多個分支,分支中還有分支,整個算法的復(fù)雜度就會大大提升。該算法最簡單的情況下復(fù)雜度是0,一條從頭到尾的直線框圖;最復(fù)雜的情況是log函數(shù),因?yàn)槊總€節(jié)點(diǎn)不一定有幾個分支,所以無法確認(rèn)底數(shù)。

大數(shù)據(jù)分析
進(jìn)而我們引出一個概念——Entropy(熵)。如上圖所示,是兩類數(shù)據(jù)類型的圖形,當(dāng)二者之一為0是,熵也為0,;當(dāng)二者55開始,熵值最高,也就說復(fù)雜度最高。就反映了我們剛才說的,如果樹的分支只偏向一個方向,那么其實(shí)樹就是一個N節(jié)點(diǎn)的線段,復(fù)雜度為0,否則復(fù)雜度是nlongn。
而對于公式的計算,如下圖所示:
大數(shù)據(jù)分析
需要注意的是在這個計算過程中,0log0視為0而不是負(fù)無窮。因?yàn)楫?dāng)某一個選項(xiàng)沒出現(xiàn)時,它的出現(xiàn)率就是0而不是無窮。
分析以上式子的結(jié)構(gòu),對于outlook這一個因素,有三個分支,分別是overcast,sunny,rainy。然后統(tǒng)計第一個圖中對應(yīng)的yes/no個數(shù),并根據(jù)其個數(shù)計算系數(shù)。如表格Outlook中對應(yīng)的overcast出現(xiàn)了4個yes,0個no。其中,yes占據(jù)4/4也就是1,而no占據(jù)0/4也就是0。其他的也同理, ( 占 據(jù) 的 份 數(shù) / 總 數(shù) ) ∗ l o g ∗ ( 占 據(jù) 的 份 數(shù) / 總 數(shù) ) (占據(jù)的份數(shù)/總數(shù))*log*(占據(jù)的份數(shù)/總數(shù)) (占據(jù)的份數(shù)/總數(shù))∗log∗(占據(jù)的份數(shù)/總數(shù))就是對應(yīng)的計算方式。
大數(shù)據(jù)分析
如果我們只想要計算出具體因素中的某一個具體的項(xiàng),則需要來看下一個公式。
大數(shù)據(jù)分析
計算由分割產(chǎn)生的所有集合的加權(quán)平均值即可。

信息增益

大數(shù)據(jù)分析
有了基本概念后,我們來看信息增益。

  • 選擇差異(信息增益)最大化的屬性
  • 最大化信息增益等于最小化平均熵
  • 當(dāng)屬性A將集合S分割為子集Si時,我們計算平均熵。然后比較原始集合S的和與熵

原始集合S的熵計算:
(結(jié)果所占總體的分?jǐn)?shù)/結(jié)果總數(shù))log(結(jié)果所占總體的分?jǐn)?shù)/結(jié)果總數(shù))
大數(shù)據(jù)分析
對于這例子的原集合熵S= − ( 9 14 l o g ( 9 14 ) + 5 14 l o g ( 5 14 ) ) -(frac{9}{14}log(frac{9}{14})+frac{5}{14}log(frac{5}{14})) −(149?log(149?)+145?log(145?))
大數(shù)據(jù)分析
套公式比較出兩個因素影響的最大值。值大的一方說明比另一個因素在訓(xùn)練數(shù)據(jù)上從統(tǒng)計意義上表現(xiàn)出更加重要的判斷要素。換言之,值高的相對成為上位節(jié)點(diǎn),最上位節(jié)點(diǎn)也就說根一定是信息增益值最大的。
大數(shù)據(jù)分析
根據(jù)上面的計算,我們得到結(jié)論outlook優(yōu)先級高于humidity高于windy。那么在這些影響因素中,outlook成為節(jié)點(diǎn)的根,且根據(jù)分支,overcast所有預(yù)測結(jié)果均為yes。
大數(shù)據(jù)分析
然后我們計算其他因素的信息增益值,就可以找出下位節(jié)點(diǎn)。如圖所示,是當(dāng)outlook為sunny時,其他因素的信息增益結(jié)果。
大數(shù)據(jù)分析
當(dāng)我們確認(rèn)下humidity后,再討論rainy的計算。過程與humidity一樣。
大數(shù)據(jù)分析
然后我們就可以得到一個新的決策樹,而這個決策樹比起我們起初設(shè)計的決策樹簡單的多。決策樹越簡單,效率越高,開銷約小。這個例子就直接反映了我們怎么去生成一個高效率的決策樹
隨機(jī)森林簡介
隨機(jī)森林(或隨機(jī)決策森林):通過在訓(xùn)練時構(gòu)造多個決策樹并輸出作為單個樹的類的模式的類來集成模型。隨機(jī)森林的預(yù)測只是這些樹預(yù)測的加權(quán)平均值。對于一個分類目標(biāo)(即分類),這可以是多數(shù)投票或基于樹產(chǎn)生的概率平均值的最可能值
優(yōu)勢:

  1. 它能夠處理很高維度(feature很多)的數(shù)據(jù),并且不用做特征選擇
    原因:特征子集是隨機(jī)選擇的,子集大小可以控制。
  2. 在訓(xùn)練完后,它能夠給出feature重要大小
  3. 訓(xùn)練速度快,容易做成并行化方法
    原因:訓(xùn)練時樹與樹之間是相互獨(dú)立的
  4. 如果有很大一部分的特征遺失,仍可以維持準(zhǔn)確度。
    缺陷:
  5. 隨機(jī)森林已經(jīng)被證明在某些噪音較大的分類或回歸問題上會過擬合
  6. 對于有不同取值的屬性的數(shù)據(jù),取值劃分較多的屬性會對隨機(jī)森林產(chǎn)生更大的影響,(跟決策樹算法類似,以信息增益劃分?jǐn)?shù)據(jù)集的特征,都有這個問題,可以用信息增益比校正)所以隨機(jī)森林在這種數(shù)據(jù)上產(chǎn)出的屬性權(quán)值是不可信的。
實(shí)驗(yàn)

大數(shù)據(jù)分析