[論文レビュー] FairBatch: Batch Selection for Model Fairness
FairBatch は、データ前処理や内部モデル訓練を変更せずに、ミニバッチサンプリングを適応的に再重み付けする外部二階最適化を導入し、グループフェアネス(等機会、等化オッズ、人口統計的パリティ)を改善します。事前学習済みモデルのファイネ tuning にも対応します。
Training a fair machine learning model is essential to prevent demographic disparity. Existing techniques for improving model fairness require broad changes in either data preprocessing or model training, rendering themselves difficult-to-adopt for potentially already complex machine learning systems. We address this problem via the lens of bilevel optimization. While keeping the standard training algorithm as an inner optimizer, we incorporate an outer optimizer so as to equip the inner problem with an additional functionality: Adaptively selecting minibatch sizes for the purpose of improving model fairness. Our batch selection algorithm, which we call FairBatch, implements this optimization and supports prominent fairness measures: equal opportunity, equalized odds, and demographic parity. FairBatch comes with a significant implementation benefit -- it does not require any modification to data preprocessing or model training. For instance, a single-line change of PyTorch code for replacing batch selection part of model training suffices to employ FairBatch. Our experiments conducted both on synthetic and benchmark real data demonstrate that FairBatch can provide such functionalities while achieving comparable (or even greater) performances against the state of the arts. Furthermore, FairBatch can readily improve fairness of any pre-trained model simply via fine-tuning. It is also compatible with existing batch selection techniques intended for different purposes, such as faster convergence, thus gracefully achieving multiple purposes.
研究の動機と目的
- データやモデル構造を変更せず、バッチ選択を変更することで、機械学習における公平性の統合を促進・容易にする。
- バッチサンプリングを内側のモデル訓練に影響を与える外部最適化子として扱う、二階最適化フレームワークを開発する。
- 実用的で最小限の侵入性を持つ FairBatch 実装を提供し、一般的なフレームワーク(例:PyTorch)と互換性を持たせる。
- 合成データと実データセットの複数の公平性概念(EO、ED、DP)に対する FairBatch の有効性を示す。
- ファイル Batch は微調整によって事前学習モデルの公平性を改善でき、他のバッチ選択技術と共存できることを示す。
提案手法
- 内側の問題が標準的な SGD 訓練である二階フレームワークにおいて、バッチ選択を外部最適化として定式化する。
- グループ間の格差を最小化する、例えば |L_{y,z}(w_λ) − L_{y,⊥}(w_λ)| やグループ間の最大格差目的など、公平性志向の外部目的を定義する。
- 異なる敏感属性グループ階層のサンプリング確率を制御する、1 次元または多次元の外部変数 λ を導入する。
- λ の更新規則を単純な勾配様式で提供し、1 次元の場合(d=1)に収束が証明可能である。
- 多次元設定(d>1)に拡張する際には、ヘッセ行列計算を避けるための部分勾配近似を用いて外部更新を拡張する。
- 収束を加速するために重み付きサンプリングなどの重要度重み付け方式と組み合わせることで、既存のバッチ選択法との互換性を示す。
実験結果
リサーチクエスチョン
- RQ1適応的なバッチ選択を二階最適化として位置づけることで、標準 SGD 訓練中に共通のグループフェアネス基準(等機会、等化オッズ、人口統計的パリティ)を適用できるか。
- RQ2外部最適化変数(サンプリング確率)をどのように更新して、全体の正確性を犠牲にせずにグループ間の格差を減らせるか。
- RQ3FairBatch は合成データと実データセットの両方で有効で、事前学習モデルや他のバッチ選択技術と共存できるか。
- RQ4提案する1次元外部最適化の理論的保証(準凸性と収束性など)は何か、実務では多次元の場合はどのように機能するか。
- RQ5FairBatch を既存の ML パイプラインへ最小限のコード変更でどれだけ容易に統合できるか。
主な発見
| Dataset | Method | Acc. | EO Disparity | Epochs |
|---|---|---|---|---|
| Synthetic | LR | 0.885 ± 0.000 | 0.115 ± 0.000 | 400 |
| Synthetic | Cutting | 0.858 ± 0.001 | 0.028 ± 0.002 | 800 |
| Synthetic | RW | 0.858 ± 0.000 | 0.020 ± 0.000 | 800 |
| Synthetic | LBC | 0.858 ± 0.001 | 0.022 ± 0.000 | 11200 |
| Synthetic | FC | 0.833 ± 0.001 | 0.007 ± 0.000 | 700 |
| Synthetic | AD | 0.837 ± 0.010 | 0.026 ± 0.007 | 200 |
| Synthetic | AdaFair | 0.868 ± 0.000 | 0.043 ± 0.001 | 16000 |
| Synthetic | FairBatch | 0.855 ± 0.000 | 0.012 ± 0.001 | 300 |
| COMPAS | LR | 0.681 ± 0.002 | 0.239 ± 0.006 | 300 |
| COMPAS | Cutting | 0.674 ± 0.005 | 0.055 ± 0.018 | 600 |
| COMPAS | RW | 0.685 ± 0.000 | 0.137 ± 0.000 | 300 |
| COMPAS | LBC | 0.673 ± 0.002 | 0.031 ± 0.006 | 3900 |
| COMPAS | FC | 0.656 ± 0.006 | 0.059 ± 0.028 | 100 |
| COMPAS | AD | 0.683 ± 0.001 | 0.067 ± 0.029 | 300 |
| COMPAS | AdaFair | 0.664 ± 0.004 | 0.018 ± 0.004 | 9600 |
| COMPAS | FairBatch | 0.681 ± 0.001 | 0.022 ± 0.005 | 100 |
| AdultCensus | LR | 0.845 ± 0.001 | 0.125 ± 0.001 | 300 |
| AdultCensus | Cutting | 0.802 ± 0.002 | 0.054 ± 0.007 | 600 |
| AdultCensus | RW | 0.835 ± 0.001 | 0.134 ± 0.006 | 100 |
| AdultCensus | LBC | 0.841 ± 0.003 | 0.011 ± 0.003 | 6300 |
| AdultCensus | FC | 0.844 ± 0.001 | 0.021 ± 0.004 | 300 |
| AdultCensus | AD | 0.841 ± 0.003 | 0.016 ± 0.005 | 400 |
| AdultCensus | AdaFair | 0.844 ± 0.001 | 0.038 ± 0.004 | 9000 |
| AdultCensus | FairBatch | 0.844 ± 0.001 | 0.011 ± 0.003 | 400 |
- FairBatch は、合成データや実データセットにおいて、最先端の公平性手法と同等またはそれ以上の公平性(EO、ED、DP)を維持しつつ精度を保つ。
- 合成データ、COMPAS、AdultCensus では、FairBatch はベースラインよりも同等以下の収束時間(エポック数の少なさ)で、公平性格差を低減する。
- FairBatch は事前学習済みモデルのファイネ tuning により、公平性を改善でき、UTKFace における ResNet18/GoogLeNet などで精度を犠牲にせずに実現できる例もある。
- PyTorch のバッチサンプラに対する小さな変更(1 行の改変)だけで実用的に実装可能。
- 本手法は損失に基づく重み付けなど他のバッチ選択戦略と組み合わせて、収束を加速しつつ公平性の利点を維持できる。
- AdaFair と比較して、同様の公平性改善を達成できる一方、単一モデルの訓練で済むため、報告された実験では大幅な速度向上(22.5〜96倍速)を実現する。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。