天池商鋪定位數(shù)據(jù)挖掘競(jìng)賽思路總結(jié)

天池?cái)?shù)據(jù)挖掘競(jìng)賽是國(guó)內(nèi)數(shù)據(jù)挖掘圈是很正規(guī)奢人,規(guī)模很大谓媒,組織很好的競(jìng)賽平臺(tái)淆院。作為在讀的一名數(shù)據(jù)挖掘小白,懷著當(dāng)炮灰的念頭句惯,毅然決然的參加了這次競(jìng)賽土辩。

賽題在這里就不詳細(xì)描述,有興趣的朋友可以去天池搜索抢野,商鋪定位比賽拷淘。主要是告訴你用戶(hù)去逛商場(chǎng)的時(shí)候,手機(jī)會(huì)搜到wifi熱點(diǎn)指孤,通過(guò)給你wifi列表启涯,用戶(hù)交易時(shí)經(jīng)緯度,交易時(shí)間恃轩,店鋪經(jīng)緯度结洼,店鋪類(lèi)型,店鋪價(jià)格和商場(chǎng)名稱(chēng)等信息叉跛,讓你去預(yù)測(cè)該用戶(hù)再次發(fā)生交易時(shí)松忍,位于哪家店鋪。訓(xùn)練集給出了2017年8月一整月的數(shù)據(jù)筷厘,讓你去預(yù)測(cè)2017年9月前兩周的商鋪定位情況鸣峭。

數(shù)據(jù)挖掘競(jìng)賽有一個(gè)基本的流程宏所,首先對(duì)問(wèn)題進(jìn)行分析,然后進(jìn)行數(shù)據(jù)預(yù)處理摊溶,然后繼續(xù)進(jìn)行傳說(shuō)中最厲害的特征工程爬骤,最后利用模型去對(duì)目標(biāo)問(wèn)題進(jìn)行分析預(yù)測(cè),得到結(jié)果莫换。有些朋友的博客也分析的比較清楚盖腕,這里就不贅述了。在這里主要給出題目的分析思路和自己操作的結(jié)果

在比賽的開(kāi)始階段浓镜,可以很明顯的想到wifi是能夠確定店鋪的關(guān)鍵因素溃列。后續(xù)的事實(shí)也證明了wifi的重要性。起初我們?cè)谧鲆?guī)則學(xué)習(xí)膛薛,利用wifi的強(qiáng)度構(gòu)造了wifi距離听隐,也就是在訓(xùn)練集中,對(duì)每一個(gè)樣本的wifi序列出現(xiàn)的強(qiáng)度值求均值哄啄,然后利用測(cè)試樣本中每一個(gè)樣本的wifi序列和訓(xùn)練樣本中wifi序列中的交集部分求歐式距離雅任,最終取距離最近的店鋪?zhàn)鳛轭A(yù)測(cè)結(jié)果。起初這樣做咨跌,效果很差沪么,正確率只有0.16。

后來(lái)發(fā)現(xiàn)會(huì)出現(xiàn)有兩個(gè)訓(xùn)練樣本和一個(gè)測(cè)試樣本算距離锌半,一個(gè)交集個(gè)數(shù)為4禽车,一個(gè)交集個(gè)數(shù)為3,但是按照交集個(gè)數(shù)的算了相應(yīng)wifi的距離后是4(假設(shè)每個(gè)wifi距離為1)和3刊殉,我們的思路會(huì)將測(cè)試樣本的答案分配給交集個(gè)數(shù)為3的店鋪殉摔,但這與實(shí)際不相符合,一般來(lái)說(shuō)交集個(gè)數(shù)大记焊,他離這家店鋪也就會(huì)比較近逸月,因此我們?cè)谒阃昃嚯x以后,將算出來(lái)的距離除了一個(gè)交集個(gè)數(shù)的平方遍膜,從而放大交集個(gè)數(shù)對(duì)結(jié)果的影響碗硬,經(jīng)過(guò)這樣的改動(dòng),我們的成績(jī)提升到了0.8589瓢颅,還是有質(zhì)的提升恩尾。

最后我們發(fā)現(xiàn)在wifi中有很多公共wifi,還有手機(jī)熱點(diǎn)等惜索,我們對(duì)求距離的條件進(jìn)行了強(qiáng)化特笋,對(duì)交集部分的個(gè)數(shù)大于5個(gè)的再來(lái)求距離,如果交集個(gè)數(shù)不大于5,就對(duì)其距離設(shè)為無(wú)窮大。這樣大大提升了預(yù)測(cè)的準(zhǔn)確程度猎物,預(yù)測(cè)分?jǐn)?shù)也上升到了0.8893虎囚。這里尤其感謝新神,他是為這套方案創(chuàng)造了一套公式蔫磨,方便編程實(shí)現(xiàn)和調(diào)參淘讥。下次給出。
這里再給出wifi相關(guān)思路堤如。
1. 每一個(gè)wfi序列可以看成是wifi序列蒲列,我們可以從LCS的角度去考慮每家店鋪對(duì)應(yīng)的wifi和測(cè)試樣本中擁有長(zhǎng)度最大的最長(zhǎng)公共子序列,因?yàn)檫@里既包含了最長(zhǎng)公共子序列的長(zhǎng)度的影響又包含了wifi的出現(xiàn)的順序信息搀罢。
2. 將每家店鋪對(duì)應(yīng)的wifi序列當(dāng)成是自然語(yǔ)言處理中一句話(huà)蝗岖,然后利用諸如word2vec,gensim等對(duì)其進(jìn)行訓(xùn)練,挖掘每段wifi語(yǔ)言的相似性榔至,然后從中找相似性最大的店鋪?zhàn)鳛榻Y(jié)果抵赢。
3. wifi出現(xiàn)在每家店鋪的順序不同,利用wifi出現(xiàn)的順序?qū)ifi進(jìn)行編碼唧取。
后來(lái)做規(guī)則铅鲤,實(shí)在是做不太動(dòng)了,然后剛好群里面的麥芽大神開(kāi)源了一份代碼枫弟。僅僅73行邢享,但是能夠有高達(dá)0.9073的成績(jī),實(shí)在讓人有點(diǎn)心動(dòng)淡诗。然后就下載后進(jìn)行了學(xué)習(xí)骇塘。

麥芽大神的開(kāi)源思路其實(shí)比較簡(jiǎn)單,就是將wifi出現(xiàn)次數(shù)比較少的wifi刪去袜漩,然后按照商場(chǎng)绪爸,將每一家商場(chǎng)下所有的wifi做onehot,在里面是1的位置填充強(qiáng)度值宙攻,將其作為特征,再加上交易時(shí)的經(jīng)緯度介褥,利用xgboost做多分類(lèi)座掘,就可以達(dá)到0.9073的分?jǐn)?shù)。實(shí)在是羨慕柔滔,大神思路明了溢陪,代碼簡(jiǎn)潔。然后在仔細(xì)看了代碼之后睛廊,居然發(fā)現(xiàn)大神不小心把rowid加入訓(xùn)練和預(yù)測(cè)形真,我從中摘出來(lái)之后,居然又上升了萬(wàn)分之5超全,哈哈還是挺開(kāi)心的咆霜。

最后自己對(duì)代碼進(jìn)行修改邓馒,想著加入特征。但分析數(shù)據(jù)后蛾坯,因?yàn)闇y(cè)試集中沒(méi)有店鋪相關(guān)的信息光酣,我沒(méi)有辦法將店鋪相關(guān)的特征加入進(jìn)來(lái),只能挖時(shí)間維度了脉课。我通過(guò)tableau畫(huà)出了平日和周末的流量圖救军,發(fā)現(xiàn)兩者有著明顯的不同,因此我們將是否是工作日作為一列特征加入其中倘零,通過(guò)多分類(lèi)的訓(xùn)練唱遭,居然上升了萬(wàn)分之十六,還是比較開(kāi)心呈驶。然后自己又重新審視數(shù)據(jù)胆萧,發(fā)現(xiàn)8月份有一個(gè)比較特殊的節(jié)日,那就是七夕節(jié)俐东,我就將其加入周末中跌穗,成績(jī)又上升了萬(wàn)分之一。之后我們通過(guò)觀察數(shù)據(jù)發(fā)現(xiàn)虏辫,發(fā)現(xiàn)用戶(hù)去店鋪的時(shí)間基本是有大概的規(guī)律蚌吸,有的用戶(hù)只是早上而且是同一家,有的是很多家砌庄,因此我們將所有店鋪的記錄發(fā)生的時(shí)間統(tǒng)一到小時(shí)的角度羹唠,作為特征加入模型,又上升了萬(wàn)分之四娄昆,最終成績(jī)終于有了較大的提升佩微,最終由于自己思路的限制,止步復(fù)賽萌焰。但是感覺(jué)第一次參加這種比賽能夠從2897支隊(duì)伍中做到前200還是比較開(kāi)心的哺眯,希望天池越來(lái)越好,希望自己下次能夠有好成績(jī)扒俯。這里也感謝隊(duì)友新神和林神奶卓,很強(qiáng)勢(shì)。

