AI 101

Modele uczenia maszynowego generatywne vs. dyskryminatywne

mm

Niektóre modele uczenia maszynowego należą do kategorii „generatywnych” lub „dyskryminatywnych”. Ale co jest różnicą między tymi dwoma kategoriach modeli? Co oznacza to, że model jest dyskryminatywny lub generatywny?

Krótka odpowiedź brzmi, że modele generatywne to te, które obejmują dystrybucję zbioru danych, zwracając prawdopodobieństwo dla danego przykładu. Modele generatywne są często używane do przewidywania, co następuje w następnej sekwencji. Tymczasem modele dyskryminatywne są używane do klasyfikacji lub regresji i zwracają przewidywanie oparte na warunkowym prawdopodobieństwie. Przeanalizujmy różnice między modelami generatywnymi i dyskryminatywnymi, aby zrozumieć, co oddziela te dwa typy modeli i kiedy każdy typ powinien być użyty.

Modele generatywne vs. dyskryminatywne

Istnieje wiele sposobów klasyfikacji modelu uczenia maszynowego. Model może być sklasyfikowany jako należący do różnych kategorii, takich jak: modele generatywne, modele dyskryminatywne, modele parametryczne, modele nieparametryczne, modele oparte na drzewach, modele nieoparte na drzewach.

Ten artykuł będzie się koncentrował na różnicach między modelami generatywnymi i dyskryminatywnymi. Zaczniemy od zdefiniowania modeli generatywnych i dyskryminatywnych, a następnie przeanalizujemy przykłady każdego typu modelu.

Modele generatywne

Modele generatywne to te, które koncentrują się na dystrybucji klas w zbiorze danych. Algorytmy uczenia maszynowego zwykle modelują dystrybucję punktów danych. Modele generatywne opierają się na znajdowaniu wspólnego prawdopodobieństwa. Tworzą punkty, w których dany wejściowy atrybut i pożądany wyjście/etykieta współistnieją.

Modele generatywne są zwykle używane do szacowania prawdopodobieństw i prawdopodobieństwa, modelowania punktów danych i dyskryminacji między klasami na podstawie tych prawdopodobieństw. Ponieważ model uczy się dystrybucji prawdopodobieństwa dla zbioru danych, może odwołać się do tej dystrybucji, aby wygenerować nowe przypadki. Modele generatywne często opierają się na twierdzeniu Bayesa, aby znaleźć wspólne prawdopodobieństwo, znajdując p(x,y). W zasadzie, modele generatywne modelują, jak dane zostały wygenerowane, odpowiadając na następujące pytanie:

„Jaki jest prawdopodobieństwo, że ta klasa lub inna klasa wygenerowała ten punkt danych/instancję?”

Przykłady modeli generatywnych uczenia maszynowego obejmują liniową analizę dyskryminacyjną (LDA), ukryte modele Markowa i sieci Bayesa, takie jak Naive Bayes.

Modele dyskryminatywne

Podczas gdy modele generatywne uczą się o dystrybucji zbioru danych, modele dyskryminatywne uczą się o granicy decyzyjnej między klasami w zbiorze danych. W przypadku modeli dyskryminatywnych celem jest zidentyfikowanie granicy decyzyjnej między klasami, aby nadać wiarygodne etykiety klas danych. Modele dyskryminatywne oddzielają klasy w zbiorze danych, używając warunkowego prawdopodobieństwa, nie zakładając nic o poszczególnych punktach danych.

Modele dyskryminatywne próbują odpowiedzieć na następujące pytanie:

„Po której stronie granicy decyzyjnej znajduje się ten punkt danych?”

Przykłady modeli dyskryminatywnych w uczeniu maszynowym obejmują maszyny wektorów nośnych, regresję logistyczną, drzewa decyzyjne i lasy losowe.

Różnice między modelami generatywnymi i dyskryminatywnymi

Oto krótkie podsumowanie głównych różnic między modelami generatywnymi i dyskryminatywnymi.

Modele generatywne:

  • Modele generatywne mają na celu uchwycenie rzeczywistej dystrybucji klas w zbiorze danych.
  • Modele generatywne przewidują wspólne prawdopodobieństwo – p(x,y) – przy użyciu twierdzenia Bayesa.
  • Modele generatywne są obliczeniowo kosztowne w porównaniu z modelami dyskryminatywnymi.
  • Modele generatywne są przydatne w zadaniach uczenia maszynowego bez nadzoru.
  • Modele generatywne są bardziej dotkliwie dotknięte przez obecność outlierów niż modele dyskryminatywne.

Modele dyskryminatywne:

  • Modele dyskryminatywne modelują granicę decyzyjną dla klas w zbiorze danych.
  • Modele dyskryminatywne uczą się warunkowego prawdopodobieństwa – p(y|x).
  • Modele dyskryminatywne są obliczeniowo tanie w porównaniu z modelami generatywnymi.
  • Modele dyskryminatywne są przydatne w zadaniach uczenia maszynowego z nadzorem.
  • Modele dyskryminatywne mają przewagę polegającą na tym, że są bardziej odporne na outlierów, w przeciwieństwie do modeli generatywnych.
  • Modele dyskryminatywne są bardziej odporne na outlierów w porównaniu z modelami generatywnymi.

Teraz krótko przeanalizujemy różne przykłady modeli generatywnych i dyskryminatywnych.

Przykłady modeli generatywnych

