當前位置:
首頁 > 新聞 > 如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

機器之心原創

作者:韓心怡、鍾瑞麒


近日 International Conference on Machine Learning 2018 宣布了獲獎論文。值得注意的是這五篇中(Best paper 和 Runner up),有兩篇與演算法公正性有關,反映了當今機器學習學者群體對其自身的社會影響的日益關注。兩篇論文都用簡練優雅的數學模型描述了常見社會現象和價值觀,理論與實驗兼備,讓人佩服。本文對這兩篇獲獎論文進行了解讀。

第一篇縮略版本:公正反而會傷害弱勢群體么?有一定情況下是的:對弱勢群體降低門檻會致使他們無法完成期預期目標,使他們信用度降低,造成更長久的傷害。我們不僅要考慮演算法本身是否符合人對道德的定義,更要考慮演算法對社會的實際影響。

第二篇縮略版本:如果兩個群體公用一個演算法,傳統演算法只能顧及多數人群體的準確率,導致少數人群體對演算法的結果不滿意,逐漸退出使用演算法;於是多數人群體相對比例增大,演算法更加只能顧及多數人群體準確率。長此以往,少數人群體會逐漸被排擠出用戶群體。

第一篇:「Delayed Impact of Fair Machine Learning」贏得了 ICML 2018 Best Paper Awards。

標題直譯為《公正機器學習的滯後影響》,本推送中簡稱論文。在機器學習的發展進程中,招聘、借貸、廣告推廣等領域的機器學習模型常常被指控其結果存在偏見、傷害了弱勢群體,因此非常多的學者開始探討如何讓機器學習的演算法更加公正對待各個群體。然而這些普遍使用的定義只考慮演算法結果是否符合人所理解的「公正」價值觀,而並未考慮演算法長期帶來的實際影響;一言以蔽之,不僅要考慮道德義務,更要考慮結果。本次 ICML 2018 Best Paper Awards 的「Delayed Impact of Fair Machine Learning」(《公正性機器學習的滯後影響》,本推送中簡稱論文)給這個領域帶來了另一種聲音:讓機器演算法去符合人所定義的「公正」的價值觀真的可以從結果上保護少數群體么?機器學習模型做出一個決策只需要非常短暫的時間,但是決策結果會日復一日、年復一年影響著人們:借貸政策將重新分配這個國家的財富,招聘宣傳政策將掌控這個社會的機遇,學校招生政策將決定這個文明的高度;因此,僅僅考慮機器學習道德性而不考慮其實際後果明顯是不足的。

本文以借貸問題作為實際背景進行了詳盡的分析。直觀來想,一味地追求所謂公正而去降低對弱勢群體貸款申請的門檻確實很可能會導致他們最終無法按時還款,從來致使他們的信用值降低,造成更長久的傷害,惡性循環。那麼,該論文是如何建立起一個更加嚴密的模型從而定性定量地分析這個問題的呢?介於可讀性的考慮,筆者將加入更加形象具體的例子便於讀者的理解。

假設一個社會有 A 和 B 兩種人構成,A 種人為大多數,佔總人口的

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

,B 種人為弱勢群體,佔總人口的

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

。每個人都有一個在 300 到 800 之間的信用值,A 群體和 B 群體的信用值分別呈

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

分布,現在所有人都想和銀行借錢,那麼銀行該如何根據貸款申請者的信用值決定自己的借貸政策呢?

準備工作

(1)所謂貸款政策,無非便是對於每一個貸款申請者做出「借」和「不借」的決定,因此這其實是一個選擇題 (selection policy)。我們可以將申請貸款成功人數佔總人口的比例稱為貸款申請通過率 (selection rate)

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

(2)我們要了解貸款政策對於銀行效益和人們信用值的影響。若貸款者按時還錢,銀行獲益的同時該貸款者的信用值也會上升,而若貸款者逾期不還,則銀行虧損且該貸款者的信用也會下降,因此貸款政策不僅需要對銀行自身負責,也需對人民負責。該論文對銀行的效益和各群體貸款者信用值平均變化值做出了準確的定義,具體見附錄 1。由於魚和熊掌往往不可兼得,銀行效益和貸款者信用值平均變化值往往並非同時達到峰值,因此貸款政策往往要在這二者之間做出取捨和平衡。

