W celu świadczenia usług na najwyższym poziomie stosujemy pliki cookies. Korzystanie z naszej witryny oznacza, że będą one zamieszczane w Państwa urządzeniu. W każdym momencie można dokonać zmiany ustawień Państwa przeglądarki. Zobacz politykę cookies.
Powrót

Co to jest uczenie maszynowe – inteligentna analiza danych?

Uczenie maszynowe jest jednym z najprężniej rozwijających się obszarów sztucznej inteligencji (SI lub AI – artificial intelligence). Mamy z nim coraz częściej do czynienia w życiu codziennym. To technologia, która ułatwia nam funkcjonowanie nie tylko w świecie cyfrowym, ale także w tym realnym. Od przeszukiwania gigantycznych baz danych według określonych algorytmów, przez komputery wygrywające w szachy z arcymistrzami, do podpowiadania kolejnych słów przy redagowaniu wiadomości tekstowych – możliwości zastosowań urządzeń uczących się są nieograniczone.

Uczenie maszynowesamouczenie się maszyn albo systemy uczące się (machine learning) – ta dziedzina wchodzi w skład nauk, które zajmują się sztuczną inteligencją. Jest to nauka interdyscyplinarna. Uwzględnia informatykę, robotykę i statystykę. Jej głównym celem jest praktyczne zastosowanie SI do tworzenia automatycznego systemu, który potrafi doskonalić się na bazie doświadczenia (czyli danych) i nabywać na tej podstawie nową wiedzę.

W uproszczeniu proces polega na znalezieniu wzorca w dostarczonych danych. Posłuży on do odpowiedzi na pytanie o nieznany zbiór tych danych. Jest to pewnego rodzaju przewidywanie przyszłości przez pryzmat statystyki i prawdopodobieństwa.

Uczenie maszynowe dotyczy przede wszystkim rozwoju oprogramowania stosowanego zwłaszcza w innowacyjnych technologiach i przemyśle. Odpowiednie algorytmy pozwalają oprogramowaniu automatyzować proces pozyskiwania i analizy danych, by ulepszyć i rozwijać własny system.

To pozwala:

  • zwiększyć efektywność
  • zwiększyć wydajność
  • zwiększyć bezawaryjność
  • redukować koszty

Uczenie się może być rozpatrywane jako rozbudowa stworzonego pierwotnie algorytmu, czyli dobór parametrów nazywanych wiedzą lub umiejętnością. Na przykład system komputerowy programujemy, by przeszukał dużą bazę danych i znalazł prawidłowości między danymi, przy czym tych prawidłowości wcześniej nie definiujemy. Maszyna dostaje pewien zestaw wytycznych w postaci algorytmu, ale bez konkretnie wskazanego celu poszukiwania. Rozbudowuje automatycznie algorytm w miarę analizy kolejnych danych. To ostatecznie doprowadza do prezentacji wyniku. Takie podejście, mimo że w zasadzie znane już od wielu lat i stosowane w małej skali, np. w robotyce, nabiera nowego znaczenia przy przetwarzaniu big data czy rozwoju narzędzi IT klasy BI (business inteligence).

Gdzie używamy uczenia maszynowego?

Możemy sobie wyobrazić np. wykrywanie oszustw podatkowych na podstawie transakcji i profilów podatników. Mamy do dyspozycji kilka gigantycznych niepowiązanych baz danych, które system informatyczny łącznie przeanalizuje. Potem dojdzie do wniosku, że określona grupa podatników częściej niż inni wykorzystuje konkretne odliczenie i weźmie to pod uwagę, gdy będzie analizować kolejną porcję danych albo przeniesie trend np. z VAT na analizę PIT. Albo na podstawie listy substancji zakazanych w danym kraju, po zgłoszeniu nowego leku przez usługę on-line, wstępnie zdecyduje, czy dopuścić go do obrotu. Bierze pod uwagę jego skład i kombinacje składników oraz proporcje. Oczywiście na końcu decyduje człowiek, ale wyposażony w wiedzę, którą mógłby zdobyć tylko po długotrwałych i kosztownych badaniach laboratoryjnych.

