GBDT XGB Adaboost面試彙總

2021-09-05 11:47:26 字數 1013 閱讀 7712

1)boostrap從袋內有放回的抽取樣本值

2)每次隨機抽取一定數量的特徵(通常為sqr(n))。

分類問題:採用bagging投票的方式選擇類別頻次最高的

回歸問題:直接取每顆樹結果的平均值。

1)相同點:都是由多棵樹組成,最終的結果都是由多棵樹一起決定。

2)不同點:

組成隨機森林的樹可以分類樹也可以是回歸樹,而gbdt只由回歸樹組成

組成隨機森林的樹可以並行生成,而gbdt是序列生成

隨機森林的結果是多數表決表決的,而gbdt則是多棵樹累加之和

隨機森林對異常值不敏感,而gbdt對異常值比較敏感

隨機森林是減少模型的方差,而gbdt是減少模型的偏差

隨機森林不需要進行特徵歸一化,而gbdt則需要進行特徵歸一化

在訓練的過程中,通過gini指數選擇分離點的特徵,乙個特徵被選中的次數越多,那麼該特徵評分越高。

知乎解答

xgboost使用了一階和二階偏導, 二階導數有利於梯度下降的更快更準. 使用泰勒展開取得二階倒數形式, 可以在不選定損失函式具體形式的情況下用於演算法優化分析.本質上也就把損失函式的選取和模型演算法優化/引數選擇分開了. 這種去耦合增加了xgboost的適用性。

xgboost在訓練的過程中給出各個特徵的評分,從而表明每個特徵對模型訓練的重要性.。xgboost利用梯度優化模型演算法, 樣本是不放回的(想象乙個樣本連續重複抽出,梯度來回踏步會不會高興)。但xgboost支援子取樣, 也就是每輪計算可以不使用全部樣本。

@xijun li:xgboost類似於gbdt的優化版,不論是精度還是效率上都有了提公升。與gbdt相比,具體的優點有:

1.損失函式是用泰勒展式二項逼近,而不是像gbdt裡的就是一階導數;

2.對樹的結構進行了正則化約束,防止模型過度複雜,降低了過擬合的可能性;

3.節點**的方式不同,gbdt是用的基尼係數,xgboost是經過優化推導後的。

匯頂科技(筆試加面試)

a 8月27日在清華這邊筆試,應聘的是軟體開發,考的 有基礎數學。訊號與系統,c語言,和電子電路等基礎知識。很多題目記不清楚了,但是記得幾道數字題目 1,7,8,57,為什麼?a.123 b.122 c.121 d.120應該是有兩個答案 457,1 2 7 8,7 2 8 57,所以選c。還有 等...

關於iOS中object C方面的面試題彙總

1 object c的類可以實現多重繼承麼,可以採用多個協議麼?解析 不可以直接實現多重繼承,cocoa中所有的類都是nsobject的子類,多重繼承在這裡使用protocol委託 來實現的。乙個類可以實現多個介面。object c如何實現多重繼承的呢?1 可以使用協議,只要遵守對應的協議,就可以實...

supervisord docker 啟動彙總

今天收到supervisord報警,說是有docker程序異常退出,而且無法啟動,這個裡面有兩個問題 1.為啥會異常退出?2.為啥無法啟動 先看第二個問題,經過排查,原來是由於docker 容器程序掛掉後,會留在docker ps a裡面,提示有重名docker在執行,這個我們需要手動乾掉 dock...