智慧杯教育賽第一名yancyzhendong_第1頁
智慧杯教育賽第一名yancyzhendong_第2頁
智慧杯教育賽第一名yancyzhendong_第3頁
智慧杯教育賽第一名yancyzhendong_第4頁
智慧杯教育賽第一名yancyzhendong_第5頁
免費預(yù)覽已結(jié)束,剩余32頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

團(tuán)隊成員新加坡國立大學(xué)新加坡國立大學(xué)華南理工大學(xué)大學(xué)科技大學(xué)內(nèi)容提要CONTENTS流程分析PART

ONE模型&調(diào)參PART

THREE模型融合PART

FOUR感想和結(jié)論PART

FIVE特征提取PART

TWODastle

Competition流程分析PART

ONEDastle

CompetitionPART

ONE流程分析本次比賽以《大學(xué)生助學(xué)金精準(zhǔn)資助》為題,提供學(xué)生的一卡通等日常行為數(shù)據(jù),要求參賽者

每個學(xué)生的獲獎情況。

這個問題看待成一個典型的多類別數(shù)據(jù)不平衡分類的問題去解決。無獲獎

1000

1500

2000數(shù)據(jù)集---學(xué)生日常行為信息校園卡消費記錄Card.txt宿舍門禁記錄Dorm.txt館門禁記錄Library.txt借閱記錄Borrow.txt成績信息Score.txt多分類Label:{0,

1000,

1500,

2000}各類別人數(shù)比例不平衡無獲獎86%訓(xùn)練集獲獎分布4%

3%7%PART

ONE流程分析主體結(jié)構(gòu)示意圖Architecture

of

The

SystemPART

ONE流程分析格式轉(zhuǎn)換與數(shù)據(jù)Invert

and

Clean

the

DataPART

ONE流程分析格式轉(zhuǎn)換與數(shù)據(jù)Invert

and

Clean

the

Data數(shù)據(jù)格式轉(zhuǎn)換將原始表轉(zhuǎn)換為key-value的格式,key為學(xué)生id,value為該學(xué)生的所有行為記錄,方便以后快速的進(jìn)行數(shù)據(jù)

和特征抽取。數(shù)據(jù)去除掉消費表中的重復(fù)條目處理借閱表不規(guī)整條目Dastle

Competition特征提取PART

TWOPART

TWO特征提取特征提取Feature

ExtractionPART

TWO特征提取“The

algorithms

we

used

are

very

standard

for

Kagglers.

We

spent

mostof

our

efforts

infeatureengineering.

We

were

also

very

careful

to

discard

features

likely

to

expose

usto

the

riskof

over-fitting

our

model.

”對于Kaggle的參賽者們來說,所使用的算法已經(jīng)相當(dāng)固定了,

把的精力花在了特征工程上。

很珍惜每一個feature,所以即使當(dāng) 刪掉一些過擬合feature的時候我們也會非常

。—Xavier

Conort

(Kaggle個人榜歷史第一名,18金6銀3銅)“…some

machine

learning

projects

succeed

and

some

fail.

Whatmakes

the

difference?Easily

the

most

important

factor

is

the

features

used.”……有些機(jī)器學(xué)習(xí)項目成功了,有些失敗了,是什么造成了這種差異?最常見最有可能的重要因素就是它們所使用的特征?!狿edro

Domingos

大學(xué)計算機(jī)系教授,Markov

logic

network的作者)Feature

Extraction特征提取PART

TWO特征提取How

did

we

t?地毯式特征抽取對每個表,每個列都要進(jìn)行特征抽取盡可能在設(shè)計特征的階段保證合理性多人論證,設(shè)計feature查看原始數(shù)據(jù),驗證想法迭代的抽取第一輪:200個feature,

線上最高

128第二輪:500個feature,

線上最高

14第三輪:1151個feature,

線上 保持

3第四輪:1200個feature(舍棄)是如何做的?宿舍門禁PART

TWO特征提取是否借書借閱書籍?dāng)?shù)量借閱考研、編程類、托福gre雅思不同種類書籍的借閱次數(shù)館的次數(shù)館的次數(shù)不同時間段進(jìn)出

館的次數(shù)晚上進(jìn)出進(jìn)出總次數(shù)周末進(jìn)出去

館天數(shù)不同時間段進(jìn)出宿舍次數(shù)每天最早、最晚離開宿舍平均時間平均每月在宿舍的最大天數(shù)每天進(jìn)出宿舍的次數(shù)周末進(jìn)出的次數(shù)館門禁成績借閱學(xué)生成績成績

百分比學(xué)院各個獲獎類別人數(shù)比例特征展示Present

Our

