關(guan) 於(yu) 多元時間序列中的公平性問題
論文標題:Learning Informative Representation for Fairness-aware Multivariate Time-series Forecasting: A Group-based Perspective
下載地址:https://arxiv.org/pdf/2301.11535.pdf
1多元時間序列的公平性
公平性問題,在機器學習(xi) 領域中是一個(ge) 宏觀的概念。機器學習(xi) 中公平性的一種理解是,一個(ge) 模型對於(yu) 不同的樣本的擬合效果的一致程度。如果一個(ge) 模型在某些樣本上效果很好,另一些樣本上效果不好,那麽(me) 這個(ge) 模型的公平性就比較差。例如,一個(ge) 常見的場景是推薦係統中,模型對於(yu) 頭部樣本的預測效果優(you) 於(yu) 尾部樣本,這就體(ti) 現了模型對於(yu) 不同樣本的預測效果存在不公平性。
回到多元時間序列預測問題中,公平性指的是模型是否對各個(ge) 變量的預測效果都比較好。如果模型對於(yu) 不同變量的預測效果差異很大,那麽(me) 這個(ge) 多元時間序列預測模型是不公平的。例如下圖中的例子,第一行表格是各種模型在各個(ge) 變量上預測效果MAE的方差,可以看到不同模型多存在一定程度的不公平性。下圖的序列是一個(ge) 例子,一些序列的預測效果比較好,而另一些序列的預測效果較差。
2不公平現象的成因和解法
為(wei) 什麽(me) 會(hui) 造成不公平性呢?無論是在多元時間序列中,還是在其他機器學習(xi) 領域,造成不同樣本預測效果差異較大的一大原因是,不同樣本的特點不同,模型在訓練過程中可能被某些樣本的特點主導,導致模型對主導訓練的樣本預測效果好,而對於(yu) 非主導樣本的預測效果差。
在多元時間序列中,不同的變量,其序列pattern可能存在很大的差異。例如上麵圖的例子,大部分序列都是平穩的,主導了模型的訓練過程。而少數序列呈現出了和其他序列不同的波動性,導致模型在這部分序列上預測效果較差。
如何解決(jue) 多元時間序列中的不公平現象呢?一種思路是,既然造成不公平現象的原因是不同序列的特點不同,如果能將各個(ge) 序列之間的共性,以及各個(ge) 序列之間的差異性分解開,獨立進行建模,就能緩解上述問題。
這篇文章就建立在這個(ge) 思路之上,整體(ti) 架構是利用聚類的方法將多變量序列分組,並得到每組的共性特征;進一步使用對抗學習(xi) 的方法,從(cong) 原始表示中剝離掉各個(ge) 組特有的信息,得到公共的信息。通過上述過程,實現來了公共信息和序列特有信息的剝離,再基於(yu) 這兩(liang) 個(ge) 部分信息進行最終預測。
3實現細節
整體(ti) 的模型結構主要包括4個(ge) 模塊:多變量序列關(guan) 係學習(xi) 、時空關(guan) 係網絡、序列聚類、分解學習(xi) 。
多變量序列關係學習
多元時間序列的一個(ge) 重點是學習(xi) 各個(ge) 序列之間的關(guan) 係。本文采用的是Spatial-Temporal的方法學習(xi) 這個(ge) 關(guan) 係。由於(yu) 多元時間序列不像很多時空預測任務,各個(ge) 變量之間的關(guan) 係可以預先定義(yi) 好,因此這裏使用了鄰接矩陣的自動學習(xi) 方法。具體(ti) 的計算邏輯為(wei) ,為(wei) 每個(ge) 變量生成一個(ge) 隨機初始化的embedding,然後使用embedding的內(nei) 積,以及一些後處理,計算兩(liang) 兩(liang) 變量之間的關(guan) 係,作為(wei) 鄰接矩陣對應位置上的元素,公式如下:
這種自動學習(xi) 鄰接矩陣的方法,在時空預測中很常用,在Connecting the Dots: Multivariate Time Series Forecasting with Graph Neural Networks(KDD 2020)、REST: Reciprocal Framework for Spatiotemporal-coupled Prediction(WWW 2021)等文章中,都采用了這種方式。我在星球文章KDD2020經典時空預測模型MTGNN代碼解析中詳細介紹過相關(guan) 模型的原理實現,感興(xing) 趣的同學可以進一步閱讀。
時空關係網絡
有了鄰接矩陣後,文中采用了圖時序預測模型,對多變量時間序列進行時空編碼,得到每個(ge) 變量序列的表示。具體(ti) 的模型結構很類似於(yu) DCRNN,在GRU基礎上,每個(ge) 單元的計算引入了GCN模塊。可以理解為(wei) ,在正常GRU的每個(ge) 單元的計算過程中,引入了鄰居節點的向量做一次GCN,得到更新後的表示。關(guan) 於(yu) DCRNN的實現代碼原理,可以參考DCRNN模型源碼解析這篇文章。
序列聚類
在得到每個(ge) 變量時間序列的表示後,下一步是將這些表示聚類,以此得到各個(ge) 變量序列的分組,進而提取每組變量特有的信息。文中引入下麵的損失函數來指導聚類過程,其中H表示每個(ge) 變量序列的表示,F表示每個(ge) 變量的序列跟K個(ge) 類別的從(cong) 屬關(guan) 係。
這個(ge) 損失函數的更新過程需要采用EM算法,即固定序列表示H,優(you) 化F,以及固定F,優(you) 化H。文中采用的方法是,訓練幾輪模型得到表示H後,使用SVD更新一次矩陣F。
分解學習
分解學習(xi) 模塊的核心是將各個(ge) 類別變量的公共表示和私有表示區分開,公共表示指的是各個(ge) 類簇變量的序列共有的特點,私有表示指的是每個(ge) 類簇內(nei) 變量序列獨有的特點。為(wei) 了實現這個(ge) 目的,文中采用了分解學習(xi) 和對抗學習(xi) 的思路,將各個(ge) 類簇的表示,從(cong) 原始的序列表示中剝離開。類簇表示代表每個(ge) 類的特性,剝離後的表示代表所有序列的共性,利用這個(ge) 共性的表示進行預測,可以實現對各個(ge) 變量預測的公平性。
文中利用對抗學習(xi) 的思路,直接計算公共表示和私有表示(也就是聚類得到的每個(ge) 類簇的表示)的L2距離,以此作為(wei) loss反向優(you) 化,讓公共部分表示和私有表示的差距盡可能拉大。此外,還會(hui) 增加一個(ge) 正交約束,讓公共表示和私有表示的內(nei) 積接近0。
4實驗結果
文中的實驗主要從(cong) 公平性和預測效果兩(liang) 個(ge) 方麵進行了對比,對比的模型包括基礎時序預測模型(LSTNet、Informer)、圖時序預測模型等。在公平性上,采用的是不同變量預測結果的方差,通過對比,本文的方法公平性相比其他模型要有比較明顯的提升(如下表)。
在預測效果上,本文提出的模型也基本能夠取得和SOTA相當的效果:
5總結
如何保證模型的公平性,是機器學習(xi) 很多場景都麵臨(lin) 的問題。本文將這一維度的問題引入到了多元時間序列預測中,並利用時空預測、對抗學習(xi) 的方法進行了比較好的解決(jue) 。
評論已經被關(guan) 閉。