Trudno szukać dziedziny czy branży generującej codziennie ogromne ilości danych, w której uczenie maszynowe nie znajdzie zastosowania. Firmy, takie jak Google czy nasze rodzime Allegro, dzięki zaawansowanym algorytmom uczącym się zwiększają efektywność i szybkość wyszukiwania oraz przetwarzania informacji. Coraz częściej padają pomysły, by wykorzystać mechanizmy uczenia maszynowego w projektach administracji publicznej.

Po co używamy uczenia maszynowego?

  • tworzenie nowych pojęć
  • wykrywanie nieznanych prawidłowości w danych
  • formułowanie reguł decyzyjnych
  • przyswajanie nowych pojęć i struktur za pomocą uogólnienia i analogii
  • modyfikowanie, uogólnianie i precyzowanie danych
  • zdobywanie wiedzy poprzez interakcję z otoczeniem
  • formułowanie wiedzy zrozumiałej dla człowieka

Uczenia maszynowego potrzebujemy do:

  • analizy i używania olbrzymich baz danych, których rozmiary, złożoność i wymóg ciągłej aktualizacji nie pozwalają na niezautomatyzowaną analizę (ekonomia, medycyna, chemia)
  • dostosowania się systemu do środowiska poprzez dynamiczną modyfikację, która pozwala poprawnie działać w zmiennych warunkach (robotyka, systemy sterowania, produkcji, analizy danych)
  • szukania i analizy zależności w dużych bazach danych, by syntetycznie przedstawić informacje według podanych kryteriów (systemy eksperckie, wyszukiwarki internetowe)
  • analizy, badania i opracowania bardzo złożonych problemów, trudnych do opisu i często bez wystarczających modeli teoretycznych, których uzyskanie jest kosztowne, czasochłonne lub mało wiarygodne (fizyka, matematyka)

Czego potrzebujemy: uczenia maszynowego, sztucznej inteligencji czy tylko zaawansowanego algorytmu?

Sztuczna inteligencja to sztuka oraz nauka podejmowania prób tworzenia maszyn, które sprawiają wrażenie myślących. Nie chodzi tu o tworzenie maszyn, które zastąpią ludzi, czego tak się obawiamy. Tworzymy maszyny, które będą dla nas użyteczne. Tymczasem często nazywamy rozwiązania i przedmioty inteligentnymi, choć wcale takie nie są. By takie były, konieczny jest element przetwarzania i płynącej z niego wartości dodanej.

Machine learning w IT najczęściej nie kojarzymy np. z robotyką, tak jak sztucznej inteligencji, a raczej z przeszukiwaniem dużych baz danych. Jak wspominaliśmy powyżej, sztuczna inteligencja to pojęcie szersze niż uczenie maszynowe, które jest tylko jednym z obszarów wyodrębnionych w tej dziedzinie nauki. Jest też cienka granica między dobrze napisanym algorytmem zaimplementowanym w programie, który wykonuje zdefiniowane wcześniej polecenia, a algorytmem uczącym się.

Najlepszym przykładem, który ilustruje różnicę, są słynne pojedynki arcymistrzów szachowych z superkomputerami. Maszyna IBM Deep Blue, która pokonała Kasparova, to przykład systemu, który nie nauczył się, jak grać w szachy, ale został zaprogramowany tak, by grał w szachy i miał zapisane konkretne schematy działania zależne od ustawienia figur. Jego przewagą była baza dużej liczby możliwych ruchów i moc obliczeniowa. Jego przeciwieństwem jest program komputerowy AlphaGo. Ten wykorzystuje mechanizm uczenia maszynowego. Stworzony przez firmę DeepMind nauczył się skutecznie grać w go i pokonał najlepszego gracza na świecie.

 

Źródło:

https://pl.wikipedia.org/wiki/Uczenie_maszynowe

http://www.przemyslawowsianik.net/2017/03/07/machine-learning-z-czym-to-sie-je/

https://pl.wikipedia.org/wiki/AlphaGo

 

Autor: Marcin Rogalski

{"register":{"columns":[{"header":"Pozycja","value":"138","registerId":20735334,"dictionaryValues":[],"nestedValues":[],"showInContent":false,"positionSelector":".article-area__article h2","insertMethod":"after"},{"header":"Obszar publikacji","value":"","registerId":20735334,"dictionaryValues":[{"id":"aspekty techniczne/technologie IT","value":"aspekty techniczne/technologie IT"}],"nestedValues":[],"showInContent":false,"positionSelector":".article-area__article h2","insertMethod":"after"}]}}