W przypadku problemów z regresją sensowne jest zdefiniowanie błędu podpisanego jako różnicy między prognozą a etykietą. Jednak w przypadku innych rodzajów problemów taka strategia często prowadzi do złych wyników. Lepszą strategią przy wzmocnieniu gradientu jest:
- Zdefiniuj funkcję straty podobną do funkcji strat używanych w sieciach neuronowych. Na przykład entropia (zwana też stratą logarytmiczną) w przypadku problemu z klasyfikacją.
- Wytrenuj słaby model, aby prognozował gradient straty na podstawie danych wyjściowych modelu.
Formalnie, biorąc pod uwagę funkcję straty $L(y,p)$, gdzie $y$ to etykieta, a $p$ prognozę, pseudoodpowiedź $z_i$ używana do trenowania słabego modelu w kroku $i$ to:
gdzie:
- $F_i$ to prognoza silnego modelu.
Poprzedni przykład stanowi problem regresji: celem jest prognozowanie wartości liczbowej. W przypadku regresji typową funkcją straty jest błąd kwadratowy:
W tym przypadku gradient jest:
W kolejności słów gradient to podpisany błąd z naszego przykładu z współczynnikiem 2. Pamiętaj, że stałe czynniki nie mają znaczenia ze względu na kurczenie się. Pamiętaj, że ta równoważność dotyczy tylko problemów z regresją, w których występuje kwadratowa utrata błędów. W przypadku innych problemów z uczeniem nadzorowanym (np. klasyfikacji, rankingu, regresji z utratą centyla) nie ma równości między gradientem a błędem podpisanym.
Optymalizacja liści i struktury za pomocą kroku metody Newtona
Metoda Newtona to metoda optymalizacji, podobnie jak zejście gradientowe. Jednak w odróżnieniu od zejścia gradientowego, który do optymalizacji korzysta tylko z gradientu funkcji, metoda Newtona używa do optymalizacji zarówno gradientu (pierwsza pochodna), jak i drugiej pochodnej funkcji.
Etap opadania gradientu wygląda tak:
i metody Newtona w następujący sposób:
Opcjonalnie metodę Newtona można zintegrować z trenowaniem drzew o wzmocnieniu gradientowym na 2 sposoby:
- Po wytrenowaniu drzewa do każdego liścia stosowany jest krok Newtona i zastępuje on jego wartość. Struktura drzewa jest niezmieniona – zmieniają się tylko wartości liści.
- W trakcie wzrostu drzewa warunki są wybierane na podstawie wyniku obejmującego komponent formuły Newtona. Ma to wpływ na strukturę drzewa.
- Funkcja YDF zawsze stosuje na liściu krok Newtona (opcja 1).
- Możesz włączyć opcję 2, używając
use_hessian_gain=True
.