衡量訓練前偏差 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

衡量訓練前偏差

在 ML 模型中測量偏差是減輕偏差的第一步。每種偏差指標都對應到不同的公平概念。即使考慮簡單的公平概念,也會導致適用於各種情況下的許多不同量值。例如,考慮與年齡相關的公平性,為了簡單起見,中年人和其他年齡組是兩個相關的人口統計,稱為構面。在用於貸款的 ML 模型的情況下,我們可能希望小企業放貸款給相等的兩個人口統計數量。或者,在處理求職者時,我們可能希望看到每個受聘人口統計的項目數量相等。但是,這種方法可能會假設兩個年齡組的相等數量適用於這些工作,因此我們可能希望根據適用的數量進行調整。此外,我們可能要考慮的是否同等的數量是否適用,而是我們是否有相同的合格申請人數量。或者,我們可能認為公平性是在兩個年齡人口統計學上,合格申請人的同等接受率,或者同等的拒絕率,或兩者兼而有之。您可以在感興趣的屬性上使用具有不同比例資料的資料集。這種不平衡可能會使您選擇的偏差量值混淆。在分類一個構面時,模型可能會比另一個構面更準確。因此,您需要選擇在概念上適合應用程序和情況的偏差指標。

我們使用下面的符號來討論偏差指標。描述的概念性模型用於二進位分類,其中事件被標記為在其範例空間中只有兩個可能的結果,稱為正(值為 1)和負(值為 0)。該框架通常可以直接擴展到多類別分類,或者在需要時涉及連續性有價值結果的案例。在二進位分類案例中,正值和負值標籤會指派給原始資料集中記錄的結果,以及有利構面 a 和不利構面 d。這些標籤 y 稱為觀察標籤,用來區分它們與機器學習模型在 ML 生命週期的訓練或推論階段期間指派的預測標籤 y'。這些標籤用於定義機率分布 Pa(y) 和 Pd(y) 為其各自的構面結果。

  • 標籤:

    • y 代表訓練資料集中事件結果的 n 個觀察標籤。

    • y' 代表經過訓練的模型在資料集中 n 個觀察標籤的預測標籤。

  • 成果:

    • 樣本的正值結果(值為 1),例如申請接受。

      • n(1) 是正結果(接受)的觀察標籤數目。

      • n'(1) 是正結果(接受)的預測標籤數目。

    • 樣本的負值結果(值為 0),例如申請拒絕。

      • n(0) 是負結果(接受)的觀察標籤數目。

      • n'(0) 是負結果(接受)的預測標籤數目。

  • 構面值:

    • 構面 a – 定義對偏差有利人口統計特徵值。

      • na 是有利構面值的觀察標籤數目:na = na(1) + na(0) 構面 a 值的正值和負值觀察標籤總和。

      • n'a 是有利構面值的預測標籤數目:n'a = n'a(1) + n'a(0) 構面 a 值的正值和負值預測標籤總和。請注意,n'a = na

    • 構面 d — 定義對偏差不利人口統計特徵值。

      • nd 是不利構面值的觀察標籤數目:nd = nd(1) + nd(0) 構面 d 值的正值和負值觀察標籤總和。

      • n'd 是不利構面值的預測標籤數目:n'd = n'd(1) + n'd(0) 構面 a 值的正值和負值預測標籤總和。請注意,n'd = nd

  • 標記構面資料結果的結果機率分布:

    • Pa(y) 是構面 a 的觀察標籤機率分布。對於二進位標記的資料,此分布由標記為總數正結果的構面 a 中的樣本數目比率,Pa(y1) = na(1)/ na,以及總數負結果的樣本數比率,Pa(y0) = na(0)/ na

    • Pd(y) 是構面 d 的觀察標籤機率分布。對於二進位字符的資料,此分布由構面 d 中標有正結果到總數的樣本數,Pd(y1) = nd(1)/ nd,以及負結果與總數的樣本數的比率,Pd(y0) = nd(0)/ nd

