因果推斷-解決推薦系統公平性的新思路


論文引入

近年來推薦系統公平性成為新的熱點,在所有解決公平性問題的方法中,因果推斷顯得格外靚眼。我們以論文《Recommendations as treatments: Debiasing learning and evaluation》[1]做為引入,來看看因果推斷是怎么應用在推薦系統公平性研究中的。
改論文的思想如下:從因果推斷的角度看待推薦問題,我們可以認為在推薦系統中給用戶曝光某個商品類似於在醫學中給病人施加某種治 療方式。這兩個任務的共同點是,只知道少數病人(用戶)對少數治療方式(物品) 的反應,而大多數的病人-治療(用戶-物品)對的結果是觀察不到的。下圖是電影愛好者的評分情況。
電影愛好者的評分情況示意圖
第一行依次為:真實的評分矩陣\(Y\)、傾向矩陣\(P\)、觀察示性矩陣\(O\);第二行依次為:兩個評分預測矩陣\(Y_1\)\(Y_2\),介入示性矩陣\(Y_3\)
可以看到,我們只能統計到少數用戶給商品的評分。對於沒有被曝光的商品,我們將無法獲得其評分數據。
接下來我們定量地分析。用戶-物品可以全部觀測時的方法如下式所示,即理想狀況下的評測標准指標。\(\delta_{u,i}(Y, \hat{Y})\)可以取平方誤差、0-1誤差等。
全部觀測時評價指標計算式
用戶-物品對可以部分觀測時評測的方法如下式所示。
部分觀測時評價指標計算式
我們設\(\hat{R}_{naive}(\hat{Y})\)關於示性矩陣\(O\)的期望為\(E_O[\hat{R}_{naive}(\hat{Y})]\)。可以看到\(E_O[\hat{R}_{naive}(\hat{Y})]!=R(\hat{Y})\),說明\(E_O[\hat{R}_{naive}(\hat{Y})]\)只是\(R(\hat{Y})\)的有偏估計。為了達到無偏估計,論文采用逆傾向分數對數據進行加權,此時可構建一個對理想評價指標的無偏估計器IPS Estimator,最終得到的評測標准指標\(\hat{R}_{IPS}(\hat{Y}|P)\)表示如下:
部分觀測時評價指標計算式
根據該論文所述,預測傾向分數可采用多種方法,如朴素貝葉斯、邏輯回歸等。論文提出了一個基於傾向分數的矩陣分解模型(MF-IPS)用於推薦任務。分別在半合成的數據集和真實數據集上證明了IPSEstimator是對理想評測指標的無偏估計和MF-IPS模型效果優於傳統的矩陣分解算法,達到了去除選擇偏差的目的。

偏差和不公平————基於ML的推薦算法與生俱來的“原罪”

偏差和不公平可以說是基於ML的推薦算法與生俱來的“原罪”,他本質上就暗藏在數據中(沒錯,數據是會騙人的),隨着機器學習算法的執行而加劇。
目前在公平性領域,人們提出了包括但不限於下面的五種不公平和偏差的來源。
人口平等 解決方案: ①使用對抗學習去除用戶embeddings向量中的敏感信息;或者更近一步,通過正交性正則化。②使有偏差用戶向量盡量正交於無偏差用戶向量,從而使兩者區分開來。
位置偏差 解決方案: 將其轉換為一個以排序質量做為約束條件的整數線性規划(ILP)問題求解。
選擇偏差 解決方案: 可以采用因果推斷的角度,利用逆傾向分數 (IPS) 對觀察數據進行加權,構建一個對理想評測指標的無偏估計器 (傾向分數可以看作是每個數據被觀察到的概率)
曝光偏差 解決方案:同樣可以采用因果推斷的角度,給用戶曝光商品可以看做給病人施加葯物,只知道少數病人 (用戶) 對少數治療方式 (物品) 的反應。我們同樣可以基於傾向分數方法,構建無偏估計器。
流行度偏差 解決方案:可以采用基於正則化的內處理 (In-processing) 方法,采用用戶-物品對的預測分數和物品對應的流行度之間的皮爾遜相關系數作為正則項,通過最小化正則項和推薦誤差來消除偏差。也可以采取因果推斷的角度,分析得出物品流行度是曝光物品和交互之間的一個混淆因子,因此要消除流行度對物品曝光度的影響,但是須保留流行度對交互 (捕獲用戶的從眾心理) 的影響,即利用流行度差。
總體而言,我們可以發現目前提出的結局公平性問題的方法非常多樣化,反事實、因果推斷、混淆因子等概念正在強勢崛起。

偏差和不公平所產生的根本原因

