Podstawy AI

Co to jest Machine Learning?

mm
Dodaj Unite.AI do preferowanych ÅšrÃģdeł w Google

Machine learning to jedna z najszybciej rozwijających się dziedzin technologicznych, ale pomimo tego, jak często słyszy się słowa „machine learning”, moÅže być trudno zrozumieć, co to jest machine learning, ściśle mÃģwiąc.

Machine learning nie odnosi się do jednej rzeczy, jest to pojęcie, ktÃģre moÅže być stosowane do wielu rÃģÅžnych pojęć i technik. Zrozumienie machine learning oznacza znajomość rÃģÅžnych form analizy modelu, zmiennych i algorytmÃģw. Przyjrzyjmy się bliÅžej machine learning, aby lepiej zrozumieć, co ono obejmuje.

Co to jest Machine Learning?

ChociaÅž termin machine learning moÅže być stosowany do wielu rÃģÅžnych rzeczy, ogÃģlnie rzecz biorąc, odnosi się do umoÅžliwienia komputerowi wykonywania zadań bez otrzymywania jawnych instrukcji krok po kroku. Specjalista machine learning nie musi pisać wszystkich krokÃģw niezbędnych do rozwiązania problemu, poniewaÅž komputer jest w stanie „uczyć się” poprzez analizę wzorcÃģw w danych i uogÃģlnianie tych wzorcÃģw na nowe dane.

Systemy machine learning składają się z trzech podstawowych części:

  • Dane wejściowe
  • Algorytmy
  • Dane wyjściowe

Dane wejściowe to dane, ktÃģre są wprowadzane do systemu machine learning, a dane wejściowe moÅžna podzielić na etykiety i cechy. Cechy są istotnymi zmiennymi, zmiennymi, ktÃģre będą analizowane w celu poznania wzorcÃģw i wyciągnięcia wnioskÃģw. Tymczasem etykiety są klasami/opisami przypisanymi do poszczegÃģlnych przypadkÃģw danych.

Cechy i etykiety mogą być stosowane w dwÃģch rÃģÅžnych typach problemÃģw machine learning: supervised learning i unsupervised learning.

Nadzorowane vs. Nienadzorowane uczenie

W nadzorowanym uczeniu dane wejściowe są acompaÃąowane przez ground truth. Problemy z nadzorowanym uczeniem mają poprawne wartości wyjściowe jako część zestawu danych, więc oczekiwane klasy są znane z wyprzedzeniem. To pozwala na sprawdzenie wydajności algorytmu przez przetestowanie danych na zestawie testowym i sprawdzenie, jaki procent elementÃģw został poprawnie sklasyfikowany.

W przeciwieństwie do tego, nienadzorowane uczenie nie ma etykiet ground truth dołączonych do nich. Algorytm machine learning szkolony do wykonywania zadań nienadzorowanego uczenia musi być w stanie wywnioskować istotne wzorce w danych samodzielnie.

Algorytmy nadzorowanego uczenia są zwykle stosowane w problemach klasyfikacji, gdzie mamy duÅžy zestaw danych wypełniony przypadkami, ktÃģre muszą być posortowane do jednej z wielu rÃģÅžnych klas. Innym typem nadzorowanego uczenia jest zadanie regresji, gdzie wartość wyjściowa algorytmu jest ciągła, a nie kategorialna.

Tymczasem algorytmy nienadzorowanego uczenia są stosowane w zadaniach takich jak estymacja gęstości, klastering i reprezentacja uczenia. Te trzy zadania wymagają, aby model machine learning wywnioskował strukturę danych, nie ma przedstawionych klas dla modelu.

Przyjrzyjmy się krÃģtko niektÃģrym z najczęstszych algorytmÃģw stosowanych w nienadzorowanym i nadzorowanym uczeniu.

Typy nadzorowanego uczenia

WspÃģlne algorytmy nadzorowanego uczenia obejmują:

  • Naive Bayes
  • Support Vector Machines
  • Logistic Regression
  • Random Forests
  • Sztuczne sieci neuronowe

Support Vector Machines to algorytmy, ktÃģre dzielą zestaw danych na rÃģÅžne klasy. Punkty danych są grupowane w klastry poprzez rysowanie linii, ktÃģre oddzielają klasy od siebie. Punkty znajdujące się po jednej stronie linii będą naleÅžały do jednej klasy, podczas gdy punkty po drugiej stronie linii będą naleÅžały do innej klasy. Support Vector Machines mają na celu zwiększyć odległość między linią a punktami po obu stronach linii, a im większa odległość, tym bardziej klasyfikator jest pewny, Åže punkt naleÅžy do jednej klasy, a nie do innej.

