決策樹,邏輯迴歸,PCA-算法面經

大數據技術2019-09-23 11:07:55

來自公眾號:Datawhale 

目錄

  • 決策樹

    • 簡述決策樹原理?

    • 為什麼要對決策樹進行減枝?如何進行減枝?

    • 簡述決策樹的生成策略

  • PCA

    • 簡述主成分分析PCA工作原理,以及PCA的優缺點?

    • PCA中有第一主成分、第二主成分,它們分別是什麼,又是如何確定的?

  • 邏輯迴歸

    • 邏輯迴歸是線性模型麼,説下原因?

    • 邏輯迴歸算法為什麼用的是sigmoid函數而不用階躍函數?

  • 其他

    • 分析KNN與K-means中k值如何進行選取並解釋兩者之間的區別?

    • 對於數據異常值,我們一般如何處理?

    • 什麼是特徵選擇,為什麼要進行特徵選擇,以及如何進行?



決策樹



簡述決策樹原理?

       決策樹是一種自上而下,對樣本數據進行樹形分類的過程,由節點和有向邊組成。節點分為內部節點和葉節點,其中每個內部節點表示一個特徵或屬性,葉節點表示類別。從頂部節點開始,所有樣本聚在一起,經過根節點的劃分,樣本被分到不同的子節點中,再根據子節點的特徵進一步劃分,直至所有樣本都被歸到某個類別。


為什麼要對決策樹進行減枝?如何進行減枝?

Datawhale優秀回答者:Cassiel


        剪枝是決策樹解決過擬合問題的方法。在決策樹學習過程中,為了儘可能正確分類訓練樣本,結點劃分過程將不斷重複,有時會造成決策樹分支過多,於是可能將訓練樣本學得太好,以至於把訓練集自身的一些特點當作所有數據共有的一般特點而導致測試集預測效果不好,出現了過擬合現象。因此,可以通過剪枝來去掉一些分支來降低過擬合的風險。

       

        決策樹剪枝的基本策略有“預剪枝”和“後剪枝”。預剪枝是指在決策樹生成過程中,對每個結點在劃分前先進行估計,若當前結點的劃分不能帶來決策樹泛化性能提升,則停止劃分並將當前結點標記為葉結點;後剪枝則是先從訓練集生成一棵完整的決策樹,然後自底向上地對非葉結點進行考察,若將該結點對應的子樹替換為葉結點能帶來決策樹泛化性能提升,則將該子樹替換為葉結點。 


        預剪枝使得決策樹的很多分支都沒有"展開”,這不僅降低了過擬合的風險,還顯著減少了決策樹的訓練時間開銷和測試時間開銷。但另一方面,有些分支的當前劃分雖不能提升泛化性能、甚至可能導致泛化性能暫時下降?但在其基礎上進行的後續劃分卻有可能導致性能顯著提高;預剪枝基於"貪心"本質禁止這些分支展開,給預剪枝決策樹帶來了欠擬含的風險。


        後剪枝決策樹通常比預剪枝決策樹保留了更多的分支,一般情形下後剪枝決策樹的欠擬合風險很小,泛化性能往往優於預剪枝決策樹 。但後剪枝過程是在生成完全決策樹之後進行的 並且要白底向上對樹中的所有非葉結點進行逐 考察,因此其訓練時間開銷比未剪枝決策樹和預剪枝決策樹都要大得多。 


簡述決策樹的生成策略?

Datawhale優秀回答者:立言


        決策樹主要有ID3、C4.5、CART,算法的適用略有不同,但它們有個總原則,即在選擇特徵、向下分裂、樹生成中,它們都是為了讓信息更“純”。


        舉一個簡單例子,通過三個特徵:是否有喉結、身高、體重,判斷人羣中的男女,是否有喉結把人羣分為兩部分,一邊全是男性、一邊全是女性,達到理想結果,純度最高。通過身高或體重,人羣會有男有女。上述三種算法,信息增益、增益率、基尼係數對“純”的不同解讀。如下詳細闡述:


        綜上,ID3採用信息增益作為劃分依據,會傾向於取值較多的特徵,因為信息增益反映的是給定條件以後不確定性減少的程度,特徵取值越多就意味着不確定性更高。C4.5對ID3進行優化,通過引入信息增益率,對特徵取值較多的屬性進行懲罰。



PCA


簡述主成分分析PCA工作原理,以及PCA的優缺點?

 

        PCA旨在找到數據中的主成分,並利用這些主成分表徵原始數據,從而達到降維的目的。


       工作原理可由兩個角度解釋,第一個是最大化投影方差(讓數據在主軸上投影的方差儘可能大);第二個是最小化平方誤差(樣本點到超平面的垂直距離足夠近)。


        做法是數據中心化之後,對樣本數據協方差矩陣進行特徵分解,選取前d個最大的特徵值對應的特徵向量,即可將數據從原來的p維降到d維,也可根據奇異值分解來求解主成分。 


優點

1.計算簡單,易於實現

2.各主成分之間正交,可消除原始數據成分間的相互影響的因素

3.僅僅需要以方差衡量信息量,不受數據集以外的因素影響

4.降維維數木有限制,可根據需要制定


缺點:

1.無法利用類別的先驗信息

2.降維後,只與數據有關,主成分各個維度的含義模糊,不易於解釋

3.方差小的非主成分也可能含有對樣本差異的重要信息,因降維丟棄可能對後續數據處理有影響

4.線性模型,對於複雜數據集難以處理(可用核映射方式改進)