Features24個小時暑假,節(jié)假日,周末早中午餐時間用戶卡充值前后10天…計數(shù)最大/小值總額方差均值計數(shù)每天第一條記錄和最后一條記錄的平均時間,最早時間,最晚時間時間間隔中位數(shù)涉及天數(shù)涉及的地點數(shù)量時間維度統(tǒng)計量地點維度消費方式維度12種消費方式(

、超市、開水等)消費種類(卡充值,換卡,支付領(lǐng)取等)前十大最受歡迎的地點用戶去的最多的前十大地點用戶花錢最多的前十大地點單價最高的前10,50,100,200,300個地點…每天每筆過完年后第一筆消費的日期(反映早晚)每天總消費在0-10元、10-20元、等區(qū)間的次數(shù)…其他PART

TWO特征提取校園卡消費PART

TWO特征提取消費總額或者計數(shù)等指標(biāo)除以活躍天數(shù)活躍天數(shù)指的是用戶有記錄的天數(shù),不同用戶活躍天數(shù)差別很大,所以除以活躍天數(shù)會使得特征更加公平(正序)消費除以總消費,用戶在本學(xué)院消費

(倒序)乘以成績用戶不同種類的消費額除以消費總額(比如反映用戶不同消費種類的占比)周末消費的平均值減非周末消費的平均值“圈存轉(zhuǎn)賬”“卡充值”“支付領(lǐng)取”三種充值類特征相加…特征構(gòu)造Feature

Construction1是否曾更換校園卡if_change_card2每天總消費在0-10元范圍的次數(shù)/活躍天數(shù)consumeDayOver_037點-8點消費的總額/活躍天數(shù)hour_07_sum_per_day4成績

乘以消費

的值rank_score_consume56點-7點消費的總額/活躍天數(shù)hour_06_sum_per_day6該學(xué)生所在學(xué)院獲2000助學(xué)金的人數(shù)比例2000_percent7該學(xué)生所在學(xué)院獲1000助學(xué)金的人數(shù)比例1000_percent8金額在0-2.5元之間的消費筆數(shù)/活躍天數(shù)slice_0_2.59學(xué)生的成績

/學(xué)院人數(shù)rankPercent10卡充值總額/活躍天數(shù)kachongzhi_top_up_sum_relative11消費總額的方差all

consume_one_day_var12該學(xué)生消費的相對總額在用戶所在學(xué)院的rank_in_faculty13該學(xué)生每天吃早餐的平均時間breakfastTime_ave146點-7點消費的總額hour_06_sum15學(xué)生成績

的值absoluteRank167點-8點消費額的最大值hour_07_max17該學(xué)生所在學(xué)院獲1500助學(xué)金的人數(shù)比例1500_percent18在飯?zhí)?/p>

消費額的方差canteen

consume_one_day_var19該學(xué)生消費金額 第2高的地點消費的次數(shù)top_amount_place_2_count20每天11點-12點消費的次數(shù)hour_11_countPART

TWO特征提取特征重要性Feature

Importance

RankingRandom

Forest給出的前20個重要的特征在樹形模型中,一個feature被用作分

裂結(jié)點的次數(shù)越多,則此feature越重要。PART

TWO特征提取經(jīng)過實驗,只有

靠前的特征對模型影響的結(jié)果較大刪除準(zhǔn)則:重要性靠前的,但是人眼觀察懷疑為導(dǎo)致過擬合的特征。驗證方法:刪除特征之后,在驗證集上重新訓(xùn)練模型,觀察分?jǐn)?shù)是否上升。

所刪特征:用戶借閱不同類別書籍的特征,用戶所在學(xué)院特征,周一至周五每天消費的統(tǒng)計量特征特征選擇Feature

SelectionPART

TWO特征提取預(yù)處理Pre-‐processingPART

TWO特征提取預(yù)處理Pre-‐processing缺失值填充根據(jù)每個特征的不同性質(zhì)使用不同的值進(jìn)行填充如 借閱數(shù)量這個特征, 其填充為0如學(xué)生1:00-2:00時間段消費總額這個特征,若用戶在原始表中沒有任何消費記錄,則認(rèn)為這是系統(tǒng)丟失用戶信息的情況,填充為-1;如果用戶在其他時間段有消費記錄, 就填充為0標(biāo)準(zhǔn)化???

=

#$%&所有值減去平均值,除以標(biāo)準(zhǔn)差標(biāo)準(zhǔn)化完全不會影響基于樹(Random

Forest,Ada

Boost等)的模型效果和效率,但是會提升SVM、Neural

Network等算法的效率和準(zhǔn)確度PART

TWO特征提取預(yù)處理Pre-‐processing欠采樣從無獲獎用戶中進(jìn)行隨機(jī)采樣,缺點是會丟失數(shù)據(jù)。過采樣

