RyszardBlak.com

IT dla humanistów i nie tylko

Jak działa sztuczna inteligencja

|

jak działa sztuczna inteligencja

Jak działa AI, czyli sztuczna inteligencja? Sam koncept raczej nie jest „rocket science”. To trochę jak z uczeniem się dzieci – na początku jest tabula rasa; czysta kartka, którą trzeba zapisać treścią.

Do rzeczy

W dużej mierze proces uczenia się tzw. sztucznej inteligencji przebiega podobnie jak w przypadku człowieka, a mówiąc bardziej konkretnie, dziecka.

Kodeł sztuczna inteligencja
Kodeł – porady eksperta. Więcej w kolejnych artykułach.

Kto ma styczność z maluchami wie, że pierwsze zabawy z dzieckiem polegają na np. przeglądaniu książeczek ze zwierzątkami i powtarzanie w nieskończoność „to jest świnka, to jest krówka, to jest kotek, a to skolopendra”. Potem zamieniamy się rolami i teraz nasze zadanie sprowadza się do wskazywania obrazków palcem, pytania „a co to jest” i weryfikacji odpowiedzi. Jeśli odpowiedź się zgadza, chwalimy – jeśli nie, poprawiamy.

Machine Learning

Wchodzimy tym samym w obszar tzw. Machine Learning, co jest podkategorią konceptu AI.

Machine Learning oznacza, że maszyna musi się czegoś nauczyć, a zrobi to przez analizę dostarczonych jej danych, czyli tzw. Data Set.

Celem jest znalezienie między nimi powiązań; powtarzających się schematów. Na tej podstawie sama tworzy algorytm, który potem zostanie użyty do naszych celów, jak np. identyfikowania zwierzątek na zdjęciach.

OKEANOS 115 - NA RATUNEK BOGU
Co, jeśli AI okażę się naturalnym etapem ewolucji? Dokąd może prowadzić?
Czy młody kapitan znajdzie odpowiedź na krańcu wszechświata?

Jak uczy się AI

Tak jak dziecko potrzebuje książeczek i rodzica, który będzie opowiadał o obrazkach, tak też AI potrzebuje danych i pomocy w ich interpretacji.

W zależności od tego, czy dostarczone dane są opisane, czy też nie, dzielimy taki proces uczenia na 2 główne nurty:

  • Supervised Learning
  • Unsupervised Learning

Supervised Learning

Proces uczenia się w obszarze AI w oparciu o zbiór danych (data set), które są oznaczone, nazywamy Supervised Learning, czyli w luźnym tłumaczeniu – uczenie się pod nadzorem.

W użytej analogii byłoby to przeglądaniem książeczki ze zwierzątkami wraz z rodzicem, który o nich opowiada.

Supervised Learning
czyli „książeczka o zwierzątkach” dla AI i pomoc rodzica

W takim zbiorze danych każde zwierzątko jest podpisane, albo też mówimy dziecku, które to kotki, które pieski, a które przedstawiają skolopendry. Na tej podstawie również AI będzie w stanie przeanalizować każde ze zdjęć i odnaleźć cechy łączące je.

Taki zbiór danych do treningu nazywamy Training Dataset i składa się on z:

  • Feature – w naszym przykładzie będzie to zdjęcie zwierzątka
  • Label – analogicznie będzie to podpis pod zdjęciem, albo opis przez rodzica

Tego typu podpisane dane (labeled data) możemy przygotować sami manualnie – co może być dość czasochłonnym zadaniem. Możemy też kupić taki pakiet gotowych danych, bo są już oczywiście jednostki, które się w tym specjalizują.

Rodzaje Supervised Learning

Ze względu na rodzaj wniosku z dostarczonych danych, o który poprosimy, czyli np. „powiedz, co widzisz na zdjęciu”, albo „powiedz z za jaki czas dziecko poprawnie nazwie wszystkie zwierzątka”. Analogicznie taki podział nazywamy:

  • Classification
  • Regression

Classification

AI przeanalizuje każe ze zdjęć, by doszukać się podobieństw pomiędzy tymi, które oznaczone są jako, pieski, kotki i skolopendry. Wynikiem tej analizy, będzie mechanizm, który ma zidentyfikować zwierzątko na niepodpisanym zdjęciu.

W kolejnym kroku zatem, taki mechanizm poddany jest testom, czy rzeczywiście trafnie oznaczane są zdjęcia i jeśli tak, mamy poprawnie działający algorytm, który możemy już zastosować do analizy nieoznaczonych zdjęć.

To jak po kilku sesjach przeglądania książeczki o zwierzątkach, postanowiliśmy odpytać malucha, jakie zwierzątko widzi na kolejnym obrazku. Jeśli trafi wszystkie, wiemy, że generalnie z rozpoznaniem zwierzątek już sobie poradzi.

Po drugiej stronie Tenczy
Dlaczego ród Toporczyków wygasł tak nagle? Czy legendy Zamku Tenczyn w Rudnie kryją w sobie odpowiedź?
Teraz horror dostępny w promocyjnej cenie.

Regression

