logo

Algorytmy uczenia maszynowego

Algorytmy uczenia maszynowego to modele obliczeniowe, które pozwalają komputerom rozumieć wzorce i prognozować lub dokonywać ocen na podstawie danych bez potrzeby jawnego programowania. Algorytmy te stanowią podstawę nowoczesnej sztucznej inteligencji i są wykorzystywane w szerokim zakresie zastosowań, w tym w rozpoznawaniu obrazu i mowy, przetwarzaniu języka naturalnego, systemach rekomendacji, wykrywaniu oszustw, samochodach autonomicznych itp.

Ten Algorytmy uczenia maszynowego artykuł obejmie wszystkie podstawowe algorytmy uczenia maszynowego, takie jak Maszyna wektorów wsparcia, podejmowanie decyzji, regresja logistyczna, naiwny klasyfikator Bayeesa, losowy las, grupowanie k-średnie, uczenie się przez wzmacnianie, wektor, grupowanie hierarchiczne, xgboost, adaboost, logistyka itp.



oś pandy

Rodzaje algorytmów uczenia maszynowego

Istnieją trzy typy algorytmów uczenia maszynowego.

  1. Nadzorowana nauka
    • Regresja
    • Klasyfikacja
  2. Uczenie się bez nadzoru
  3. Uczenie się przez wzmacnianie

Rodzaje algorytmów uczenia maszynowego

1. Algorytm uczenia się nadzorowanego

Nadzorowana nauka to rodzaj algorytmów uczenia maszynowego, w którym do uczenia modelu lub algorytmów używaliśmy oznaczonego zbioru danych. Celem algorytmu jest nauczenie się mapowania danych wejściowych na etykiety wyjściowe, co umożliwi mu przewidywanie lub klasyfikację nowych, niewidocznych danych.

Nadzorowane algorytmy uczenia maszynowego

  1. Model liniowy:
    • Regresja
      • Zwykła regresja metodą najmniejszych kwadratów
      • Prosta regresja liniowa
      • Wielokrotna regresja liniowa
      • Regresja wielomianowa
      • Ortogonalne dążenie do dopasowywania (OMP)
      • Regresja Bayesa
      • Regresja kwantylowa
      • Regresja izotoniczna
      • Regresja krokowa
      • Regresja najmniejszego kąta (LARS)
    • Klasyfikacja:
    • Regularyzacja :
      • Lasso (regularyzacja L1)
      • Grzbiet (regularyzacja L2)
        • Regresja grzbietu
        • Klasyfikator grzbietowy
      • Elastyczna siatka
      • LARS Lasso
  2. K-najbliżsi sąsiedzi (KNN):
    • Algorytmy brutalnej siły
    • Algorytmy drzewa kulowego i drzewa KD
    • Klasyfikator K-najbliższych sąsiadów (KNN).
    • Regresor K-najbliższych sąsiadów (KNN).
  3. Maszyny wektorów pomocniczych:
    • Obsługa regresora maszyn wektorowych
    • Różne funkcje jądra w SVM
  4. Stochastyczne zejście gradientowe
    • Klasyfikator stochastycznego zejścia gradientowego
    • Regresor stochastycznego gradientu zejścia
    • Różne funkcje straty w SGD
  5. Drzewo decyzyjne:
    • Algorytmy drzew decyzyjnych
      • Algorytmy iteracyjnego dychotomizera 3 (ID3).
      • C5. Algorytmy
      • Algorytmy drzew klasyfikacji i regresji
    • Klasyfikator drzewa decyzyjnego
    • Regresor drzewa decyzyjnego
  6. Nauka zespołowa:
    • Pakowanie (agregacja Bootstrap)
    • Wzmocnienie
      • AdaBoost
      • XGBoost
      • CatBoost
      • Maszyny do wzmacniania gradientu (GBM)
      • Lekki GBM
    • Układanie
  7. Model generatywny
    • Naiwny Bayes
      • Gaussowski naiwny Bayes
      • Wielomian naiwny Bayesa
      • Bernoulli Naiwny Bayes
    • Procesy Gaussa
      • Regresja procesu Gaussa (GPR)
      • Klasyfikacja procesów Gaussa (GPC)
    • Analiza dyskryminacyjna Gaussa
      • Liniowa analiza dyskryminacyjna (LDA)
      • Kwadratowa analiza dyskryminacyjna (QDA)
    • Bayesowskie sieci przekonań
    • Ukryte modele Markowa (HMM)
  8. Prognozowanie szeregów czasowych:
    • Wizualizacja i analiza szeregów czasowych:
      • Składniki szeregów czasowych: trend, sezonowość i szum
      • Techniki dekompozycji szeregów czasowych
      • Korekta sezonowa i różnicowanie
      • Autokorelacja i częściowe funkcje autokorelacji
      • Rozszerzony test Dickeya-Fullera
      • Dekompozycja sezonowa szeregów czasowych (dekompozycja STL)
      • Metodologia Boxa-Jenkinsa dla modeli ARIMA
    • Algorytmy prognozowania szeregów czasowych:
      • Średnia ruchoma (MA) i ważona średnia ruchoma
      • Metody wygładzania wykładniczego (proste, podwójne i potrójne)
      • Modele autoregresyjne (AR).
      • Modele średniej ruchomej (MA).
      • Modele autoregresyjnej zintegrowanej średniej kroczącej (ARIMA).
      • Sezonowa dekompozycja szeregów czasowych według lessu (STL)
      • Sezonowe modele autoregresyjnej zintegrowanej średniej kroczącej (SARIMA).
      • Modele ARIMAX i SARIMAX
  9. Technika nadzorowanej redukcji wymiarów:
    • Liniowa analiza dyskryminacyjna (LDA)

