BoostedTreesCalculateBestFeatureSplitV2

publiczna klasa końcowa BoostedTreesCalculateBestFeatureSplitV2

Oblicza zyski dla każdej cechy i zwraca najlepszą możliwą informację o podziale dla każdego węzła. Jeśli jednak nie zostanie znaleziony żaden podział, dla tego węzła nie zostaną zwrócone żadne informacje o podziale.

Informacje o podziale obejmują najlepszy próg (identyfikator segmentu), zyski i udział lewego/prawego węzła na węzeł dla każdej cechy.

Możliwe, że nie wszystkie węzły można podzielić na każdy element. Dlatego lista możliwych węzłów może różnić się w zależności od obiektu. Dlatego dla każdej cechy zwracamy `node_ids_list`, zawierającą listę węzłów, które ta funkcja może podzielić.

W ten sposób wynik jest najlepszym podziałem na cechy i na węzeł, dlatego należy go później połączyć, aby uzyskać najlepszy podział dla każdego węzła (spośród wszystkich możliwych cech).

Kształty wyjściowe są kompatybilne w ten sposób, że pierwszy wymiar wszystkich tensorów jest taki sam i równy liczbie możliwych węzłów podziału dla każdej cechy.

Metody publiczne

statyczne WzmocnioneDrzewaCalculateBestFeatureSplitV2
utwórz ( Zakres zakresu, Operand <Integer> nodeIdRange, Iterable< Operand <Float>> statsSummariesList, Operand <String> splitTypes, Operand <Integer> CandidateIds, Operand <Float> l1, Operand <Float> l2, Operand <Float> TreeComplexity, Operand <Float> minNodeWeight, Long logitDimension)
Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację BoostedTreesCalculateBestFeatureSplitV2.
Wyjście <liczba całkowita>
funkcjaWymiary ()
Tensory rangi 1 wskazujące najlepszy wymiar cechy dla każdej cechy do podziału dla określonych węzłów, jeśli cecha jest wielowymiarowa.
Wyjście <liczba całkowita>
identyfikatory funkcji ()
Tensory rangi 1 wskazujące najlepszy identyfikator cechy dla każdego węzła.
Wyjście <Pływak>
zyski ()
Tensor rangi 1 wskazujący najlepsze zyski dla każdej cechy do podziału dla określonych węzłów.
Wyjście <Pływak>
leftNodeContribs ()
Tensory rangi 2 wskazujące udział lewych węzłów podczas rozgałęziania się od węzłów nadrzędnych (podany przez element tensorowy w wyjściowej liście węzłów) w kierunku w lewo o dany próg dla każdej cechy.
Wyjście <liczba całkowita>
identyfikatory węzłów ()
Tensory rangi 1 wskazujące możliwe identyfikatory węzłów podziału dla każdej cechy.
Wyjście <Pływak>
RightNodeContribs ()
Tensory rangi 2, o takim samym kształcie/warunkach jak left_node_contribs_list, ale tylko z tą wartością dla prawego węzła.
Wyjście <Ciąg>
splitWithDefaultDirections ()
Tensory rangi 1 wskazujące kierunek, w którym należy podążać, jeśli brakuje danych.
Wyjście <liczba całkowita>
progi ()
Tensory rangi 1 wskazujące identyfikator segmentu do porównania (jako próg) w celu podziału w każdym węźle.

Metody dziedziczone

Metody publiczne

public static BoostedTreesCalculateBestFeatureSplitV2 create ( Zakres zakresu, Operand <Integer> nodeIdRange, Iterable< Operand <Float>> statsSummariesList, Operand <String> splitTypes, Operand <Integer> CandidateIds, Operand <Float> l1, Operand <Float> l2, Operand <Float > TreeComplexity, Operand <Float> minNodeWeight, Long logitsDimension)

Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację BoostedTreesCalculateBestFeatureSplitV2.

