Calcula ganhos para cada recurso e retorna as melhores informações de divisão possíveis para cada nó. No entanto, se nenhuma divisão for encontrada, nenhuma informação de divisão será retornada para esse nó.
A informação de divisão é o melhor limite (bucket id), 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 esse 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).
As formas de saída são compatíveis de forma que a primeira dimensão de todos os tensores seja a mesma e igual ao número de nós de divisão possíveis para cada recurso.
Métodos públicos
static BoostedTreesCalculeBestFeatureSplitV2 | create ( Escopo do escopo, Operando <Integer> nodeIdRange, Iterable< Operando <Float>> statsSummariesList, Operando <String> splitTypes, Operando <Integer> candidatoFeatureIds, Operando <Float> l1, Operando <Float> l2, Operando <Float> treeComplexity, Operando <Float> minNodeWeight, Long logitsDimension) Método de fábrica para criar uma classe que envolve uma nova operação BoostedTreesCalculateBestFeatureSplitV2. |
Saída <Inteiro> | featureDimensions () Um tensores de Rank 1 indicando a melhor dimensão de recurso para cada recurso a ser dividido para determinados nós se o recurso for multidimensional. |
Saída <Inteiro> | featureIds () A Tensores de Rank 1 indicando o melhor ID de recurso para cada nó. |
Saída <Float> | ganhos () Um tensor Rank 1 que indica os melhores ganhos para cada recurso a ser dividido para determinados nós. |
Saída <Float> | leftNodeContribs () A Tensores de Rank 2 indicando a contribuição dos nós esquerdos ao ramificar dos nós pais (dados pelo elemento tensor na saída node_ids_list) para a direção esquerda pelo limite fornecido para cada recurso. |
Saída <Inteiro> | nodeIds () Um tensores de Rank 1 indicando possíveis IDs de nós divididos para cada recurso. |
Saída <Float> | rightNodeContribs () A tensores Rank 2, com a mesma forma/condições que left_node_contribs_list, mas apenas que o valor é para o nó direito. |
Saída <String> | splitWithDefaultDirections () A Tensores de Rank 1 que indicam a direção a seguir se os dados estiverem ausentes. |
Saída <Inteiro> | limites () Um tensores de Rank 1 indicando o ID do bucket para comparar (como um limite) para divisão em cada nó. |
Métodos Herdados
Métodos públicos
public static BoostedTreesCalculateBestFeatureSplitV2 create ( Escopo do escopo, Operando <Integer> nodeIdRange, Iterable< Operando <Float>> statsSummariesList, Operando <String> splitTypes, Operando <Integer> candidatoFeatureIds, Operando <Float> l1, Operando <Float> l2, Operando <Float > treeComplexity, Operando <Float> minNodeWeight, Long logitsDimension)
Método de fábrica para criar uma classe que envolve uma nova operação BoostedTreesCalculateBestFeatureSplitV2.
Parâmetros
alcance | escopo atual |
---|---|
nodeIdRange | Um tensor Rank 1 (shape=[2]) para especificar o intervalo [primeiro, último) de ids de nó para processar dentro de `stats_summary_list`. Os nós são iterados entre os dois nós especificados pelo tensor, como `for node_id in range(node_id_range[0], node_id_range[1])` (Observe que o último índice node_id_range[1] é exclusivo). |
statsResumosLista | Uma lista de tensores de Rank 4 (#shape=[max_splits, feature_dims, bucket, stats_dims]) para resumo de estatísticas acumuladas (gradiente/hessian) por nó, por dimensão, por buckets 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. |
Tipos de divisão | Um tensor Rank 1 que indica se este Op deve realizar divisão de desigualdade ou divisão de igualdade por recurso. |
candidatosFeatureIds | Tensor de Rank 1 com ids para cada recurso. Este é o id real do recurso. |
l1 | l1 fator de regularização em pesos de folha, por instância. |
l2 | l2 fator de regularização em pesos de folha, por instância. |
treeComplexidade | ajuste ao ganho, por folha. |
minNodeWeight | média mínima de hessianos em um nó antes de ser necessário para que o nó seja considerado para divisão. |
logitsDimension | A dimensão de logit, ou seja, número de classes. |
Devoluções
- uma nova instância de BoostedTreesCalculateBestFeatureSplitV2
Public Output <Integer> featureDimensions ()
Um tensores de Rank 1 indicando a melhor dimensão de recurso para cada recurso a ser dividido para determinados nós se o recurso for multidimensional. Veja acima para detalhes como formas e tamanhos.
Public Output <Integer> featureIds ()
A Tensores de Rank 1 indicando o melhor ID de recurso para cada nó. Veja acima para detalhes como formas e tamanhos.
ganhos de saída pública <Float> ()
Um tensor Rank 1 que indica os melhores ganhos para cada recurso a ser dividido para determinados nós. Veja acima para detalhes como formas e tamanhos.
Public Output <Float> leftNodeContribs ()
A Tensores de Rank 2 indicando a contribuição dos nós esquerdos ao ramificar dos nós pais (dados pelo elemento tensor na saída node_ids_list) para a direção esquerda pelo limite fornecido para cada recurso. Esse valor será usado para criar 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 multiclasse. Veja acima para detalhes como formas e tamanhos.
saída pública <Integer> nodeIds ()
Um tensores de 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.
Public Output <Float> rightNodeContribs ()
A tensores Rank 2, com a mesma forma/condições que left_node_contribs_list, mas apenas que o valor é para o nó direito.
Public Output <String> splitWithDefaultDirections ()
A Tensores de Rank 1 que indicam a direção a seguir se os dados estiverem ausentes. Veja acima para detalhes como formas e tamanhos. A desigualdade com a esquerda padrão retorna 0, a desigualdade com a direita padrão retorna 1, a igualdade com a direita padrão retorna 2.
limites de saída pública <Integer> ()
Um tensores de Rank 1 indicando o ID do bucket para comparar (como um limite) para divisão em cada nó. Veja acima para detalhes como formas e tamanhos.