Niektóre algorytmy nadzorowanego uczenia maszynowego mogą być używane zarówno do klasyfikacji, jak i regresji, po niewielkich modyfikacjach

  • Algorytmy wieloklasowe i wielowyjściowe:
    • Klasyfikacja wieloklasowa
      • Klasyfikator OneVsRest
    • Klasyfikacja wieloetykietowa
    • Regresja wielowyjściowa

Metryki dla algorytmów klasyfikacji i regresji:

Technika walidacji krzyżowej:

  • K-krotna weryfikacja krzyżowa
  • Warstwowa weryfikacja krzyżowa typu k-fold
  • Walidacja krzyżowa z pominięciem jednego wyjścia
  • Tasowanie dzielonej walidacji krzyżowej
  • Walidacja krzyżowa szeregów czasowych

Technika optymalizacji:

  • Zejście gradientowe
    • Stochastyczne zejście gradientowe
    • Zejście gradientowe w małej partii
    • Zejście gradientowe oparte na pędzie
  • Techniki optymalizacji oparte na Newtonie
    • Algorytm Newtona
    • Metody quasi-newtonowskie (BFGS, L-BFGS)
    • Gradient sprzężony
  • Techniki optymalizacji wyszukiwania lokalnego
    • Wspinaczka górska
    • Szukaj Tabu

2. Algorytm uczenia się bez nadzoru

Uczenie się bez nadzoru to rodzaj algorytmów uczenia maszynowego, w którym algorytmy służą do znajdowania wzorców, struktur lub relacji w zbiorze danych przy użyciu zbioru danych bez etykiety. Bada nieodłączną strukturę danych bez predefiniowanych kategorii i etykiet.

