Sztuczna inteligencja pokonała reCaptcha Google

Sztuczna inteligencja potrafi omijać CAPTCHA

Na początku tego tysiąclecia wiele serwisów internetowych wprowadziło na swoje strony test sprawdzający, czy np. osoba rejestrująca nowe konto e-mailowe lub profil na forum internetowym jest naprawdę człowiekiem, czy może tzw. botem – programem, który automatycznie wypełnia formularze czy zakłada konta. Test – nazwany CAPTCHA jest skrótem od angielskiej nazwy Completely Automated Public Turing test to tell Computers and Humans Apart – najczęściej polega na wyświetleniu ciągu zdeformowanych liter lub cyfr, które powinien umieć odczytać człowiek, ale nie program. Odczytane znaki powinny być następnie wprowadzone do specjalnego pola tekstowego. Do tej pory było to dość dobre zabezpieczenie przed botami, ale czasy się zmieniły. Sztuczna inteligencja potrafi już omijać CAPTCHA a dokonała tego sieć neuronowa grupy badaczy z firmy Vicarious AI.

Sama sieć neuronowa nie jest już niczym szczególnym. Jest to na ogół program komputerowy symulujący zbiór wielu połączonych neuronów, przekazujących sobie sygnały. Każdy neuron najpierw mnoży wartość każdego sygnału przychodzącego z innego neuronu z którymi jest połączony przez tzw. wagę ustaloną tylko dla tego połączenia, sumuje wszystkie te iloczyny i jeśli otrzymana wielkość przekracza pewien próg, sam wysyła sygnał do innych neuronów. Poprzez zmianę wag milionów połączeń między neuronami, sieci takie potrafią się uczyć lub są uczone. Sieci na ogół muszą otrzymywać setki tysięcy wzorców i na ich podstawie zmieniać wagi (uczyć się) tak, aby otrzymać prawidłowy wynik. Takim wzorcem może być zdeformowana litera, różne pozycje w partii szachowej, lub cokolwiek innego, co da się reprezentować ciągiem liczb. Liczby te pobudzają neurony wejściowe a po przetworzeniu na wyjściu pojawi się jakiś wynik, który jest albo dobry albo zły. Jeśli wynik jest dobry, zwiększa się nieznacznie te wagi, które powodują jego wygenerowanie. Jest to tzw. uczenie przez wzmacnianie.

Po tysiącach lub milionach powtórzeń i całego procesu sieć może osiągnąć dobrą skuteczność. W opisywanym przypadku sieć, która pokonała CAPTCHA uczy się po analizie zaledwie kilku przypadków. Niestety jak to często bywa w przypadku odkryć technologicznych, badacze nie ujawnili algorytmu zasłaniając się chęcią do uniknięcia zalewu botów. Może to i dobre uzasadnienie.

Wiemy, że badacze nazywają swoją sieć recursive cortical network. Nazwa może rzucić nieco światła na algorytm: w tradycyjnych sieciach każdy neuron otrzymuje na wejściu sygnały pewnej grupy neuronów i wysyła swój sygnał do zupełnie innej grupy. W przypadku Vicarious AI, użyto terminu sieć rekursywna, w takim wypadku niektóre sygnały wyjściowe mogą być znowu przekazywane do wejścia. Innymi słowy sieć może uczyć się także na podstawie tego czego sama się już wcześniej nauczyła a nie tylko na podstawie wysyłanych jej sygnałów z zewnątrz (wzorców). Taki proces rekurencji może trwać w kółko, w nieskończoność ale może zostać zakończony, gdy osiągnięty zostanie odpowiedni rezultat.

Dzięki rekurencji naukowcy z Vicarious AI osiągnęli ogromne przyśpieszenie procesu uczenia: wystarczy tylko zadać sieci pięć przykładów, aby nauczyła się ona łamać np.  reCAPTCHA Googla w 67% przypadków.

Na podstawie pracy A generative vision model that trains with high data efficiency and breaks text-based CAPTCHAs

  • 3
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Dodaj komentarz