Wzmocniony składnik regresji drzewa decyzyjnego

W tym artykule opisano składnik w projektancie usługi Azure Machine Learning.

Użyj tego składnika, aby utworzyć zespół drzew regresji przy użyciu zwiększania. Zwiększenie oznacza, że każde drzewo jest zależne od poprzednich drzew. Algorytm uczy się, dopasowując reszty drzew, które je poprzedzały. W związku z tym zwiększenie w zespole drzewa decyzyjnego ma tendencję do poprawy dokładności z niewielkim ryzykiem mniejszego pokrycia.

Ten składnik jest oparty na algorytmie LightGBM.

Ta metoda regresji jest metodą uczenia nadzorowanego i dlatego wymaga oznaczonego zestawu danych. Kolumna etykiety musi zawierać wartości liczbowe.

Uwaga

Tego składnika należy używać tylko z zestawami danych, które używają zmiennych liczbowych.

Po zdefiniowaniu modelu wytrenuj go przy użyciu trenowania modelu.

Więcej informacji o wzmocnionych drzewach regresji

Boosting to jedna z kilku klasycznych metod tworzenia modeli zespołów wraz z baggingiem, lasami losowymi itd. W usłudze Azure Machine Learning wzmocnione drzewa decyzyjne wykorzystują wydajną implementację algorytmu zwiększania gradientu MART. Zwiększanie gradientu to technika uczenia maszynowego w przypadku problemów z regresją. Tworzy każde drzewo regresji w sposób krokowy, używając wstępnie zdefiniowanej funkcji utraty w celu zmierzenia błędu w każdym kroku i poprawnego dla niego w następnym kroku. W związku z tym model przewidywania jest w rzeczywistości zespołem słabszych modeli przewidywania.

W przypadku problemów regresji zwiększenie tworzy serię drzew w sposób mądry krok, a następnie wybiera optymalne drzewo przy użyciu dowolnej funkcji różnicowej utraty.

Aby uzyskać dodatkowe informacje, zobacz następujące artykuły:

Metoda zwiększania gradientu może również służyć do rozwiązywania problemów klasyfikacji przez zmniejszenie ich do regresji z odpowiednią funkcją utraty. Aby uzyskać więcej informacji na temat wzmocnionej implementacji drzew dla zadań klasyfikacji, zobacz Dwuklasowe wzmocnione drzewo decyzyjne.

Jak skonfigurować regresję wzmocnionego drzewa decyzyjnego

  1. Dodaj składnik Wzmocnione drzewo decyzyjne do potoku. Ten składnik można znaleźć w obszarze Uczenie maszynowe, Inicjowanie w kategorii Regresja .

  2. Określ sposób trenowania modelu, ustawiając opcję Utwórz tryb trenera .

    • Pojedynczy parametr: wybierz tę opcję, jeśli wiesz, jak skonfigurować model i podaj określony zestaw wartości jako argumenty.

    • Zakres parametrów: wybierz tę opcję, jeśli nie masz pewności co do najlepszych parametrów i chcesz uruchomić zamiatanie parametrów. Wybierz zakres wartości do iterowania, a hiperparametry modelu dostrajania iterują wszystkie możliwe kombinacje podanych ustawień w celu określenia hiperparametrów, które generują optymalne wyniki.

  3. Maksymalna liczba liści na drzewo: wskazuje maksymalną liczbę węzłów terminalu (liści), które można utworzyć w dowolnym drzewie.

    Zwiększając tę wartość, potencjalnie zwiększasz rozmiar drzewa i uzyskujesz lepszą precyzję, ryzykując nadmierne dopasowanie i dłuższy czas trenowania.

  4. Minimalna liczba próbek na węzeł liścia: określ minimalną liczbę przypadków wymaganych do utworzenia dowolnego węzła terminalu (liścia) w drzewie.

    Zwiększając tę wartość, zwiększasz próg tworzenia nowych reguł. Na przykład z wartością domyślną 1, nawet pojedynczy przypadek może spowodować utworzenie nowej reguły. Jeśli zwiększysz wartość do 5, dane treningowe będą musiały zawierać co najmniej 5 przypadków spełniających te same warunki.

  5. Szybkość nauki: wpisz liczbę z zakresu od 0 do 1, która definiuje rozmiar kroku podczas nauki. Szybkość uczenia określa, jak szybko lub wolno uczący się zbiega się z optymalnym rozwiązaniem. Jeśli rozmiar kroku jest zbyt duży, możesz przesłonić optymalne rozwiązanie. Jeśli rozmiar kroku jest zbyt mały, trenowanie trwa dłużej, aby zbiegać się z najlepszym rozwiązaniem.

  6. Liczba skonstruowanych drzew: wskazuje łączną liczbę drzew decyzyjnych do utworzenia w zespole. Tworząc więcej drzew decyzyjnych, możesz potencjalnie uzyskać lepszy zasięg, ale czas szkolenia zwiększa się.

    Jeśli ustawisz wartość na 1; jednak tylko jedno drzewo jest generowane (drzewo z początkowym zestawem parametrów) i nie są wykonywane dalsze iteracji.

  7. Losowe rozstawienie liczb: wpisz opcjonalną nie ujemną liczbę całkowitą, która ma być używana jako losowa wartość nasion. Określenie nasion zapewnia powtarzalność między przebiegami, które mają te same dane i parametry.

    Domyślnie losowe nasion jest ustawione na 0, co oznacza, że początkowa wartość nasion jest uzyskiwana z zegara systemowego.

  8. Trenowanie modelu:

    • Jeśli ustawisz opcję Utwórz tryb trenera na pojedynczy parametr, połącz oznakowany zestaw danych i składnik Train Model .

    • Jeśli ustawisz opcję Utwórz tryb trenera na wartość Zakres parametrów, połącz oznakowany zestaw danych i wytrenuj model przy użyciu hiperparametrów tune model.

    Uwaga

    Jeśli przekazujesz zakres parametrów do trenowania modelu, używa tylko wartości domyślnej na liście pojedynczych parametrów.

    Jeśli przekazujesz jeden zestaw wartości parametrów do składnika Hiperparametry modelu dostrajania , gdy oczekuje on zakresu ustawień dla każdego parametru, ignoruje wartości i używa wartości domyślnych dla ucznia.

    Jeśli wybierzesz opcję Zakres parametrów i wprowadzisz pojedynczą wartość dla dowolnego parametru, ta określona wartość jest używana w całym zamiataniu, nawet jeśli inne parametry zmieniają się w zakresie wartości.

  9. Prześlij potok.

Wyniki

Po zakończeniu trenowania:

  • Aby użyć modelu do oceniania, połącz pozycję Train Model (Trenowanie modelu ) z modelem Score Model (Generowanie wyników w modelu), aby przewidzieć wartości dla nowych przykładów wejściowych.

  • Aby zapisać migawkę wytrenowanego modelu, wybierz kartę Dane wyjściowe w prawym panelu wytrenowanego modelu i kliknij ikonę Zarejestruj zestaw danych . Kopia wytrenowanego modelu zostanie zapisana jako składnik w drzewie składników i nie zostanie zaktualizowana w kolejnych uruchomieniach potoku.

Następne kroki

Zobacz zestaw składników dostępnych dla usługi Azure Machine Learning.