Baidu KDD Cup 2022官方賽題解讀,內附Baseline開原始碼

語言: CN / TW / HK

KDD Cup(國際知識發現和資料探勘競賽)是ACM協會SIGKDD分會主辦的資料探勘研究領域的國際頂級賽事,從1997年開始,每年舉辦一次,有著資料探勘領域「世界盃」之稱,是該領域水平最高、最有影響力的頂級賽事。

KDD Cup 2022由百度與亞馬遜共同主辦,其中百度主辦的賽題為「風電功率預測」 風電屬於可再生且無公害的清潔能源,但同時也具有不穩定、波動性大的特點,而如何使用人工智慧技術來提升電網執行的穩定性,為實現全球“碳達峰”和“碳中和”的雙碳目標貢獻科技力量,是本次賽題的主要目標。自3月16日開放報名以來,Baidu KDD Cup 2022比賽已有近2000名參賽者報名參加,為了助力選手們獲得更好的成績, 百度飛槳(PaddlePaddle)圖學習框架(PGL)團隊工程師為大家解讀賽題,並且開放開源Baseline程式碼。

01

比賽任務介紹

此次賽題是基於空間的風電動態預測挑戰任務。風力發電預測是為了更精準地預估風力,幫助風力發電廠安排不同時間的供應。 由於風力具有不穩定性,導致風電的發電功率變化也很大,這種不穩定性對將風電併入電網系統帶來了巨大挑戰。 為了保障電力生產及消耗的平衡,當風力發電波動時,需要使用其他能源來平抑風電的波動性對電網造成的衝擊。然而,這種替代的電力並不能短時間獲取(例如,通常至少需要6個小時才能啟動一個燃煤電廠),因此風電預測非常重要,同時也極具挑戰性。首先讓我們來了解一下本次賽事的一些關鍵資訊。

一、資料集

基於空間的風電動態預測資料集(SDWPF)包含134個發電機超過半年的歷史資料資訊。當前,較多競賽將WPF視為時間序列預測問題,而忽略發電機的位置和上下文資訊, SDWPF則提供了以下兩個維度的資訊:

1)空間分佈:提供了不同風力發電機在發電場的相對位置,如下圖所示。每颱風力發電機可以單獨產生風力,風電場的輸出功率是所有風力發電機的總和。此項資訊有利於選手進行空間相關性建模。

2)動態環境:包括天氣狀況、發電機內部狀態等多種訊號,方便選手設計多源輸入模型,增加預測增益。如下圖所示:

二、任務

通過歷史輸入資料,對每個發電機的未來48小時的發電功率進行預測。每個資料之間間隔10分鐘,所以選手需預測未來288步的發電功率。

三、評價指標

MAE(平均絕對誤差)和RMSE(均方根誤差)

更多詳情可訪問賽題網站連結:

https://aistudio.baidu.com/aistudio/competition/detail/152/0/introduction

02

賽題解讀及開源Baseline

有大量的研究致力於通過資料探勘技術來解決風能預測問題,相比於傳統的時序預測資料,本屆Baidu KDD Cup 2022提供的風力發電資料額外提供了各個發電機的空間位置資訊,使得選手可以結合時間、空間等多個維度,對未來結果進行預測。而 圖神經網路技術能夠高效建立時間和空間的關係圖,並充分利用兩者之間的關聯關係提升預測效果。為了方便選手實現基於圖神經網路的時空預測模型,飛槳圖學習框架(PGL)提供了一版基於時序分解的時空圖神經網路模型 ,助力選手獲得更好成績,以下是模型的詳情:

一、資料預處理

1)資料劃分:SDWPF資料集中提供了134個發電機對應的245天資料作為訓練集,未來取樣資料作為隱藏測試集。每個資料之間間隔10分鐘。為保證訓練預測的一致性,需要對訓練資料按照時間切分出訓練、驗證、測試集。

2)異常值處理:資料對nan資料進行補0處理,並對資料進行歸一化處理,降低異常值對模型的影響。

3)特徵擴充套件:針對時序預測任務和時間週期強相關的特點,在原始的輸入資料基礎上,增加了小時、星期等特徵,強化模型的時間特徵。

4)資料增強:為提升模型的魯棒性,利用Spatial Shuffle技術對訓練資料進行了擴充套件。

具體可參考:

https://github.com/PaddlePaddle/PGL/blob/main/examples/kddcup2022/wpf_baseline/wpf_dataset.py 

二、時空圖構造

利用發電機的時序相關性構建它們之間的邊關係。通過統計各個發電機的歷史資料,計算不同發電機之間歷史發電功率的相關性,以獲取發電機的相關性。

三、基於時空圖聚合的GNN模型

1)針對每個路口輸入的時序資訊,進行時序分解,獲得歷史的功率趨勢特徵和週期特徵。

2)利用SaptialTemporalGATconv對相關性鄰居進行資訊聚合,從而提升模型效果。

3)利用Transformer Encoder-Decoder對分解後的特徵進行編碼,並進行多步解碼。

通過利用時空GNN模型,在單卡v100上,可以在5~10分鐘內完成一遍模型訓練,極大提升了模型迭代速率。

四、開源Baseline

程式碼地址:

https://github.com/PaddlePaddle/PGL/tree/main/examples/kddcup2022/wpf_baseline

預測結果示例

五、經驗與建議優化

1)本次任務,需對未來2天風力發電情況進行預測。 而風能隨時間變化快,致預測真值方差過大 這加大了模型預測難度。

2)時間、空間構圖問題。該任務提供了各個渦輪發電機的物理空間位置,幫助選手構建節點的邊關係。 實踐上建議參賽選手利用各個節點的歷史資料進行對比計算,構建出更具相關性的邊關係。

3)訓練、驗證集劃分。 時序任務與時間強相關,如何劃分訓練驗證集,讓最新資料儘可能應用至模型訓練中 ,這是選手值得思考的問題。

03

進一步瞭解飛槳PGL

以上官方基線由獲得KDD Cup 2021兩項冠軍的百度飛槳PGL團隊提供。 飛槳PGL(Paddle Graph Learning)是一個基於飛槳(PaddlePaddle)的高效易用圖學習框架,依託于飛槳核心框架以及自研的高效大規模分散式圖引擎,支援十億節點百億邊的超巨圖訓練 原生支援異構圖MetaPath取樣以及Message Passing雙模式,預置多種業界主流圖學習演算法以及自研模型等。同時具備分散式圖儲存以及一些分散式圖學習訓練演算法,例如,分散式deep walk和分散式graphsage。結合飛槳框架,PGL能夠覆蓋大部分的圖網路應用,包括圖表示學習以及圖神經網路。

百度作為AI領域的領頭羊企業,在圖神經網路領域的研究、產業實踐、工業落地方面,積累了豐富的經驗!在實際業務落地應用上,飛槳PGL已經在搜尋、資訊流、金融風控、智慧地圖和商業廣告等場景全面落地。此外,百度飛槳PGL團隊戰績累累,多次重新整理圖神經網路權威榜單OGB榜單SOTA,在2020年COLING協辦比賽取得TextGraph冠軍! 去年KDDCup 2021最大的圖學習比賽OGB-LSC(涵蓋節點分類、連結預測以及圖分類三個經典場景)中,獲的兩冠一亞的成績。

歡迎STAR收藏:

https://github.com/PaddlePaddle/PGL

更多交流可通過[email protected]聯絡我們,感謝支援!

百度自然語言處理(Natural Language Processing,NLP)以『理解語言,擁有智慧,改變世界』為使命,研發自然語言處理核心技術,打造領先的技術平臺和創新產品,服務全球使用者,讓複雜的世界更簡單。