Parametry
zakres aktualny zakres
zakres identyfikatora węzła Tensor rangi 1 (kształt=[2]) określający zakres [pierwszy, ostatni) identyfikatorów węzłów do przetworzenia w ramach `stats_summary_list`. Węzły są iterowane pomiędzy dwoma węzłami określonymi przez tensor, na przykład „dla identyfikatora_węzła w zakresie (zakres_id_węzła[0], zakres_id_węzła[1])” (Zauważ, że ostatni indeks zakres_id_węzła[1] jest wyłączny).
statystykiPodsumowaniaLista Lista tensora rangi 4 (#shape=[max_splits, feature_dims, wiadro, stats_dims]) dla podsumowania skumulowanych statystyk (gradient/hessian) na węzeł, na wymiar, na segmenty dla każdej funkcji. Pierwszym wymiarem tensora jest maksymalna liczba podziałów, dlatego nie wszystkie jego elementy zostaną wykorzystane, a jedynie indeksy określone przez node_ids.
typy podziału Tensor rangi 1 wskazujący, czy ta operacja powinna wykonywać podział nierówności czy podział równości na funkcję.
Identyfikatory kandydatów i funkcji Tensor rangi 1 z identyfikatorami dla każdej funkcji. To jest prawdziwy identyfikator funkcji.
l1 l1 współczynnik regularyzacji masy liści, na podstawie przypadku.
l2 l2 współczynnik regularyzacji masy liści, na podstawie przypadku.
drzewoZłożoność dostosowanie do wzmocnienia w przeliczeniu na liść.
minWaga węzła minimalna średnia hesjanów w węźle, zanim będzie wymagana, aby węzeł został uwzględniony przy podziale.
wymiar logitowy Wymiar logitu, czyli liczby klas.
Zwroty
  • nowa instancja BoostedTreesCalculateBestFeatureSplitV2

public Output <Integer> featureWymiary ()

Tensory rangi 1 wskazujące najlepszy wymiar cechy dla każdej cechy do podziału dla określonych węzłów, jeśli cecha jest wielowymiarowa. Szczegóły, takie jak kształty i rozmiary, znajdziesz powyżej.

public Output <Integer> identyfikatory funkcji ()

Tensory rangi 1 wskazujące najlepszy identyfikator cechy dla każdego węzła. Szczegóły, takie jak kształty i rozmiary, znajdziesz powyżej.

publiczne zyski <Float> ( )

Tensor rangi 1 wskazujący najlepsze zyski dla każdej cechy do podziału dla określonych węzłów. Szczegóły, takie jak kształty i rozmiary, znajdziesz powyżej.

publiczne wyjście <Float> leftNodeContribs ()

Tensory rangi 2 wskazujące udział lewych węzłów podczas rozgałęziania się od węzłów nadrzędnych (podany przez element tensorowy w wyjściowej liście węzłów) w kierunku w lewo o dany próg dla każdej cechy. Ta wartość zostanie użyta do utworzenia wartości lewego węzła poprzez dodanie do wartości węzła nadrzędnego. Rozmiar drugiego wymiaru wynosi 1 dla logitów jednowymiarowych, ale byłby większy w przypadku problemów wieloklasowych. Szczegóły, takie jak kształty i rozmiary, znajdziesz powyżej.

publiczne dane wyjściowe <liczba całkowita> identyfikatory węzłów ()

Tensory rangi 1 wskazujące możliwe identyfikatory węzłów podziału dla każdej cechy. Długość listy wynosi num_features, ale każdy tensor ma inny rozmiar, ponieważ każda funkcja zapewnia różne możliwe węzły. Szczegóły, takie jak kształty i rozmiary, znajdziesz powyżej.

publiczne wyjście <Float> rightNodeContribs ()

Tensory rangi 2, o takim samym kształcie/warunkach jak left_node_contribs_list, ale tylko z tą wartością dla prawego węzła.

publiczne wyjście <String> splitWithDefaultDirections ()

Tensory rangi 1 wskazujące kierunek, w którym należy podążać, jeśli brakuje danych. Szczegóły, takie jak kształty i rozmiary, znajdziesz powyżej. Nierówność przy domyślnym lewym zwraca 0, nierówność przy domyślnym prawym zwraca 1, równość przy domyślnym prawym zwraca 2.

publiczne progi wyjściowe < liczba całkowita> ()

Tensory rangi 1 wskazujące identyfikator segmentu do porównania (jako próg) w celu podziału w każdym węźle. Szczegóły, takie jak kształty i rozmiary, znajdziesz powyżej.