根據人口統計散度的偏差資料進行訓練的模型可能會學習甚至加劇它們。為了在花費資源來訓練模型之前找出資料中的偏差,Cleven 提供了資料偏差指標, SageMaker 您可以在訓練之前在原始資料集上計算這些偏差指標。所有的預先訓練指標都與模型無關,因為它不依賴模型輸出,因此對任何模型都有效。第一個偏差指標會檢查構面不平衡,但不會檢查結果。其根據應用程式的需求,決定不同構面中訓練資料量的代表程度。剩餘的偏差指標會以各種方式比較資料中構面 ad 的結果標籤分布。範圍超過負值的指標可以檢測負偏差。下表包含快速指引的備忘單,以及訓練前偏差指標的連結。

訓練前偏差指標
偏差指標 描述 範例問題 解譯指標值
類別不平衡 (CI) 衡量不同構面值之間的項目數量不平衡。

由於沒有足夠的資料供中年人口以外的人口統計,是否會出現基於年齡的偏差?

標準化範圍:[-1, +1]

解譯:

  • 正值表示構面 a 在資料集中具有更多訓練範例。

  • 接近零的值表示資料集中訓練範例數量的構面是平衡的。

  • 負值表示構面 d 在資料集中有更多訓練範例。

標籤比例的差異 衡量不同構面值之間正值結果的不平衡。 由於在資料中偏向字符面值,ML 預測中是否會存在年齡的偏差?

標準化二進位和多範疇構面標籤的範圍:[-1, +1]

連續型標籤的範圍:(-∞, +∞)

解譯:

  • 正值表示構面 a 具有較高的正值結果比例。

  • 接近零的值表示多構面之間正值結果的比例更為相等。

  • 負值表示構面 d 具有較高的正值結果比例。

Kullback-Leibler 散度 (KL) 衡量不同構面的結果分布熵間的發散程度。 不同人口組別的貸款申請結果分布有何不同?

二進位,多範疇,連續型的範圍:[0, +∞)

解譯:

  • 接近零的值表示標籤分布類似。

  • 正值表示標籤分布散度,正值越大散度越大。

Jensen-Shannon 偏差 (JS) 衡量不同構面的結果分布熵間的發散程度。 不同人口組別的貸款申請結果分布有何不同?

二進位,多範疇,連續型的範圍:[0, +∞)

解譯:

  • 接近零的值表示標籤分布類似。

  • 正值表示標籤分布散度,正值越大散度越大。

L p-規範 (LP) 衡量與資料集中不同構面相關聯的結果,其不同人口分布之間的 p-範數差異。 不同人口統計資料的貸款申請結果分配有何不同?

二進位,多範疇,連續型的範圍:[0, +∞)

解譯:

  • 接近零的值表示標籤分布類似。

  • 正值表示標籤分布散度,正值越大散度越大。

總變化距離 (TVD) 衡量與資料集中與不同構面關聯的結果,其不同人口分布之間的 L 1-範數的一半。 不同人口統計資料的貸款申請結果分配有何不同?

二進位,多範疇和連續型結果的範圍:[0, +∞)

  • 接近零的值表示標籤分布類似。

  • 正值表示標籤分布發散,正值越大散度越大。

柯爾莫哥洛夫-斯米爾諾夫 (KS) 衡量資料集中不同構面分布結果之間的最大散度。 哪些大學申請結果顯示出人口統計組最大的散度? 二進位、多範疇和連續型結果的 KS 值範圍:[0, +1]
  • 接近零的值表示標籤在所有結果類別的多構面之間均勻分布。

  • 靠近一的值表示一個類別的標籤都在一個構面,因此非常不平衡。

  • 間歇值指示最大標示不平衡的相對程度。

條件式的人口統計差異 (CDD) 衡量整個不同構面之間結果的散度,也可以透過子組來衡量。 有些組大學錄取結果的拒絕比例是否比他們的接受比例更大?

CDD 的範圍:[-1, +1]

  • 正值表示構面 d 被拒絕超過接受的結果。

  • 接近零表示平均而言沒有人口統計的差距。

  • 負值表示構面 a 被拒絕超過接受的結果。

有關偏差指標的其他資訊,請參閱機器學習在金融的公平性量值