稀有樣本,使各種類數(shù)量達(dá)到一致,缺點是會增加了樣本數(shù)量會增加模型訓(xùn)練的時間,而且只能成倍的增加樣本的權(quán)重設(shè)置樣本權(quán)重(Minimize

'

∑(

???

??????(??+,

?(??+))+5'

+可以增大稀有樣本的權(quán)重,當(dāng)分錯稀有樣本時產(chǎn)生很大的代價,從而平衡分類器的

結(jié)果PART

TWO特征提取分層抽樣劃分交叉驗證集Stratified

Sampling

Cross-‐ValidationPART

TWO特征提取分層抽樣劃分交叉驗證集Stratified

Sampling

Cross-‐Validation訓(xùn)練集(741:465:354)CV2(149:89:71)CV3(149:94:70)CV0(149:94:71)CV1(145:94:71)CV4(149:94:70)要點:分層抽樣可以大大提高CV的穩(wěn)定性嘗試不同的隨機(jī)

進(jìn)行CV劃分,選擇與線上最為一致的CV獲1000:獲1500:獲2000CV1(145:94:91)CV0(155:101:53)CV2(143:89:63)CV3(166:87:86)CV4(132:94:58)不分層劃分后CV內(nèi)獲獎比例不一致分層劃分后CV內(nèi)獲獎比例一致模型構(gòu)建PART

THREEDastle

CompetitionPART

THREE模型構(gòu)建12345678Support

VectorMachine

(SVM)<0.02660Shallow

Neural

Network(NN)<0.02660K

Nearest

Neighbors(KNN)<0.02660算法名線上得分(13前

)Gradient

Boosting

Decision

Tree

(GDBT)0.02889Extreme

Gradient

Boosting(XGB)>0.02830<0.02889Random

Forest

(RF)>0.02830<0.02889Extremely

Randomized

Tree(ET)>0.02889<0.03006AdaBoost

(Ada)0.03006PART

THREE模型構(gòu)建模型參數(shù)調(diào)優(yōu)Parameters

Calibration貪心坐標(biāo)下降法:根據(jù)參數(shù)對模型的影響程度進(jìn)行排序,然后按照重要性對參數(shù)依次進(jìn)行優(yōu)化網(wǎng)格法:將參數(shù)空間分成網(wǎng)格,遍歷所有網(wǎng)格中的點來尋找最優(yōu)參數(shù),比賽中,利用集群的優(yōu)勢使用了較細(xì)粒度的網(wǎng)格進(jìn)行搜索。PART

THREE模型構(gòu)建GBDT

調(diào)參實例GBDT重要的參數(shù)有:sample_weight(每個樣本的權(quán)重,按照權(quán)重計算loss

function)learning_rate(學(xué)習(xí)率)n_estimators(樹的數(shù)量)max_depth(單顆樹高度)max_features(

結(jié)點時考慮的特征數(shù)量)min_samples_leaf(葉子節(jié)點要求的最小樣本數(shù))min_samples_split(一個結(jié)點允許

的最小樣本數(shù))調(diào)節(jié)sample_weight在使用默認(rèn)參數(shù)的情況下調(diào)節(jié)不同類別樣本的權(quán)重,比如將不同類別權(quán)重設(shè)置為1:40:50:90調(diào)節(jié)n_estimators調(diào)節(jié)n_estimators使得模型達(dá)到一個較好的準(zhǔn)確率調(diào)節(jié)max_depth

和min_samples_leaf使用網(wǎng)格法調(diào)整以上兩個參數(shù),實際上min_samples_leaf和min_samples_split起到的作用相同,都是防止過擬合,這兩個的順序可以調(diào)換調(diào)節(jié)min_samples_split調(diào)節(jié)max_features調(diào)節(jié)learning_rate和n_estimators使用網(wǎng)格法調(diào)整以上兩個參數(shù)PART

THREE模型構(gòu)建GBDT

調(diào)參實例PART

THREE模型構(gòu)建0.0264213440.0276564680.0275868460.0281758790.0279412580.0282592690.0280112370.0279181560.0284183390.0274419750.0274765730.0272609330.0276074410.0274641610.0268984830.0267315340.0263535640.026211220.0258987740.0260780230.0260.02650.02550.0250.024550

100

150

200

250

300

350

400

450

500

550

600

650

700

750

800

850

900

950

1000n_estimators(數(shù)的數(shù)量)0.0270.02750.0280.02850.029線下F1值模型融合PART

FOURDastle

CompetitionPART

FOUR模型融合模型融合Ensembling同一種算法使用不同的隨機(jī) 將會拓展出很多不同的base

learner。舉例來說,在GDBT中隨機(jī)

會影響到單顆樹

的樣本以及

結(jié)點時可選擇的特征使用不同的

比例實驗發(fā)現(xiàn)幾種不同的 比例都可以很高的精確度。舉例來說,在GDBT中通過調(diào)節(jié)樣本權(quán)重可比例為以下三種時都可以以獲得不同的

比例,試驗發(fā)現(xiàn)不獲獎:1000:1500:2000的獲得很高的F1值:1、7635:2124:634:5502、7808:2117:677:3593、8239:1929:484:309使用不同的特征子集根據(jù)所有的特征的重要性排序。根據(jù)這個重要性從1開始 ,按照idx

%

5

把所有feature劃分成5份;同時再隨機(jī)產(chǎn)生5份feature

子集。

這10份feature

子集每一份都可以訓(xùn)練一個模型使用不同的隨機(jī)單個算法拓展PART

FOUR模型融合GDBT

比例1

機(jī)

2Leavel0GDBT

比例1

隨機(jī)

1Leavel1VotingClassifier(

GDBT1

)Leavel2GDBT

比例1隨機(jī)

30GDBT

比例1特征子集1GDBT比例1特征子集2GDBT比例1特征子集30VotingClassifier(

GDBT2

)VotingClassifier(

GDBT3)VotingClassifier(

ET

)VotingClassifier(Ada)VotingClassifier(

XGB)VotingClassifier(

RF)VotingClassifier最終結(jié)果多個模型融合PART

FOUR模型融合算法GDBT1GDBT2GDBT3XGBAdaRFET比例20.50.51.51.511通過以上比例的融合,最終的線上得分為0.03143,相比于單個的GDBT模型提升了0.001。這使得

在最后一天以很大的優(yōu)勢登上

的位置。PART

FOUR模型融合最佳融合權(quán)重感想與結(jié)論PART

FIVEDastle

CompetitionPART

FIVE感想與結(jié)論建立有效的線下評測機(jī)制使用隨機(jī)分層抽樣的方法構(gòu)建交叉驗證集,盡可能的保證線下和線上分?jǐn)?shù)同步多層次融合不同隨機(jī)

