Wprowadzenie do algorytmu AdaBoost

Algorytmu AdaBoost można użyć do zwiększenia wydajności dowolnego algorytmu uczenia maszynowego. Uczenie maszynowe stało się potężnym narzędziem, które może przewidywać na podstawie dużej ilości danych. W ostatnich czasach stało się tak popularne, że zastosowanie uczenia maszynowego można znaleźć w naszych codziennych czynnościach. Typowym tego przykładem jest otrzymywanie sugestii dotyczących produktów podczas zakupów online na podstawie wcześniej kupionych przez klienta produktów. Uczenie maszynowe, często nazywane analizą predykcyjną lub modelowaniem predykcyjnym, można zdefiniować jako zdolność komputera do uczenia się bez wyraźnego zaprogramowania. Wykorzystuje zaprogramowane algorytmy do analizy danych wejściowych w celu przewidywania wyników w dopuszczalnym zakresie.

Co to jest algorytm AdaBoost?

W uczeniu maszynowym wzmacnianie zrodziło się z pytania, czy zestaw słabych klasyfikatorów można przekształcić w silny klasyfikator. Słaby uczący się lub klasyfikator to uczący się, który jest lepszy niż przypadkowe zgadywanie, a to będzie odporne na nadmierne dopasowanie, jak w dużym zestawie słabych klasyfikatorów, przy czym każdy słaby klasyfikator jest lepszy niż losowy. Jako słaby klasyfikator zwykle stosuje się prosty próg dla pojedynczej cechy. Jeśli cecha jest powyżej progu, niż przewidywano, należy do wartości dodatniej, w przeciwnym razie do wartości ujemnej.

AdaBoost oznacza „Adaptive Boosting”, który przekształca słabych uczniów lub predyktorów w silne predyktory w celu rozwiązania problemów związanych z klasyfikacją.

Do klasyfikacji końcowe równanie można umieścić w następujący sposób:

Tutaj f m oznacza mty słaby klasyfikator, a m reprezentuje odpowiadającą mu wagę.

Jak działa algorytm AdaBoost?

AdaBoost może być wykorzystany do poprawy wydajności algorytmów uczenia maszynowego. Najlepiej stosuje się go u słabych uczniów, a modele te osiągają wysoką dokładność ponad przypadkową szansę na problem z klasyfikacją. Typowymi algorytmami używanymi w AdaBoost są drzewa decyzyjne z poziomem pierwszym. Słaby uczeń jest klasyfikatorem lub predyktorem, który działa stosunkowo słabo pod względem dokładności. Można również sugerować, że słabi uczniowie są łatwi do obliczenia i wiele wystąpień algorytmów jest łączonych w celu stworzenia silnego klasyfikatora poprzez wzmocnienie.

Jeśli weźmiemy zestaw danych zawierający n liczbę punktów i rozważmy poniżej

-1 oznacza klasę ujemną, a 1 oznacza pozytywną. Jest inicjalizowany jak poniżej, waga dla każdego punktu danych jako:

Jeśli weźmiemy pod uwagę iterację od 1 do M dla m, otrzymamy poniższe wyrażenie:

Najpierw musimy wybrać słaby klasyfikator o najniższym ważonym błędzie klasyfikacji, dopasowując słabe klasyfikatory do zestawu danych.

Następnie obliczamy wagę m- tego słabego klasyfikatora, jak poniżej:

Waga jest dodatnia dla każdego klasyfikatora z dokładnością wyższą niż 50%. Waga staje się większa, jeśli klasyfikator jest bardziej dokładny, a staje się ujemna, jeśli klasyfikator ma dokładność mniejszą niż 50%. Prognozę można połączyć, odwracając znak. Odwracając znak prognozy, klasyfikator o dokładności 40% można przekształcić w dokładność 60%. Tak więc klasyfikator przyczynia się do ostatecznego przewidywania, nawet jeśli działa gorzej niż losowe zgadywanie. Jednak ostateczne przewidywanie nie będzie miało żadnego wpływu ani nie uzyska informacji od klasyfikatora z dokładnością do 50%. Wykładniczy składnik licznika jest zawsze większy niż 1 w przypadku źle sklasyfikowanego przypadku z dodatnio ważonego klasyfikatora. Po iteracji źle sklasyfikowane przypadki są aktualizowane o większe wagi. Klasyfikatory o ujemnej wadze zachowują się w ten sam sposób. Ale jest różnica, że ​​po odwróceniu znaku; prawidłowe klasyfikacje pierwotnie przekształciłyby się w błędną klasyfikację. Ostateczne prognozy można obliczyć, biorąc pod uwagę każdego klasyfikatora, a następnie wykonując sumę ich ważonej prognozy.

