【数据竞赛】5行代码提升GBDT,提升巨大!
看過我歷史文章的都知道,以lightgbm,xgboost,catboost為代表的GBDT,在部分工業(yè)界場景的表格數(shù)據(jù)集上,一直一覽眾山小。
如果你打過kaggle應(yīng)該一定都知道,大家心照不宣的表格一把梭中的第一把。
(一把梭的意思就是,基本上可以閉著眼用,肯定有用。)
他就是category特征的頻度統(tǒng)計了,你也可以稱為value counts等,用pandas實現(xiàn)起來也很簡單。我拿個簡單的3列表格,上五行代碼示例。
import?pandas?as?pddf?=?pd.DataFrame({'區(qū)域'?:?['西安',?'太原',?'西安',?'太原',?'鄭州',?'太原'],?'10月份銷售'?:?['0.477468',?'0.195046',?'0.015964',?'0.259654',?'0.856412',?'0.259644'],'9月份銷售'?:?['0.347705',?'0.151220',?'0.895599',?'0236547',?'0.569841',?'0.254784']}) #統(tǒng)計 df_counts?=?df['區(qū)域'].value_counts().reset_index() df_counts.columns?=?['區(qū)域','區(qū)域頻度統(tǒng)計'] df?=?df.merge(df_counts,on?=['區(qū)域'],how='left')你看到這了,可能說,就這?就這?
如果就這,肯定不是包大人的作風(fēng),授人以魚不如授人以漁,我們一起來想想,為什么這玩意,榮登一把梭的第一把。
第一層
除了老調(diào)重彈的決策樹的模型特性,我們今天再從數(shù)據(jù)的角度思考一下。
工業(yè)界category類的數(shù)據(jù),大部分都是長尾分布的,你可以想象下諸如地區(qū),職業(yè),商品品類等。低頻部分,數(shù)量少,置信度低,容易過擬合。
那么第一個優(yōu)點就呼之欲出了,你可以認為,頻度統(tǒng)計是一種帶智慧的哈希編碼方式,他對所有的低頻都一視同仁。
就跟我們在初中時候,班里男生各種與眾不同的發(fā)型,全都讓班主任剃成了5mm卡尺,軍訓(xùn)頭。教導(dǎo)主任根據(jù)發(fā)型,毫不費力就能知道,以前這個學(xué)生挺有個性的。
這樣低頻,置信度低的東西,他們的共性也被挖掘出來了。這就是特征工程神奇的地方。
好了,剛才我們講了頻度統(tǒng)計對于低頻的歸一化作用,下面我們進入第二層。
第二層
離線數(shù)據(jù)集是真實數(shù)據(jù)分布的采樣。在工業(yè)界,頻度在不同場景下有著不同的含義。
最基本的,在展現(xiàn)日志表對廣告id 進行的頻度統(tǒng)計就是廣告的曝光量,在訪問日志表對頁面id 進行統(tǒng)計就是頁面的pv,對用戶id進行頻度統(tǒng)計就是頁面的uv。
這些不同含義的頻度統(tǒng)計量,他是有場景含義的,對應(yīng)在背后就存在一定的規(guī)律。
比如在風(fēng)控場景,一個user id的廣告點擊特別高,就得小心他是不是點擊工廠。一個用戶在一個時間段,支付了N筆不同的外賣,要小心他是不是在刷單。
剛才講了他在不同場景下的業(yè)務(wù)含義和目標(biāo)一致關(guān)聯(lián)性,下面我們進入第三層。
第三層
第三層,對應(yīng)著廣告點擊率預(yù)估里面一個術(shù)語,特征交叉。
舉個例子,特征交叉在生活中無處不在,比如阿里碼農(nóng),就是工作地和工種的交叉,工地打灰,也是工作地和工種的交叉,大廠除了碼農(nóng)還有l(wèi)eader,工地除了打灰還有監(jiān)工,他們的含義并不相同。
交叉是有代價的,比如工地也有寫代碼的,但不是太多,交叉會讓整個分布更加的長尾,對應(yīng)著就更難學(xué)習(xí)了。
似乎,又帶來了第一個問題,嗯沒事,我們的頻度統(tǒng)計把刺頭又干掉了,美滋滋。特征交叉對應(yīng)著第二層,又會產(chǎn)生更豐富的含義。每一個落地頁的pv uv就出來了,每個時段的pv和uv也出來了。
注意:以上一把梭哈適用在離線數(shù)據(jù)集,train和test之間無bias場景。其他情況,想必大家也知道怎么處理了~
往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機器學(xué)習(xí)在線手冊深度學(xué)習(xí)筆記專輯《統(tǒng)計學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載黃海廣老師《機器學(xué)習(xí)課程》視頻課黃海廣老師《機器學(xué)習(xí)課程》711頁完整版課件本站qq群955171419,加入微信群請掃碼:
總結(jié)
以上是生活随笔為你收集整理的【数据竞赛】5行代码提升GBDT,提升巨大!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 腾讯视频下载格式_怎么下载腾讯视频
- 下一篇: win7打不开qq文件怎么办