(3)我們要掌握借貸政策的通行法則。借貸政策往往是一種門檻政策 (threshold policy),如果申請者的信用大於一定值 c,銀行一定借;如果低於這個值 c,銀行一定不借;等於的時候,銀行有一定概率借。這種門檻政策既簡單省事,還可以被證明是同等貸款申請通過率下所有政策的最優解 (Proposition 5.1 Threshold policies are preferable)。因此銀行只需要選擇一個門檻值 (threshold) 即可。

(4)最後我們需要建立起借貸政策的評估體系,對什麼一個政策的好壞達成共識。在這裡,論文引入了一種結果曲線 (outcome curve),旨在分析貸款申請通過率 (selection rate) 和公民信用變化平均值

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

之間的關係。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

在這裡,如果一個政策對公民信用值正影響力小於利益最大化政策,那我們稱之造成了相對傷害 (relative harm),反之,如果正影響力更大,那它則產生了相對提升 (relative improvement)。除此之外,如果一個政策非常尷尬地對公民平均信用造成了負面影響,那我們則稱其造成了絕對傷害 (active harm)。與此相關的重要貸款通過申請率即為利益最大化政策下的

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

,最為人民服務的

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

,和

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

造成同樣影響的對偶值

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

,和造成絕對傷害的臨界值

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

。另外需要強調的是,論文在定義了左和右分位函數 (left and right quantile functions) 後在 Proposition 5.3 中證明了結果曲線是一個凹函數 (concave function)。

備選政策

硬性政策:

  1. 利益最大化政策 maximum utility policy(MaxUtil):通俗來說就是銀行怎麼掙錢怎麼來
  2. 群體平等政策 demographic parity(DemParity):通俗來說就是 A 群體貸款申請成功率等於 B 群體貸款申請成功率的情況下掙得最多
  3. 機會同等政策 equal opportunity(EqOpt):通俗來說就是 A 群體中能還債的人貸款申請成功率等於 B 群體中能還債的人貸款申請成功率的情況下掙得最多

需要指出的是,以上所有硬性政策是基於銀行掌握著絕對可靠的信用值的情況。若信用值被低估了,則弱勢群體 A 群體的貸款申請通過比例率將會進一步下降 (Proposition 4.1 Underestimation causes underselection)。

重要結論及簡略推導思路

(1)群體平等政策:

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

群體平等政策的目標即為各群體貸款申請成功率相同的情況下追求利益的最大化:

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

