GBMIperparametri della luce - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

GBMIperparametri della luce

La tabella seguente contiene il sottoinsieme di iperparametri richiesti o più comunemente utilizzati per l'algoritmo Amazon SageMaker LightGBM. Gli utenti impostano questi parametri per agevolare la stima dei parametri del modello dai dati. L'GBMalgoritmo SageMaker Light è un'implementazione del pacchetto Light open source. GBM

Nota

Gli iperparametri predefiniti si basano su set di dati di esempio in Notebook Light GBM Sample.

Per impostazione predefinita, l'GBMalgoritmo SageMaker Light sceglie automaticamente una metrica di valutazione e una funzione oggettiva in base al tipo di problema di classificazione. L'GBMalgoritmo Light rileva il tipo di problema di classificazione in base al numero di etichette nei dati. Per i problemi di regressione, il parametro di valutazione è l'errore quadratico medio e la funzione obiettivo è la perdita di L2. Per i problemi di classificazione binaria, il parametro di valutazione e la funzione obiettivo sono entrambe entropia binaria incrociata. Per i problemi di classificazione multiclasse, il parametro di valutazione è l'entropia incrociata multiclasse e la funzione obiettivo è softmax. È possibile utilizzare l'iperparametro metric per modificare il parametro di valutazione predefinito. Fate riferimento alla tabella seguente per ulteriori informazioni sugli GBM iperparametri Light, incluse descrizioni, valori validi e valori predefiniti.

Nome parametro Descrizione
num_boost_round

Il numero massimo di iterazioni di potenziamento. Nota: internamente, Light GBM costruisce num_class * num_boost_round alberi per problemi di classificazione multiclasse.

Valori validi: numero intero, intervallo: numero intero positivo.

Valore predefinito: 100.

early_stopping_rounds

L'addestramento si interromperà se un parametro di un dato di convalida non migliora nell'ultimo round early_stopping_rounds. Se early_stopping_rounds è minore o uguale a zero, questo iperparametro viene ignorato.

Valori validi: numero intero.

Valore predefinito: 10.

metric

Parametro di valutazione per i dati di convalida. Se metric è impostato sul valore predefinito "auto", l'algoritmo sceglie automaticamente un parametro di valutazione in base al tipo di problema di classificazione:

  • rmse per la regressione

  • binary_logloss per la classificazione binaria

  • multi_logloss per la classificazione multiclasse

Valori validi: stringa, uno dei seguenti valori: ("auto", "rmse", "l1", "l2", "huber", "fair", "binary_logloss", "binary_error", "auc", "average_precision", "multi_logloss", "multi_error", "auc_mu" o "cross_entropy").

Valore predefinito: "auto".

learning_rate

La velocità con cui i pesi del modello vengono aggiornati dopo aver esaminato ogni batch di esempi di addestramento.

Valori validi: float, intervallo: (0.0, 1.0).

Valore predefinito: 0.1.

num_leaves

Il numero massimo di foglie in un albero.

Valori validi: intero, intervallo: (1,131072).

Valore predefinito: 64.

feature_fraction

Un sottoinsieme di funzionalità da selezionare su ogni iterazione (albero). Deve essere inferiore a 1,0.

Valori validi: float, intervallo: (0.0, 1.0).

Valore predefinito: 0.9.

bagging_fraction

Un sottoinsieme di funzionalità simili a feature_fraction, ma bagging_fraction seleziona casualmente parte dei dati senza ricampionamento.

Valori validi: float, intervallo: (0.0, 1.0).

Valore predefinito: 0.9.

bagging_freq

La frequenza di esecuzione del bagging. Ad ogni bagging_freq iterazione, Light seleziona GBM casualmente una percentuale dei dati da utilizzare per l'iterazione successiva. bagging_freq Questa percentuale è determinata dall'iperparametro bagging_fraction. Se bagging_freq è zero, il bagging è disattivato.

Valori validi: numeri interi, intervallo: numeri interi non negativi.

Valore predefinito: 1.

