Z czym kojarzy ci się pojęcie „sztuczna inteligencja”? Czy od razu myślisz o robotach, które udają ludzi? Takie wyobrażenie zbudowały w powszechnej świadomości filmy albo powieści science-fiction. Pokazane w nich roboty potrafią rozmawiać, wykonywać skomplikowane czynności... Na ile takie wizje są spójne z rzeczywistością, a w jakim stopniu od niej odbiegają?
Maszyny tego typu jak najbardziej możemy zakwalifikować jako obiekty posługujące się sztuczną inteligencją. Jednak zastosowanie najbardziej istotnego elementu AI (z angielskiego Artifical Intelligence) – mechanizmu uczenia maszynowego – jest znacznie szersze i mamy z nim do czynienia praktycznie każdego dnia. Czy wiesz, kiedy?
Można wskazać wiele przykładów wykorzystania systemów uczenia maszynowego. Należy do nich odblokowanie telefonu poprzez rozpoznanie twarzy właściciela, automatyczne dobieranie reklam według zainteresowań konsumentów czy analiza naszych działań na kontach bankowych.
Sztuczną inteligencję możemy więc zdefiniować jako dział informatyki zajmujący się badaniem, projektowaniem oraz budowaniem inteligentnych systemów, które następnie są wykorzystywane w celu wspomagania lub zastąpienia działań człowieka w wielu dziedzinach życia.
Zastanówmy się, czym musi się charakteryzować się inteligentny system tego typu.
Załóżmy, że naszym celem jest przydzielanie konsumentów do kilku kategorii zgodnych z ich zainteresowaniami. Pierwszym etapem pracy będzie uczenie systemu na bazie pewnej testowej grupy wzorcowych użytkowników – tak zwanego zbioru uczącego. Każdy konsument zostaje opisany za pomocą zestawu atrybutów, na podstawie których ustalamy, do jakiej kategorii go przydzielimy. Sam proces przydzielania obiektu do jednej z ustalonych kategorii nosi nazwę etykietyzacji. Działanie na zbiorze uczącym jest dla systemu etapem, w którym dąży on do skonstruowania modelu wykorzystywanego podczas etykietyzacji. Gdy zakończy się już etap nauki, należy przejść do procesu predykcji. Jest to już właściwe wykorzystanie budowanego systemu z użyciem wcześniej utworzonego modelu. Etykietyzowana grupa konsumentów nie będzie tym razem nazywana zbiorem uczącym, lecz zbiorem testowym. Po zakończeniu tego etapu system jest gotowy i możemy go wykorzystać na przykład w celu wyświetlania internautom takich reklam, które odpowiadają ich zainteresowaniom (czyli użyć systemu do tak zwanego targetowania reklam).
Jest to oczywiście uproszczone przedstawienie całego procesu tworzenia inteligentnego narzędzia. W praktyce realizacja zadania będzie bardziej złożona, a jej efekty mocno zależą między innymi od wykorzystanych w systemie algorytmów.
Należy jednak zwrócić uwagę na to, że podstawą działania nawet najbardziej skomplikowanych inteligentnych maszyn są pewne elementarne założenia. Najważniejszym z nich, czyniącym tworzony obiekt inteligentnym, jest zdolność do nauki. Możliwe byłoby przecież opracowanie systemu klasyfikowania klientów, który bazuje na gotowym, stałym modelu. Spełniać on będzie takie samo zadanie jak utworzone przez nas wcześniej narzędzie wykorzystujące mechanizm uczenia maszynowego. Jednak w przeciwieństwie do niego system korzystający ze stałego modelu nie jest inteligentny.
Nie od rzeczy będzie zadać pytanie: po co stosować AI w systemach, które mogą funkcjonować bez niej? Odpowiedź jest prosta – system inteligentny okaże się bardziej elastyczny i przystosowany do pracy z różnymi zbiorami danych. Dla odmiany, narzędzie działające zgodnie ze stałym modelem może mieć z tym problem. Są również przypadki, w których zaimplementowanie pewnych funkcji bez zastosowania uczenia maszynowego jest niezwykle skomplikowane lub wręcz niemożliwe.
To wszystko powinno zachęcić nas do obserwowania rozwoju jednego z najbardziej ekscytujących działów informatyki – sztucznej inteligencji.