BoostedTreesCalculateBestFeatureSplit

classe finale pubblica BoostedTreesCalculateBestFeatureSplit

Calcola i guadagni per ciascuna funzionalità e restituisce le migliori informazioni di suddivisione possibili per la funzionalità.

Le informazioni suddivise rappresentano la soglia migliore (ID bucket), i guadagni e i contributi dei nodi sinistro/destro per nodo per ciascuna funzionalità.

È possibile che non tutti i nodi possano essere suddivisi su ciascuna funzionalità. Pertanto, l'elenco dei possibili nodi può differire a seconda delle funzionalità. Pertanto, restituiamo `node_ids_list` per ciascuna funzionalità, contenente l'elenco dei nodi che questa funzionalità può essere utilizzata per dividere.

In questo modo, l'output è la migliore suddivisione per funzionalità e per nodo, in modo che debba essere combinata successivamente per produrre la migliore suddivisione per ciascun nodo (tra tutte le possibili funzionalità).

Le forme di output sono compatibili in modo tale che la prima dimensione di tutti i tensori sia la stessa e uguale al numero di possibili nodi divisi per ciascuna caratteristica.

Classi nidificate

classe BoostedTreesCalculateBestFeatureSplit.Options Attributi facoltativi per BoostedTreesCalculateBestFeatureSplit

Costanti

Corda OP_NAME Il nome di questa operazione, come noto al motore principale di TensorFlow

Metodi pubblici

static BoostedTreesCalculateBestFeatureSplit
create ( Scope scope, Operando < TInt32 > nodeIdRange, Operando < TFloat32 > statsSummary, Operando < TFloat32 > l1, Operando < TFloat32 > l2, Operando < TFloat32 > treeComplexity, Operando < TFloat32 > minNodeWeight, Long logitsDimension, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione BoostedTreesCalculateBestFeatureSplit.
Uscita < TInt32 >
caratteristicaDimensioni ()
Un tensore di grado 1 che indica la migliore dimensione della feature per ciascuna feature da dividere per determinati nodi se la feature è multidimensionale.
Uscita < TFloat32 >
guadagni ()
Un tensore di grado 1 che indica i migliori guadagni per ciascuna caratteristica da dividere per determinati nodi.
Uscita < TFloat32 >
leftNodeContribs ()
Tensori di rango 2 che indicano il contributo dei nodi di sinistra quando si diramano dai nodi principali (dato dall'elemento tensore nell'output node_ids_list) alla direzione di sinistra in base alla soglia specificata per ciascuna caratteristica.
Uscita < TInt32 >
ID nodo ()
Tensori di rango 1 che indicano possibili ID di nodi suddivisi per ciascuna funzionalità.
Uscita < TFloat32 >
rightNodeContribs ()
Un tensore di rango 2, con la stessa forma/condizioni di left_node_contribs_list, ma solo che il valore è per il nodo destro.
statico BoostedTreesCalculateBestFeatureSplit.Options
splitType (Stringa splitType)
Uscita < TString >
splitWithDefaultDirections ()
Un tensore di rango 1 che indica la direzione da seguire se mancano i dati.
Uscita < TInt32 >
soglie ()
Tensori di rango 1 che indicano l'ID del bucket con cui confrontare (come soglia) per la suddivisione in ciascun nodo.

Metodi ereditati

Costanti

Stringa finale statica pubblica OP_NAME

Il nome di questa operazione, come noto al motore principale di TensorFlow

Valore costante: "BoostedTreesCalculateBestFeatureSplit"

Metodi pubblici

public static BoostedTreesCalculateBestFeatureSplit create ( Scope scope, Operando < TInt32 > nodeIdRange, Operando < TFloat32 > statsSummary, Operando < TFloat32 > l1, Operando < TFloat32 > l2, Operando < TFloat32 > treeComplexity, Operando < TFloat32 > minNodeWeight, Long logitsDimension, Options.. . opzioni)

Metodo factory per creare una classe che racchiude una nuova operazione BoostedTreesCalculateBestFeatureSplit.

Parametri
scopo ambito attuale
nodeIdRange Un tensore di grado 1 (shape=[2]) per specificare l'intervallo [primo, ultimo) degli ID nodo da elaborare all'interno di "stats_summary_list". I nodi vengono iterati tra i due nodi specificati dal tensore, come "for node_id in range(node_id_range[0], node_id_range[1])" (notare che l'ultimo indice node_id_range[1] è esclusivo).
statsSummary Un tensore di grado 4 (#shape=[max_splits, feature_dims, bucket, stats_dims]) per il riepilogo delle statistiche accumulate (gradiente/iuta) per nodo, per dimensione, per bucket per ciascuna funzionalità. La prima dimensione del tensore è il numero massimo di suddivisioni, e quindi non verranno utilizzati tutti i suoi elementi, ma verranno utilizzati solo gli indici specificati da node_ids.
l1 l1 fattore di regolarizzazione sui pesi delle foglie, in base all'istanza.
l2 fattore di regolarizzazione l2 sui pesi delle foglie, basato per istanza.
alberoComplessità regolazione del guadagno, in base alla foglia.
minNodeWeight media minima di iuta in un nodo prima di essere richiesta affinché il nodo venga considerato per la divisione.
logitsDimension La dimensione del logit, cioè il numero di classi.
opzioni trasporta valori di attributi opzionali
ritorna
  • una nuova istanza di BoostedTreesCalculateBestFeatureSplit

public Output < TInt32 > featureDimensions ()

Un tensore di grado 1 che indica la migliore dimensione della feature per ciascuna feature da dividere per determinati nodi se la feature è multidimensionale. Vedi sopra per dettagli come forme e dimensioni.

Uscita pubblica < TFloat32 > guadagni ()

Un tensore di grado 1 che indica i migliori guadagni per ciascuna caratteristica da dividere per determinati nodi. Vedi sopra per dettagli come forme e dimensioni.

Output pubblico < TFloat32 > leftNodeContribs ()

Tensori di rango 2 che indicano il contributo dei nodi di sinistra quando si diramano dai nodi principali (dato dall'elemento tensore nell'output node_ids_list) alla direzione di sinistra in base alla soglia specificata per ciascuna caratteristica. Questo valore verrà utilizzato per creare il valore del nodo sinistro aggiungendolo al valore del nodo genitore. La dimensione della seconda dimensione è 1 per i logit monodimensionali, ma sarebbe maggiore per i problemi multiclasse. Vedi sopra per dettagli come forme e dimensioni.

output pubblico < TInt32 > nodeId ()

Tensori di rango 1 che indicano possibili ID di nodi suddivisi per ciascuna funzionalità. La lunghezza dell'elenco è num_features, ma ogni tensore ha dimensioni diverse poiché ciascuna caratteristica fornisce diversi nodi possibili. Vedi sopra per dettagli come forme e dimensioni.

Output pubblico < TFloat32 > rightNodeContribs ()

Un tensore di rango 2, con la stessa forma/condizioni di left_node_contribs_list, ma solo che il valore è per il nodo destro.

public static BoostedTreesCalculateBestFeatureSplit.Options splitType (String splitType)

Parametri
splitType Una stringa che indica se questa operazione deve eseguire la suddivisione della disuguaglianza o la suddivisione dell'uguaglianza.

Output pubblico < TString > splitWithDefaultDirections ()

Un tensore di rango 1 che indica la direzione da seguire se mancano i dati. Vedi sopra per dettagli come forme e dimensioni. La disuguaglianza con la sinistra predefinita restituisce 0, la disuguaglianza con la destra predefinita restituisce 1, l'uguaglianza con la destra predefinita restituisce 2.

uscite pubbliche < TInt32 > soglie ()

Tensori di rango 1 che indicano l'ID del bucket con cui confrontare (come soglia) per la suddivisione in ciascun nodo. Vedi sopra per dettagli come forme e dimensioni.