2020“東方國信杯”高校大數據開發大賽最終榜第三名思路分享

2020“東方國信杯”高校大數據開發大賽最終榜第三名思路分享

2020“東方國信杯”高校大數據開發大賽剛剛結束,我所在的隊伍“三人運動團”最後取得了3/453 這個還算不錯的成績。感謝兩位大佬隊友的一路相伴!!下面我將分享一下我們本次比賽的一點思路!

寫在前面:大家好!我是練習時長半年的在讀本科生數據小白JerryX,各位數據挖掘大佬有什麼問題和建議多多指教!!歡迎大家多多點贊,多多評論,多多批評指正!!

0 賽題背景

在這裏插入圖片描述
隨着信息化浪潮的發展,我們即將迎來5G時代的浪潮,而中國也是5G通信時代的引領者
去年十月,三大電信運營商共同宣佈5G商用服務啓動,發佈相應的5G套餐,席捲全球的5G浪潮正式走進中國的千家萬戶。
5G使雲服務進一步往邊緣發展,越來越多的邊緣算力將促進基於邊緣計算的AI應用,更低的網絡延時,
也使得終端和雲對AI計算的分工更爲靈活。無人駕駛、智能家居、工業物聯將快速發展。
對於通信運營商來說,如何基於 一些用戶側的信息進行用戶畫像,
再進一步對於潛在的5G使用者進行精準的推銷也是非常有幫助的

而這個也正是本次東方國信杯的比賽目標。

在這裏插入圖片描述
本次競賽提供已經轉向5G的用戶以及尚未轉向5G用戶的各種數據,要求通過建模識別5G潛在用戶。參賽者通過構建預測模型,預測待測試數據中用戶在下個月是否會轉化爲5G用戶。可以初步將本次比賽建模爲一個結構化列表數據的二分類預測問題。本次比賽的評價指標爲F1-score,爲了優化這個目標評價函數,我們在後續的模型訓練過程中要同時考慮召回率和準確率的權衡,同時我們也要考慮到如何最低化F1score的敏感性的對於預測結果的影響。

在這裏插入圖片描述
通過對於本次比賽數據集的簡單探索性可視化分析,我們可以從左圖中70W條的訓練集數據的標籤分佈得知本次比賽的正負樣本具有非常嚴重的不平衡問題,這是我們後續建模過程中需要考慮的問題。同時我們通過對於部分特徵進行訓練集測試集分佈的可視化,可以發現訓練集和測試集的分佈一致性比較好,這就意味着在本次比賽中數據分佈遷移並不是我們所要面臨的問題。此外,我們通過對於訓練集樣本中的 正負樣本的分佈進行可視化,可以直觀的看到其實正負樣本在某些特徵的分佈上具有這一些顯著的差異,這對於我們模型的準確分類奠定了良好的基礎。

1 特徵工程

在這裏插入圖片描述
我們在本次比賽中主要使用了以下的5類特徵,包括原始的特徵、我們基於人工經驗構造的基於不同年齡和性別分組的組內行爲的統計特徵。一階的統計特徵:包括一些均值、百分位等特徵。以及二階的交叉特徵和一些二階的統計交叉特徵。
在其中,一部分的特徵我們是通過對於數據分佈的觀察分析、並結合實際業務和自己的經驗進行構造;
另一部分的特徵我們採用了Auto-ML的方法進行自動化的特徵交叉構建與自動化的特徵篩選。同時結合了人工構造特徵的經驗性和自動特徵工程的高效便捷的特性。

在這裏插入圖片描述
在自動化特徵構造部分,我們採用的部分特徵的自動化構造方式如左圖所示。 我們首先會將特徵按照他們的屬性:比如按照資費、APP軟件資費使用量等類進行分組,這一點是考慮到一些特徵的大類目間進行運算是不具有實際意義的,那麼這樣的特徵即便在訓練集上對於正負樣本具有很好的區分意義,也會帶來潛在很大的後續模型過擬合的風險。接着我們就會利用一些加減乘除的操作,對於特徵對進行自動的特徵構造,同時利用樹模型對於每一輪構造出的特徵的重要性進行排序,把前topK%的特徵保留下來進一步作爲我們的特徵組。這個自動化構造的方法可以對於此類交叉特徵的構造有着很好的幫助,兼具着普適性和高效性的特點。

在這裏插入圖片描述

