標籤:

國慶回家,我在手機上訓練XGBoost模型

這篇文章唯一標題黨的一點在於:我並不是使用的手機的運算能力

背景

國慶放假,不想參加朋友同學聚會、不想去看人山人海,像我這樣了無生趣的碼農,除了回家陪父母小孩,貌似只有看看書搬搬磚咯。考慮節前還有一版機器學習模型準備好了數據,處理好了特徵,只等著餃子下鍋開始訓練,由於迫不及待想看看效果,於是決定就利用在家的間隙做這個事了。

為什麼用手機?

1、回家總是背月餅吧,誰想背個電腦,

2、由於樣本量和特徵量都不小,XGBoost的調參每一次迭代都耗時不少,基本上調一個參數都需要花幾個小時,手機隨身攜帶,過幾個小時看一下,正好適合這個差事,

3、敝司的VPN用手機登比Linux電腦登要方便很多

怎麼玩?

1、在公司Linux伺服器上配置好Jupyter Notebook,

pip3 install jupyter

並用nohup守護後台進程

nohup jupyter notebook &

2、安裝XGBoost

git clone --recursive https://github.com/dmlc/xgboostcd xgboost; make -j4cd python-package; python setup.py install

3、手機連上公司VPN,在Chrome瀏覽器打開Jupyter Notebook的地址

4、安裝神器Hacker『s Keyboard,因為在手機的環境里,Jupyter Notebook最好是使用快捷鍵操作,而Hacker『s Keyboard提供了Ctrl、Alt等按鍵

5、工作的界面是這樣的:

一些技巧

1、自己封裝一下XGBoost的API,減少代碼量,方便調用,同時加入一些可視化有助於互動式的分析

2、熟悉Jupyter NoteBook的快捷鍵,比如Ctrl-Enter運行本單元,Alt-Enter運行本單元,在其下插入新單元

3、當然準備一個藍牙鍵盤更好咯

4、min_child_weight和gamma挺好玩


推薦閱讀:

LightGBM 中文文檔發布,持續 Update 中,歡迎各位大佬前來裝逼 | ApacheCN
XGBoost 中文文檔發布,大佬們輕點踩 | ApacheCN
再看Boosting和GBM
《XGBoost: A Scalable Tree Boosting System》

TAG:xgboost |