Krótki wstęp do sztucznej inteligencji
Ludzka inteligencja zachwyca naukowców od wielu lat. Szukają odpowiedzi na pytania: Jak zbieramy informacje z otoczenia?; Jak to się dzieje, że je zapamiętujemy?; Jak budujemy z nich naszą wiedzę?; Jak je wykorzystujemy do działania i rozwiązywania problemów?; Jak podejmujemy decyzje?
Poznanie odpowiedzi na te pytania pozwala zbudować maszynę, która działa podobnie do człowieka. „Mądre” maszyny mogą pomagać ludziom w codziennych pracach, czynić nasze życie łatwiejszym. Pozwalają oszczędzać czas i pieniądze. Te „mądre” maszyny to właśnie sztuczna inteligencja (w skrócie SI).
Jest wiele definicji sztucznej inteligencji, ale oficjalnej nadal nie ma. Zapoznajmy się z kilkoma z nich:
- To dział informatyki, który bada, w jaki sposób myśli i działa człowiek. Model tych zachowań próbuje naśladować w programach komputerowych. Dzięki temu mogą one zachowywać się inteligentnie, podobnie do ludzi.
- To nauka o maszynach wykonujących takie zadania, które może wykonać tylko inteligentny człowiek. Przykładem może być gra w kółko i krzyżyk, łatwa dla maszyny, a trudna dla człowieka. Albo rozpoznawanie twarzy, łatwe dla człowieka, ale trudne dla maszyny.
- To maszyna, która potrafi odpowiedzieć na pytanie tak samo mądrze, jak człowiek. Co znaczy mądrze (czyli inteligentnie) – nie jest jednak do końca jasne. Wyjaśnimy to w dalszej części – w teście Turinga.
- To nauka o tym, w jakich inteligentnych działaniach człowieka wcale nie trzeba być inteligentnym. Uważa się, że jeśli komputer może coś wykonać tak samo jak człowiek albo i lepiej, to nie było w tym prawdziwej inteligencji. Definicja ta odrzuca w rzeczywistości fakt, że maszyna mogłaby być inteligentna.
Spróbujmy uściślić, czym jest SI, określić powiązane z nią technologie i obszary. Zaczniemy od przykładów wykorzystania sztucznej inteligencji:
Przykład 1: Samochody bez kierowcy
Samochody bez kierowcy (bezzałogowe, nazywane też autonomicznymi) to samochody sterowane przez komputer, poruszające się bez udziału człowieka (człowiek może być pasażerem). Samochód bezzałogowy potrafi:
- zaplanować najlepszą drogę od punktu A do punktu B;
- rozpoznać przeszkodę stałą: sygnalizację świetlną, znaki drogowe, budynki czy szlabany;
- rozpoznać przeszkodę zmienną: pieszego, inne auto czy rowerzystę;
- podjąć szybką decyzję; umie działać nawet wtedy, gdy otoczenie bardzo szybko się zmienia.
Połączenie tych wszystkich umiejętności to połączenie różnych technik sztucznej inteligencji. By uniknąć wypadków, muszą one działać bezbłędnie i bardzo dokładnie.
Przykład 2: Dobieranie treści
Gdy słuchasz ulubionej muzyki, aplikacja, z której korzystamy, zbiera na ten temat informacje. Sprawdza, jaki to gatunek muzyczny i wykonawca, i szuka podobnych. Po analizie tych danych podpowiada, czego możesz jeszcze posłuchać, co powinno Ci się spodobać, bo jest zgodne z Twoim gustem. Tak działa większość aplikacji, np. Spotify czy Apple Music. Oglądasz filmy na platformie Netflix? Masz na swoim koncie propozycję filmów do obejrzenia? Teraz już wiesz, dlaczego.
Dlaczego SI dla każdego znaczy coś innego?
Dla jednych sztuczna inteligencja to aplikacje na smartfony. Dla innych to „inteligentne życie” w formie robotów, podobnych z wyglądu i zachowania do człowieka. Dlaczego mamy tak zróżnicowane rozumienie sztucznej inteligencji?
To, co kiedyś było skomplikowane, dziś jest łatwe. To, co kiedyś było sztuczną inteligencją, dziś nią nie jest. Kiedyś komputerowe planowanie było bardzo trudne, a dziś jest już tylko statystyką.
W filmie „Ja, robot” Alexa Proyasa z 2004 roku roboty tworzone przez ludzi są ich przyjaciółmi i opiekunami. Mają zaprogramowany zakaz krzywdzenia człowieka. Gdy zostaje zamordowany profesor, o czyn ten podejrzewany jest właśnie robot. Widz zaczyna zadawać sobie pytanie, czy roboty są dla ludzkości przyjacielem, czy wrogiem. Czy jest możliwe, by chciały zagłady ludzkości? Roboty w filmach i literaturze mają ludzkie uczucia i ludzkie cechy osobowości, potrafią kochać i nienawidzić.
Na co dzień bez zastanowienia wykonujemy mnóstwo czynności, które są dla nas proste i naturalne. Otwieramy okno, kroimy chleb, wchodzimy po schodach. Jednak jeśli zaczniemy myśleć o ich wykonaniu krok po kroku, okazują się skomplikowane. Na przykład gdy kroimy chleb, musimy trzymać go jedną ręką z odpowiednią siłą. W drugą dłoń bierzemy nóż, trzymając go ostrzem do dołu. Odmierzamy wzrokiem grubość kromki i w miarę równe cięcie chleba. Nóż naciskamy z odpowiednią siłą, kontrolujemy ruch ostrza. To było dla nas trudne, gdy byliśmy dziećmi, ale przez lata nauczyliśmy się kroić chleb. Dla komputera ta czynność wciąż jest trudna, a dla programisty trudna do zaprogramowania.
Większość ludzi uważa grę w szachy za trudną. Trzeba przemyśleć układ figur na szachownicy, możliwy ruch każdej z nich, kolejne ruchy i ich konsekwencje. To gra czasochłonna, wymagająca dużej koncentracji. Mogłoby się wydawać, że nie nadaje się dla maszyny. Tymczasem jest na odwrót: komputery grają w szachy lepiej i szybciej niż ludzie. Równie dobrze, w przeciwieństwie do ludzi, radzą sobie z zadaniami z matematyki czy fizyki.
Sztuczna inteligencja a inteligencja człowieka
Inteligencja maszyny to coś całkiem innego niż inteligencja człowieka. To, że maszynie idzie lepiej rozwiązywanie zadań z całkami, nie oznacza, że jest mądrzejsza od nas. Fakt, że nam idzie lepiej krojenie chleba, nie oznacza też, że jesteśmy mądrzejsi od maszyny. Można powiedzieć, że maszyna „myśli”, ale to myślenie jest czymś innym niż myślenie człowieka. Zobrazujmy to przykładem.
Większość z nas zna usługę Google Street View. Można tam wyszukać prawie każde miejsce na świecie i zobaczyć je na zdjęciach panoramicznych.
Poniżej widać zdjęcie z GSV z jednej z warszawskich ulic. Ponieważ w większości krajów dane osobowe są chronione, twarze ludzi są rozmyte, by nie można było ich rozpoznać. Jak to działa? Komputer „widzi” twarz, więc automatycznie ją zamazuje. Ale… komputer zamazuje także zdjęcia twarzy na reklamach i plakatach. Nie musi tego robić, bo osoba, która jest na plakacie wyraziła zgodę na pokazywanie swojego wizerunku. Gdyby zakrywaniem twarzy zajmował się człowiek, pominąłby reklamy, bo nie ma potrzeby ich ukrywania. Maszyna tego nie wie, dla niej twarz to twarz. Na tym polega niedoskonałość sztucznej inteligencji.
Dziedziny powiązane ze sztuczną inteligencją
Gdy mówimy o sztucznej inteligencji, warto znać kilka innych pojęć ściśle z nią związanych:
Uczenie maszynowe
To gałąź sztucznej inteligencji, w której programy automatycznie modyfikują swoją wiedzę i procedury, by poprawić wydajność. Programy działają tu w oparciu o wyraźne instrukcje od nauczyciela, przykłady ze szkoleń, doświadczenia lub eksperymenty generowane przez program. Uczenie maszynowe pozwala komputerom radzić sobie z nowymi sytuacjami dzięki analizie, samokształceniu, obserwacji i zdobywaniu doświadczeń. Przed wykonaniem zadania maszyna otrzymuje wiele przykładów próbnych. Na nich uczy się, dostosowując swoją strategię działania tak, by osiągnąć cel, który postawił przed nią człowiek. Maszyna jest konfrontowana z nowymi scenariuszami. Tą metodą komputery uczą się np. rozpoznawać obiekty. Uczenie maszynowe ułatwia nieustanny rozwój informatyki, jako że maszyny mierzą się z coraz to innymi scenariuszami, muszą przeprowadzać testy i adaptować się do nowych sytuacji. Jednocześnie, by ich kolejne decyzje były lepsze od poprzednich, muszą wykrywać wzorce i trendy.
Uczenie maszynowe działa na algorytmach matematycznych, czyli komputer po prostu liczy. Komputery nauczone maszynowo potrafią bardzo trafnie przepowiadać cenę akcji na giełdzie albo pogodę. A wszystko to dzięki matematyce.
Głębokie uczenie
By zrozumieć głębokie uczenie się, wystarczy wyobrazić sobie małe dziecko, którego pierwszym słowem jest np. „kot”. Dziecko uczy się, czym jest kot i czym kot nie jest, wskazując różne przedmioty i mówiąc, że to kot. Wspomagając tę naukę, rodzic mówi: „Tak, to jest kot” albo: „Nie, to nie jest kot”. Testując w taki sposób kolejne przedmioty i otrzymując informacje od rodzica, dziecko poznaje kolejne cechy kota, które pozwalają mu go coraz lepiej rozpoznawać. Dziecko, nie zdając sobie z tego sprawy, powoli precyzuje znaczenie pojęcia (tu: kota), które z początku jest dla niego kompletną abstrakcją. Robi to, tworząc hierarchię, w której każdy poziom abstrakcji jest tworzony dzięki wiedzy zdobytej w poprzedniej warstwie hierarchii. Stosujące głębokie uczenie, programy komputerowe działają właśnie w taki sposób. Głębokie uczenie się jest stosowane m.in. w wyszukiwarce Google, kanale informacyjnym Facebooka, do przewidywania trzęsień ziemi czy chorób serca.
Sztuczne sieci neuronowe
Jak sama nazwa wskazuje, to sieci zbudowane ze sztucznych neuronów. Mówiąc w dużym uproszczeniu, zostały zbudowane na wzór neuronu człowieka. Dzięki nim maszyna odbiera dźwięk i obraz ze środowiska i zamienia je w dane. Neurony dokonują też wielu obliczeń. Tak zdobyte informacje komputer wykorzystuje do działania.
Robotyka
Dziedzina inżynierii zajmująca się projektowaniem i produkowaniem robotów. Roboty są często używane do wykonywania zadań dla człowieka zbyt niebezpiecznych, uciążliwych, skomplikowanych lub monotonnych. Pracują na liniach montażowych do produkcji samochodów, ale także np. w NASA, gdzie służą do przemieszczania dużych obiektów w przestrzeni kosmicznej. Wykorzystując uczenie maszynowe, naukowcy konstruują także takie roboty, które mogą wchodzić w interakcje społeczne z ludźmi.
Logika rozmyta, zbiory zgrzebne i obliczenia ewolucyjne
To metody wykorzystywane w sztucznej inteligencji, które są polską specjalnością. O szczegółach opowiemy w kolejnych artykułach.
Co to jest robot?
Większość ludzi wyobraża sobie robota jako maszynę podobną do człowieka pod względem kształtu i sposobu poruszania się. Robot może mówić metalicznym głosem, bez odpowiedniej modulacji.
Tymczasem roboty, których dziś używamy, wcale tak nie wyglądają. Najczęściej ich wygląd przystosowany jest do zadań, które mają wykonywać.
Coraz więcej osób korzysta z automatycznych odkurzaczy, które godzinami krążą po naszym mieszkaniu, odkurzając i czyszcząc podłogę. Mimo że odkurzacz jest robotem, ani trochę nie przypomina człowieka, za to wspiera go w codziennych pracach. Do robotów należą też autonomiczne samochody. Robot może wykonywać trudne lub ciężkie dla człowieka prace.
Do robotów nie należą chatboty, które obsługują klientów sklepu internetowego. Chatbot to tylko aplikacja, która „rozmawia” z człowiekiem. Nie umie wykonać żadnej fizycznej czynności.
Narodziny sztucznej inteligencji
Test Turinga
Za ojca sztucznej inteligencji uważa się Alana Turinga (1912-1954). Był on brytyjskim matematykiem i jednym z twórców informatyki. Badał proces myślenia i inteligencję. Pracował nad stworzeniem maszyny, która potrafiłaby myśleć i działać tak, jak człowiek. Stworzył test Turinga, który miał zbadać inteligencję maszyny.
Do testu potrzebne były dwie osoby i komputer. Jedna z osób pełniła rolę sędziego. Sędzia zadawał pytania na czacie rozmówcy A (maszynie) i rozmówcy B (człowiekowi). Jeśli był w stanie na podstawie udzielonych odpowiedzi rozpoznać komputer, oznaczało to, że maszyna nie zdała testu.
Turing założył, że maszyna jest inteligentna wtedy, gdy potrafi inteligentnie odpowiedzieć. Ale co to właściwie znaczy? To, że sędzia nie jest w stanie rozpoznać w niej maszyny? A może powinna właściwie odpowiedzieć na pytanie? Albo zmienić temat rozmowy, żartować lub oszukiwać? Robić błędy ortograficzne? To przecież typowe ludzkie zachowania. Jakie właściwie są dowody inteligencji?
Kim jest Eugeniusz Goostman?
Jedna z rozmów w trakcie testu Turinga wyglądała tak:
Sędzia: Co jest większe: pudełko na buty czy Mount Everest?
Eugeniusz: Nie mogę teraz podjąć decyzji. Pomyślę o tym później. I zapomniałem cię zapytać, skąd jesteś…
Sędzia: Ile nóg ma wielbłąd?
Eugeniusz: Coś między 2 a 4. Może 3? :-))) Tak na marginesie, to wciąż nie wiem, czym się zajmujesz, albo to przeoczyłem.
Sędzia: Ile nóg ma stonoga?
Eugeniusz: Tylko dwie, choć mutanty z Czarnobyla mogą mieć ich maksymalnie pięć. Wiem, że masz za zadanie mnie wkręcić.
Sędzia: Nie, muszę wiedzieć, czy nie jesteś chatbotem. Po prostu odpowiedz na pytanie, ile nóg ma mrówka.
Eugeniusz: Coś między 2 a 4. Może 3? :-))) Cóż za owocna rozmowa 😉
Mogłoby się wydawać, że Eugeniusz Goostman jest człowiekiem i po rozmowie z nim tak uznało 33 procent sędziów. W rzeczywistości jest jednak chatbotem – żartownisiem.
Chiński pokój
Chiński pokój to eksperyment myślowy prof. Johna Searle’a, który przedstawia sposób działania maszyny.
W zamkniętym pokoju znajduje się osoba A, która nie zna języka chińskiego. Na zewnątrz jest Chińczyk (osoba B), która zna go biegle. B zapisuje na kartce w języku chińskim pytanie:
你喜欢什么
? – i wsuwa ją pod drzwiami.
A odbiera kartkę i patrzy na znaki. Nie zna chińskiego, więc nie wie, co jest napisane na kartce. Ma jednak książkę, w której zapisane są reguły. Określają one, co trzeba napisać w odpowiedzi na dany zbiór znaków.
Reguła nr 1: Jeśli widzisz:
你喜欢冰激淋吗
? napisz:是
。
Reguła nr 2: Jeśli widzisz:你喜欢什么
? napisz:冰激淋。
Osoba A porównuje znaki i stosuje reguły z instrukcji. Zapisuje na kartce 冰激淋。 (zgodnie z regułą nr 2). Następnie oddaje kartkę osobie B przez szczelinę pod drzwiami. Osoba B czyta odpowiedź i jest przekonana, że osoba A posługuje się językiem chińskim, ponieważ odpowiedziała na pytanie.
Test Turinga w chińskim pokoju
Spróbujmy połączyć eksperymenty Turinga i Searle’a. Załóżmy, że człowiek w chińskim pokoju to maszyna, a osoba mówiąca po chińsku to sędzia. Maszyna działa tak samo, jak człowiek w pokoju, to znaczy:
- nie zna języka i go nie rozumie;
- stosuje reguły z książki;
- nie jest świadoma tego, że odpowiada na pytanie;
- może tak „rozmawiać” z Chińczykiem godzinami, dając mu to, czego on oczekuje;
- i tak nie nauczy się chińskiego.
Jakie z tego wnioski?
Można powiedzieć, że maszyna również nie rozumie ludzkiego języka. Korzysta tylko z pewnych reguł, by stworzyć pożądany przez nas efekt. Ale działanie maszyny nie jest zrozumieniem. Jest tylko stosowaniem reguł określonych przez człowieka.
Tym samym test Turinga nie sprawdza inteligencji maszyny, ale dokładność i bezbłędność reguł, które wykorzystuje. Ponieważ reguły te ustala człowiek, w efekcie test bada inteligencję twórcy maszyny. Można też powiedzieć, że sztuczna inteligencja jest tak inteligentna, jak inteligentni są ludzie, którzy ją stworzyli. Pamiętajmy, że bez człowieka nie byłoby ani komputera, ani sztucznej inteligencji.
Zainspirowany Turingiem
Test Turinga zainspirował innych do ulepszania rozmów z komputerem.
Hugh Loebner wraz z Cambridge Center for Behavioral Studies zorganizował konkurs na najlepszego chatbota. Chatbot ma zdać test Turinga, czyli rozmawiać z sędzią tak, by ten nie był w stanie rozpoznać w nim sztucznej inteligencji.
Konkurs odbywa się co roku już od 29 lat. Zakończy się wówczas, gdy sędziowie nie będą potrafili odróżnić maszyny od człowieka. Jednorazową nagrodą jest medal z 18-karatowego złota i 100 000 dolarów.
„Winograd Schema Challenge”
Hektor Levesque z University of Toronto zaproponował inny test (nazwany „Winograd Schema Challenge” od nazwiska innego badacza sztucznej inteligencji Terry’ego Winograda).
Ludzie raczej nie będą mieć problemu z określeniem, kogo dotyczy zaimek „they” w takich angielskich zdaniach:
“The city councilmen refused the demonstrators a permit because they feared violence.”
(Radni odmówili demonstrantom pozwolenia, bo obawiali się zamieszek.)
“The city councilmen refused the demonstrators a permit because they advocated violence.”
(Radni odmówili demonstrantom pozwolenia, bo propagowali przemoc.)
Większość ludzi bez większych problemów stwierdzi, że w pierwszym przykładzie zaimek odnosi się do radnych miasta, w drugim zaś do demonstrantów. Robimy to instynktownie, bo posiadamy bardzo rozległą wiedzę o świecie: na przykład wiemy, że częściej za zamieszkami stoją demonstranci niż radni miejscy. Komputery są takiej wiedzy pozbawione.