Kilka uwag o sztucznej inteligencji
Autor tekstu: Jakub Gaworczyk

Sztuczna inteligencja kojarzy się przede wszystkim z naśladowaniem człowieka, a dokładniej z próbą stworzenia ludzkiego umysłu (lub przynajmniej jego fragmentów) w sposób inżynierski. Jest to zagadnienie wyjątkowo trudne i jak się okazuje niemożliwe do spełnienia w najbliższej przyszłości. Stąd też nadzieje pobudzone  przez filmy z gatunku science-fiction z początku lat 60. i 70., które datowały na początek XXI wieku społeczeństwa składające się z ludzi oraz inteligentnych maszyn nie znajdują pokrycia w rzeczywistości. Okazuje się jednak, że sztuczna inteligencja towarzyszy nam w coraz większej ilości dziedzin życia i nie chodzi tu o inteligentny proszek do prania.

Coraz więcej banków wykorzystuje sztuczną inteligencję do przyznawania kredytów. Kwestia SI nie dotyczy kredytów od ręki dla emerytów i rencistów „na odcinek”. W przypadku udzielania większych kwot, banki muszą kalkulować ryzyko, że pożyczkobiorca nie spłaci długu. Stopień dopuszczalnego ryzyka jest z góry określony przez bank. W przypadku, gdy jest on zbyt wysoki, pazerność może się przerodzić w bankructwo, które w przypadku masowej skali powoduje kryzys, jaki przeżywamy obecnie. Natomiast zbytnia zachowawczość banku jest powodem przegrywania z bardziej drapieżną konkurencją. Stąd kluczowe jest  precyzyjne określenie tej wartości. Zajmują się tym najlepsi na świecie matematycy, którzy za odpowiednie pieniądze obliczają promocje, super oferty, tanie kredyty. Natomiast za wyegzekwowanie czy klient kwalifikuje się do taniego kredytu, czy super oferty może odpowiadać sztuczna inteligencja. Nie potrafię odpowiedzieć, które banki stosują taką technikę, na jakim poziomie zaawansowania znajduje się ani też jaką rolę odgrywa przy podejmowaniu ostatecznych decyzji. Z jednej strony są to dane tajne i nawet, gdybym miał do nich dostęp, to nie mógłbym ich publikować nie narażając się na szwank, z drugiej strony można porównać tę sytuację do wyszukiwarki google, z której każdy korzysta, natomiast algorytm rankingu stron składa się z ponad 200 zmiennych i jest najpilniej strzeżoną tajemnicą tej firmy. Mogę jednak przedstawić przykładowy system, zobrazować jego działanie, tak aby każdy biorca bankowych pieniędzy mógł się poczuć jak bohater filmu "Blade Runner".

Jeśli klient zarabia miesięcznie więcej niż 2000 zł daj mu kredyt, jeśli nie to odpraw go. Pojawia się tu jednak szereg problemów, a najważniejszy to taki, że kwestia zarobków jest niewystarczająca. Wprowadźmy więc kryterium wieku, gdyż jeśli klient dobija do emerytury to istnieje możliwość, że nie będzie go stać na spłatę dalszych rat. Wtedy nasz system będzie wyglądał tak: jeśli klient zarabia 2000 zł i ma mniej niż 40 lat, daj mu kredyt. Trzeba by jeszcze uwzględnić wykształcenie, staż pracy i tysiące innych czynników oraz napisać miliony warunków, które będę uwzględniać te wszystkie czynniki. Byłaby to nad wyraz niewydajna praca, dlatego od sztucznej inteligencji wymaga się, aby na podstawie zbioru uczącego się, sama ustawiła te wszystkie warunki. W praktyce oznaczałoby to, że zaznajomiłaby się z przypadkami kilku klientów banków, poznałaby ich wykształcenie, wiek, zawód, stan cywilny oraz szereg innych zmiennych oraz co najważniejsze czy spłacili kredyt czy nie. Następnie na podstawie tych kredytobiorców uogólniłaby zasady przyznawania kredytów na przyszłych klientów, tak aby sama mogła podejmować decyzje, a nawet określać prawdopodobieństwo spłaty zobowiązań. Tutaj wchodzą do gry sztuczne sieci neuronowe.