max_depth

La profondità massima per un modello ad albero. Viene utilizzata per gestire l'overfit quando la quantità di dati è ridotta. Se max_depth è minore o uguale a zero, significa che non esiste un limite per la profondità massima.

Valori validi: numero intero.

Valore predefinito: 6.

min_data_in_leaf

La quantità minima di dati in una foglia. Può essere utilizzata per gestire l’overfitting.

Valori validi: numeri interi, intervallo: numeri interi non negativi.

Valore predefinito: 3.

max_delta_step

Utilizzato per limitare la produzione massima delle foglie degli alberi. Se max_delta_step è minore o uguale a 0, non esiste alcun vincolo. La resa massima finale delle foglie è learning_rate * max_delta_step.

Valori validi: float.

Valore predefinito: 0.0.

lambda_l1

Regolarizzazione L1.

Valori validi: float, intervallo: float non negativi.

Valore predefinito: 0.0.

lambda_l2

Regolarizzazione L2.

Valori validi: float, intervallo: float non negativi.

Valore predefinito: 0.0.

boosting

Tipo di boosting

Valori validi: stringa, uno dei seguenti valori: ("gbdt", "rf", "dart" o "goss").

Valore predefinito: "gbdt".

min_gain_to_split

Il guadagno minimo per eseguire una suddivisione. Può essere usato per velocizzare l'addestramento.

Valori validi: numeri interi, float: float non negativi.

Valore predefinito: 0.0.

scale_pos_weight

Il peso delle etichette con classe positiva. Utilizzato solo per attività di classificazione binaria. scale_pos_weight non può essere usato se is_unbalance è impostato su "True".

Valori validi: float, intervallo: float positivi.

Valore predefinito: 1.0.

tree_learner

Tipo di learner ad albero.

Valori validi: stringa, uno dei seguenti valori: ("serial", "feature", "data" o "voting").

Valore predefinito: "serial".

feature_fraction_bynode

Seleziona un sottoinsieme di funzionalità casuali su ogni nodo dell'albero. Ad esempio, se feature_fraction_bynode è 0.8, viene selezionato l'80% delle funzionalità. Può essere utilizzata per gestire l’overfitting.

Valori validi: intero, intervallo: (0.0,1.0).

Valore predefinito: 1.0.

is_unbalance

Impostato su "True" se i dati di addestramento non sono bilanciati. Utilizzato solo per attività di classificazione binaria. is_unbalance non può essere usato con scale_pos_weight.

Valori validi: stringa: ("True" o "False").

Valore predefinito: "False".

max_bin

Il numero massimo di container utilizzati per inserire i valori delle funzionalità di bucket. Un numero limitato di container può ridurre la precisione dell'addestramento, ma può aumentare le prestazioni generali. Può essere utilizzata per gestire l’overfitting.

Valori validi: intero, intervallo: (1, ∞).

Valore predefinito: 255.

tweedie_variance_power

Controlla la varianza della distribuzione Tweedie. Impostalo più vicino 2.0 per passare a una distribuzione gamma. Impostalo più vicino 1.0 per passare a una distribuzione Poisson. Utilizzato solo per attività di regressione.

Valori validi: float, intervallo: [1.0, 2.0).

Valore predefinito: 1.5.

num_threads

Numero di thread paralleli utilizzati per eseguire LightGBM. Il valore 0 indica il numero predefinito di thread in OpenMP.

Valori validi: numeri interi, intervallo: numeri interi non negativi.

Valore predefinito: 0.

verbosity

La verbosità dei messaggi di stampa. Se verbosity è inferiore a 0, i messaggi di stampa mostrano solo errori irreversibili. Se verbosity è impostato su 0, i messaggi di stampa includono errori e avvisi. Se verbosity è 1, i messaggi di stampa mostrano ulteriori informazioni. Un valore verbosity superiore a 1 mostra la maggior parte delle informazioni nei messaggi di stampa e può essere utilizzato per il debug.

Valori validi: numero intero.

Valore predefinito: 1.