Algorytmy uczenia maszynowego bez nadzoru

  • Grupowanie
    • Metody oparte na centroidach
      • Grupowanie K-średnich
      • Klastrowanie K-średnich++
      • Klastrowanie w trybie K
      • Klastrowanie rozmytych średnich C (FCM).
    • Metody oparte na dystrybucji
    • Metody oparte na łączności
      • Klastrowanie hierarchiczne
        • Klastrowanie aglomeracyjne
        • Klastrowanie dzielące
      • Propagacja powinowactwa
    • Metody oparte na gęstości
      • DBSCAN (klasowanie przestrzenne aplikacji z szumem w oparciu o gęstość)
      • OPTYKA (punkty porządkowania w celu identyfikacji struktury klastrowej)
  • Wydobywanie reguł stowarzyszenia
    • Algorytm Apriori
    • Wzrost FP (częsty wzrost wzorca)
    • ECLAT (grupowanie klas równoważności i oddolne przechodzenie przez kratę)
  • Wykrywanie anomalii:
    • Wynik Z
    • Lokalny współczynnik odstający (LOF)
    • Izolacyjny las
  • Technika redukcji wymiarowości:
    • Analiza głównych składowych (PCA)
    • Stochastyczne osadzanie sąsiada z rozkładem t (t-SNE)
    • Nieujemna faktoryzacja macierzy (NMF)
    • Niezależna analiza komponentów (ICA)
    • Analiza czynników
    • Ukryta alokacja Dirichleta (LDA)
    • Izomapa
    • Lokalnie liniowe osadzanie (LLE)
    • Ukryta analiza semantyczna (LSA)

3. Uczenie się przez wzmacnianie

Uczenie się przez wzmacnianie to rodzaj algorytmów uczenia maszynowego, w ramach którego agent uczy się podejmować kolejne decyzje wchodząc w interakcję z otoczeniem. Agent otrzymuje informację zwrotną w postaci zachęt lub kar w oparciu o swoje działania. Celem agenta jest odkrycie optymalnej taktyki, która maksymalizuje skumulowane nagrody w czasie, metodą prób i błędów. Uczenie się przez wzmacnianie jest często stosowane w scenariuszach, w których agent musi nauczyć się poruszać w środowisku, grać w gry, zarządzać robotami lub wydawać oceny w niepewnych sytuacjach.

Uczenie się przez wzmacnianie

posortowana tablica Java
  • Metody oparte na modelu:
    • Procesy decyzyjne Markowa (MDP)
    • Równanie Bellmana
    • Algorytm iteracji wartości
    • Wyszukiwanie drzew w Monte Carlo
  • Metody bezmodelowe:
    • Metody oparte na wartościach:
      • Q-Learning
      • SOS
      • Metody Monte Carlo
    • Metody oparte na zasadach:
      • WZMOCNIJ algorytm
      • Algorytm aktora-krytyka
    • Metody aktora-krytyka
      • Asynchroniczny aktor-krytyk przewagi (A3C)

Lista popularnych algorytmów uczenia maszynowego

Oto lista 10 najpopularniejszych algorytmów uczenia maszynowego.

1. Regresja liniowa

Regresja liniowa to prosty algorytm używany do mapowania liniowej zależności między cechami wejściowymi a ciągłą zmienną docelową. Działa poprzez dopasowanie linii do danych, a następnie wykorzystanie tej linii do przewidywania nowych wartości.

2. Regresja logistyczna

Regresja logistyczna jest rozszerzeniem regresji liniowej używanym w zadaniach klasyfikacyjnych w celu oszacowania prawdopodobieństwa przynależności instancji do określonej klasy.

3. SVM (maszyna wektorów nośnych)

Maszyny SVM to algorytmy uczenia się nadzorowanego, które mogą wykonywać zadania klasyfikacji i regresji. Znajduje hiperpłaszczyznę, która najlepiej oddziela klasy w przestrzeni cech.

4. KNN (K-najbliższy sąsiad)

KNN jest techniką nieparametryczną, którą można zastosować zarówno do klasyfikacji, jak i regresji. Działa poprzez identyfikację k punktów danych najbardziej podobnych do nowego punktu danych, a następnie przewidywanie etykiety nowego punktu danych przy użyciu etykiet tych punktów danych.

5. Drzewo decyzyjne

Drzewa decyzyjne to rodzaj techniki uczenia się nadzorowanego, którą można wykorzystać zarówno do klasyfikacji, jak i regresji. Działa poprzez segmentację danych na coraz mniejsze grupy, aż każdą grupę będzie można sklasyfikować lub przewidzieć z dużą dokładnością.