Ten typ uczenia się pozwala przewidywać, w oparciu o wykryty trend. Weźmy na to naszego brzdąca, który codziennie przegląda z nami książeczkę ze zwierzątkami i opisuje obrazki. W zeszłym tygodniu trafnie zidentyfikował 5 obrazków z 20, 5 dni temu 7, przedwczoraj 9, a dziś już 13. Na podstawie tego typu danych, kiedy przedstawimy je na wykresie, AI może przewidzieć kiedy na osi czasu dziecko rozpozna wszystkie.

Unsupervised Learning

Skoro ma miejsce Supervised Learning, to jak to we wszechświecie bywa, byty miewają swoje przeciwstawne odpowiedniki. Zgodnie z takim założeniem musi więc istnieć Unsupervised Learning – i tak rzeczywiście jest, a oznacza to tyle co uczenie się bez nadzoru.

Wyobraźmy sobie dziecko pozostawione z klockami z podobiznami zwierzątek, ale nie ma teraz rodzica, który podpowie co to za zwierzątka, więc dziecko może sobie je pogrupować na zasadzie podobieństw.

Unsupervised Learning
czyli „klocki ze zwierzątkami… i nie ma rodzica”

Rodzaje Unsupervised Learning

Przywołane dwa główne nurty uczenia się AI (Supervised i Unsupervised) charakteryzują się rodzajem danych, które mu dostarczymy. Co to znaczy? To znaczy, że jak dostarczymy AI danych w postaci zdjęć zwierzątek, to mogą one być albo jakoś opisane, albo nie.

Kiedy nie są podpisane, sytuacja jest nieco trudniejsza, ale AI będzie w stanie sobie poradzić i o tym za chwilę. Zacznijmy od podziału, który zakłada dwa typu radzenia sobie z nieoznaczonym Data Setem:

  • Clustering
  • Dimension Reduction

Clustering

Jeżeli takie dane nie są oznaczone (labeled) to nadal nie oznacza to, że są bezużyteczne. AI też bezie w stanie jakoś sobie z nimi poradzić. Wówczas zostaną przeanalizowane i pogrupowane zgodnie z podobieństwem.

Tak jak dziecko pozostawione same ze zdjęciami zwierzątek, będzie układało je w grupy tych podobnych do siebie, tak też AI jest w stanie pogrupować dane na zasadzie podobieństwa. Nazywa się to Clustering, a my będziemy mogli nazwać odpowiednio dany Cluster i w ten sposób otrzymamy Labeled Data Set, czy oznaczony zestaw danych.

Czyli Clustering pogrupuje nam kotki z kotkami, pieski z pieskami i skolopendry ze skolopendrami. Na końcu każdy z tych zbiorów możemy manualnie nazwać i mamy już zbiór danych oznaczonych.

Tego typu dane czyli output (wynik operacji) grupowania może posłużyć jako input dla Supervised Learning, które oczekuje „na wejściu” danych oznaczonych.

Dimension Reduction

Im więcej danych do przetworzenia, tym więcej potrzeba czasu i mocy obliczeniowej na wykonanie operacji. Jeśli danych jest po prostu dużo, ale każda jednostka zawiera tyle informacji ile potrzeba, to jest to sytuacja pożądana. Gorzej, kiedy taka jednostka zawiera dużo zbędnych danych, które maszyna musi przełożyć.

Wyobraźmy sobie nasze zdjęcia ze zwierzątkami. Każde z nich niech zawiera kilka dodatkowych paragrafów tekstu i krajobraz w tle. Co jest istotne dla procesu uczenia to jedynie kształt zwierzątka i jego kolor. Zatem wszystko, co ponadto jest zbędne i stanowi niepotrzebny ciężar w procesie przeliczania.

Dimension Reduction usunie zbędny tekst i niepotrzebne tło, albo i nawet ograniczy kolory na zdjęciu do podstawowych, by zminimalizować ciężar danych.

W wyniku takiej operacji otrzymamy data set, który jest zredukowany do minimum i zwielokrotni szybkość wszelkich operacji wykonanych na nim.

Jak działa sztuczna inteligencja – podsumowanie

Do nauki sztuczna inteligencja potrzebuje potrzebuje danych, danych i jeszcze raz danych. Im więcej informacji ma do dyspozycji i im są one bardziej wiarygodne, tym bardziej precyzyjnie będzie działanie algorytmu, który stworzy.

Jednak nie jest to organizm samodzielny, bo tak jak małe dziecko, do odpowiedniego interpretowania informacji potrzebuje kontroli i ewentualnej korekty człowieka. Bez dobrego nauczyciela nawet najzdolniejsze dziecko nie wykorzysta całego swojego potencjału.

IT dla humanistów

Chcesz wejść do IT? Szukasz branży z pracą zdalną w pełnym wymiarze?

Jeśli jesteś zainteresowany pracą w IT, zachęcam do eksplorowania bloga. Dużo bardziej szczegółowo omawiam software development w książce Almanach Informatyczny – Lite.

Jej założeniem jest wprowadzenie każdego do świata IT w 100 słowach i turbo kompaktowych definicjach. Wszystko, czego potrzebujesz, żeby świadomie wybrać rolę dla siebie i czuć się komfortowo, kiedy już zaczniesz.

Powiązane wpisy:

Zobacz także:

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *