Machine Learning. Komputery nie są już niemowlętami

Technologia machine learning dowodzi, że współczesne komputery zyskują kolejne, wyjątkowe umiejętności. Może właśnie ta ich zdolność do zdobywania i przetwarzania nowo nabytej wiedzy spowoduje, że kiedyś będziemy świadkami narodzin sztucznej samoświadomości. Na czym więc polega zdolność komputera do uczenia się?

Podziel się

facebook twitter google+ linkedin email
Machine Learning Norbert Biedrzycki blog

Technologia machine learning dowodzi, że współczesne komputery zyskują kolejne, wyjątkowe umiejętności. Może właśnie ta ich zdolność do zdobywania i przetwarzania nowo nabytej wiedzy spowoduje, że kiedyś będziemy świadkami narodzin sztucznej samoświadomości. Na czym więc polega zdolność komputera do uczenia się?

Małe dziecko, które uśmiecha się, gdy rozpoznaje pochyloną nad nim, naszą twarz wywołuje w nas zachwyt. Cieszymy się, gdy nasza pociecha powtarza za nami pierwsze słowa. Aż nadchodzi moment, kiedy dziecko zaczyna snuć historie o postaciach z bajek, które mu czytaliśmy. W końcu umie liczyć, rysuje, pisze w szkole pierwsze wypracowanie, poprawia je. I pewnego dnia słyszymy, jak wygłasza opinię o świecie. A ta bywa często tak niezwykła, że przeżywamy wstrząs. Bo oto doświadczyliśmy właśnie czyjejś intelektualnej samodzielności i niezależności.

 

Maszyny nabierają mądrości

Poprzez doświadczenia i nabywanie wiedzy z zewnątrz, uczą się już nie tylko ludzie. Z okresu niemowlęcego właśnie wyrastają wyrafinowane technologie informatyczne. Zagadnieniem, które dotyczy Sztucznej Inteligencji i na którym skupia się uwaga współczesnego świata jest tzw. uczenie się maszyn (uczenie maszynowe, ang. machine learning). Sama już nazwa wskazuje, że mamy do czynienia z obszarem na którym procesom całkowicie zautomatyzowanym towarzyszą operacje oparte na inteligentnym przetwarzaniu danych i wyborze. Zjawisko to już dzisiaj określa kierunek najpoważniejszych poszukiwań w świecie nowoczesnych technologii.

 

Machine learning, czyli samodzielność ograniczona

Uczenie się maszyn jest dziedziną na pograniczu matematyki, statystyki i programowania, czy informatyki. Celem jest stworzenie złożonych algorytmów, tak aby algorytmy były w stanie podejmować najbardziej optymalne decyzje oraz co więcej zmieniać same siebie w celu nieustającego samo udoskonalania. Algorytmy stanowiące podstawę machine learning są specyficzne i wysoko rozwinięte. Generalnie działają w oparciu o pewien dynamiczny model, który przetwarza sygnały wejściowe (dane) i po ich przetworzeniu podejmuje określone decyzje. Co bardzo ważne, algorytmy te mają zdolność „uczenia się” w trakcie aktywnego przetwarzania wprowadzanych zbiorów danych. Jednak w całym tym mechanizmie zawarte jest poważne ograniczenie. Polega ono na tym, że komputer, wykonując zadania, korzysta z doświadczenia „nadzorowanego”. Oznacza to, że w całej operacji przetwarzania informacji kluczową rolę odgrywa człowiek – programista, operator, nauczyciel. Jego rolą jest wspomaganie maszyny poprzez wprowadzanie do niej porcji danych, „ręczne’ weryfikowanie stanu powstającego w wyniku analiz czy też eliminacja blokad systemu. Obecnie samodzielność komputera jest więc ciągle ograniczona, bo uzależniona od kierującego nim specjalisty. Przyjmuje się, że pierwszy raz z uczeniem maszynowym zetknęli się specjaliści z koncernu IBM próbujący opracować algorytm, który miał pomagać szachistom w doskonaleniu ich umiejętności. Natomiast bardzo ważnym momentem w rozwoju zjawiska był system informatyczny Dendral stworzony w 1965 roku na Standford Univercity. Jego zadaniem była automatyzacja analiz związków chemicznych. Uznaje się dziś, że efektem tych badań były pierwsze w historii związki, odkryte przez komputer.

Najnowsze prace dążą do tego aby rola człowieka, jako nauczyciela została wyeliminowana lub mocno ograniczona, tak aby algorytmy były w stanie uczyć się samodzielnie.

 

Czas na samodzielność nieograniczoną

