Co to znaczy, iż algorytm jest stronniczy i czy można temu zapobiec?

homodigital.pl 9 miesięcy temu

Nie tylko technologie, także etyka? Co nowego w zespole PL/AI? „Rozwój sztucznej inteligencji wykracza poza kwestie czysto techniczne, jest to także kwestia etyczna. Budując modele, twórcy powinni pamiętać, żeby takie modele były bezstronne” – powiedziała Agnieszka Mikołajczyk-Bareła podczas konferencji prasowej nt. powołania zespołu doradczego PL/AI Sztuczna Inteligencja dla Polski. Co to znaczy, iż algorytm jest stronniczy i czy można temu zapobiec?

Czytasz czwartą część cyklu o strategii rozwoju sztucznej inteligencji w Polsce. W cyklu opisujemy i recenzujemy działania zespołu PL/AI, doradczego gremium przy Ministerstwie Cyfryzacji. Będziemy też wyjaśniać najważniejsze zagadnienia związane z zapowiadanymi i realizowanymi projektami oraz pokazywać teoretyczny i międzynarodowy kontekst rządowych programów rozwoju AI.

Nie ma dziś wątpliwości, iż algorytmy sztucznej inteligencji nie są wyłącznie problemem matematycznym czy też technicznym. Należy na nie patrzeć szerzej, jak na narzędzia służące podejmowaniu decyzji o kluczowym znaczeniu dla życia każdego z nas i społeczeństwa jako całości, jak na instrumenty tworzenia wiedzy, a choćby – nadawania sensu otaczającej nas rzeczywistości.

Czy każdy algorytm jest stronniczy?

Algorytmy przetwarzają dane dzięki matematycznych procedur i jako takie bywają postrzegane jako neutralne, wolne od uprzedzeń, emocji i popełnianych przez ludzi pomyłek. Może się wydawać, iż stronniczość procedur obliczeniowych jest swoistym błędem, którego – przy zachowaniu odpowiedniej staranności – można uniknąć lub się go pozbyć. Gdy to zrobimy, wyniki działania algorytmu zyskają walor obiektywności…

Nie jest to jednak prawda. W każdym algorytmie zakodowane są określone założenia. Żaden algorytm nie jest bezstronny, a tym samym to, jak jest on skonstruowany i wykorzystywany, ma określone implikacje społeczne, kulturowe czy polityczne. Na stronniczość algorytmów należy zatem spojrzeć nie jak na możliwy do wyeliminowania defekt, ale jak na odchylenie od jakiejś przyjętej normy czy standardu.

Normy i standardy są zawsze w pewnym stopniu arbitralne; odzwierciedlają poglądy, wartości, a czasami interesy projektantów algorytmów. Wyobraźmy sobie algorytm, którego zadaniem jest ocena jakości pracy w wybranej firmie. To, czy uznamy algorytm za stronniczy, będzie w dużej mierze zależało od tego, jak pojmujemy jakość pracy, od czego ona naszym zdaniem zależy, a więc wedle jakich standardów ją oceniamy.

A zatem dyskusja o tym, czy algorytm jest stronniczy, nie może ograniczać się do zagadnień technicznych – jej ważnym aspektem, a może choćby jej istotą, powinno być to, jakie normy i standardy uznajemy za adekwatne.

Właśnie na takie wyzwania zwracała uwagę Agnieszka Mikołajczyk-Bareła, mówiąc, iż modele sztucznej inteligencji muszą być bezstronne, bezpieczne, by działały zgodnie z zaplanowanymi warunkami stosowania, ale także by były transparentne i zgodne z wartościami społecznymi.

Źródła algorytmicznej stronniczości