前面我們說偏差和不公平本質上就暗藏在數據中,是因為在推薦系統中,由於用戶行為數據是觀察所得 (Observational) 而不是實驗所得 (Experimental),因此會存在各種偏差,如用戶對物品的選擇偏差、系統對物品的曝光偏差等,直接拿模型擬合數據而忽視偏差會導致性能欠佳,在一定程度上也損害了用戶對推薦系統的體驗和信任,因此,去除推薦系統偏差已經成為推薦系統領域研究的一個新方向。
而單純基於ML的方法能徹底解決不公平問題嗎?這是一個我們不得不討論的問題。目前學術界采用的去除偏差的方法中,大多數還是在原有機器學習算法上進行一定修改,通過修改目標函數、添加優化算法約束、添加正則項等手段來達到去除偏差的目的。然而我們知道這些偏差本身就是ML算法所導致的,這樣很難從本質上解決問題。

辛普森悖論

關於數據本身的偏差,有一個經典的辛普森悖論。這種現象可以體現為:在年輕和老年的病人群體中,葯物B相比葯物A都有着更高的痊愈率;但是當我們把這兩個群體結合起來會發現,葯物A的痊愈率會更高。如下圖所示:
電影愛好者的評分情況示意圖
后面我們從因果推斷的角度(Confounder)可以發現,悖論其實是由混淆因子導致的:當將所有群體一起比較時,大多數服用葯物A的人非常年輕,所以表格展示的比較不能排除年齡(age)這一混淆因子對痊愈率的影響。如下圖所示:
電影愛好者的評分情況示意圖

因果推理——通向智能的階梯

圖靈獎得主Judea Pearl曾在NIPS 2017上做過一個匯報,匯報的主題是《Theoretical impediments to machine learning with seven sparks from the causal revolution》,着重介紹了因果推理對於實現強人工智能的重要性。以下是匯報中闡述機器學習能力邊界的一頁PPT:
nips2017
不過那個時候大家正忙着煉丹,這個報告也未能得到重視。不過現在隨着因果推斷在機器學習的各大領域得到了應用(包括了因果表征學習和這里在推薦系統公平性領域的應用),人們逐漸認識到了Pearl當初提出的幾點看法的重要性。
Pearl的PPT中還有一頁創新性地提出的智能的三個階段,其中第一階段是“關聯”,也就是傳統統計學中的相關性,具體體現為“如果觀察到....,那么....”;第二階段是“介入”,具體體現為“我做了....(進行干預),那么....”;第三階段為“反事實”,具體體現為“假如我做了..., 那么...”。這三個階段如下圖所示:
智能的階梯
中基於機器學習方法的人工智能和普通動物在第一階段,原始人類(認知革命前的)和嬰兒在第二階段,現代人類在第三階段。可以看出,因果推理是通向智能的階梯,而擁有“反事實”這一概念是人類進行認知革命的標志。
Pearl在這里引述了赫拉利在《人類簡史》中關於“獅人”雕塑的論述,這個雕塑表現的是一個在客觀世界不存在的事物,Pearl認為這個雕塑是人類最開始利用“反事實”進行推斷的表現。
獅人雕塑

因果推斷入門

下面簡要介紹一下因果推斷的重要概念。

(1) 三個步驟

一般而言,因果推斷包括以下三個重要的步驟:預測(prediction),介入(intervention)和反事實(counterfactuals)。我們以下面這個因果圖為例:
因果圖
其中\(P\)表示價格(Price),\(Q\)表示需求(Demand),\(I\)表示收入(Income),\(W\)表示工資(Wages)。其中我們定義以下符號:

  • 已知價格為\(P=p_0\)的情況下,需求\(Q\)的期望值:\(E[Q|P=p_0]\)
  • 當價格被設定為\(P=p_0\)時,需求\(Q\)的期望值:\(E[Q|do(P=p_0)]\)
  • 給定現階段的價格\(P=p_0\),如果我們將價格設定為\(P=p_1\),需求\(Q\)的期望值:\(E[Q_P=p_1|P=p_0]\)

(2) 結構化因果模型(SCM)和因果關系之間的轉換

上面我們提到的因果圖為結構化因果模型(SCM)。SCM和因果關系之間可以相互轉換[3]。例如,下面(a)圖對應的因果關系為\(z=f_Z(u_Z), x=f_X(z,u_X), y=f_Y(x,u_Y)\),(b)圖對應的因果關系為\(z=f_Z(u_Z), x=x_0, y=f_Y(x,u_Y)\)。這里\(U_Z,U_X,U_Y\)相互獨立。

因果圖和因果關系的相互轉換

(3) 后門准則(back-door criterion)

