【面試必備】通俗易懂的XGBoost、LightGBM、BERT、XLNet原理解析 | 附PDF下載
在非深度學(xué)習(xí)的機(jī)器學(xué)習(xí)模型中,基于GBDT算法的XGBoost、LightGBM等模型有著非常優(yōu)秀的性能,校招算法崗面試中“出鏡率”非常高。這些經(jīng)典的機(jī)器學(xué)習(xí)算法不僅是數(shù)據(jù)科學(xué)競(jìng)賽神器,在工業(yè)界中也被廣泛地使用。Microstrong最近負(fù)責(zé)使用GBDT、XGBoost等集成模型做推薦系統(tǒng)的點(diǎn)擊率預(yù)估(CTR),如果讓我當(dāng)面試官面試自己,那我會(huì)由淺入深依次考察:
GBDT的原理(理論基礎(chǔ)) 決策樹節(jié)點(diǎn)分裂時(shí)如何選擇特征,寫出Gini index和Information Gain的公式并舉例說(shuō)明(理論基礎(chǔ)) 分類樹和回歸樹的區(qū)別是什么?(理論基礎(chǔ)) 與Random Forest作比較,并以此介紹什么是模型的Bias和Variance(理論基礎(chǔ)) GBDT里面的決策樹都是利用回歸樹解決分類和回歸問(wèn)題,請(qǐng)問(wèn)GBDT中利用回歸樹是怎么做到分類的?目標(biāo)(損失)函數(shù)是什么形式?(理論基礎(chǔ)) XGBoost的原理(理論基礎(chǔ)) XGBoost的參數(shù)調(diào)優(yōu)有哪些經(jīng)驗(yàn)(工程能力) XGBoost的正則化是如何實(shí)現(xiàn)的(工程能力) XGBoost的并行化部分是如何實(shí)現(xiàn)的(工程能力) 為什么GBDT預(yù)測(cè)點(diǎn)擊率一般都會(huì)出現(xiàn)嚴(yán)重的過(guò)擬合現(xiàn)象(業(yè)務(wù)理解) 如果選用一種其它的模型替代XGBoost,你會(huì)選用什么?(業(yè)務(wù)理解和知識(shí)面)
我們通過(guò)上面的幾個(gè)問(wèn)題,考察了面試者理論基礎(chǔ)、工程能力以及對(duì)業(yè)務(wù)的理解,檢測(cè)面試者是否真的對(duì)GBDT、XGBoost有比較深入的理解。如果大家對(duì)上面的問(wèn)題還一知半解,貼心的Microstrong同學(xué)為大家整理了自己從回歸樹到GBDT、XGBoost再到LightGBM、CatBoost的原創(chuàng)算法解析文章:
Regression Tree 回歸樹 深入理解提升樹(Boosting Tree)算法 梯度提升(Gradient Boosting)算法 深入理解GBDT回歸算法 【完善版】深入理解GBDT二分類算法 深入理解GBDT多分類算法 深入理解XGBoost 深入理解LightGBM 深入理解CatBoost
當(dāng)然,深度學(xué)習(xí)也是人工智能算法工程師必備的基礎(chǔ)技能。入行算法工程師后,怎樣提升我們的掘金能力呢?最核心的還是:技術(shù)硬,懂產(chǎn)品。
在目前鉆研的領(lǐng)域持續(xù)加碼,保持深耕,不斷學(xué)習(xí)和挖掘自身潛力。我們?cè)诳茖W(xué)煉丹的時(shí)候,都會(huì)用到Dropout或Batch Normalization(BN)等基本的深度神經(jīng)網(wǎng)絡(luò)優(yōu)化方法。但是,深度學(xué)習(xí)技術(shù)并非一成不變,努力提升技術(shù)水平要成為一種習(xí)慣。最高水準(zhǔn)當(dāng)然是追逐最先進(jìn)的技術(shù),比如,ELMo、Transformer、BERT和XLNet等明星模型。
如果讓我當(dāng)面試官去判斷一個(gè)面試者的深度學(xué)習(xí)水平,那我會(huì)由淺入深依次考察:
Dropout部分:
講Dropout的基本原理;(理論基礎(chǔ)) Dropout訓(xùn)練過(guò)程和預(yù)測(cè)過(guò)程分別如何保證一致性;(工程能力) Dropout本質(zhì)上的Bagging的思想;(理論基礎(chǔ)) Bagging思想和Boosting思想分別怎么解決模型的偏差和方差問(wèn)題;(理論基礎(chǔ)) 偏差和方差在模型的評(píng)估表現(xiàn)代表了什么;(理論基礎(chǔ))
BN部分:
什么是BN? BN核心公式是什么? BN中均值、方差通過(guò)哪些維度計(jì)算得到? 訓(xùn)練與推理時(shí)BN中的均值、方差分別是什么? Batch Normalization的優(yōu)點(diǎn)? BN與Layer Normalization、Weight Normalization、Cosine Normalization、Instance Normalization、Group Normalization、Cross-Iteration Batch Normalization、Filter Response Normalization區(qū)別?
當(dāng)然,ELMo、Transformer、BERT和XLNet等較新的模型也會(huì)問(wèn)一下,考察面試者是否有Follow深度學(xué)習(xí)中最新的研究工作。同樣地,貼心的Microstrong同學(xué)為大家整理了自己關(guān)于上面問(wèn)題的學(xué)習(xí)筆記:
深度學(xué)習(xí)中的Batch Normalization 深度學(xué)習(xí)中Dropout原理解析 詞向量與ELMo模型 Self-Attention與Transformer 從Transformer到BERT模型 BERT模型精講 從BERT到ALBERT XLNet詳解
總之,一篇文章總結(jié)不完關(guān)于機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、自然語(yǔ)言處理和推薦系統(tǒng)相關(guān)的所有面試題,Microstrong號(hào)主花時(shí)間分類整理了一下自己公眾號(hào)里的精華文章,制作成PDF電子書,分享給大家。
1. 關(guān)注「Microstrong」
2. 在「Microstrong」后臺(tái)回復(fù)“電子書”即可



Microstrong(小強(qiáng))同學(xué)主要研究興趣是機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、推薦系統(tǒng)、自然語(yǔ)言處理等相關(guān)內(nèi)容,分享在學(xué)習(xí)過(guò)程中的讀書筆記!期待您的關(guān)注,歡迎一起學(xué)習(xí)交流進(jìn)步!