Powróćmy do wieku i zarobków klienta. Ustawmy przy każdej wartości wagę, która będzie nam określać ważność każdej z tych zmiennych. Bank udziela kredytu na 1000 zł, przychodzi do banku Kowalski, który zarabia 3000 zł i ma 40 lat. Spłaca on kredyt, Nowak, który zarabia 5000 zł, ale ma 60 lat nie spłaca kredytu. Wprowadźmy jeszcze 100 takich przypadków i będziemy wiedzieć co jest ważniejsze wiek czy zarobki. Co więcej, będziemy mogli policzyć co jest ważniejsze i o ile procentowo. Jest to pewne uproszczenie, gdyż będziemy znać jedynie prawdopodobieństwo przewagi pewnych czynników nad innymi. Znając już rozkład prawdopodobieństwa możemy nadać wartości wagom. I tak waga wieku wyniesie 60% a waga zarobków 40%. Można z bardzo dużym prawdopodobieństwem określić, że jak przyjdzie kolejny klient do banku i wprowadzimy jego zarobki i wiek do systemu, a następnie uwzględnimy wagi, które sprawdziły się na 100 wcześniejszych klientach, to i sprawdzą się na naszym 101 kliencie i dowiemy się czy dać ten kredyt czy nie. Jeśli waga wieku przemnożona przez wiek plus waga zarobków przemnożona przez zarobki da wartość, która w większości wypadków powodowała, że klient spłacał dług to mamy do czynienia z pewną wartością, która przyciąga tych spłacających, jest to atraktor. Oczywistością jest, że te dwie wartości nie wystarczą do zbudowania sieci, które będzie odzwierciedlać rzeczywistość. Potrzeba więcej danych wejściowych oraz znacznie bardziej rozbudowanej struktury, niż dwie wagi.

Idea samouczenia się sieci to nie jest jakaś czarna magia, tylko po prostu takie dopasowywanie swojej wewnętrznej struktury, aby najlepiej rozwiązać zadanie, w tym przypadku wag. Sieci o których piszę składają się z ogromnej ilości neuronów, każdy z nich wykonuje jakąś operację, a następnie wynik tejże operacji przesyła do dalszych neuronów, które przeważnie są ułożone w warstwy. Aby każdy neuron miał odpowiednio dostrojone wagi musi się wykonać miliony kroków uczenia, często powtarzając dane wejściowe tak długo, aż system określi stabilne wagi. Dla przykładu z klientami banku można to określić, że wagi tak się dostosują, iż nie będą musiały się zmieniać, żeby poprawnie określić czy klient spłaci kredyt czy nie. Sieć może również uczyć się bez danych uczących, wtedy neurony, które silnie reagują na sygnał uczący, reagują na niego jeszcze silniej, a te które odrzucają wartości, odrzucają je jeszcze bardziej. Zupełnie jak ludzki mózg. Samych technik uczenia też jest bez liku.

Kolejnym przykładem wykorzystania sieci neuronowych są systemy rozpoznawania pisma i mowy. Opierają się one na podstawowej zasadzie odtwarzania informacji kompletnej na podstawie informacji niepełnej. Wykorzystuje się do tego pamięci skojarzeniowe (asocjacyjne). Charakteryzują się one występowaniem sprzężeń zwrotnych, co oznacza, że warstwy występujące dalej mogą się łączyć z warstwami występującymi wcześniej. Rozpoznawanie pisma opiera się na rozróżnianiu liter. Gdyby każda litera była identyczna, nie byłoby problemu z rozpoznaniem kształtów, gdyż jest ograniczona ich ilość w alfabecie. Wprowadza się do pamięci cały alfabet jako obrazy wzorcowe. Jest to proces uczenia, natomiast proces odtwarzania informacji polega na skojarzeniu obrazu testowego z obrazem nauczonym. Zachowanie to jest podobne do działania ludzkiego mózgu, którego kojarzenie jest podparte pamięcią, doświadczeniem oraz zdolnością abstrakcyjnego kojarzenia faktów i wyciągania wniosków. W przypadku sieci Hopfielda, bo te są najczęściej wykorzystywane jako pamięć asocjacyjna, następuje pewien ukryty mechanizm o fundamentalnym znaczeniu, który decyduje o sensowności całej pamięci. Sieć nie rozróżnia znaków, ale określa, do którego z już nauczonych jest najbliżej (odległości Hamminga) obrazowi testowanemu. Proces rozpoznawania liter można uprościć stwierdzając, że sieć Hopfielda zlicza o ile bitów różni się obraz testowy od każdego z wzorców (traktorów) i na tej podstawie wyciąga odpowiedź. Przedstawiony przeze mnie został model wyidealizowany, gdyż w rzeczywistości mogą występować minima lokalne, nie rozróżnienie negatywów, te same stany energii itp. Tutaj również uczenie polega na dostrojeniu wag, tak, aby sieć poprawnie ściągała obrazy testowe do obrazów już nauczonych.