Aktualizowanie wagi dla każdego punktu danych, jak poniżej:

Z m jest tutaj współczynnikiem normalizacji. Zapewnia, że ​​suma wszystkich wag instancji stanie się równa 1.

Do czego służy algorytm AdaBoost?

AdaBoost może być używany do wykrywania twarzy, ponieważ wydaje się być standardowym algorytmem do wykrywania twarzy na obrazach. Wykorzystuje kaskadę odrzucania składającą się z wielu warstw klasyfikatorów. Gdy okno wykrywania nie zostanie rozpoznane na żadnej warstwie jako powierzchnia, zostanie odrzucone. Pierwszy klasyfikator w oknie odrzuca okno ujemne, ograniczając koszt obliczeniowy do minimum. Chociaż AdaBoost łączy słabe klasyfikatory, zasady AdaBoost są również wykorzystywane do znajdowania najlepszych funkcji do zastosowania w każdej warstwie kaskady.

Plusy i minusy algorytmu AdaBoost

Jedną z wielu zalet algorytmu AdaBoost jest to, że jest szybki, prosty i łatwy w programowaniu. Ponadto można go łączyć z dowolnym algorytmem uczenia maszynowego i nie trzeba dostosowywać parametrów z wyjątkiem T. Został on rozszerzony na problemy uczenia się poza klasyfikacją binarną i jest wszechstronny, ponieważ można go stosować z tekstem lub cyfrą dane.

AdaBoost ma również kilka wad, takich jak dowody empiryczne i jest szczególnie podatny na jednolity hałas. Słabe klasyfikatory, które są zbyt słabe, mogą prowadzić do niskich marż i nadmiernego dopasowania.

Przykład algorytmu AdaBoost

Możemy rozważyć przykład przyjęcia studentów na uniwersytet, gdzie zostaną przyjęci lub odmówieni. Tutaj można znaleźć dane ilościowe i jakościowe z różnych aspektów. Na przykład wynik przyjęcia, który może być tak / nie, może być ilościowy, podczas gdy każdy inny obszar, taki jak umiejętności lub hobby uczniów, może być jakościowy. Możemy łatwo wymyślić prawidłową klasyfikację danych treningowych z większą szansą na warunki, takie jak jeśli uczeń jest dobry z danego przedmiotu, to on / on zostaje przyjęty. Ale trudno jest znaleźć bardzo dokładne prognozy, a następnie pojawiają się słabi uczniowie.

Wniosek

AdaBoost pomaga w wyborze zestawu treningowego dla każdego nowego klasyfikatora, który jest trenowany na podstawie wyników poprzedniego klasyfikatora. Również podczas łączenia wyników; określa, jaką wagę należy przypisać proponowanej odpowiedzi każdego klasyfikatora. Łączy słabych uczniów, aby stworzyć silny, aby poprawić błędy klasyfikacji, który jest również pierwszym udanym algorytmem wzmacniającym dla problemów klasyfikacji binarnej.

Polecane artykuły

Jest to przewodnik po algorytmie AdaBoost. Tutaj omówiliśmy koncepcję, zastosowania, działanie, zalety i wady z przykładem. Możesz także przejrzeć nasze inne Sugerowane artykuły, aby dowiedzieć się więcej -

  1. Naiwny algorytm Bayesa
  2. Pytania do wywiadu marketingowego w mediach społecznościowych
  3. Link Building Strategies
  4. Platforma marketingu mediów społecznościowych

Kategoria: