BoostedTreesCalculateBestGainsPerFeature

BoostedTreesCalculateBestGainsPerFeature classe final pública

Calcula os ganhos de cada recurso e retorna as melhores informações de divisão possíveis para o recurso.

As informações de divisão são o melhor limite (id do intervalo), ganhos e contribuições de nó esquerdo / direito por nó para cada recurso.

É possível que nem todos os nós possam ser divididos em cada recurso. Portanto, a lista de nós possíveis pode diferir entre os recursos. Portanto, retornamos `node_ids_list` para cada recurso, contendo a lista de nós que este recurso pode ser usado para dividir.

Dessa forma, a saída é a melhor divisão por recursos e por nó, de modo que precisa ser combinada posteriormente para produzir a melhor divisão para cada nó (entre todos os recursos possíveis).

O comprimento das listas de saída são todos do mesmo comprimento, `num_features`. As formas de saída são compatíveis de forma que a primeira dimensão de todos os tensores de todas as listas seja a mesma e igual ao número de nós de divisão possíveis para cada recurso.

Métodos Públicos

estática BoostedTreesCalculateBestGainsPerFeature
criar ( Scope escopo, Operando <Integer> nodeIdRange, Iterable < Operando <Float >> statsSummaryList, Operando <float> L1, Operando <float> l2, Operando <float> treeComplexity, Operando <float> minNodeWeight, maxSplits Long)
Método de fábrica para criar uma classe que envolve uma nova operação BoostedTreesCalculateBestGainsPerFeature.
List < Output <Float >>
gainsList ()
Uma lista de saída de tensores Rank 1 indicando os melhores ganhos para cada recurso a ser dividido para determinados nós.
List < Output <Float >>
leftNodeContribsList ()
Uma lista de tensores Rank 2 indicando a contribuição dos nós esquerdos ao ramificar de nós pais (dado pelo elemento tensor na saída node_ids_list) para a direção esquerda pelo limite fornecido para cada recurso.
List < Output <Integer >>
nodeIdsList ()
Uma lista de saída de tensores Rank 1 indicando possíveis ids de nós divididos para cada recurso.
List < Output <Float >>
rightNodeContribsList ()
Uma lista de tensores de Rank 2, com a mesma forma / condições que left_node_contribs_list, mas apenas que o valor é para o nó direito.
List < Output <Integer >>
thresholdsList ()
Uma lista de saída de tensores de Rank 1 indicando a id do intervalo para comparação (como um limite) para divisão em cada nó.

Métodos herdados

Métodos Públicos

public static BoostedTreesCalculateBestGainsPerFeature criar ( Scope escopo, Operando <Integer> nodeIdRange, Iterable < Operando <Float >> statsSummaryList, Operando <float> L1, Operando <float> l2, Operando <float> treeComplexity, Operando <float> minNodeWeight, maxSplits Long)

Método de fábrica para criar uma classe que envolve uma nova operação BoostedTreesCalculateBestGainsPerFeature.

Parâmetros
alcance escopo atual
nodeIdRange Um tensor Rank 1 (forma = [2]) para especificar o intervalo [primeiro, último) de ids de nós a serem processados ​​em `stats_summary_list`. Os nós são iterados entre os dois nós especificados pelo tensor, como `para node_id no intervalo (node_id_range [0], node_id_range [1])` (Observe que o último índice node_id_range [1] é exclusivo).
statsSummaryList Uma lista de tensores Rank 3 (# shape = [max_splits, bucket, 2]) para resumo de estatísticas acumuladas (gradiente / hessian) por nó por bucket para cada recurso. A primeira dimensão do tensor é o número máximo de divisões e, portanto, nem todos os elementos dele serão usados, mas apenas os índices especificados por node_ids serão usados.
l1 l1 fator de regularização nos pesos das folhas, por instância com base.
12 l2 fator de regularização nos pesos das folhas, por instância com base.
treeComplexity ajuste ao ganho, por folha.
minNodeWeight média mínima de hessianos em um nó antes do necessário para que o nó seja considerado para divisão.
maxSplits o número de nós que podem ser divididos em toda a árvore. Usado como uma dimensão de tensores de saída.
Devoluções
  • uma nova instância de BoostedTreesCalculateBestGainsPerFeature

Lista pública < Output <Float >> gainsList ()

Uma lista de saída de tensores Rank 1 indicando os melhores ganhos para cada recurso a ser dividido para determinados nós. Veja acima para detalhes como formas e tamanhos.

Lista pública < Output <Float >> leftNodeContribsList ()

Uma lista de tensores Rank 2 indicando a contribuição dos nós esquerdos ao ramificar de nós pais (dado pelo elemento tensor na saída node_ids_list) para a direção esquerda pelo limite fornecido para cada recurso. Este valor será usado para fazer o valor do nó esquerdo adicionando ao valor do nó pai. O tamanho da segunda dimensão é 1 para logits unidimensionais, mas seria maior para problemas de várias classes. Veja acima para detalhes como formas e tamanhos.

Lista pública < Output <Integer >> nodeIdsList ()

Uma lista de saída de tensores Rank 1 indicando possíveis ids de nós divididos para cada recurso. O comprimento da lista é num_features, mas cada tensor tem um tamanho diferente, pois cada recurso fornece diferentes nós possíveis. Veja acima para detalhes como formas e tamanhos.

Lista pública < Output <Float >> rightNodeContribsList ()

Uma lista de tensores de Rank 2, com a mesma forma / condições que left_node_contribs_list, mas apenas que o valor é para o nó direito.

Lista pública < Output <Integer >> thresholdsList ()

Uma lista de saída de tensores Rank 1 indicando a id do intervalo para comparação (como um limite) para divisão em cada nó. Veja acima para detalhes como formas e tamanhos.