,不同特征子集,不同比例,不同模型多個層次的融合能夠?qū)⑷诤系男阅馨l(fā)揮到極致。深入理解業(yè)務(wù),完善的特征工程機(jī)制調(diào)參只能小范圍提高分?jǐn)?shù)。要想大幅度的提升算法效果,需要深入分析業(yè)務(wù)領(lǐng)域,不放過任何學(xué)生的行為信息,細(xì)致的進(jìn)行特征工程細(xì)致的數(shù)據(jù)預(yù)處理在構(gòu)建模型之前,進(jìn)行了完整的數(shù)據(jù)預(yù)處理流程:數(shù)據(jù)分析,數(shù)據(jù),數(shù)據(jù)歸一化,缺失值填充。PART

FIVE感想與結(jié)論模型小評本次比賽中,我隊伍嘗試了眾多分類器,總的來說,采用樹結(jié)構(gòu)的分類模型要比非樹形結(jié)構(gòu)的分類器要穩(wěn)定,效果更佳。Ensemble的方法要明顯優(yōu)于單個效果。敏捷開發(fā),迭代編碼先讓你的代碼把整個流程跑起來,再往里面添血加肉,逐步完善。劃分好清晰的模塊,盡可能提高代碼的復(fù)用性、易用性。代碼和數(shù)據(jù)要分離存放??捎胓it等工具提高代碼管理效率。不到最后一刻絕不放棄要相信自己,只要方法正確,不停嘗試,一定會有提高。特別是比賽的最后幾天,其實才是最關(guān)鍵的時刻。要緊牙關(guān)到最后一刻。正確使用隨機(jī)大部分模型的訓(xùn)練都是具有隨機(jī)性的,雖然隨機(jī)性可以提高效果,但是它給調(diào)參和debug帶來了巨大。在調(diào)試階段一定要固定隨機(jī),是的每次隨機(jī)運行的結(jié)果相同。結(jié)果的分類比例至關(guān)重要不在正確的比例下調(diào)參就相當(dāng)于走入了岔路使用不同的參數(shù)和特征會使最佳比例變化最佳比例不止一個,一般來說是正確數(shù)目的兩倍放眼未來,不要計較一城一池的得失如果很長一段時間調(diào)參,融合都沒有很大提升,就要思考換

法,走另一條路,比如再新加一些特征,刪除某些不好的特征,切換另一種數(shù)據(jù)預(yù)處理策略。不要執(zhí)著與目前被超過了多少名,的變化往往是跳躍式的參考文獻(xiàn)Pedregosa,

Fabian,

et

al."Scikit-learn:

Machine

learning

inPython."

Journal

ofMachine

LearningResearch

12.Oct

(20

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論