Warto jeszcze wspomnieć o jednym popularnym typie sieci neuronowych. Są to sieci samoorganizujące się. Uczą się w trybie bez nauczyciela, czyli bez wzorców wyjściowych, a jedynie przez wzorce wejściowe (uczące). Innymi słowy sieć nie zna prawidłowych odpowiedzi, sama musi je wypracować. Dzieje się tak przez zmianę swojej jednokierunkowej struktury. Jest to model najbardziej przypominający ludzki mózg, który ucząc się nie zna wyniku swojego toku myślenia. Proces organizacji wewnętrznej struktury sieci samoorganizujących się przebiega w drodze konkurencji. Polega ona na wyszukiwaniu takiego neuronu, który najlepiej odpowiada wektorowi wejściowemu.

Aby wejść głębiej w sztuczne sieci neuronowe potrzeba pewnej wiedzy matematycznej, starałem się zarysować tylko sens działania sztucznych sieci neuronowych. Dodam jeszcze, że sieć neuronowa nie podaje tylko wartości tak lub nie, czy nawet prawdopodobieństwa jako liczby, ale także i przede wszystkim przestrzenie trójwymiarowe rozkładu prawdopodobieństwa. Sztuczne sieci neuronowe są tylko jednym z możliwych sposobów wykorzystania szeroko rozumianej SI, w której skład wchodzą algorytmy genetyczne, drzewa decyzyjne, metody logiki rozmytej i wiele innych. Wiele na pozór nie związanych ze sobą dziedzin SI przenika się wzajemnie np. algorytmy genetyczne wykorzystywane do zarządzania populacją sieci neuronowych.

Są dziedziny dla których sztuczne sieci neuronowe nie mają zastosowania lub ja przynajmniej o tym nie wiem. Być może jest jakiś geniusz, który skonstruował sztuczne sieci neuronowe do zarabiania na nich na giełdzie i nie chce się podzielić swoją wiedzą np. ze mną, jednak generalnie przyjęło się, że jest to niemożliwe. Są programy oparte o pewne modele sieci do zarabiania krótkoterminowego, jednak równie dobrze można by liczyć pochodną z wykresu i prognozować na podstawie tempa wzrostu czy kupować akcje czy nie. Główną przeszkodą w zaprzęgnięciu tu sztucznej inteligencji jest fakt, że nie można przenosić wprost wniosków z przeszłości na teraźniejszość. Jest za dużo danych, aby dało się zastosować kwestie doświadczenia, można to porównać do obstawiania w następnym losowaniu lotka liczby z poprzedniego losowania, tylko dlatego, że wtedy przyniosły wygraną. Ciekawostką jest, że najlepsi gracze giełdowi są w pewien sposób upośledzeni (tak, wiem zazdroszczę im). Grają tylko o największe stawki i kierują się intuicją. Nie analizują wszystkich danych, a decyzje czy podwoić swój majątek czy może stracić wszystko podejmują w ułamku sekundy. Okazuje się, że fundamentalne, bardzo trudne decyzje najlepiej jest podejmować intuicyjnie, gdyż nie istnieje możliwość wyciągnięcia nauki z doświadczeń, ze względu na niepowtarzalny charakter takich decyzji. Analizowanie w takich sytuacjach jest więc zbyt stochastyczne, natomiast intuicja nie będzie brała pod uwagę wszystkich czynników, tylko skupi się na najważniejszym i na podstawie tego czynnika podejmie decyzje. Przykład ten pokazuje bezradność maszyn, które po prostu pozbawione są irracjonalnych, ludzkich emocji.

Ciekawy acz tragiczny był przykład pewnego mężczyzny, która w wyniku wypadku miał uszkodzoną cześć mózgu odpowiedzialną za emocje . Na pozór jego życie po wypadku przebiegało normalnie, jednak w dłuższej perspektywie zaczęło się sypać. Okazało się, że ów człowiek nie mógł odpowiedzieć na pytanie np. „o której godzinie chcesz iść na herbatę ? o piątej czy piątej piętnaście ?” Musiał się zastanawiać godzinami z odpowiedzią na tak proste pytanie. Brak emocji skutkował niemożnością podjęcia najprostszych decyzji. Ten mechanizm jest głównym powodem dla którego nie udało się stworzyć sztucznej inteligencji, która przechodziłaby test Turinga, czyli umiejętność myślenia w sposób podobny do ludzkiego.


 Oryginał.. (http://www.racjonalista.pl/kk.php/s,6374)
 (Ostatnia zmiana: 24-02-2009)