Liniowa analiza dyskryminacyjna (LDA)

Modele LDA działają, szacując wariancję i średnią danych dla każdej klasy w zbiorze danych. Po obliczeniu średnich i wariancji dla każdej klasy, można dokonać predykcji, szacując prawdopodobieństwo, że dany zestaw wejściowych danych należy do określonej klasy.

Ukryte modele Markowa

Modele Markowa można uznać za grafy z prawdopodobieństwami, które wskazują, jak prawdopodobne jest przejście z jednego punktu w łańcuchu, „stanu”, do innego stanu. Modele Markowa są używane do określenia prawdopodobieństwa przejścia ze stanu j do stanu i, które można oznaczyć jako p(i,j). Jest to po prostu wspólne prawdopodobieństwo, o którym mowa powyżej. Ukryty model Markowa to taki, w którym niewidoczny, nieobserwowalny łańcuch Markowa jest używany. Dane wejściowe są podawane do modelu, a prawdopodobieństwa dla bieżącego stanu i stanu poprzedzającego są używane do obliczenia najbardziej prawdopodobnego wyniku.

Sieci Bayesa

Sieci Bayesa to rodzaj graficznego modelu prawdopodobieństwa. Reprezentują one zależności warunkowe między zmiennymi, reprezentowanymi przez skierowany acykliczny graf. W sieci Bayesa każdy krawędź reprezentuje zależność warunkową, a każdy węzeł odpowiada unikalnej zmiennej. Zależności warunkowe unikalnych relacji w grafie mogą być używane do określenia wspólnej dystrybucji zmiennych i obliczenia wspólnego prawdopodobieństwa. Innymi słowy, sieć Bayesa ujmuje podzbiór niezależnych relacji w określonej wspólnej dystrybucji prawdopodobieństwa.

Gdy sieć Bayesa została utworzona i odpowiednio zdefiniowana, z losowymi zmiennymi, warunkowymi relacjami i rozkładami prawdopodobieństwa, może być używana do szacowania prawdopodobieństwa zdarzeń lub wyników.

Jednym z najczęściej używanych typów sieci Bayesa jest model Naive Bayes. Model Naive Bayes radzi sobie z wyzwaniem obliczania prawdopodobieństwa dla zbiorów danych z wieloma parametrami/zmiennymi, traktując wszystkie funkcje jako niezależne od siebie.

Przykłady modeli dyskryminatywnych

Maszyny wektorów nośnych

Maszynty wektorów nośnych działają, rysując granicę decyzyjną między punktami danych, znajdując granicę decyzyjną, która najlepiej oddziela klasy w zbiorze danych. Algorytm SVM rysuje linie lub hiperpłaszczyzny, które oddzielają punkty, odpowiednio dla przestrzeni 2-wymiarowych i 3-wymiarowych. SVM stara się znaleźć linię/hiperpłaszczyznę, która najlepiej oddziela klasy, próbując maksymalizować margines, czyli odległość między linią/hiperpłaszczyzną a najbliższymi punktami. Modele SVM mogą być również używane w przypadku zbiorów danych, które nie są liniowo rozdzielne, używając „sztuczki jądra”, aby zidentyfikować nieliniowe granice decyzyjne.

Regresja logistyczna

Regresja logistyczna to algorytm, który używa funkcji logit (log-odds), aby określić prawdopodobieństwo, że wejście należy do jednego ze stanów. Funkcja sigmoidalna jest używana do „ściskania” prawdopodobieństwa w kierunku 0 lub 1, prawda lub fałsz. Prawdopodobieństwa większe niż 0,50 są uznawane za klasę 1, podczas gdy prawdopodobieństwa 0,49 lub niższe są uznawane za 0. Z tego powodu regresja logistyczna jest zwykle używana w problemach klasyfikacji binarnej. Jednak regresja logistyczna może być stosowana w problemach wieloklasowych, używając podejścia „jeden przeciwko wszystkim”, tworząc model klasyfikacji binarnej dla każdej klasy i określając prawdopodobieństwo, że przykład jest klasą docelową lub inną klasą w zbiorze danych.

Drzewa decyzyjne

Drzewo decyzyjne działa, dzieląc zbiór danych na mniejsze i mniejsze części, a gdy podzbiory nie mogą być już dalej dzielone, wynikiem jest drzewo z węzłami i liśćmi. Węzły w drzewie decyzyjnym to miejsca, w których podejmowane są decyzje dotyczące punktów danych, używając różnych kryteriów filtrowania. Liście w drzewie decyzyjnym to punkty danych, które zostały sklasyfikowane. Algorytmy drzew decyzyjnych mogą obsługiwać dane numeryczne i kategorialne, a rozdzielenia w drzewie są oparte na konkretnych zmiennych/cechach.

Lasy losowe

Lasy losowe to po prostu zbiór drzew decyzyjnych, gdzie przewidywania poszczególnych drzew są uśredniane, aby podjąć ostateczną decyzję. Algorytm lasu losowego wybiera losowo obserwacje i cechy, tworząc poszczególne drzewa na podstawie tych wyborów.

Ten artykuł podręczny wyjaśni, jak utworzyć wykres pudełkowy w Matplotlib. Wykresy pudełkowe są używane do wizualizacji statystyk podsumowujących zbioru danych, wyświetlając atrybuty dystrybucji, takie jak zakres i dystrybucja danych.

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.