Sintonizzati su YOLO Vision 2025!
25 settembre 2025
10:00 — 18:00 BST
Evento ibrido
Yolo Vision 2024
Glossario

Sigmoide

Scopri la potenza della funzione Sigmoid nell'IA. Scopri come abilita la non linearità, aiuta la classificazione binaria e guida i progressi dell'ML!

La funzione Sigmoid è una popolare funzione di attivazione utilizzata nel machine learning (ML) e nel deep learning (DL). È una funzione matematica che produce una caratteristica curva a forma di "S", o sigmoide. Il suo scopo principale è quello di prendere qualsiasi numero reale e "schiacciarlo" in un intervallo compreso tra 0 e 1. Questo output viene spesso interpretato come una probabilità, rendendo Sigmoid particolarmente utile nei modelli in cui l'obiettivo è prevedere la probabilità di un risultato. Introducendo la non linearità in una rete neurale (NN), consente al modello di apprendere modelli complessi dai dati, cosa che sarebbe altrimenti impossibile con semplici trasformazioni lineari.

Ruolo e applicazioni

La capacità della funzione Sigmoid di mappare gli input a un output simile a una probabilità la rende una pietra angolare per determinati tipi di attività. Sebbene sia diventata meno comune nei livelli nascosti delle moderne reti neurali profonde, rimane una scelta standard per il livello di output in scenari specifici.

Applicazioni chiave

  • Classificazione Binaria: Nei problemi di classificazione binaria, l'obiettivo è classificare un input in una delle due classi (ad esempio, spam o non spam, malattia presente o assente). Una funzione Sigmoid nel livello di output fornisce un singolo valore compreso tra 0 e 1, che rappresenta la probabilità che l'input appartenga alla classe positiva. Ad esempio, un modello di analisi di immagini mediche potrebbe utilizzare Sigmoid per restituire una probabilità di 0,9, indicando una probabilità del 90% che un tumore sia maligno.
  • Classificazione Multi-Label: A differenza della classificazione multi-classe in cui un input appartiene a una sola classe, le attività multi-label consentono di associare un input a più etichette contemporaneamente. Ad esempio, un modello di object detection come Ultralytics YOLO potrebbe analizzare un'immagine e identificare contemporaneamente "auto", "pedone" e "semaforo". In questo caso, una funzione Sigmoid viene applicata a ogni neurone di output in modo indipendente, fornendo la probabilità per ogni possibile etichetta. Puoi saperne di più sull'evoluzione dell'object detection.
  • Meccanismi di gating nelle RNN: Le funzioni Sigmoid sono un componente fondamentale nei meccanismi di gating delle Reti neurali ricorrenti (RNN), come le Long Short-Term Memory (LSTM) e le Gated Recurrent Units (GRU). Questi gate utilizzano Sigmoid per controllare il flusso di informazioni, decidendo quali dati conservare o scartare in ogni fase. Questo meccanismo è fondamentale per apprendere le dipendenze a lungo termine nei dati sequenziali, come spiegato in questo post del blog dettagliato sulla comprensione delle LSTM.

Confronto con altre funzioni di attivazione

È importante distinguere la funzione Sigmoide da altre funzioni di attivazione per capire quando utilizzarla.

  • Softmax: La funzione Softmax viene tipicamente utilizzata per problemi di classificazione multi-classe, dove ogni input appartiene esattamente a una delle diverse classi possibili. A differenza della sigmoide, che calcola probabilità indipendenti per ogni output, Softmax calcola una distribuzione di probabilità tra tutte le classi che somma a 1. Ad esempio, un modello che classifica cifre scritte a mano dal dataset MNIST utilizzerebbe Softmax per assegnare una singola probabilità a ogni cifra da 0 a 9.
  • ReLU (Rectified Linear Unit): ReLU è diventato lo standard de facto per gli strati nascosti nelle reti profonde. È computazionalmente più efficiente e aiuta a mitigare il problema del vanishing gradient (gradiente che svanisce), un problema significativo con Sigmoid in cui i gradienti diventano estremamente piccoli durante la backpropagation, rallentando o bloccando il processo di apprendimento. Puoi leggere di più sulle sfide dei gradienti in questo articolo di DeepLearning.AI.
  • SiLU (Sigmoid Linear Unit): Conosciuta anche come Swish, SiLU è una funzione di attivazione più moderna derivata da Sigmoid. Spesso si comporta meglio di ReLU nei modelli più profondi, incluse le architetture avanzate di computer vision. I modelli Ultralytics spesso sfruttano funzioni di attivazione avanzate per ottenere un migliore equilibrio tra velocità e precisione.

Utilizzo e disponibilità moderni

Sebbene meno comune nei livelli nascosti di oggi, la Sigmoid rimane una scelta standard per i livelli di output nelle attività di classificazione binaria e multi-etichetta. Costituisce inoltre un componente fondamentale nei meccanismi di gating all'interno di architetture complesse che gestiscono dati sequenziali.

La sigmoide è facilmente disponibile in tutte le principali framework di deep learning, inclusi PyTorch (come torch.sigmoid) e TensorFlow (come tf.keras.activations.sigmoid). Piattaforme come Ultralytics HUB supporta modelli che utilizzano varie funzioni di attivazione, consentendo agli utenti di addestramento e deploy soluzioni sofisticate di computer vision.

Unisciti alla community di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora
Link copiato negli appunti