我們可以證明上面這個式子其實是關於$eta$的一個凹函數 (theorem 6.1 (Selection rates for DemParity)。

如此一來,在的情況下,存在一定人口比例構成的範圍會使得群體平等政策為弱勢群體帶來正影響力 (Corollary 3.2 a)

(2)機會同等政策:

機會同等政策的目標即為各群體有償還能力者貸款申請成功率相同的情況下追求利益的最大化:

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

然後我們可以證明出有能力償還者貸款成功比例和貸款成功比例是一個雙映射關係 (Lemma 6.1),從而進一步簡化目標方程,這樣我們可以證明這個目標方程其實是關於 t 的一個凹函數 (Theorem 6.2 Selection rates for EqOpt)。如此一來,在

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

的情況下,存在一定人口比例構成的範圍使得機會同等政策可為弱勢群體帶來福祉 (Corollary 3.2 b)。

然而需要警惕的是,機會同等政策操之過急過於激進會帶來相對傷害 (Corollary 3.4)。

總之,群體平等政策和機會同等政策沒有普適法則,但是我們可以找到機會同等政策總是優於群體平等政策的充分條件 (Corollary 3.5 EqOpt may avoid active harm where DemParity fails 和 Corollary 3.6 DemParity never loans less than MaxUtil, but EqOpt might)。

實例模擬

論文為了驗證模型的正確性,使用 2003 年美國 FICO 信用值為數據,模擬出了在貸款者還貸成功給銀行帶來收益和貸款者還貸給銀行帶來損失比例為 1/-4 和 1/-10 的情況下對非拉美裔白人和黑人貸款申請者的決策結果。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

當銀行獲利/損失比為 1/-10 時,沒有決策會造成絕對傷害 (active harm)。然而,當銀行獲利/損失比為 1/-4 時,DemParity 非常遺憾地對人民的平均信用造成了負面影響。更進一步的是,該論文分析了決策對於黑人和非拉美裔白人分別造成的影響。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

橫軸為貸款申請成功率,數軸分別為信用值平均變化量和銀行收益情況。

從圖的結果來看,我們可以發現三種政策對黑人和非拉美裔白人的影響是不一樣的。最令人失望的是,DP 對黑人群體甚至造成了負面傷害。結果上的不一致很大程度上歸結於不同種族間信用值改變情況和帶來效益的不同。需要指出的是,該模型模擬出來的結果與 FICO TransUnion TransRisk 的歷史數據結果基本吻合。

綜上所述,該論文帶給了機器學習演算法公正性 (fairness in Machine Learning) 這個領域非常不一樣的聲音;它並沒有全盤否認政治正確的意義,但敲響了警鐘,告示研究者們一味追求表面的公平和正義反而會適得其反,給弱勢群體帶來更大的傷害。

附錄 1:

論文對銀行效益的定義(原文公式 1):

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

對各群體貸款者信用值平均變化值的定義(原文公式 2):

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

第二篇:「Fairness Without Demographics in Repeated Loss Minimization」(本推送中簡稱論文)贏得了 ICML 2018 Best Paper Runner Up Awards。

論文標題的大概意思是:在不知道用戶所屬群體、隨時間推移用戶分布不斷變化、演算法不斷更新的情況下,保證演算法長期公正性。這裡用戶所屬群體範圍很寬泛,可以包括民族、口音、居住地等。論文研究了以下這樣一個有趣但嚴峻的情景:假如一個演算法對 A 用戶群體來說很好用,但對 B 用戶群體來說很糟糕,那麼 B 群體的用戶就會因為其糟糕的用戶體驗逐漸不使用這個演算法器。如果演算法只是保證總體利益最大化(期望損失最小化, Empirical Risk Minimization),那麼它會更加優先保證對 A 群體的效益,因為 A 群體是多數人;結果是,B 群體會更加不想使用這個演算法,導致更少的 B 用戶;在這樣的循環下,B 群體會逐漸被演算法所排斥。舉個生活化的例子,有一個語音識別系統為農村和城市人口所共用;如果城市人口更多,而該系統只考慮最大化整體的準確率而「精力有限」的話,它會優先考慮城市人口的利益,多「學習」城市口音;結果導致系統無法準確識別鄉村口音。農村用戶發現這系統不好用。農村用戶流失,城市用戶會更加成為主體,使得演算法更加只考慮城市用戶的利益。

論文在 Section 3.1(圖一)舉出了以下的例子:

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

以圖為例,分類器要為左右兩個群體區分紅點和黑點。最優的公正的線性分類邊界是 x_2 = 0,即正中間的水平線。它最大化了兩個群體的最差準確率。然而,如果集中在右邊的用戶逐漸流失,而演算法只考慮最優化整體利益,分類器就會逐漸朝圖中 t=500 的直線傾斜,即成為只能為左邊用戶群體所使用的分類器;結果就是這樣的線性分類器對於右邊的用戶完全失去了作用。

這篇論文對這樣的情境作了研究,以下是對每個 section 的簡要概括。Section 2 用動態系統對於這樣的情境進行了數學建模;主要建模成分包括:(1)在給定時間點的用戶群體分布(2)模型隨著時間的變化(3)用戶數量隨著時間和模型表現的變化。值得注意的是,這個模型中演算法並不知道用戶的所屬潛在群體(即為標題中的「Without Demographics」)。

Section 3 指出,在相當多的情況下,即使演算法一開始是公平的,因為一些輕微的隨機擾動,演算法會逐漸朝不公正的方向不可挽回地偏離;換言之,公平的演算法在動態系統中是不穩定的不動點。

Section 4 提出了使用 DRO(Distributionally Robust Optimization)來解決該問題:(1)定義了需要最小化的目標函數(2)用 dual 更直觀地理解目標函數,即保證有更少的 Loss 比較大的數據點(3)優化該函數的方法(4)該優化方式可以產生在動態系統中穩定的公正的演算法。在這個 Section 里各個關於目標函數的定理的上下界都直接或間接與各個用戶群體數量有聯繫;因此,在不知道用戶的真實所屬群體的情況下(Without Demographics),這個演算法用「保證不會有太大的單個損失較大的數據點」的方式來保證「不會有一個整個用戶群體被嚴重排斥」。

Section 5 通過兩個實驗來證明 DRO 相對於 ERM 的有效性:第一個實驗是對圖一描述的情境的模擬;第二個實驗是在 Amazon Mechanical Turk 上進行的,任務是讓黑人和白人兩個擁有不同語言習慣的用戶群體使用分別用 ERM 和 DRO 訓練出來的自動填充輸入法,根據 Section 2 中的動態系統進行模擬,比較在整個時間段內用戶的滿意程度。

在這裡筆者為大家梳理一下論文中的關鍵定義、定理:

Section 2 公式一給出了了論文想要最小化的目標,即最小化期望損失最大的用戶群體;R 為損失函數,k 為用戶群體編號,P 是詢問的概率分布,Z 是代表詢問的隨機變數,theta 是模型參數。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

Section 2 定義一建模了論文要研究的動態系統,包括(a)在給定時間點的用戶群體分布(b)模型隨著時間的變化。lambda_k 是第 k 組用戶數量的期望值,alpha 是用戶比例,v 是一個遞減函數,決定了一個用戶群體在經歷了一定量的損失之後有多少比例的人會繼續留在系統內。b 是每次在新的時間點產生的新用戶。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

Section 3 定義二定義了用戶數量隨著時間和模型表現的變化;

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

Section 3 Proposition 1 和 Corollary 1 證明了即使在一些很廣泛的情況下,演算法在這個動態系統中會逐漸變得不公正。粗略地來講,H 包含了每對用戶群體損失之間互相影響的關係。根據 Corollary1, 只要左手邊的矩陣所有特徵值中最大的模大於右邊,公正的演算法在這個動態系統中就是不穩定的。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

Section 4.1 公式(4)定義了 DRO 目標函數,Proposition 2 證明了 DRO 目標函數是每個用戶群體損失的上限. 其中 r_max 是由最小用戶群體的比例決定的。這也是之後用 DRO 目標函數來分析用戶比例的核心連接點。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

Section 4.2 公式(5)用 dual 說明了 DRO 目標函數一個關鍵效果是減少損失太高的數據點。我們可以看到,DRO loss 相當於 F(theta, eta)的下屆,而小於 eta 的損失的部分都不被考慮。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

Section 4.3 講述了優化這個目標函數的方法。

Section 4.4 證明了用 DRO 訓練出來的模型不會導致一個用戶群體被逐漸排除在外的情況。只要能滿足公式(7)的條件,即只要 DRO 損失不會「太高」,就可以保證在動態系統更新到下一個時間點時,新的每個用戶群體人數都不會「太少」。因此,即使隨著時間推移也不會出現一組用戶被排擠在外的情況。

如何保證演算法公正性?ICML 2018兩篇獲獎論文解讀

註:該篇論文對於「公正」的定義是羅爾斯(John Rawls)體系下的,也就是最大化待遇最差的群體(保證體驗最差的用戶群體不會太差);與之相對的,傳統的最小化期望損失(Empirical Minimization Risk)是邊沁式(Jeremy Bentham)的,即最大化總體社會利益。這篇論文對於是否羅爾斯體系是否正確不做討論。從用詞上來說,羅爾斯體系認為正義即公平,所以本推送對「公平」、「公正」不作區分;歡迎指正。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

一文帶你了解Python集合與基本的集合運算
使用三重損失網路學習位置嵌入:讓位置數據也能進行算術運算

TAG:機器之心 |