Terminator, Chappie, C-3PO, Lucy. Androidy, roboty humanoidy, replikanty, cyborgi, piąta generacja. Co jest wspólnym mianownikiem tych terminów? AI, czyli rozwój robotyki, o którym śnili pisarze science - fiction 50 lat temu.
W "Łowcy Androidów" Ridley'a Scotta tytułowy android był sztucznie wychowanym i genetycznie zmodyfikowanym człowiekiem. Choć technologia nie osiągnęła jeszcze poziomu z filmu Scotta, jesteśmy na tak zaawansowanym etapie rozwoju, że pytania, które sobie stawiamy, nie brzmią: jeśli, tylko raczej: kiedy.
Czym jest sztuczna inteligencja
AI (artificial intelligence), czyli sztuczna inteligencja to dział informatyki obejmujący... inteligencję. Ta, dość enigmatyczna definicja nie wyjaśnia wiele. Bo czym jest inteligencja? Jak można zaprogramować inteligencję? Otóż można, a raczej jesteśmy w stanie tworzyć modele zachowań inteligentnych. Ponadto tworzymy programy komputerowe symulujące te zachowania.
Ale to ciągle tylko symulacja, to tylko uzurpatorstwo, powiecie. Nie da się napisać takiego algorytmu, który stworzy inteligencję w sztucznym organizmie. Tylko, że za sprawą coraz bardziej zaawansowanych modeli jesteśmy w stanie tworzyć takie zachowania, gdy różnica nie będzie zwyczajnie widoczna. Zbliżenie się do granicy, w której nie będziemy w stanie ocenić, czy dane zachowanie jest wystarczająco "ludzkie" , jest celem rozwijania sztucznej inteligencji.
Na językach
Co do języka programowania, z tym jest bardzo różnie. Tak naprawdę, niemal każdy programista może znaleźć coś dla siebie. Jeśli chcesz rozwiązywać problemy z użyciem sieci neuronowych, wtedy przydaje się znajomość C++ i starej, dobrej Javy. Jeśli jako developer potrzebujesz szybko napisać prototyp, wtedy użyteczny jest Python (ten język szczególnie polecam do opanowania, ponieważ popularny Pyton ma naprawdę dużo zastosowań, a pisze się w nim dość prosto, przyjemnie i szybko). Jeśli zajmujesz sie tylko przetwarzaniem tekstu, wystarczy Lisp. Do problemów logicznych programiści używają Prologa. Lua z kolei służy do scalania już istniejących napisanych części aplikacji. Oczywiście jako programista powinieneś być w stanie tworzyć, w czymkolwiek czujesz sie najlepiej, a niemal wszystko można napisać w C++. Natomiast każdy z wymienionych języków ma lepsze zastosowania do konkretnych gałęzi programowania AI, natomiast jest bardziej "toporny" w innych. Warto więc na początku, byś się zastanowił, co chcesz robić jako developer sztucznej inteligencji i rozwijać swoje umiejętności w tym kierunku.
Główne problemy AI
Sztuczna inteligencja, jak każda nowa dziedzina wiedzy, zmaga się z wieloma problemami. Choć dużo specjalistów nie zgodziłoby się na termin "problem" i zastąpiło je słowem: wyzwanie. W każdym razie, jest co najmniej kilka kwestii, które wymagają rozwiązania na drodze rozwoju:
- Różnice między konwencjonalnym programowaniem, a programowaniem sztucznej inteligencji
Konwencjonalne programowanie stara się być jak najbardziej precyzyjne. Ten rodzaj programowania rozwija przede wszystkim system. Programowanie sztucznej inteligencji polega na treningu i doszkalaniu. Nie ma miejsca na precyzję w środowisku, w którym wybory podejmowane przez system nie są danymi, a opierają się na logice, konceptach i prawdopodobieństwie
- System jest tak dobry, jak dane, którymi dysponuje
AI opiera się na ogromnej ilości wysokiej jakości danych. Z tych informacji system ma wyciągać wnioski, szybko adaptować się do panujących warunków, 'myśleć'. Dodatkowo, by uniknąć stronniczości, dane muszą być najlepszej jakości ,odpowiednio wyważone i dobrane. Znalezienie takich danych jest niezwykle trudne.
- Systemy sztucznej inteligencji są trudne do przewidzenia
Efekty konwencjonalnego programowania są spodziewane. W przypadku AI nie jest to już takie proste. Systemy sztucznej inteligencji ukrywają swoją eksperymentalną naturę. Trudno więc stwierdzić, jakie rezultaty dało wprowadzenie nowych danych. Jest więc niemal niemożliwe przewidzenie wyników kolejnych operacji.
- AI musi opierać się na wielozadaniowości, zamiast specjalizacji
Dotychczas nie udało się stworzyć uniwersalnego androida. Każdy system sztucznej inteligencji był dobry w poszczególnej rzeczy: świetnie grał na Atari, kapitalnie rozpoznawał psy, czy wykonywał salta do tyłu. Na dzisiaj nie jesteśmy w stanie tak zaprogramować systemu, by skakał, rozpoznawał psy, grał na atari i słuchał muzyki - w skrócie robił wszystko, co robią ludzie. Nawet w gorszym wydaniu.
Problem, który możesz szybko rozwiązać
Jest jeszcze jedno wyzwanie, które wkrótce przestanie być problemem. Ten kłopot to brak zainteresowania branży. Do niedawna dywagacjami nad sztuczną inteligencją zajmowali się tylko pisarze i filmowcy science-fiction. Ledwie kilka organizacji próbowało rozwijać sztuczną inteligencję. Choć w ostatnich latach pojawia się znacznie więcej zainteresowanych, ciągle jest pełno miejsca na świeże pomysły. Jeśli jest więc gałąź informatyki, w którą można łatwo "wejść" i na niej zarabiać, na pewno warto pomyśleć nad rozwojem algorytmów do systemów sztucznej inteligencji. Wydaje się, że to idealna sytuacja dla developerów operujących językami programowania AI.
Sprawę ułatwia pojawienie się na rynku platform, które udostępniają swoje dane do testowania systemów.
Zastosowanie i przydatność AI
Sztuczna inteligencja już znalazła swoje zastosowanie w wojsku, nauce, czy medycynie. Każdego dnia nawet my korzystamy z rozwoju systemów AI. Oczywiście w mediach pojawiają się głównie wynalazki Elona Muska, czy Marka Zuckerberga, ale każdy z nas kiedyś skorzystał z pomocy sztucznej inteligencji.
- Wirtualni asystenci
Cortana, Google Now, czy Siri to tylko niektóre spośród inteligentnych personalnych asystentów. Pomagają one odszukiwać potrzebne informacje (np.: gdzie jest najbliższa chińska restauracja, kto był władcą Rzymu w 275 roku, itd.), organizują harmonogram dnia, przypominają o ważnych wydarzeniach
- Inteligentne samochody
Choć jeszcze nie jesteśmy w stanie robić sobie drzemkę za kółkiem w drodze do pracy, jest coraz bliżej. Samojezdne samochody Google, Autopiloty Tesly, czy pojazdy Ubera to tylko najbardziej znane próby stworzenia "myślącego samochodu". Oczywiście nie obywa się to bez kontrowersji: wszyscy mamy w pamięci marcowy wypadek samochodu Uber, który potrącił śmiertelnie kobietę. Nikt jednak nie ma wątpliwości, że za kilka lat niemal wszyscy będziemy jeździli tego typu pojazdami
- Serwisy rekomendujące filmy i muzykę
Pandora, Spotify, czy Netflix też opierają swoje rekomendacje na inteligentnych systemach. Serwisy te monitorują twoje wybory i na ich podstawie sugerują tobie nowe propozycje. Lubię początek tygodnia i nowe 'odkryj w tym tygodniu' na Spotify. Ty też, nie?
- Gry wideo
W zasadzie sztuczna inteligencja w swej mało rozbudowanej formie była używana od początku istnienia gier wideo. W ostatnim czasie rozwój AI w grach znacznie się rozwinął. Far Cry czy Call of Duty używają rozwiniętych systemów, by twoi przeciwnicy mogli analizować, co się dzieje wokół nich
- Zakupy
Duże platformy zarabiają dużo pieniędzy, jeśli są w stanie przewidzieć twoje potrzeby i zaproponować tobie produkt. Dobrym przykładem jest Amazon, który chciałby dojść do modelu pracy, w którym będzie tobie wysyłał dany produkt, zanim go zamówisz. Choć technologia ta jeszcze nie funkcjonuje, wydaje się to kwestią miesięcy/lat, aż klikniesz zamówienie a kurier dron od razu będzie pod twoimi drzwiami
- Generatory informacji
Niektóre firmy próbują udowodnić, że dziennikarstwo przejdzie do lamusa za sprawą AI. Od kilku lat rozwijana jest ta gałąź sztucznej inteligencji i firmy takie, jak Yahoo, czy Fox chwalą się, że AI jest w stanie pisać krótkie artykuły. Dotychczas systemy sztucznej inteligencji zdołały sporządzić krótkie podsumowania ekonomiczne, czy relacje z wydarzeń sportowych
- Nadzór ochronny
Jedna osoba monitorująca kilkadziesiąt kamer nie jest najlepszym systemem ochrony. Dzięki treningowi, algorytmy ochrony są w stanie określić i zdefiniować istniejące zagrożenie, po czym wysłać sygnał alarmowy. Oczywiście te systemy nie są w stanie wykryć wszystkiego, a istnieje ciągle wiele sposobów na oszukanie AI.
Jak najbardziej istnieją jeszcze setki rzeczy, które używają sztucznej inteligencji w naszym otoczeniu. Niektórych nawet nie jesteśmy w stanie wychwycić. Smartfony, samochody, banki, domowe gadżety itd. AI jest niemal wszędzie i mocno wpływa na nasze życie.
Jak będzie wyglądać przyszłość
Nikt do końca nie ma pojęcia, jak rozwinie się sztuczna inteligencja. Jak pokazują filmy science -fiction, zwykle przewidywania co do przyszłości nie maja sensu. Bo jeśliby miały, to gdzie jest Marty McFly i moja latająca deska?!
Wydaje sie jednak, że w najbliższych latach, poza branżami, w których AI istnieje, silny nacisk będzie kładziony na rozwój komputerów kwantowych, uczeniu się maszyn, indywidualizacji robotów, rozumieniu języków i...praw androidów.
Tak, to prawda. Roboty też maja swoje prawa. A będą miały ich tylko więcej. W 2017 roku Sophia- humanoidalny robot rodem z Hong Kongu została obywatelem Arabii Saudyjskiej jako pierwsza/y na świecie. Wizualnie wzorowany na Audrey Hepburn android zyskał popularność, gdy udzielił samodzielnie kilkudziesięciu wywiadów. Sophia została zaprojektowana jako odpowiednia towarzyszka dla osób starszych w domach opieki. Nie wydaje się więc, by chciała przejąć kontrolę nad światem.
Co będzie następne? Nie wiem, ale nie mogę się doczekać!