Podwyższanie gradientu jest techniką popularną wśród badaczy danych ze względu na jej dokładność i szybkość, szczególnie złożonych i pokaźnych danych.
Czym jest podbijanie gradientu
Musisz zrozumieć podstawy stymulowania, zanim nauczysz się o stymulowaniu gradientu. Jest to metoda na przekształcenie słabych uczniów w silnych. W krajobrazie podbijania, każde drzewo mieści się na pierwszej zmodyfikowanej wersji zbioru danych. Możesz wyjaśnić algorytm podbijania gradientu poprzez ustanowienie algorytmu Ada Boost. Rozpoczyna się on od drzew decyzyjnych treningów. Każda obserwacja podczas tej procedury ma jednakową wagę przypisaną do niej.
Po przeanalizowaniu pierwszego drzewa, naukowcy podnoszą wagę każdej obserwacji, którą uważają za skomplikowaną do sklasyfikowania. Z drugiej strony, zmniejszają wagi dla tych, w których klasyfikacja nie stanowi problemu. W związku z tym na ważonych danych rośnie drugie drzewo. Pierwotnym pomysłem na to jest wprowadzenie ulepszeń w stosunku do przewidywań pierwszego drzewa.

Tak więc, nowy model, którego będziemy używać, to drzewo jeden plus drzewo dwa. Następnie obliczymy błędy klasyfikacji z nowego modelu zespołu i opracujemy trzecie drzewo do przewidywania zmienionych reszt. Powtórzymy tę procedurę dla określonej ilości iteracji. Nadchodzące drzewa pomogą nam określić każdą obserwację, w której poprzednie drzewa zawiodły lub wykazały błędy.
W związku z tym przewidywania ostatniego modelu zbiorczego będą ogólnymi ważonymi przewidywaniami dostarczonymi przez poprzednie modele drzew. Podbijanie gradientu zapewnia szkolenie kilku modeli w sposób sekwencyjny, addytywny i stopniowy. Podstawową różnicą pomiędzy podbiciem gradientu a algorytmami podbicia Ada jest sposób, w jaki określają one słabe strony uczniów.
Model Ada boost określa wady poprzez wykorzystanie punktów danych ważonych. Zauważysz pewne podobieństwa w podbijaniu gradientu, ponieważ działa ono poprzez wykorzystanie gradientów w funkcjach strat. Dla tych, którzy nie wiedzą, funkcja straty wskazuje na jakość współczynników modelu i czy pasuje on do danych podstawowych.
Rozsądne zrozumienie tej funkcji zależy od różnych czynników, takich jak to, co chcesz zoptymalizować. Na przykład, jeśli używasz regresji do prognozowania cen sprzedaży, funkcja strat będzie opierać się na błędach między prognozowanymi i autentycznymi cenami.
Podobnie, jeśli klasyfikowanie niespłaconych kredytów jest Twoim głównym celem – funkcja strat stałaby się miarą służącą do klasyfikacji niekorzystnych kredytów. Istotną motywacją do stosowania gradientu wzrostowego jest jego zdolność do optymalizacji różnych funkcji kosztowych określonych przez użytkowników. Jest on znacznie lepszy niż funkcje strat, ponieważ zazwyczaj zapewnia mniejszą kontrolę i nie łączy się z aplikacjami w świecie rzeczywistym.
Podbijanie i montowanie (Boosting and Ensemble)
Indywidualne dopasowanie modeli uczenia się maszyn do danych jest niezwykle proste. Można je nawet łączyć w zespół. Pojęcie “zespół” odnosi się do kombinacji poszczególnych modeli, tworząc silniejszy, mocniejszy model.
Większość naukowców zajmujących się badaniem danych korzysta z maszynowego wspomagania uczenia się w celu tworzenia zespołów. Zaczyna się od dopasowania modelu pierwotnego, takiego jak regresja liniowa lub drzewna, do danych. Następnie drugi model skupia się na dostarczeniu dokładnych prognoz dla przypadków z mało wydajnymi modelami. Połączenie tych modeli jest często lepsze niż model pojedynczy. Musisz powtórzyć proces podbicia kilka razy. Każdy kolejny model stara się skorygować o błędy zespołu mieszanych modeli podbicia.
Zrozumienie podbicia gradientowego (Gradient Boosting)
Podbijanie gradientu jest rodzajem podbijania nauki maszynowej. W dużym stopniu opiera się on na przewidywaniu, że następny model ograniczy błędy przewidywania po połączeniu z poprzednimi. Główną ideą jest ustalenie docelowych wyników dla tego nadchodzącego modelu, aby zminimalizować błędy.
Jak więc oblicza się cele? Wynik każdego przypadku zależy od liczby zmian wywołanych przez predykcję i jej wpływu na błąd predykcji.
- Jeśli prognoza ma małą zmianę i powoduje znaczny spadek błędu, wówczas oczekiwany wynik sprawy będzie miał wysoką wartość. Prognozy dostarczane przez nowe modele mogą zmniejszyć liczbę błędów, o ile znajdują się one w pobliżu celów.
- Jeśli nie ma żadnych zmian w błędach spowodowanych małą zmianą w prognozie, wówczas następny wynik przypadku będzie miał wartość zerową. Nie można zminimalizować błędu poprzez zmianę prognozy.
Termin “podbicie gradientu” pojawił się, ponieważ docelowe wyniki każdego przypadku są oparte na błędzie gradientu w odniesieniu do przewidywań. Każdy model redukuje błędy predykcji poprzez wykonanie kroku we właściwym kierunku.
W jaki sposób zwiększenie gradientu jest użyteczne?
Jak wspomniano wcześniej, zwiększanie gradientu jest powszechnie stosowaną techniką tworzenia modeli predykcyjnych. Można ją zastosować do wielu funkcji związanych z ryzykiem i poprawić dokładność predykcyjną modelu. Podwyższanie gradientu pomaga również rozwiązywać różne problemy związane z wieloliniowością, w których występują wysokie korelacje między zmiennymi predykcyjnymi.
Byłbyś zaskoczony, gdybyś zobaczył, jak wiele sukcesów odniosły maszyny do zwiększania gradientu. Wiele aplikacji do nauki maszynowej wykorzystuje to rozwiązanie.
Co musi działać algorytm zwiększania gradientu?
Poniżej znajduje się lista podstawowych składników wymaganych przez Algorytmy zwiększania gradientu (Gradient Boosting Algorithms):
Dodatkowy model
Staramy się minimalizować straty, wdrażając więcej drzew decyzyjnych. Możemy również zmniejszyć poziom błędów poprzez minimalizację parametrów. W takich przypadkach tworzymy model, aby zapewnić, że nie ma żadnych zmian w istniejącym drzewie pomimo dodania kolejnego.
Słaby uczeń
Słabi uczący się są niezbędnym elementem zwiększania gradientu w celu tworzenia prognoz. Wykorzystujemy drzewa regresji do wydobywania autentycznych wartości. Konieczne jest chciwe rozwijanie drzew, aby dojść do najkorzystniejszego punktu podziału. Jest to istotny powód, dla którego model w większości przypadków nie pasuje do konkretnego zbioru danych.
Funkcja straty
Musimy zoptymalizować funkcje strat, aby zmniejszyć liczbę błędów związanych z prognozowaniem. W przeciwieństwie do Ada Boost, zły wynik nie otrzymuje zwiększonej wagi przy zwiększaniu gradientu. Zamiast tego, minimalizuje funkcję straty od słabych uczących się poprzez uzyskanie średnich wyjściowych.
Myśli końcowe
Gradient Boosting dowodzi, że jest to prawdopodobnie najsilniejsza technika do tworzenia modeli predykcyjnych w regresji i klasyfikacji. Można również użyć różnych metod regulacji lub ograniczeń, aby poprawić dopasowanie algorytmu do walki i jego wydajność. Programiści mogą również korzystać z kurczenia się, randomizowanego próbkowania, ograniczeń drzewa i karnego uczenia się, aby walczyć z overfittingiem. Podnoszenie gradientu odgrywa zasadniczą rolę w rozwiązywaniu wielu problemów związanych z uczeniem się maszyn w życiu codziennym.