心得|XGBoost從基礎到實戰,上這4節課就夠了

心得|XGBoost從基礎到實戰,上這4節課就夠了

同學們好!

經過2個週末4天上課

小編隱約感覺離機器學習又近了辣麼一丟丟

原因是身為賣課的確保直播順利的小編

跟著大家一起上了AI100的第一門直播課

《XGBoost 從基礎到實戰》

原本沒神馬基礎的小編

想象聽課時心情是這樣的

心得|XGBoost從基礎到實戰,上這4節課就夠了

並且有些條件反射也是無法控制的

心得|XGBoost從基礎到實戰,上這4節課就夠了

然額,聽完全部課程下來

面對敲耐心認真的講師

熱心互助探討的同學們

小編只想筆!!芯!!

心得|XGBoost從基礎到實戰,上這4節課就夠了

下面將本次課程花絮及總結分享出來

感染更多的小夥伴加入組織

1

先來一波買家秀

課堂上小夥伴的調戲評價

心得|XGBoost從基礎到實戰,上這4節課就夠了

課後回訪小夥伴

心得|XGBoost從基礎到實戰,上這4節課就夠了

課程頁面買家秀

心得|XGBoost從基礎到實戰,上這4節課就夠了

(木有水軍 童叟無欺)

心得|XGBoost從基礎到實戰,上這4節課就夠了

2

再來感受一下交流群

心得|XGBoost從基礎到實戰,上這4節課就夠了

心得|XGBoost從基礎到實戰,上這4節課就夠了

心得|XGBoost從基礎到實戰,上這4節課就夠了

心得|XGBoost從基礎到實戰,上這4節課就夠了

3

一天不分享點東西就難受

1. xgbooost安裝

1) Windows和Linux下的安裝指南 by:燕子

http://blog.csdn.net/xizero00/article/details/73008330

2) Win10下的安裝指南:

這裡有個win10的,基本follow 官網安裝步驟 by:燕子 http://blog.csdn.net/xxzhangx/article/details/54908500

3) 加速git等命令的方法: by:開心的派大星

https://91tianlu.me/knowledgebase.php?action=displayarticle&id=7

4) 在windows下用Linux命令的方法: by: 開心的派大星

https://mp.weixin.qq.com/s?__biz=MzA4NzQzMzU4Mg==&mid=2652917522&idx=3&sn=42f48492add0fdb9d8b5bb94a92853d6

如果用的是windows,想在上面用linux,可以裝雙系統或者是裝虛擬機還有一個比較好的辦法,就是docker

5)Gordon Doo:xgboost 安裝 http://www.lfd.uci.edu/~gohlke/pythonlibs/#xgboost

可以download 這個 ,然後pip install whl文件。

補充:whl格式本質上是一個壓縮包,裡面包含了py文件,以及經過編譯的pyd文件。使得可以在不具備編譯環境的情況下,選擇合適自己的python環境進行安裝。安裝方法很簡單,進入命令行輸入:

pip install xxxx.whl

或者如果是升級

pip install -U xxxx.whl

最好別用gcc7 肯定編譯出問題 修改還麻煩不一定成功。by:土豆

2. graphviz安裝

MAC裡,我是 brew install graphviz 解決的問題 by:土豆

linux裡我是 pip install graphviz by: 開心的派大星

3. GPU加速

GPU Accelerated XGBoost by: 開心的派大星

http://dmlc.ml/2016/12/14/GPU-accelerated-xgboost.html

4. Spark

A Full Integration of XGBoost and Apache Spark by: 開心的派大星

http://dmlc.ml/2016/10/26/a-full-integration-of-xgboost-and-spark.html

5. 參數調整

一個調整參數的利器: by: 開心的派大星

reiinakano/xcessiv: A web-based application for quick, scalable, and automated hyperparameter tuning and stacked ensembling in Python.

https://github.com/reiinakano/xcessiv

6. 行業應用

CTR預估中GBDT與LR融合方案 by: Goron Doo推薦

http://m.blog.csdn.net/lilyth_lilyth/article/details/48032119#0-tsina-1-63291-397232819ff9a47a7b7e80a40613cfe1