Obecnie, jednym z najintensywniej eksplorowanych obszarów związanych z machine learning jest deep learning, traktowane zresztą jako podkategoria tego pierwszego. Za pomocą bardzo rozbudowanych struktur matematycznych, umożliwiających przetwarzanie wielowątkowe, zwane sieciami neuronowymi algorytmy są stanie podejmować decyzje, modyfikować te decyzje w oparciu o popełniane błędy czy zadane wzorce i wybierać z dostępnych danych te najbardziej odpowiadające na zadane pytanie, problem. Czyli są w stanie samodzielnie się uczyć, wykorzystując metody deep learning. Deep learning umożliwia takie procesy jak: rozpoznawanie głosu, języka naturalnego, tłumaczenia z różnych języków czy rozpoznawanie obrazów. A wszystkie te funkcje są teraz szczególnie interesujące dla koncernów takich jak Facebook czy Google.

W założeniu, systemy deep learning działają podobnie do operacji zachodzących w ludzkim mózgu i zakładają tworzenie potężnych sieci neuronowych. To one pozwalają komputerowi uczyć się samodzielnie, już bez udziału człowieka. Są to właściwie duże ilości działających równolegle procesorów zasilanych dużą ilością danych, włącznie z określeniem skomplikowanych związków w jakie te dane w chodzą. Sieci te zyskują nieograniczoną elastyczność, bo neurony dają się łączyć w warstwy – jedna warstwa przekazuje wyniki następnej, aż do chwili, gdy dane zadanie zostanie rozwiązane.

Zdolność do uczenia się, czyli udoskonalania własnego działania przez komputer, wynika tu generalnie z jednej przyczyny. Sieci neuronowe są zbiorem węzłów połączonych ze sobą. Po każdym nowym doświadczeniu komputera, który podejmuje się działania, połączenia miedzy owymi węzłami reorganizują się. Poziom tych połączeń jest coraz doskonalszy, a tym samym, maszyna sprawniej reaguje na wyznaczone jej zadania. Fakt, że komputery adaptują się samodzielnie pod wpływem gromadzonych doświadczeń, a nie pod wpływem ingerencji programisty skutkował przełomem w rozwoju technologii informatycznych i komercyjnym ich zastosowaniu. Głównym czynnikiem, który wzmacnia zainteresowanie sieciami neuronowymi jest nie gasnący na rynku popyt na porządkowanie i wyszukiwanie informacji. W erze Big Data technologia deep learning jest naszym wielkim sprzymierzeńcem.

 

Watson całą prawdę Ci powie

Brzmi to nieco abstrakcyjnie, i można mieć wrażenie, że rzecz dotyczy jakichś sprzętów ukrytych w wojskowych laboratoriach. A to nie jest prawda. Deep learning wychodzi na ulice i trafia do naszych domów. Stworzony przez IBM komputer lub bardziej prawidłowo zwana Sztuczna Inteligencja IBM Watson, potrafi analizować olbrzymie zbiory wprowadzanych do niego danych. Ta niezwykle wydajna maszyna jest przykładem na to, jakie możliwości otwierają się przed użytkownikiem dzięki zastosowaniu mechanizmów machine learning i deep learning. Komputer rozumie zadawane mu pytania w języku naturalnym, a szukając na nie odpowiedzi, przeszukuje potężne zbiory o różnym charakterze – dotyczą zagadnień biznesowych, matematycznych, medycznych, prawnych. IBM Watson funkcjonuje w oparciu o opisaną wyżej zdolność powiększania swoich możliwości wraz kolejnymi zadaniami, które wykonuje. Im więcej danych maszyna w siebie przyjmuje, im więcej zadań dostaje do rozwiązania, tym jej umiejętności analityczno-poznawcze rosną.

I właśnie na rozpowszechnienie tego typu urządzeń liczy współczesny biznes i medycyna. Dlatego wszystkie liczące się koncerny technologiczne nie ustają w wysiłkach, by rozwiązania zastosowane w tym ultra wydajnym komputerze rozwinąć w jak największej ilości przypadków. Dlatego nad podobnymi rozwiązaniami pracuje dzisiaj zarówno Elon Musk jak i Google, Facebook, czy Microsoft.

 

Jak zwyciężyć chińskie „Go”?

Ciekawostką, a jednocześnie dobrą ilustracją opisanych mechanizmów i różnic między machine learning a deep learning będzie słynna historia zwycięstwa komputera w pojedynku z mistrzami chińskiej gry „Go”. Jej zasady zakładają nieskończoną wręcz ilość kombinacji, w jakich mogą wystąpić figury na planszy. (Szachy przy „Go”, to mało skomplikowana zabawa). Alpha Go – algorytm stworzony przez Google po pierwsze umożliwił komputerowi przeanalizowanie milionów gier między ludźmi (mieliśmy więc tu do czynienia z uczeniem nadzorowanym, opartym na zamkniętym zbiorze danych). Ale dużo poważniejszy wpływ na sukces komputera miał fakt, że maszyna potrafiła przeanalizować również inny zbiór sytuacji na planszy – grając z samą sobą (deep learning)! Taka praca była możliwa oczywiście tylko dzięki potężnym serwerom i technologii chmury. To właśnie współcześnie dostępne moce obliczeniowe umożliwiły niebywały sukces algorytmu Google.

 

