Condividi tramite


fastLinear: fastLinear

Crea un elenco contenente il nome della funzione e gli argomenti per eseguire il training di un modello Fast Linear con rxEnsemble.

Utilizzo

  fastLinear(lossFunction = NULL, l2Weight = NULL, l1Weight = NULL,
    trainThreads = NULL, convergenceTolerance = 0.1, maxIterations = NULL,
    shuffle = TRUE, checkFrequency = NULL, ...)
 

Arguments

lossFunction

Specifica la funzione di perdita empirica da ottimizzare. Per la classificazione binaria, sono disponibili le opzioni seguenti:

  • logLoss: perdita logaritmica. Questo è il valore predefinito.
  • hingeLoss: perdita di cerniera SVM. Il rispettivo parametro rappresenta le dimensioni del margine.
  • smoothHingeLoss: perdita di cerniera graduata. Il relativo parametro rappresenta la costante di graduazione.
    Per la regressione è attualmente supportata la perdita al quadrato squaredLoss. Quando questo parametro è impostato su NULL, il rispettivo valore predefinito dipende dal tipo di apprendimento:
  • logLoss per la classificazione binaria.
  • squaredLoss per la regressione lineare.

l2Weight

Specifica il peso di regolarizzazione L2. Il valore deve essere non negativo o NULL. Se viene specificato NULL, il valore effettivo verrà calcolato automaticamente in base al set di dati. NULL è il valore predefinito.

l1Weight

Specifica il peso di regolarizzazione L1. Il valore deve essere non negativo o NULL. Se viene specificato NULL, il valore effettivo verrà calcolato automaticamente in base al set di dati. NULL è il valore predefinito.

trainThreads

Specifica il numero di thread simultanei che è possibile usare per eseguire l'algoritmo. Quando questo parametro è impostato su NULL, il numero di thread usati viene determinato in base al numero di processori logici disponibili per il processo, nonché alla densità dei dati. Impostarlo su 1 per eseguire l'algoritmo in un singolo thread.

convergenceTolerance

Specifica la soglia di tolleranza usata come criterio di convergenza. Deve essere un valore compreso tra 0 e 1. Il valore predefinito è 0.1. L'algoritmo viene considerato convergente se il divario di dualità relativo, ovvero il rapporto tra il divario di dualità e la perdita primaria, scende al di sotto della tolleranza di convergenza specificata.

maxIterations

Specifica un limite superiore per il numero di iterazioni di training. Questo parametro deve essere positivo o NULL. Se viene specificato NULL, il valore effettivo verrà calcolato automaticamente in base al set di dati. Ogni iterazione richiede un passaggio completo sui dati di training. Il training termina dopo che il numero totale di iterazioni raggiunge il limite superiore specificato o quando la funzione di perdita converge, a seconda di quale evento si verifichi per primo.

shuffle

Specifica se mischiare i dati di training. Impostare TRUE per mischiare i dati, FALSE per non mischiarli. Il valore predefinito è TRUE. SDCA è un algoritmo di ottimizzazione stocastica. Se l'opzione per mischiare i dati è attivata, i dati di training vengono mischiati per ogni iterazione.

checkFrequency

Numero di iterazioni dopo le quali viene calcolata e verificata la funzione di perdita per determinare se è convergente. Il valore specificato deve essere un numero intero positivo o NULL. Se è NULL, il valore effettivo verrà calcolato automaticamente in base al set di dati. In caso contrario, se viene specificato checkFrequency = 5, la funzione di perdita verrà calcolata e la convergenza verrà controllata ogni 5 iterazioni. Il calcolo della funzione di perdita richiede un passaggio completo separato sui dati di training.

...

Argomenti aggiuntivi.