BoostedTreesSparseCalculateBestFeatureSplit

clase final pública BoostedTreesSparseCalculateBestFeatureSplit

Calcula las ganancias de cada función y devuelve la mejor información dividida posible para la función.

La información dividida es el mejor umbral (ID de depósito), las ganancias y las contribuciones de los nodos izquierdo/derecho por nodo para cada característica.

Es posible que no todos los nodos puedan dividirse en cada entidad. Por lo tanto, la lista de posibles nodos puede diferir entre las funciones. Por lo tanto, devolvemos `node_ids_list` para cada característica, que contiene la lista de nodos que esta característica puede usarse para dividir.

De esta manera, la salida es la mejor división por características y por nodo, por lo que debe combinarse más adelante para producir la mejor división para cada nodo (entre todas las características posibles).

Las formas de salida son compatibles de manera que la primera dimensión de todos los tensores sea la misma e igual al número de posibles nodos divididos para cada característica.

Clases anidadas

clase BoostedTreesSparseCalculateBestFeatureSplit.Options Atributos opcionales para BoostedTreesSparseCalculateBestFeatureSplit

Métodos públicos

estático ImpulsadoTreesSparseCalculateBestFeatureSplit
crear ( Alcance alcance, Operando <Integer> nodeIdRange, Operando <Integer> statsSummaryIndices, Operando <Float> statsSummaryValues, Operando <Integer> statsSummaryShape, Operando <Float> l1, Operando <Float> l2, Operando <Float> treeComplexity, Operando <Float > minNodeWeight, Long logitsDimension, Opciones... opciones)
Método de fábrica para crear una clase que envuelve una nueva operación BoostedTreesSparseCalculateBestFeatureSplit.
Salida <Entero>
característicaDimensiones ()
Un tensor de rango 1 que indica la mejor dimensión de característica para que cada característica se divida en cada nodo.
Salida <Flotante>
ganancias ()
Un tensor de rango 1 que indica las mejores ganancias para dividir cada nodo.
Salida <Flotante>
leftNodeContribuciones ()
Un tensor de rango 2 que indica la contribución de los nodos izquierdos cuando se bifurcan desde los nodos principales hacia la dirección izquierda según el umbral dado para cada característica.
Salida <Entero>
ID de nodo ()
Un tensor de rango 1 que indica posibles identificadores de nodos que se pueden dividir.
Salida <Flotante>
rightNodeContribuciones ()
Un tensor de rango 2, con la misma forma/condiciones que left_node_contribs_list, pero solo que el valor es para el nodo derecho.
estático BoostedTreesSparseCalculateBestFeatureSplit.Options
splitType (tipo de división de cadena)
Salida <Cadena>
splitWithDefaultDirections ()
Un tensor de rango 1 que indica qué dirección tomar si faltan datos.
Salida <Entero>
umbrales ()
Un tensor de rango 1 que indica la identificación del depósito con el que comparar (como umbral) para la división en cada nodo.

Métodos heredados

Métodos públicos

pública estática BoostedTreesSparseCalculateBestFeatureSplit crear ( Alcance alcance, Operando <Integer> nodeIdRange, Operando <Integer> statsSummaryIndices, Operando <Float> statsSummaryValues, Operando <Integer> statsSummaryShape, Operando <Float> l1, Operando <Float> l2, Operando <Float> treeComplexity, Operando <Float> minNodeWeight, Long logitsDimension, Opciones... opciones)

Método de fábrica para crear una clase que envuelve una nueva operación BoostedTreesSparseCalculateBestFeatureSplit.

Parámetros
alcance alcance actual
rangoIdNodo Un tensor de rango 1 (forma = [2]) para especificar el rango [primero, último) de ID de nodo para procesar dentro de `stats_summary_list`. Los nodos se iteran entre los dos nodos especificados por el tensor, como `for node_id in range(node_id_range[0], node_id_range[1])` (Tenga en cuenta que el último índice node_id_range[1] es exclusivo).
estadísticasResumenÍndices Un tensor int64 de rango 2 de forma densa [N, 4] (N especifica el número de valores distintos de cero) para el resumen de estadísticas acumuladas (gradiente/arpillera) por nodo por depósito para cada característica. La segunda dimensión contiene la identificación del nodo, la dimensión de la característica, la identificación del depósito y las estadísticas atenuadas. stats dim es la suma de la dimensión logits y la dimensión de arpillera, la dimensión de arpillera puede ser una dimensión logits si se usa arpillera diagonal o una dimensión logits^2 si se usa arpillera completa.
estadísticasResumenValores Un tensor flotante de rango 1 de forma densa [N] (N especifica el número de valores distintos de cero), que proporciona los valores para cada elemento en resumen_índices.
estadísticasResumenForma Un tensor flotante de rango 1 de forma densa [4], que especifica la forma densa del tensor disperso, que es [número de nodos de árbol, dimensiones de características, número de cubos, estadísticas tenues].
l1 l1 factor de regularización sobre el peso de las hojas, por instancia.
l2 Factor de regularización l2 sobre el peso de las hojas, por instancia.
árbolComplejidad ajuste a la ganancia, por hoja.
minNodoPeso Promedio mínimo de arpillera en un nodo antes de que se requiera que el nodo se considere para la división.
dimensión logits La dimensión de logit, es decir, número de clases.
opciones lleva valores de atributos opcionales
Devoluciones
  • una nueva instancia de BoostedTreesSparseCalculateBestFeatureSplit

Función pública de salida <Entero> Dimensiones ()

Un tensor de rango 1 que indica la mejor dimensión de característica para que cada característica se divida en cada nodo.

Ganancias de salida pública <Float> ()

Un tensor de rango 1 que indica las mejores ganancias para dividir cada nodo.

Salida pública <Float> leftNodeContribs ()

Un tensor de rango 2 que indica la contribución de los nodos izquierdos cuando se bifurcan desde los nodos principales hacia la dirección izquierda según el umbral dado para cada característica. Este valor se utilizará para crear el valor del nodo izquierdo sumándolo al valor del nodo principal. El tamaño de la segunda dimensión es la dimensión logits.

Salida pública <Entero> nodeIds ()

Un tensor de rango 1 que indica posibles identificadores de nodos que se pueden dividir.

Salida pública <Float> rightNodeContribs ()

Un tensor de rango 2, con la misma forma/condiciones que left_node_contribs_list, pero solo que el valor es para el nodo derecho.

público estático BoostedTreesSparseCalculateBestFeatureSplit.Options splitType (String splitType)

Parámetros
dividido Una cadena que indica si esta operación debe realizar una división por desigualdad o una división por igualdad.

Salida pública <Cadena> splitWithDefaultDirections ()

Un tensor de rango 1 que indica qué dirección tomar si faltan datos. La desigualdad con la izquierda predeterminada devuelve 0, la desigualdad con la derecha predeterminada devuelve 1, la igualdad con la derecha predeterminada devuelve 2.

umbrales públicos de salida <entero> ()

Un tensor de rango 1 que indica la identificación del depósito con el que comparar (como umbral) para la división en cada nodo.