Stronniczość występuje na każdym etapie projektowania, tworzenia i stosowania algorytmu: od gromadzenia danych, przez kodowanie, po interpretację wyników. Co więcej, może pojawić się sprzężenie zwrotne, które ową stronniczość wzmacnia, co oznacza, iż w każdym cyklu stosowania algorytmu staje się ona silniejsza. Przyjrzyjmy się wybranym przyczynom, które mogą sprawić, iż algorytm jest stronniczy. Ta lista z pewnością nie jest pełna, ale daje wyobrażenie o istocie problemu.

Stronniczość danych treningowych

Algorytmy uczenia maszynowego, które są podstawą współczesnych systemów sztucznej inteligencji, muszą być szkolone na dużych zbiorach danych. Mogą one być stronnicze w tym sensie, iż wytrenowany na nich algorytm nie spełnia założonego standardu. Dzieje się tak na przykład, gdy dane treningowe nie są reprezentatywne dla grupy, w której algorytm jest stosowany. Jednak, choćby jeżeli dane poprawnie oddają strukturę populacji, algorytm może niewłaściwie funkcjonować w interakcji z mniejszościami, ponieważ były one niedoreprezentowane w zbiorze treningowym.

Np. algorytmy rozpoznawania twarzy są często trenowane na danych pochodzących od populacji dominujących i dlatego działają słabo w przypadku grup mniejszościowych. Dekadę temu zdjęcia Afroamerykanów zostały zaklasyfikowane przez algorytm Google Images jako goryle. Firma nie ujawniła powodu tej błędnej kategoryzacji, ale można przypuszczać, iż zbiór danych, na których algorytmy ćwiczyły się w rozpoznawaniu ludzi, składał się w przeważającej części ze zdjęć osób białych – kategoria czarnoskórych była niedostatecznie liczna, dlatego algorytm nie zdołał wytrenować się w ich rozpoznawaniu.

Gdy dane szkoleniowe mają formę języka pisanego, algorytm odzwierciedli i potencjalnie wzmocni ludzkie uprzedzenia zawarte w tekstach wykorzystywanych do uczenia maszynowego – tak, jak miało to miejsce w przypadku uruchomionego w 2016 roku chatbota Tay firmy Microsoft trenowanego na podstawie zawartości Twittera.

Zaledwie 16 godzin po udostępnieniu został on zamknięty, ponieważ generował rasistowskie i inne obraźliwe komentarze. Chatbot po prostu „zinternalizował” opinie użytkowników popularnego serwisu. Z tym rodzajem stronniczości mieliśmy także do czynienia w przypadku algorytmu rekrutacyjnego wykorzystywanego przez firmę Amazon, o czym wspominałem w artykule dotyczącym kompetencji algorytmicznych.

Czasami algorytmy wykorzystywane przez instytucje publiczne kupowane są od firm prywatnych, które nie ujawniają pochodzenia i struktury danych treningowych, co rodzi ryzyko stronniczości.

Stronniczość wynikająca z uwzględnienia niewłaściwych cech

Organizujemy społeczeństwo według określonych kategorii: płeć, rasa, narodowość i wiele innych. Każdą populację możemy opisać dzięki potencjalnie nieskończonej liczby aspektów. Kiedy algorytm mający przetwarzać wiedzę dotyczącą określonej grupy jest projektowany, należy zdecydować, które kategorie powinny zostać uwzględnione – stąd pewne informacje na temat owej grupy są ujmowane, a inne pomijane.

Z tym rodzajem stronniczości mamy do czynienia, gdy cechy, które są istotne (bo na przykład wyraźnie różnicują interesującą nas grupę), zostaną przez algorytm zignorowane.

Wyobraźmy sobie, iż dysponujemy informacjami dotyczącymi orientacji seksualnej, ale wykluczamy je z analizy, ponieważ uznajemy, iż są to dane wrażliwe, które nie powinny być podstawą procesu decyzyjnego. Są one jednak statystycznie istotne i uwzględnienie ich zaowocowałoby zdecydowanie większą dokładnością algorytmu.

Stronniczość wynikająca z przetwarzania danych

