Calcula os ganhos para cada recurso e retorna as melhores informações de divisão possíveis para o recurso.
As informações divididas são o melhor limite (id do bucket), ganhos e contribuições do nó esquerdo/direito por nó para cada recurso.
É possível que nem todos os nós possam ser divididos em cada recurso. Conseqüentemente, 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.
Desta forma, a saída é a melhor divisão por características e por nó, de modo que precisa ser combinada posteriormente para produzir a melhor divisão para cada nó (entre todas as características 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.
Classes aninhadas
aula | BoostedTreesCalculateBestFeatureSplit.Options | Atributos opcionais para BoostedTreesCalculateBestFeatureSplit |
Constantes
Corda | OP_NAME | O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow |
Métodos Públicos
estática BoostedTreesCalculateBestFeatureSplit | create ( Escopo do escopo , Operando < TInt32 > nodeIdRange, Operando < TFloat32 > statsSummary, Operando < TFloat32 > l1, Operando < TFloat32 > l2, Operando < TFloat32 > treeComplexity, Operando < TFloat32 > minNodeWeight, Long logitsDimension, Opções... opções) Método de fábrica para criar uma classe que envolve uma nova operação BoostedTreesCalculateBestFeatureSplit. |
Saída < TInt32 > | recursoDimensões () Tensores de classificação 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 < TFloat32 > | ganhos () Tensores de classificação 1 indicando os melhores ganhos para cada recurso a ser dividido para determinados nós. |
Saída < TFloat32 > | leftNodeContribs () Tensores de classificação 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 < TInt32 > | nodeIds () Tensores de classificação 1 indicando possíveis IDs de nós divididos para cada recurso. |
Saída < TFloat32 > | rightNodeContribs () Tensores de classificação 2, com a mesma forma/condições que left_node_contribs_list, mas apenas que o valor é para o nó direito. |
estática BoostedTreesCalculateBestFeatureSplit.Options | splitType (String splitType) |
Saída <TString> | splitWithDefaultDirections () Tensores de classificação 1 indicando a direção a seguir se faltarem dados. |
Saída < TInt32 > | limites () Tensores de classificação 1 indicando o ID do bucket para comparação (como um limite) para divisão em cada nó. |
Métodos herdados
Constantes
String final estática pública OP_NAME
O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow
Métodos Públicos
public static BoostedTreesCalculateBestFeatureSplit create ( Escopo de escopo , Operando < TInt32 > nodeIdRange, Operando < TFloat32 > statsSummary, Operando < TFloat32 > l1, Operando < TFloat32 > l2, Operando < TFloat32 > treeComplexity, Operando < TFloat32 > minNodeWeight, Long logitsDimension, Opções.. .opções )
Método de fábrica para criar uma classe que envolve uma nova operação BoostedTreesCalculateBestFeatureSplit.
Parâmetros
escopo | escopo atual |
---|---|
nodeIdRange | Um tensor de classificação 1 (shape=[2]) para especificar o intervalo [primeiro, último) de IDs de nó a serem processados em `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). |
estatísticasResumo | Um tensor de classificação 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. |
l1 | l1 fator de regularização nos pesos das folhas, com base em instância. |
l2 | Fator de regularização l2 nos pesos das folhas, com base em instância. |
árvoreComplexidade | ajuste ao ganho, por folha. |
minNodePeso | média mínima de hessianas em um nó antes necessária para que o nó seja considerado para divisão. |
logitsDimensão | A dimensão do logit, ou seja, número de classes. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância de BoostedTreesCalculateBestFeatureSplit
Saída pública < TInt32 > featureDimensions ()
Tensores de classificação 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 detalhes como formas e tamanhos.
Saída pública < TFloat32 > ganhos ()
Tensores de classificação 1 indicando os melhores ganhos para cada recurso a ser dividido para determinados nós. Veja acima detalhes como formas e tamanhos.
Saída pública < TFloat32 > leftNodeContribs ()
Tensores de classificação 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. Este 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 multiclasses. Veja acima detalhes como formas e tamanhos.
Saída pública < TInt32 > nodeIds ()
Tensores de classificação 1 indicando possíveis IDs de nós divididos para cada recurso. O comprimento da lista é num_features, mas cada tensor tem tamanho diferente, pois cada recurso fornece diferentes nós possíveis. Veja acima detalhes como formas e tamanhos.
Saída pública < TFloat32 > rightNodeContribs ()
Tensores de classificação 2, com a mesma forma/condições que left_node_contribs_list, mas apenas que o valor é para o nó direito.
público estático BoostedTreesCalculateBestFeatureSplit.Options splitType (String splitType)
Parâmetros
splitType | Uma string indicando se este Op deve realizar divisão de desigualdade ou divisão de igualdade. |
---|
Saída pública < TString > splitWithDefaultDirections ()
Tensores de classificação 1 indicando a direção a seguir se faltarem dados. Veja acima detalhes como formas e tamanhos. A desigualdade com o padrão à esquerda retorna 0, a desigualdade com o padrão à direita retorna 1, a igualdade com o padrão à direita retorna 2.