Logistic Regression to algorytm stosowany w zadaniach klasyfikacji binarnej, gdy punkty danych muszą być sklasyfikowane jako naleŞące do jednej z dwÃģch klas. Logistic Regression działa poprzez oznaczanie punktu danych jako 1 lub 0. Jeśli postrzegana wartość punktu danych jest 0,49 lub poniÅžej, jest sklasyfikowany jako 0, podczas gdy jeśli jest 0,5 lub powyÅžej, jest sklasyfikowany jako 1.

Decision Tree algorithms działają poprzez dzielenie zestawÃģw danych na mniejsze i mniejsze fragmenty. Dokładne kryteria stosowane do podziału danych zaleŞą od inÅžyniera machine learning, ale celem jest ostatecznie podzielić dane na pojedyncze punkty danych, ktÃģre następnie będą sklasyfikowane przy uÅžyciu klucza.

Algorytm Random Forest jest podstawowo wieloma pojedynczymi klasyfikatorami Decision Tree połączonymi w jeden, bardziej potęŞny klasyfikator.

Klasyfikator Naive Bayes oblicza prawdopodobieństwo, Åže dany punkt danych wystąpił na podstawie prawdopodobieństwa wystąpienia poprzedniego zdarzenia. Opiera się na twierdzeniu Bayesa i klasyfikuje punkty danych do klas na podstawie ich obliczonego prawdopodobieństwa. Podczas wdraÅžania klasyfikatora Naive Bayes zakłada się, Åže wszystkie predyktory mają taki sam wpływ na wynik klasy.

Sztuczna sieć neuronowa, czyli wielowarstwowy perceptron, to algorytmy machine learning inspirowane strukturą i funkcją ludzkiego mÃģzgu. Sztuczne sieci neuronowe składają się z wielu połączonych ze sobą neuronÃģw. KaÅždy neuron manipuluje danymi za pomocą funkcji matematycznej. W sztucznych sieciach neuronowych są warstwy wejściowe, warstwy ukryte i warstwy wyjściowe.

Warstwa ukryta sieci neuronowej to miejsce, w ktÃģrym dane są rzeczywiście interpretowane i analizowane w celu poznania wzorcÃģw. Innymi słowy, jest to miejsce, w ktÃģrym algorytm uczy się. Im więcej neuronÃģw połączonych razem, tym bardziej złoÅžone sieci mogą uczyć się bardziej złoÅžonych wzorcÃģw.

Typy nienadzorowanego uczenia

Algorytmy nienadzorowanego uczenia obejmują:

  • K-means clustering
  • Autoencoders
  • Principal Component Analysis

K-means clustering to technika klasyfikacji nienadzorowanej, ktÃģra działa poprzez dzielenie punktÃģw danych na klastry lub grupy na podstawie ich cech. K-means clustering analizuje cechy w punktach danych i rozrÃģÅžnia wzorce w nich, ktÃģre sprawiają, Åže punkty danych w danej klasie są bardziej podobne do siebie nawzajem niÅž do punktÃģw w innych klasach. To jest osiągane poprzez umieszczenie moÅžliwych centrÃģw klastra, czyli centroidÃģw, w grafie danych i ponowne przypisanie połoÅženia centroidu, aÅž zostanie znalezione połoÅženie, ktÃģre minimalizuje odległość między centroidem a punktami naleŞącymi do tej samej klasy. Badacz moÅže określić Şądany liczbę klastrÃģw.

Principal Component Analysis to technika, ktÃģra redukuje duŞą liczbę cech/zmiennych do mniejszej przestrzeni cech/mniejszej liczby cech. „GłÃģwne składniki” punktÃģw danych są wybrane do zachowania, podczas gdy inne cechy są zmniejszane do mniejszej reprezentacji. Relacja między oryginalnymi danymi jest zachowana, ale poniewaÅž złoÅžoność punktÃģw danych jest prostsza, dane są łatwiejsze do ilościowego opisu.

Autoencoders to wersje sieci neuronowych, ktÃģre mogą być stosowane w zadaniach nienadzorowanego uczenia. Autoencoders są w stanie przyjmować nieoznaczone, swobodne dane i przekształcać je w dane, ktÃģre sieć neuronowa jest w stanie wykorzystać, podstawowo tworząc własne oznaczone dane szkoleniowe. Celem autoencodera jest przekształcenie danych wejściowych i odbudowanie ich jak najdokładniej, więc jest to w interesie sieci, aby określić, ktÃģre cechy są najwaÅžniejsze i wyodrębnić je.

Blogger i programista ze specjalnościami w Machine Learning i Deep Learning tematy. Daniel liczy, Åže pomoÅže innym wykorzystać moc sztucznej inteligencji dla dobra społecznego.