Zyskujemy wszyscy

Jest wiele innych obszarów, na których wpływ inteligentnych będzie szczególnie widoczny. Nie byłoby mowy o pojawieniu się autonomicznych samochodów Tesli, gdyby nie opisywane przeze mnie technologie. Samosterujący pojazd może poruszać się na drogach między innymi dlatego, bo potrafi czytać i analizować mijane na trasie obrazy. Uczenie się maszyn niesie ze sobą także konsekwencje dla procesów porządkowania informacji. Firmy doradcze, dokonujące ekspertyz przy użyciu analiz setek milionów danych, zyskują dzisiaj narzędzia analityczne o dużych możliwościach. Kolejnym beneficjentem powinien okazać się świat medycyny. Dla tej branży każde narzędzie pozwalające na modelowanie zachowań ludzkiego organizmu jest na wagę złota. W innym tekście pisałem o współczesnym kliencie, którzy domaga się od globalnego rynku, całkowicie zindywidualizowanych i błyskawicznie dostępnych usług. I właśnie uczące się maszyny mogą takie pragnienie zmaterializować. Wielkie platformy zakupowe, takie jak Amazon używają nowoczesnych algorytmów do lepszego i szybszego prezentowania swej oferty na monitorze klienta.

 

Wiedza ludzkości pod ręką

Jak już wspomniałem, komercyjne efekty przedstawionych technologii już zaczynają być widoczne dla przeciętnego użytkownika. Myślące maszyny pracujące w oparciu o opisywane technologie będą dopuszczały człowieka do coraz większych zasobów wiedzy, która była dotąd niedostępna, nie przetwarzalna. Największy przełom jakiego możemy się spodziewać w związku z popularyzacją zarysowanych wyżej technologii może dotyczyć medycyny i rynków finansowych. Myślę, że na duże obserwowalne zmiany poczekamy najwyżej dwa – trzy lata. A będą to zmiany które będą miały ogromny wpływ na każdego z nas.

 

Powiązane artykuły:

Co pomyśli maszyna, gdy spojrzy nam głęboko w oczy?

Blockchain, czyli ostateczny krach systemu finansowego

Biologia syntetyczna. Matrix, owieczka Dolly i bakterie przyszłości

Trwałe połączenie technologii z człowieczeństwem

Blockchain ma potencjał do wzruszenia podstawowych filarów naszego społeczeństwa

Mózg, urządzenie które wypada z obiegu

Sztuczna Inteligencja – realne zagrożenie czy nieuzasadniona obawa?

 

 

Machine Learning Use Cases. Link

 

Infografika Machine Learning. Opracowana przez Todda Jaquith’a i The Futurism Team

 

 

 

Skomentuj