6. Losowy las

Lasy losowe to rodzaj metody uczenia się zespołowego, która wykorzystuje zestaw drzew decyzyjnych do tworzenia przewidywań poprzez agregację przewidywań z poszczególnych drzew. Poprawia precyzję i odporność pojedynczych drzew decyzyjnych. Można go używać zarówno do zadań klasyfikacyjnych, jak i regresyjnych.

7. Naiwny Bayes

Naive Bayes to probabilistyczny klasyfikator oparty na twierdzeniu Bayesa używany do zadań klasyfikacyjnych. Działa to przy założeniu, że cechy punktu danych są od siebie niezależne.

8. PCA (analiza głównych składowych)

PCA to technika redukcji wymiarowości stosowana do przekształcania danych w przestrzeń o niższych wymiarach przy jednoczesnym zachowaniu jak największej wariancji. Polega na znalezieniu kierunków w danych, które zawierają najwięcej zmian, a następnie rzutowaniu danych na te kierunki.

9. Algorytmy Apriori

Algorytm Apriori to tradycyjna technika eksploracji danych służąca do eksploracji reguł asocjacyjnych w transakcyjnych bazach danych lub zbiorach danych. Ma na celu odkrywanie powiązań i wzorców pomiędzy rzeczami, które regularnie występują w transakcjach. Apriori wykrywa częste zestawy pozycji, czyli grupy pozycji występujących razem w transakcjach z danym minimalnym poziomem wsparcia.

10. Grupowanie K-średnich

Klastrowanie K-średnich to podejście do uczenia się bez nadzoru, które można wykorzystać do grupowania punktów danych. Polega na znalezieniu k klastrów w danych, tak aby punkty danych w każdym klastrze były do ​​siebie jak najbardziej podobne, a jednocześnie możliwie najbardziej różniły się od punktów danych w innych klastrach.

Odkryj podstawowe koncepcje napędzające uczenie maszynowe, ucząc się 10 najlepszych algorytmów , takie jak regresja liniowa, drzewa decyzyjne i sieci neuronowe.

Algorytm uczenia maszynowego – często zadawane pytania

1. Czym jest algorytm w uczeniu maszynowym?

Algorytmy uczenia maszynowego to techniki oparte na koncepcjach statystycznych, które umożliwiają komputerom uczenie się na podstawie danych, odkrywanie wzorców, dokonywanie prognoz lub wykonywanie zadań bez potrzeby jawnego programowania. Algorytmy te można ogólnie podzielić na trzy typy, tj. uczenie się nadzorowane, uczenie się bez nadzoru i uczenie się przez wzmacnianie.

2. Jakie są rodzaje uczenia maszynowego?

Wyróżnia się trzy rodzaje uczenia maszynowego:

  • Nadzorowany algorytm
  • Algorytm bez nadzoru
  • Algorytm wzmacniania

3. Który algorytm ML jest najlepszy do przewidywania?

Idealną metodę uczenia maszynowego do przewidywania określa a liczba kryteriów , w tym charakter problemu, rodzaj danych i unikalne wymagania. W przypadku obciążeń predykcyjnych popularne są metody obsługi wektorów, lasów losowych i wzmacniania gradientu. Z drugiej strony wybór algorytmu powinien opierać się na testowaniu i ocenie konkretnego problemu i zbioru danych.

np. średnia

4. Jakie‌‌są‌10‌popularnych‌algorytmów uczenia się maszynowego?‌

Poniżej znajduje się lista 10 najczęściej używanych algorytmów uczenia maszynowego (ML):

  1. Regresja liniowa
  2. Regresja logistyczna
  3. SVM (maszyna wektorów nośnych)
  4. KNN (K-najbliższy sąsiad)
  5. Drzewo decyzyjne
  6. Losowy las
  7. Naiwny Bayes
  8. PCA (analiza głównych składowych)
  9. Algorytmy aprioryczne
  10. Klastrowanie K-średnich