Sztuczna inteligencja

Dziś spotykamy się z tym pojęciem niemal na każdym kroku. Znajdujemy jej zastosowanie w różnych dziedzinach życia – często nawet o tym nie wiemy. Określana jest często skrótem AI (od angielskiego artificial intelligence). 

Jedni upatrują w niej nieuniknionej przyszłości, inni straszą konsekwencjami jej wprowadzania – tym, że inteligentne maszyny przejmą kontrolę nad naszym światem.

A jak jest rzeczywiście? Do czego dziś służy i jak jest wykorzystywana?

W 1950 roku matematyk Alan Turing opracował test, który ma na celu weryfikację sztucznej inteligencji. Bada, czy maszyny są w stanie samodzielnie myśleć i komunikować się jak ludzie. Test polega na próbie przekonania rozmawiających z maszyną sędziów, że rozmawiają z człowiekiem. Niewiele systemów sztucznej inteligencji zdało ten test – dopiero w 2014 roku udało się to wykonać zadanie botowi, który nosi nazwę Eugene Goostman. Bot udaje że jest trzynastoletnim chłopcem z Odessy, którego ojciec jest ginekologiem. Test polegał na pięciominutowej wymianie zdań między chatbotem, a każdym z sędziów. Goostmanowi udało się przekonać 33% naukowców, że jest żywym człowiekiem.

Test Touringa jednak nie jest wyznacznikiem inteligencji maszyny, a jedynie pokazuje jej umiejętność posługiwania się językiem naturalnym. Umiejętność komunikowania się z człowiekiem używając jego języka.

Sztuczna inteligencja nie musi jednak przejawiać się w umiejętności posługiwania się językiem. Znane są bowiem dokonania maszyn, które pokonywały w grze w szachy utytułowanych arcymistrzów. Wprawdzie pierwsze superkomputery, które nauczono grać w szachy, miały niewiele wspólnego z inteligencją, bowiem działały na zasadzie wynajdowania najbardziej optymalnych zagrań ze wszystkich zapisanych w ich bazie danych. Twórcy programów szachowych zapisali w pamięci maszyny ogromną ilość rozegranych wcześniej partii i nauczyli maszynę wybierać z tej bazy takie zagrania, które w końcowym efekcie przyniosą największe szanse na zwycięstwo. Im większa baza rozegranych partii została wprowadzona do pamięci komputera – tym większa szansa na pokonanie arcymistrza. Pierwszym komputerem, który pokonał arcymistrza, był Deep Blue, który w 1996 roku wygrał z Garri Kasparowem. 

Sztuczna inteligencja nie jest programem, który działa w sposób algorytmiczny, dokładnie zaprogramowany przez człowieka. To program, który poddaje się procesowi uczenia, w wyniku czego program może wykonywać operacje, do których został przyuczony. 

Sposobem uczenia sztucznej inteligencji jest wielokrotne powtarzanie sekwencji wprowadzania danych szkoleniowych oraz wskazywania prawidłowego rezultatu, oczekiwanego przez poprawnie działający mechanizm. 

Brzmi skomplikowanie? – już wyjaśniam.

Wyobraźmy sobie, że chcemy nauczyć naszą sztuczną inteligencję rozpoznawania cyfr: 0, 1, 2, 3, 4, 5, 6, 7, 8 i 9. Pokazujemy jej obrazek z cyferką 1 i mówimy jej, że to cyfra 1. Następnie pokazujemy jej obrazek z cyfrą 2 mówiąc, że to dwójka. W kolejnych krokach pokazujemy następne obrazki zawierające kolejne cyfry, za każdym razem informując, jaką cyfrę przedstawia obrazek. W ten sposób, pokazując wiele obrazków, osiągniemy stan, w którym nasza sztuczna inteligencja nauczy się rozpoznawać poszczególne cyfry. 

Ile to jest wiele? To zależy. W zależności od przedmiotu nauki (nauka rozpoznawania cyfr jest dość prostą kwestią) może to być kilka tysięcy, a może też być kilka milionów przykładów.