Różne sposoby matematycznego przetwarzania danych mogą dawać odmienne wyniki. Obraz uzyskany w procesie analizy statystycznej nie odbija rzeczywistości w sposób czysty; jest jej pewną rekonstrukcją, w której – w zależności od użytej metody – inaczej rozłożone będą akcenty.

Weźmy klasyfikację obiektów, która jest jedną z podstawowych funkcji algorytmów uczenia maszynowego. Zadanie to można realizować dzięki różnych matematycznych metod, na przykład naiwnych klasyfikatorów bayesowskich, lasów losowch, drzew decyzyjnych, maszyn wektorów nośnych, regresji logistycznej.

Każda z nich charakteryzuje się odmienną dokładnością klasyfikacji, m.in. z powodu różnej podatności na nadmierne dopasowanie (przeuczenie, przetrenowanie), czyli sytuację, w której model zostaje niejako na siłę dopasowany do zbioru danych treningowych, ale słabo radzi sobie z poprawną klasyfikacją nowych danych.

Stronniczość interpretacji

Algorytm zwraca wynik, ale to od tego, jak zostanie on zinterpretowany, zależy wpływ owego algorytmu na rzeczywistość. Załóżmy, iż algorytm informuje nas o prawdopodobieństwie wystąpienia określonej sytuacji, np. określa na skali od 1 do 10 szansę recydywy dla danego skazanego. By ten wynik skutkował jakimś działaniem, należy go zinterpretować i w efekcie określić próg, poniżej którego sugerowane będzie zasądzenie kary w zawieszeniu, zamiast bezwzględnego więzienia. Może on być ustalony różnie, w zależności od przyjętych założeń.

Szczególnym przypadkiem stronniczości interpretacji jest stronniczość prezentacji rezultatów przetwarzania danych. jeżeli wyszukiwarka prezentuje pięć najlepszych wyników na stronie, a dostęp do pozostałych wymaga przeklikania się do drugiej strony (albo choćby scrollowania), to wyniki od szóstego wzwyż mają zdecydowanie mniejszą szansę na trafienie do odbiorcy. Próg pięciu wyników jest efektem arbitralnej interpretacji.

Algorytm jest stronniczy? Jak to okiełznać

Nie sposób wyeliminować algorytmicznej stronniczości, bo nie istnieje obiektywny, absolutnie neutralny sposób reprezentacji rzeczywistości dzięki przetwarzanych matematycznie danych. A także dlatego, iż różni ludzie posługują się odmiennymi normami i standardami.

Matematyczka i specjalistka od algorytmów Cathy O’Neil twierdzi, iż algorytmy to opinie zamknięte w kodzie. Co zatem możemy zrobić, by algorytmy sztucznej inteligencji spełniały pożądane standardy? Wydaje się, iż należy:

  • Poddać pogłębionej refleksji wartości, a choćby ideologie, na jakich opieramy algorytmy;
  • W miarę możliwości upubliczniać zbiory danych treningowych i same algorytmy, by mogły być przeanalizowane i ocenione przez różne podmioty. (Ten postulat jest trudny do realizacji, ponieważ twórcy rozwiązań algorytmicznych nie są zainteresowani ujawnianiem swych tajemnic. Sytuację komplikuje dodatkowo fakt, iż systemy sztucznej inteligencji składają się niekiedy z algorytmów opracowywanych i dostarczanych przez firmy, a nie w formule open code);
  • Zadbać o większą przejrzystość systemów sztucznej inteligencji. (W algorytmach opartych na sieciach neuronowych mamy do czynienia ze zjawiskiem czarnej skrzynki – są one nietransparentne);
  • Zadbać o dobrej jakości (kompletne, reprezentatywne) dane treningowe;
  • Odpowiednio (optymalnie dla danego problemu i charakterystyki danych) dobrać i skalibrować algorytm.

Źródło zdjęcia: Google DeepMind/Unsplash

Idź do oryginalnego materiału