lineblur
blog
Data Science
facebooklinkedintwitterShare

Wprowadzenie do Data Science #1 – sztuczna inteligencja, uczenie maszynowe i uczenie głębokie

 

Technologia rozwija się w zawrotnym tempie. Niejednokrotnie słyszymy takie pojęcia jak sztuczna inteligencja, uczenie maszynowe, sieci neuronowe, czy uczenie głębokie – mało kto jednak jest w stanie powiedzieć, co tak naprawdę je różni. Chcemy podążać za najnowszymi trendami, chcemy zdobywać przewagę konkurencyjną i technologiczną, chcemy, by świat przyszłości zamieszkał z nami już na stałe, więc nie pozostaje nam nic innego jak powiedzieć tej technologii – „Dzień dobry”.

Na wstępie zastrzegę, że artykuł ten ma charakter wprowadzający do tematyki Data Science, w związku z czym jego założeniem jest upraszczanie wielu kwestii. Jest to jednak zabieg celowy, a w kolejnym wpisach z tej serii tematy te będą stopniowo rozwijane i uszczegóławiane.

Być może nasze życie nie jest jednym wielkim programem komputerowym niczym w serii filmów „Matrix”, jednak nie da się zaprzeczyć, że technologia ma na nie coraz większy wpływ. Przecież aplikacje takie jak Spotify, Netflix, YouTube czy Facebook potrafią już sugerować nam treści na w pełni zautomatyzowany, ciągły sposób, jak również na podstawie wyrażanych przez nas opinii i historii użytkowania. Jak to się jednak dzieje, że te aplikacje same uczą się naszych nawyków i przekonań, a także sugerują nam to, na co mamy ochotę?

 

Sztuczna inteligencja – modele zachowań inteligentnych


To wszystko przez nią – technologię, która otwiera oczy, robi wrażenie, szokuje, zaskakuje i czyni cuda, czyli sztuczną inteligencję (SI, ang. Artificial Intelligence (AI)). Jest to pojęcie bardzo szerokie, jednak nie tak nowe, jak pozornie mogłoby się wydawać. Nakreślił je w 1956 roku (czyli już ponad 60 lat temu!) amerykański laureat nagrody Turinga – John McCarthy. Swoje lata świetności przeżywa jednak dopiero teraz, gdy wydajność sprzętu umożliwiła jej szerokie wykorzystanie – i to nie tylko w bazach wojskowych, ale też w Twoim laptopie, telefonie, a nawet zegarku. 

Sztuczna Inteligencja jest obecnie uważana za dział informatyki zajmujący się tworzeniem modeli zachowań inteligentnych, czyli, w domyśle – naśladujących te naturalne, np. ludzkie czy zwierzęce – jednak sztuczne, ponieważ generowane przez programy i maszyny, nie zaś przez organizmy żywe. W skład tego działu wchodzą pomniejsze dziedziny, takie jak uczenie maszynowe, logika rozmyta, czy algorytmy ewolucyjne. Obecnie powszechnie wykorzystywana jest w systemach rekomendacyjnych, a z coraz większym sukcesem implementujemy ją w pojazdach autonomicznych, fabrykach, aparaturze medycznej, asystentach głosowych i wyszukiwarkach.

 

Uczenie maszynowe – wykorzystywanie zbiorów danych


Jedną z fundamentalnych technik wykorzystywanych w omawianej dziedzinie nauki jest wspomniane wcześniej uczenie maszynowe (ang. Machine learning (ML)). Jest to jedna z dróg pozwalająca osiągnąć cel – stworzenie czegoś, co przypomina naturalną inteligencję. Charakteryzuje się ono wykorzystywaniem zbiorów danych, czyli zbiorów przykładów, które przetwarza, analizuje i porównuje w celu znalezienia wspólnych wzorców i poznania niuansów je różniących. Zbiór danych może być reprezentowany przez zbiór obrazów przedstawiających obiekty, np. długopisy. Zadaniem algorytmu jest, na podstawie posiadanej wiedzy (zbiór zdjęć długopisów), znaleźć takie wzorce i charakterystykę obiektów, jakimi w tym przypadku są długopisy, aby na kolejnych obrazach, których algorytm nie posiadał do tej pory w swojej bazie wiedzy, być w stanie wskazać właśnie długopisy, nie natomiast ołówki czy kredki. 