Jeśli zakończymy proces uczenia – czas na sprawdzian. Rzeczywiście – sztuczną inteligencję należy poddać testowi, który w naszym przykładzie będzie polegał na tym, że pokażemy jej obrazek z cyfrą 1 i zapytamy “co rozpoznaje?” Jeśli rozpozna cyfrę 1, to pochwalimy naszą maszynę. Jeśli dowolną inną, to ją zganimy. Oczywiście, pochwała i nagana są tu symboliczne, bowiem w języku maszyn mogą być nimi zera i jedynki – jedynka jest pochwałą, a zero naganą. Maszyna otrzymując zero zrozumie, że popełniła błąd i następnym razem będzie próbowała go nie popełnić. Proces testu to także wielokrotne powtórzenia sekwencji testowych, za każdym razem z chwaleniem i ganieniem maszyny, w zależności od wyniku każdego z testów.

Obecnie istnieją mechanizmy sztucznej inteligencji, które potrafią uczyć się same. W 2017 roku świat obiegła informacja, że algorytm AlphaGoZero w ciągu zaledwie 9 godzin nauczył się grać w szachy rozgrywając miliony partii z samym sobą i osiągnął poziom ekspercki. Poziom ten został sprawdzony w walce z silnikiem programu szachowego Stockfish, który dotąd był uznawanym za niepokonany i żaden arcymistrz nie miał z nim żadnych szans. Stockfish poniósł sromotną klęskę. Co ciekawe – w trakcie pojedynku AlphaGoZero analizował około 60 tysięcy możliwych ruchów na sekundę, podczas gdy Stockfish – aż 60 milionów.

W 2016 roku algorytm AlphaGo w ciągu 34 godzin nauczył się grać w grę Go – znacznie bardziej wymagającą i z dużo większą ilością kombinacji i ruchów. Po trwającej 34 godziny nauce algorytm pokonał mistrza świata w tej grze, Lee Sedola.

Do czego dziś wykorzystywana jest sztuczna inteligencja?

Zastosowanie AI dziś jest bardzo różnorodne. Algorytmy wykorzystywane są w procesach rozpoznawania tekstu, obrazów i mowy, w maszynowym tłumaczeniu tekstów, w analizie obrazu w czasie rzeczywistym, a nawet w tworzeniu obrazów. Sztuczna inteligencja zaszyta jest w mechanizmach uczących się zachowań użytkowników na portalach społecznościowych, w wyszukiwarkach internetowych, w systemach reklamowych oraz w sklepach internetowych. Dzięki sztucznej inteligencji coraz trudniej jest rozpoznać, czy toczymy rozmowę z żywym człowiekiem czy z botem. 

Na uczących się algorytmach oparte są także mechanizmy wykrywające oszustwa finansowe, mechanizmy oceny zdolności kredytowej w bankach, a także systemy eksperckie i narzędzia wspierające zarządzanie w warunkach braku wszystkich danych.

Analiza obrazu była przedmiotem prac mojego zespołu, w wyniku którego zbudowaliśmy system umożliwiający przeprowadzenie badań zajętości parkingów w miejskich strefach parkingowych. Sztuczna inteligencja została wykorzystana do automatycznego rozpoznawania numerów rejestracyjnych znajdujących się na tablicach zaparkowanych w danej strefie aut.

Dzięki zastosowaniu sztucznej inteligencji jesteśmy w stanie szybciej i z większą pewnością wykonywać pewne operacje – coś, co człowiekowi zajmuje sporo czasu – sztucznej inteligencji zaledwie sekundy. 

A ile Tobie, drogi czytelniku, zajmie rozpoznanie na których obrazkach widnieje pies, a na których mafinki.

Sztucznej inteligencji możemy powierzyć tworzenie obrazów – poniższe postaci ze świata Marvela zostały w całości utworzone przez algorytmy sztucznej inteligencji.

O dziwo – poniższe obrazy przedstawiają postać, której wizerunek także został wygenerowany przez mechanizmy sztucznej inteligencji. Postać Keanu Reeves’a nie są rzeczywistymi zdjęciami aktora, ale kreacją stworzoną przez AI. 

Pomimo olbrzymich możliwości sztucznej inteligencji – nie jest to wciąż doskonała technologia. Wciąż wymaga pracy i doskonalenia.
Poniżej obrazy wygenerowane przez algorytmy sztucznej inteligencji, której zlecono wygenerowanie obrazu na temat ”łosoś płynie w dół rzeki”.

W kolejnych odcinkach cyklu poświęconego sztucznej inteligencji opowiem o sieciach neuronowych i przedstawię szerzej zasady uczenia maszynowego.

Zapraszam do śledzenia moich wpisów.

Udostępnij ten artykuł