基本思想:用GBDT提取特徵,然後將特徵送入LR分類器,實現CTR預估

GBDT特徵提取:將樣本x送入GBDT的每棵樹,得到該樣本在樹中葉子結點的信息作為特徵。

4

在XGBoost路上棋逢對手

1. 不均衡數據處理

開心的派大星分享:解決真實世界問題:如何在不平衡類上使用機器學習?

http://yuenshome.space/?p=3554

開心的派大星進一步解釋了SMOTE:就是合成新樣本的方法,這個想法很有意思。

已知同一(少數)類的樣本,將這一類下的兩個臨近的樣本點連接起來,連線 中間的位置作為新的樣本,通過該方式合成新樣本。

心得|XGBoost從基礎到實戰,上這4節課就夠了

咖喱牛肉土豆:我比較贊同4改進算法。增加少數類權重。

開心的派大星:或者是在損失計算裡對這些較少類特別處理,給個係數:class_weight

xgboost參數scale_pos_weight就是幹這個用的,可參考demo中Higgs Boson代碼中的實現。

Austen: 負樣本抽樣成幾份,再分別和所有正樣本樣本融合訓練,結果在再求平均也是可以. (派大星點評:bagging的思想)

西瓜:樣本不均衡問題,我覺得是有個隱含前提的,那就是真實的分佈應該是均衡的。有些情況,比如訪問某網站男女比例,真實就是4:1,你訓練的時候樣本就是4:1的,你均衡一下反而不好

Austen:不平衡數據下的評判標準通常可以通過auc,f1等來進行評價,如果正樣本過少的情況下好像可以用異常檢測

5

超nice冒老師答疑摘選

心得|XGBoost從基礎到實戰,上這4節課就夠了

SO 木有老師指導的課程不完美

Q: xgboost用於可用於迴歸嗎?

A:課程示例程序有兩類分類(蘑菇分類、Higgs Bosons)和多類分類任務(Otto)。Xgboost也可用於迴歸和排序,可參考xgboost文檔:

https://github.com/dmlc/xgboost/tree/master/demo

Q:One-hot編碼

A:one-hot 是一種將類別型特徵轉換為數值型特徵的一種方式,。若某類別型特徵共有K種可能的取值,則這維特徵 one-hot 編碼後變成了K維,即若第 i 個樣本的特徵取值為 xi=k , 則其輸出的 K 維特徵中第 k 維 為1,其餘各維為 0。可以參考sklearn的文檔說明:

http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html

Q:XGBoost對特徵工程敏感?需要像線性迴歸裡面看特徵的相關性,多重共線性什麼的嗎?

A:xgboost對特徵敏感。一種說法是特徵工程覺得了系統性能的上界,好的學習算法能儘可能接近這個上限。

特徵的相關性雖然沒有對線性模型影響那麼大,還是會影響的。如果特徵相關,也是先去相關(直接去掉或PCA降維等)

Q:在用scikit-learn訓練一個分類問題時,比如說支持向量機或者xgb,最後train出來的分類邊界的表達式能不能從代碼中輸出呢?

A:xgboost是非參數模型,不能從代碼中輸出分類邊界。

svm是可以寫出決策邊界的:This parameters can be accessed through the members dual_coef_ which holds the product, support_vectors_ which holds the support vectors, and intercept_ which holds the independent term

請參考

http://scikit-learn.org/stable/modules/svm.html

Q:用xgb如果要給一個模型解釋一般怎麼做?

A:xgboost是集成模型,犧牲了可解釋性。

心得|XGBoost從基礎到實戰,上這4節課就夠了

看完以上分享,你有沒有心動呢?

如果沒有!

小編換個顏色再問一遍!

你有沒有心動呢??

快點報名加入組織吧!!

http://edu.ai100.com.cn/course/57

最後小編忍不住賣弄下,請問

如何根據蘑菇的22個特徵判斷蘑菇是否有毒?

知道請留言

不知道就快報名啦~~

一大群小夥伴在課程群裡等著你

熱烈討論 共同進步

組隊衝擊各大算法競賽

美女老師為你保駕護航

相關推薦

推薦中...