Scopri come la funzione di attivazione SiLU (Swish) aumenta le prestazioni dell'apprendimento profondo in attività di AI come il rilevamento di oggetti e l'NLP.
SiLU (Sigmoid Linear Unit), nota anche come funzione Swish, è una funzione di attivazione utilizzata nei modelli di deep learning (DL), in particolare nelle reti neurali (NN). È stata proposta dai ricercatori di Google e ha guadagnato popolarità grazie alla sua efficacia nel migliorare le prestazioni del modello rispetto alle funzioni di attivazione tradizionali come ReLU e Sigmoid. SiLU è apprezzata per la sua morbidezza e per le sue proprietà non monotone, che possono aiutare il flusso di gradienti e l'ottimizzazione del modello. Per una comprensione più ampia, consulta una panoramica generale sulle funzioni di attivazione.
SiLU è definito come il prodotto dell'input e del Sigmoide applicata all'ingresso. In sostanza, SiLU(x) = x * sigmoid(x)
. Questa formulazione permette a SiLU di agire come un meccanismo di autoregolazione, in cui la componente sigmoide determina la misura in cui l'ingresso lineare x
viene attraversato. Quando l'uscita sigmoide è vicina a 1, l'ingresso passa quasi invariato (simile a ReLU per i valori positivi), mentre quando è vicina a 0, l'uscita viene soppressa verso lo zero. A differenza della ReLU, la SiLU è liscia e non monotona (può diminuire anche quando l'ingresso aumenta), proprietà derivate dalla sua Dettagli sulla funzione sigmoidea componente. Il concetto è stato illustrato nel documento carta Swish originale.
SiLU offre diversi vantaggi che contribuiscono alla sua efficacia nei modelli di deep learning:
SiLU si distingue da altre funzioni di attivazione comuni:
max(0, x)
) e lineare per i valori positivi, ma soffre del problema del "ReLU morente" in cui i neuroni possono diventare inattivi per gli input negativi. Vedi un Spiegazione di ReLU. SiLU è fluido ed evita questo problema grazie al suo output non nullo per i valori negativi.SiLU è versatile ed è stato applicato con successo in diversi ambiti in cui si utilizzano modelli di deep learning:
SiLU è facilmente disponibile nei principali framework di deep learning:
torch.nn.SiLU
, con il servizio ufficiale di Documentazione PyTorch per SiLU disponibile.tf.keras.activations.swish
o tf.keras.activations.silu
, documentato nel documento Documentazione di TensorFlow per SiLU.Piattaforme come Ultralytics HUB supportano l'addestramento dei modelli e l'esplorazione di varie opzioni di distribuzione per i modelli che utilizzano componenti avanzati come SiLU. La ricerca continua e le risorse di organizzazioni come DeepLearning.AI aiutano i professionisti a sfruttare queste funzioni in modo efficace.