20 comments

  1. Jacek Krasko

    Maszyny nigdy nie będą miały problemów moralnych. Decyzje będą podejmowane w oparciu o algorytmy, zaprogramowane działania. Gdzie tu moralność?

  2. Jacek B2

    Komputery od dawna już nie są niemowlakami 🙂 Rozumiem że tytuł ma być prowokacyjny. Bardzo ciekawy artykuł. Ostatni development technologiczny (sztuczna inteligencja, uczenie się maszyn, blockchain) utwierdza mnie w przekonaniu że stoimy na progu ogromnych zmian, które przedefiniują nie tylko rynek pracy – automatyzacja, robotyzacja, ale również sposób w jaki żyjemy. Czeka nas rewolucja

  3. Andrzej_Ko

    Tu porozmawiajcie. Na blogu. Będziemy mieli możliwość się włączyć do dyskusji. Ja ustawiłem powiadamianie na nowe komentarze i będę czekał na ciąg dalszy 🙂

  4. TomaszK1

    Komercyjne zastosowanie ML. Już teraz, nie za kilka lat. Siri, Andersa, IBM Watson – zaraz będziemy mieli małe sztuczne inteligencje, jeszcze prymitywne, w każdym urządzeniu. Z bardzo rozbudowaną logiką samouczenia się maszyn – Machine Learning

  5. Andrzej44

    Samochód autonimiczny to idealny przykład samo uczenia się maszyn. Jednak system musi być ciągle wzbogacany o nowe źródła danych. Własnie dlatego samochody autonomiczne połączone są w jedną wielką sieć i ciągle wymianiają się danymi poprawiając swoje algorytmy. Coś na wzór wielkiego mrowiska, tyko bez królowej jako centralngo punktu. System jest ciągle automatycznie testowany w celu stworzenia modelu zachowania danego obiektu (samochód autonomiczny) i sprawdzania czy dany obiekt funkcjonuje prawidłowo, oraz wypracowania modelu działania w momencie, gdy coś się dzieje nieprzewidzianego. Przez to algorytm ciągle testowany jest w czasie rzeczywistym. W oparciu o zbierane dane z otoczenia algorytm będzie wciąż się uczył i poprawiał swoje działanie. To w skrócie dlatego samochody autonomiczne uczą się najlepszych reakcji. Przykład ML

  6. DCzaj

    Bardzo fajny fimik. Też polecam.

    Panie Norbercie – apeluję o zrobienie jakiegoś indeksu po Pana artykułach. W takiej postaci jak teraz ciężko się je czyta i szuka informacji po Pana blogu

    • Norbert Biedrzycki  

      Dziękuje.

      Jest Pan już kolejną osobą która zwraca mi na to uwagę. Faktycznie, jak artykułów było kilka-kilkanaście wszystko było czytelne. Teraz po ponad roku prowadzenia bloga artykułów jest kilkadziesiąt i być może muszę wprowadzić inny sposób szukania. Zastanowię się. Dziękuje.

  7. Krzysztof C

    Nie zgadzam się z tezą że wszyscy na tym zyskamy. Zwolnieni pracownicy, zastąpieni przez maszyny też?

    Poza tym nasz mózg nie działa jak komputer i żadna masa krytyczna w postaci niesamowitej mocy obliczeniowej nie sprawi że powstanie świadomość, taka jaką ma zmaterializowany umysł czyli mózg. Czyl co? Powstanie jakaś SUPERŚWIADOMOŚĆ? Jak? Czytam o AI i nie mogę sobie tego wyobrazić. To poprostu jest niwmożliwe. A gdzie emocie? miejsce na błędy? Maszyny tak nie działają.

    Ponadto obiektywnie wierzę w żaden sposób nie da się stwierdzić czy ów sztuczny mózg jest w ogóle świadomy. A to jest przecież inteligencja – samoświadomość. Mózg nie przetwarza milionów bitów na sekundę czy nano sekundę , w ogóle nic nie przetwarza.

    W moej ocenie AI to ślepa uliczka i kompletne nieporozumienie a tzw. sieci neuronowe to piękna nazwa dla oprogramowania procesora. Tyle i tylko tyle. Z chęcią wdam się w polemikę. Poproszę o mail na priva. Ma Pan bo podałem podczas rejestracji na bloga. A swoją drogą – ciekawe tematy Pan porusza 🙂

    • Norbert Biedrzycki  

      Oczywiście ma Pan rację – daleko nam do świadomości. Bardzo dziękuję za ciekawy komentarz. Wysłałem mojego maila, ale zapraszam do rozmowy na forum bloga

  8. Andrzej K

    Koncept zbudowania sieci neuronowych w oparciu o warstwy połączonych perceptronów wjest znany od wielu lat. Sieci neuronowe nauczane są na kierunkach IT od wielu lat. Problem był jak nauczyć te sieci działania i jak i jakie algorytmy stworzyć żeby zaczęły działać. W przypadku jednej warstwy sieci znamy wejścia, znamy wyjścia, więc łatwo jest określić błąd i skorygować współczynniki na wejściach. Natomiast kiedy mamy kilka lub kilkanaście warstw nie wiemy co powinno być na wyjściach z pośrednich warstw. Algorytmy do nauki tutaj się kończą. Niestety. Bardzo trudno jest sieć nauczyć. Dopiero ostatnimi laty zrobiliśmy znaczny postęp tutaj. Algorytmy zaczęły się sam przeprogramowywać

    Przełom nastąpił dopiero w momencie opracowania algorytmu propagacji wstecznej, który umożliwił skuteczne i względnie szybkie uczenie takich sieci 😉

    • Norbert Biedrzycki  

      Zarazem się zgadzam – nie jest to zagadnienie nowe, fundamenty technologii jako np sieć neuronowa i jej modele matematyczne są nauczane na kierunkach IT od dobrych kilkunastu lat. Co najmniej. Czyli temat nie jest super nowy. Ale gdzie się nie zgadzam to zastosowania. Dopiero teraz, niedawno nauczyliśmy się uczyć sieć w sposób szybki, praktycznie maszynowy. Wsadem może być cały skatalogowany internet. Z tym że rodzą nam się tzw czarne skrzynki, gdzie nikt nie wie jak pomiędzy wartstami sieci przechodzi proces decyzyjny. To może być problem, bo za chwilę możemy stracić nad naszymi AI kontrolę