參考鏈接:

https://www.jianshu.com/p/487818da5de3



PCA中有第一主成分、第二主成分,它們分別是什麼,又是如何確定的?

Datawhale優秀回答者:孫洪傑 


        主成分分析是設法將原來眾多具有一定相關性(比如P個指標),重新組合成一組新的互相無關的綜合指標來代替原來的指標。主成分分析,是考察多個變量間相關性一種多元統計方法,研究如何通過少數幾個主成分來揭示多個變量間的內部結構,即從原始變量中導出少數幾個主成分,使它們儘可能多地保留原始變量的信息,且彼此間互不相關,通常數學上的處理就是將原來P個指標作線性組合,作為新的綜合指標。 


       最經典的做法就是用F1(選取的第一個線性組合,即第一個綜合指標)的方差來表達,即Var(F1)越大,表示F1包含的信息越多。因此在所有的線性組合中選取的F1應該是方差最大的,故稱F1為第一主成分。如果第一主成分不足以代表原來P個指標的信息,再考慮選取F2即選第二個線性組合,為了有效地反映原來信息,F1已有的信息就不需要再出現在F2中,用數學語言表達就是要求Cov(F1, F2)=0,則稱F2為第二主成分,依此類推可以構造出第三、第四,……,第P個主成分。


邏輯迴歸


邏輯迴歸是線性模型麼,説下原因?

Datawhale優秀回答者:夢大大 


邏輯迴歸是廣義線性模型,原因如下: 

       狹義線性模型的前提是因變量誤差是正態分佈,但很多情況下這並不滿足,比如對足球比分的預測顯然用泊松分佈是更好的選擇。而廣義的”廣”在於引入了聯繫函數,於是誤差變成了只要滿足指數分佈族就行了,因此適用性更強。 


        簡單來説廣義線性模型分為兩個部分,第一個部分是描述了自變量和因變量的系統關係,也就是”線性”所在;第二個部分是描述了因變量的誤差,這可以建模成各種滿足指數分佈族的分佈。而聯繫函數就是把這兩個部分連接起來的橋樑,也就是把因變量的期望表示為了自變量線性組合的函數。而像邏輯迴歸這樣的簡單廣義線性模型,實際是將自變量的線性組合變成了聯繫函數的自然參數,這類聯繫函數也可以叫做正則聯繫函數。 


邏輯迴歸算法為什麼用的是sigmoid函數而不用階躍函數?

        階躍函數雖然能夠直觀刻畫分類的錯誤率,但是由於其非凸、非光滑的特點,使得算法很難直接對該函數進行優化。而sigmoid函數本身的特徵(光滑無限階可導),以及完美的映射到概率空間,就用於邏輯迴歸了。解釋上可從三個方面:- 最大熵定理- 伯努利分佈假設- 貝葉斯理論 


其他


分析KNN與K-means中k值如何進行選取並解釋兩者之間的區別?

        knn的k是指選擇與目標最近k個數量樣本來進行預測。可以用多次交叉檢驗迭代對比後選擇最優。kmeans的k是指簇中心數量,也就是聚類的數量。可以用肘部法,也是通過不同的k值,每次都計算所有樣本與距離自己最近簇中心的距離之和,最後用k值和對應的距離畫散點圖,尋找一個最優的拐點。手肘法是個經驗學習,所以不夠自動化,然後提出了Gap Statistic方法。


對於數據異常值,我們一般如何處理?

1.視為無效信息(噪聲點):結合異常值檢測算法,檢測出後直接丟棄;

2.視為有效信息(信號點):

作為缺失值,用缺失值的方式處理;

3.用平均值(中位數)等統計特徵進行修正,結合前後觀測值;

4.不處理,直接在具有異常值的數據上進行數據挖掘;


什麼是特徵選擇,為什麼要進行特徵選擇,以及如何進行?

Datawhale優秀回答者:Summer


特徵選擇是通過選擇舊屬性的子集得到新屬性,是一種維規約方式。


Why

應用方面:提升準確率,特徵選擇能夠刪除宂餘不相關的特徵並降低噪聲,避免維災難。在許多數據挖掘算法中,維度較低,效果更好;

執行方面:維度越少,運行效率越高,同時內存需求越少。


How,有三種標準的特徵選擇方法

1.嵌入方法,算法本身決定使用哪些屬性和忽略哪些屬性。即特徵選擇與訓練過程融為一體,比如L1正則、決策樹等;

2.過濾方法,獨立於算法,在算法運行前進行特徵選擇。如可以選擇屬性的集合,集合內屬性對之間的相關度儘可能低。常用對特徵重要性(方差,互信息,相關係數,卡方檢驗)排序選擇;可結合別的算法(隨機森林,GBDT等)進行特徵重要性提取,過濾之後再應用於當前算法。

3.包裝方法,算法作為黑盒,在確定模型和評價準則之後,對特徵空間的不同子集做交叉驗證,進而搜索最佳特徵子集。深度學習具有自動化包裝學習的特性。總之,特徵子集選擇是搜索所有可能的特性子集的過程,可以使用不同的搜索策略,但是搜索策略的效率要求比較高,並且應當找到最優或近似最優的特徵子集。一般流程如下圖: 



        圖片 | 伊小雪         

排版 | 伊小雪

知識總結 | Summer




●編號887,輸入編號直達本文

●輸入m獲取文章目錄

推薦↓↓↓

數據庫開發

https://hk.wxwenku.com/d/201396315