我們已經知道了怎樣用因果圖來對因果關系進行建模,但最終我們仍然要落實到計算上。而計算的前提是我們需要將因果關系的概率表達式中的\(do\)算子消去。Pearl提出了后門准則(back-door criterion)[4],對於滿足一定條件的因果圖,可以將帶\(do\)算子的概率表達式表示為不帶\(do\)算子的概率表達式。接下來我們簡要介紹一下后門准則。
在SCM中,如果一條無向連接X和Y的路徑有一條指向X的箭頭,我們把這條路徑稱為從X到Y的后門路徑。如果后門路徑存在,實際結果中可能出現虛假的統計相關性。
當一個變量集合S符合以下兩個條件時,我們稱S符合后門准則:

  • S中不包括 X的后代。
  • S能d分割所有從 X到Y的后門路徑。
    在下圖中,\(\{Z_1,Z_2,Z_3\}\),\(\{Z_1,Z_3\}\)等集合都滿足后門准則,但\(\{Z_3\}\)不滿足后門准則。
后門准則示意圖

后門推導告訴我們,如果\(S\)滿足從\(X\)\(Y\)的后門准則,那么我們可以將\(do\)算子消去,得到概率表達的公式:

\[\begin{matrix} P(Y=y|do(X=x), S=s)=P(Y=y|X=x, S=s)\\ P(Y=y|do(X=x))=∑_sP(Y=y|X=x, S=s)P(S=s)= ∑_s \frac{P(Y=y, X=x, S=s)}{P(X=x, S=s)} \end{matrix} \]

去除混淆因子舉例

因果推斷還有一種典型應用是去除混淆因子。在論文《Causal Intervention for Leveraging Popularity Bias in
Recommendation》 [5] 中就應用了這種思想。該論文從因果推斷的角度出發,分析得出物品流行度是曝光物品和交互 之間的一個混淆因子 (Confounder),因此要消除流行度對物品曝光度的影響,但 是須保留流行度對交互 (捕獲用戶的從眾心理) 的影響,即利用流行度偏差。具體流程如下圖所示:
因果推斷去除混淆因子
(其中\(I\)表示用戶,\(U\)表示曝光物品,\(C\)表示交互概率,\(Z\)表示物品流行度。我們將\(Z\)定義為\(I\)\(C\)之間的混淆因子,並在訓練階段消除混淆因子影響,采用\(P(C|do(U,I))\)作為興趣匹配)

研究計划

目前我初步確定了因果推斷作為未來的研究方向,我擬定的研究計划如下:

  1. 了解概率圖模型知識 這方面可閱讀 Koller D和Friedman N寫的《Probabilistic graphical models: principles and techniques》[6]
  2. 系統學習因果推斷知識 這方面可閱讀 Pearl J.寫的《Causality》[4]
  3. 閱讀在推薦系統公平性中+因果推斷的論文 這方面可關注頂會論文。ICML、SIGIR、WSDM、WWW等頂會近年來都有大量將因果推斷與推薦系統的偏差/公平性相結合的論文。
  4. 論文復現與實驗 在論文復現過程中,可充分利用因果推斷相關的開源庫,比如dowhy[7]、causal ML[8]、EconML [9] 等。

開源庫介紹

下面簡要介紹一下因果推斷的開源庫及其特色。

(1) Dowhy

語言: Python
支持方法: 傾向回歸分層&匹配、逆傾向加權、回歸方法
dowhy

(2) Causal ML

語言: Python
支持方法: 基於樹的方法、元學習方法
causal ml

(3) EconML

語言: Python
支持方法: 雙重穩健估計器、正交隨機森林、元學習方法、深度工具變量
econml

(3) CausalToolbox

語言: R
支持方法: 貝葉斯可加回歸樹、因果森林、基於樹的元學習器
causaltoolbox

參考文獻

  • [1] Schnabel T, Swaminathan A, Singh A, et al. Recommendations as treatments: Debiasing learning and
    evaluation[C]//international conference on machine learning. PMLR, 2016: 1670-1679.
  • [2] Pearl J. Theoretical impediments to machine learning with seven sparks from the causal revolution[J].
    arXiv preprint arXiv:1801.04016, 2018.
  • [3] Spirtes P. Introduction to causal inference[J]. Journal of Machine Learning Research, 2010, 11(5).
  • [4] Pearl J. Causality[M]. Cambridge university press, 2009.
  • [5] Zhang Y, Feng F, He X, et al. Causal Intervention for Leveraging Popularity Bias in
    Recommendation[J]. arXiv preprint arXiv:2105.06067, 2021.
  • [6] Koller D, Friedman N. Probabilistic graphical models: principles and techniques[M]. MIT press, 2009.
  • [7] https://microsoft.github.io/dowhy/
  • [8] https://causalml.readthedocs.io/en/latest/about.html
  • [9] https://econml.azurewebsites.net/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM