obiektywność: łagodzenie uprzedzeń

Gdy źródło uprzedzenia zostanie zidentyfikowane w danych używanych do trenowania, możemy podjąć działania zapobiegające jego skutkom. Inżynierowie zajmujący się systemami uczącymi się zwykle stosują 2 główne strategie, aby wyeliminować stronniczość:

  • wzbogacanie danych treningowych.
  • Dostosowywanie funkcji utraty w modelu.

Ulepszanie danych treningowych

Jeśli podczas kontroli danych treningowych wykryto problemy z brakującymi, nieprawidłowymi lub zniekształconymi danymi, najprostszym sposobem na rozwiązanie tego problemu jest często zebranie dodatkowych danych.

Wzbogacanie danych treningowych może być idealnym rozwiązaniem, ale ma też swoje wady, np. brak dostępnych danych lub ograniczenia zasobów utrudniające zbieranie danych. Na przykład zbieranie większej ilości danych może być zbyt kosztowne lub czasochłonne albo nieopłacalne ze względu na ograniczenia prawne lub dotyczące prywatności.

Dostosowywanie funkcji optymalizacji modelu

W przypadku, gdy nie można zebrać dodatkowych danych do treningu, innym sposobem na ograniczenie stronniczości jest dostosowanie sposobu obliczania strat podczas treningu modelu. Zwykle używamy funkcji optymalizacji, takiej jak log loss, aby karać za nieprawidłowe prognozy modelu. Utrata danych nie uwzględnia jednak członkostwa w podgrupie. Zamiast utraty logarytmicznej możemy więc wybrać funkcję optymalizacji, która penalizuje błędy w sposób uwzględniający sprawiedliwość i wyrównujący nierównowagi wykryte w danych treningowych.

Biblioteka TensorFlow Model Remediation udostępnia narzędzia do stosowania podczas trenowania modelu 2 różnych technik minimalizowania występowania uprzedzeń:

  • MinDiff: Celem MinDiff jest zrównoważenie błędów w 2 różnych wycinkach danych (uczniowie płci męskiej i żeńskiej w porównaniu z uczniami niebinarnymi) przez dodanie kary za różnice w rozkładach prognoz w obu grupach.

  • Kontrfaktyczne parowanie logitowe: kontrfaktyczne parowanie logitowe (CLP) ma na celu zapewnienie, że zmiana atrybutu wrażliwego danego przykładu nie zmieni prognozy modelu dla tego przykładu. Jeśli na przykład zbiór danych do treningu zawiera 2 przykłady, których wartości atrybutów są identyczne, z tym że jeden ma wartość gender = male, a drugi – gender = nonbinary, CLP doda karę, jeśli prognozy dotyczące tych 2 przypadków są różne.

Techniki, które wybierzesz do dostosowywania funkcji optymalizacji, zależą od zastosowań modelu. W następnej sekcji przyjrzymy się bliżej ocenie modelu pod kątem sprawiedliwości, uwzględniając te przypadki użycia.

Ćwiczenie: sprawdź swoją wiedzę

Które z podanych stwierdzeń na temat technik ograniczania stronniczości są prawdziwe?
Zarówno MinDiff, jak i CLP nakładają kary na rozbieżności w wydajności modelu powiązane z atrybutami poufnymi
Obie techniki mają na celu ograniczenie uprzedzenia przez karanie błędów prognozowania wynikających z niezrównowagi w reprezentowaniu atrybutów wrażliwych w danych treningowych.
MinDiff karze za różnice w ogólnym rozkładzie prognoz dla różnych wycinków danych, a CLP – za rozbieżności w prognozach dla poszczególnych par przykładów.
MinDiff eliminuje stronniczość przez dopasowanie rozkładów wyników w 2 podgrupach. CLP eliminuje uprzedzenia, zapewniając, że poszczególne przykłady nie są traktowane inaczej tylko ze względu na przynależność do podgrupy.
Dodanie większej liczby przykładów do zbioru danych treningowych zawsze pomoże w zwalczaniu uprzedzeń w prognozach modelu.
Dodanie większej liczby przykładów treningowych jest skuteczną strategią ograniczania uprzedzeń, ale struktura nowych danych treningowych ma znaczenie. Jeśli dodatkowe przykłady treningowe wykazują podobne nierówności do oryginalnych danych, prawdopodobnie nie pomogą zniwelować istniejących uprzedzeń.
Jeśli zmniejszasz stronniczność, dodając więcej danych treningowych, nie stosuj podczas trenowania funkcji MinDiff ani CLP.
Poszerzanie danych treningowych i stosowanie technik takich jak MinDiff czy CLP mogą się wzajemnie uzupełniać. Na przykład inżynier ds. uczenia maszynowego może zebrać wystarczającą ilość dodatkowych danych treningowych, aby zmniejszyć rozbieżność w wydajności o 30%, a następnie użyć MinDiff, aby zmniejszyć rozbieżność o kolejne 50%.