Uczenie maszynowe (ang. machine learning) to dyscyplina z pogranicza Informatyki i Statystyki. W uczeniu maszynowym chodzi o to aby stworzyć system, który stawałby się coraz bardziej efektywny (w jakimś konkretnym zadaniu) w miarę uczenia czyli przetwarzania coraz większej liczby danych trenujących.
Wbrew obiegowej opinii i narosłym mitom wokół ogólnie pojętej sztucznej inteligencji, w uczeniu maszynowym nie ma żadnej „wyższej inteligencji”, woli przetrwania lub chęci przejęcia kontroli nad światem 😉 Uczenie maszynowe polega na wykorzystaniu jakby nie było prostych algorytmów. Są one proste kiedy się je rozumie a bywają złożone jeżeli dany koncept jest rozwijany i specjalizowany. Tak samo jak obliczamy największą wspólną wielokrotność tak samo można obliczyć… no właśnie co?… W uczeniu maszynowym obliczamy funkcję, która „coś zrobi z danymi”.
Uczenie z nadzorem (supervised learning)
Uczenie z nadzorem polega na wprowadzaniu do systemu uczącego się próbki danych (lub można powiedzieć danych trenujących) tzw. danych wejściowych i danych wyjściowych. System za pomocą algorytmów napisanych przez człowieka „usiłuje zgadnąć” co trzeba zrobić z danymi X aby wyszedł wynik Y.
Przykłady algorytmów uczenia maszynowego z nadzorem:
- ID3 (generujący drzewa decyzyjne) i jego odmiany np. C4.5,
- regresja liniowa (linear regression),
- regresja logistyczna (logistic regression),
- naiwny algorytm Bayesa (naive Bayes),
- sieci neuronowe – perceptrony wielowarstwowe (neural networks).
Zastosowania uczenia maszynowego z nadzorem :
- systemy ekspertowe,
- rozpoznawanie pisma,
- gra w kółko i krzyżyk,
- predykcja
Uczenie bez nadzoru (unsupervised learning)
W uczeniu bez nadzoru mamy dane wejściowe ale nie mamy danych wyjściowych. System nie ma konkretnego przykładu co z danymi ma się stać. Systemy tego typu są przydatne do odkrywania nowych i nieznanych regularności w próbce danych, odkrywaniu wiedzy i przykładowo w grupowaniu.
Przykłady algorytmów uczenia maszynowego bez nadzoru:
- k-średnich (wykorzystywany w klasteryzacji),
- k-najbliższych sąsiadów (k-nearest neighbor algorithm).
Praktyczne zastosowanie uczenia maszynowego bez nadzoru:
- grupowanie (klasteryzacja),
- detekcja anomalii.
Odpowiedz lub skomentuj