這裏所展示的是我們原始數據集上的特徵重要性排名與我們構造完畢的特徵集上的特徵重要性排名,可以發現我們構造的很多新的交叉組合特徵在新的模型中起到了比較重要的作用。

在這裏插入圖片描述
以上選取的是我們基於樹模型進行特徵重要性排序後得到的部分重要特徵在正負樣本上分佈的箱式圖, 可以看出我們基於樹模型特徵重要性排序得到的原始的重要特徵與我們基於特徵工程構造的高階組合特徵的正負樣本分佈都具有一定的差異性,這就表明我們可以基於這些我們構造的特徵爲後續潛在5G用戶的識別從數據特徵方面打下一個良好的基礎。

2 模型策略

在這裏插入圖片描述
本次比賽我們考慮到實際業務對於可解釋性的需求,便採用了一個非常簡潔且高效的建模方法,就是結合Catboost和LightGBM來進行二分類的模型構建。 我們將我們前面特徵工程構建的特徵集餵給以上的兩個模型,來對於測試集上的用戶進行是否會在下個月轉化爲5G用戶這個問題進行二分類。在模型參數上,我們並沒有進行過多的調參,而是採用了5折的思路,儘可能地提高我們模型的魯棒性。

在這裏插入圖片描述
同時我們通過左圖的Precision-Recall的P-R曲線中,可以得知這裏的stable point便是我們所要求的F1-score的最大值所在點。但是實際模型P-R曲線的並不會像左圖這樣光滑,它是會帶有很多的抖動的。那麼我們就需要考慮結合訓練集模型預測結果對於模型預測結果的閾值進行一定的閾值自動搜索,來得到一個好的閾值,以優化我們在測試集上的f1-score這一指標。

在這裏插入圖片描述
結合以上我們的建模思路,我們在實時榜上進行了一定的實驗,我們最終考慮採用Catboost、LightGBM輸出預測結果進行平均融合,並結合以上兩個樹模型進行特徵的篩選和迭代訓練。我們在實時榜上因而取得了0.255的最佳單模的成績,同時在對於多個單模基於Majority Voting的Ensemble策略進行融合,得到了我們最終實時榜上的分數0.25719.

在這裏插入圖片描述
這裏展示的是我們本次比賽的實時榜和最終榜上的得分和排名。我們在實時榜上取得了第五名的成績,同時在最終榜上取得了第三名的好成績。可以看出來我們的模型成績在AB榜單上的表現是非常穩定的。進一步說明了我們整個特徵選取和建模思路的魯棒性。

3 結論&展望

在這裏插入圖片描述
我們最終的比賽解決方案總結如下:
首先,我們的特徵工程充分利用了手工構造特徵和自動化特徵構造的優點。
其次,我們基於樹模型對於特徵重要性的排名,設計了一種魯棒且高效的自動特徵篩選策略,這使得我們後續模型的過擬合風險降到最低。
然後,就是在建模階段,我們基於Catboost和LightGBM進行了二分類模型的構建,同時進行了majority voting ensemble,實現了一種簡單而有效的方法。
最後,我們基於自動化的F1-score的搜索策略,儘可能地降低該指標敏感性對於模型預測結果的影響。

在這裏插入圖片描述
結合這次比賽和通訊技術的發展規律,我來講講對於5G潛在用戶識別這一比賽的一點思考和展望。我們結合過去2G/3G/4G的發展,我們可以推斷在經歷了過去幾年4G技術從興起到主宰了,到現在5G技術的興起,在不久的將來我們的社會也會經歷從5G的興起到5G主宰移動通訊方式的發展階段。因此,我們可以想見的是,我們的潛在的5G用戶的識別建模問題也會隨着時間的演變,面臨着訓練集與測試集分佈不一致的問題,也就是特徵遷移與模型老化的問題。那麼,如何去解決這樣真實世界中開放動態的環境中數據分佈變化的問題,就是我們要進一步思考的問題了,我想這對於實際的5G用戶識別的線上實際部署將是一個非常大的挑戰。

在這裏插入圖片描述
最後,我代表我們的團隊,對於本次比賽的主辦方東方國信公司的老師和圖靈聯邦競賽平臺的工作人員表達誠摯的感謝。感謝老師們過去培訓階段充滿乾貨的課程,也感謝能夠提供這樣一次比賽機會,讓我們深入去思考電信運營商所需要面臨和解決的實際問題,同時更進一步的去思考在我們不久的未來,5G浪潮將給我們的生活方方面面所將帶來的深遠影響!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章