最后總結(jié)一下在比賽中自己的一些收獲和經(jīng)驗(yàn)教訓(xùn):
1. pandas在數(shù)據(jù)分析方面真的是利器撼玄,無(wú)與倫比夺姑。但是循環(huán)真的比較慢。而且在循環(huán)嵌套的過(guò)程中不要在循環(huán)中出現(xiàn)深拷貝掌猛,對(duì)時(shí)間上的損耗十分大盏浙。比賽之初的代碼居然可以跑三天。。废膘。竹海。。最終實(shí)在是等不起了殖卑,然后將所有的數(shù)據(jù)格式更改為dict站削,然后對(duì)其遍歷,30分鐘就可以搞定孵稽。
2. pkl文件序列化到硬盤(pán)许起,沒(méi)有壓縮參數(shù),導(dǎo)致文件體積很大菩鲜。
3. 在以后做比賽還是做開(kāi)發(fā)的時(shí)候园细,需要統(tǒng)一py的版本,因?yàn)閜y改動(dòng)激進(jìn)接校,在字符編碼方面和py2完全不一樣猛频,在這個(gè)問(wèn)題上浪費(fèi)了很多時(shí)間
4. 在碰到數(shù)據(jù)量大的情況,利用分而治之的思想比較重要蛛勉,在這個(gè)題目中數(shù)據(jù)量比較大鹿寻,因此我們分商場(chǎng)對(duì)其進(jìn)行處理。劃分成子問(wèn)題诽凌,這樣效果會(huì)好的多毡熏,并且執(zhí)行速度上也會(huì)快的多。而且對(duì)有些變量的onehot也就變成了可能侣诵。
5. 碰到類(lèi)別變量或者字符串變量痢法,可以對(duì)類(lèi)別等進(jìn)行統(tǒng)計(jì)分組,或者找出類(lèi)別之間的關(guān)系和特征杜顺,最后考慮onehot,或者利用自然語(yǔ)言處理中的詞向量的思想
6. 在分析真實(shí)數(shù)據(jù)的時(shí)候财搁,是否是工作日,節(jié)假日等十分重要躬络,這種特殊的時(shí)間段尖奔,往往會(huì)表現(xiàn)出不一樣的分布,分開(kāi)處理洗鸵,往往效果會(huì)好的多越锈。
7. 時(shí)間維度刻畫(huà)特征,分段離散化膘滨,找起點(diǎn)形成時(shí)間距離。
8. 異常數(shù)據(jù)需要做剔除稀拐,會(huì)使得預(yù)測(cè)準(zhǔn)確率變高火邓。
9. xgboost調(diào)參,特征重要性畫(huà)法都比較重要

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市铲咨,隨后出現(xiàn)的幾起案子躲胳,更是在濱河造成了極大的恐慌,老刑警劉巖纤勒,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件坯苹,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡摇天,警方通過(guò)查閱死者的電腦和手機(jī)粹湃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)泉坐,“玉大人为鳄,你說(shuō)我怎么就攤上這事⊥笕茫” “怎么了孤钦?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)纯丸。 經(jīng)常有香客問(wèn)我偏形,道長(zhǎng),這世上最難降的妖魔是什么觉鼻? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任俊扭,我火速辦了婚禮,結(jié)果婚禮上滑凉,老公的妹妹穿的比我還像新娘统扳。我一直安慰自己,他們只是感情好畅姊,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布咒钟。 她就那樣靜靜地躺著,像睡著了一般若未。 火紅的嫁衣襯著肌膚如雪朱嘴。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,443評(píng)論 1 302
  • 那天粗合,我揣著相機(jī)與錄音萍嬉,去河邊找鬼。 笑死隙疚,一個(gè)胖子當(dāng)著我的面吹牛壤追,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播供屉,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼行冰,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼溺蕉!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起悼做,我...
    開(kāi)封第一講書(shū)人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤疯特,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后肛走,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體漓雅,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年朽色,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了邻吞。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡纵搁,死狀恐怖吃衅,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情腾誉,我是刑警寧澤徘层,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站利职,受9級(jí)特大地震影響趣效,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜猪贪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一跷敬、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧热押,春花似錦西傀、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至牙寞,卻和暖如春饺鹃,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背间雀。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工悔详, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人惹挟。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓茄螃,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親连锯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子责蝠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容