Należy jednak wiedzieć, że tak zbudowany system czerpie wiedzę z cech precyzyjnie przygotowanych przez człowieka, a osoba nadzorująca algorytm musi określić, jakie cechy powinny być poszukiwane przy rozpoznaniu danego obiektu. Mogą one być różne, np. przy wykrywaniu nowotworów skóry, taką cechą będzie kształt, barwa, rozmiar czy jednorodność znamion. System uczenia maszynowego, podobnie jak ludzki mózg, na podstawie nowych doświadczeń i przykładów jest w stanie ciągle się rozwijać i rozbudowywać – poznawać nowe schematy, lepiej rozróżniać drobne szczegóły i podejmować decyzje z większą pewnością.

infografika uczenie maszynowe

 

Uczenie głębokie ­– sieci neuronowe


Do pełni szczęścia pozostały nam już tylko dwa pojęcia do wyjaśnienia – uczenie głębokie oraz sieci neuronowe. Pojawia się tutaj jednak miła niespodzianka, ponieważ, nie wchodząc w szczegóły, uczenie głębokie (ang. Deep learning (DL)) to dziedzina budująca głębokie sieci neuronowe i na ten moment ta wiedza powinna nam w zupełności wystarczyć. Sieci neuronowe nazywa się głębokimi, ponieważ algorytm taki składa się z co najmniej kilku warstw, przez które przesyłane są wprowadzone do niego dane, a każda z warstw pełni swoją – z góry przypisaną – rolę. Sieci neuronowe zawdzięczają swoją nazwę sieci neuronów znajdujących się w mózgu, ponieważ zadaniem tych pierwszych, jest przypominać te drugie w kontekście strukturalnym. 

Głębokie sieci neuronowe, chociaż zaliczane są do podgrupy algorytmów uczenia maszynowego, wyróżnia fakt, że algorytm samodzielnie buduje zestaw cech do rozpoznawania, kategoryzowania czy sugerowania. Bardzo często robi to zdecydowanie szybciej i dokładniej niż człowiek. Proces uczenia takiej sieci jest jednak często długotrwały, wymaga bardzo dużej ilości danych i, wbrew pozorom, bardzo dobrej wiedzy z zakresu budowy sieci neuronowych. Wbrew pozorom – ponieważ sieci neuronowe często uważane są za black box, pudełko, do którego wprowadzamy dane, a ono „magicznym” sposobem daje nam pożądane rezultaty. Często tak właśnie się dzieje, jednak wynika to z faktu, że ktoś wcześniej odpowiednio przygotował tę sieć do konkretnych zadań, dobrał jej architekturę, wyuczył i przetestował, a my po prostu korzystamy z jej możliwości, podanych nam przez twórców na tacy.

Infografika uczenie głębokie

 

Podsumowanie

 

  • sztuczna inteligencja (SI, ang. Artificial Intelligence (AI)) to dziedzina informatyki zajmująca się tworzeniem modeli zachowań inteligentnych – zbliżonych do zachowań ludzkich czy zwierzęcych,
  • uczenie maszynowe (ang. Machine learning (ML)) to podzbiór sztucznej inteligencji wykorzystujący algorytmy matematyczne do przeszukiwania danych i wyszukiwania wzorców. Większa ilość danych wydłuża czas analizy, zazwyczaj prowadząc do uzyskania lepszych rezultatów,
  • głębokie sieci neuronowe (uczenie głębokie – ang. Deep learning (DL)) to z kolei podkategoria uczenia maszynowego, w której algorytm tworzy sieć powiązań strukturyzowaną w warstwy i sam (bez konieczności definiowania przez człowieka pewnych cech) jest w stanie znaleźć wzorce zachowań.
schemat sztuczna inteligencja

 

Sztuczna inteligencja szybko się rozwija, a omówione tutaj zagadnienia stanowią elementarną wiedzę pozwalającą zrobić pierwszy krok w poznaniu tej niesamowitej, pełnej marzeń i oczekiwań dziedziny o wielkiej przyszłości. W kolejnych artykułach będziemy poddawać bardziej szczegółowej analizie konkretne możliwości wykorzystania różnych jej filarów – pojawią się przykłady zarówno oparte o popularne produkty, z których korzystamy na co dzień, jak i problemy, które każdy z filarów może bardzo efektywnie rozwiązać.

Similar horizons

2023-05-17Data Science

Wprowadzenie do Data Science #3 – Autonomiczne sklepy – Jak to właściwie działa?

2021-04-09Data Science

Wprowadzenie do Data Science #2 – 12 zastosowań sztucznej inteligencji

2020-10-14Data Science

Wprowadzenie do Data Science #1 – sztuczna inteligencja, uczenie maszynowe i uczenie głębokie