Tutto ciò che devi sapere sulla funzione di attivazione in ML

Pubblicato: 2022-11-08

Sommario

Che cos'è la funzione di attivazione in Machine Learning?

Le funzioni di attivazione dell'apprendimento automatico si dimostrano elementi cruciali in un modello ML comprendente tutti i suoi pesi e pregiudizi. Sono oggetto di ricerca in continuo sviluppo e hanno svolto un ruolo significativo nel rendere la formazione di Deep Neural Network una realtà. In sostanza, determinano la decisione di stimolare un neurone. Se l'informazione che riceve un neurone è pertinente all'informazione già presente o se dovrebbe essere ignorata. La modifica non lineare che applichiamo al segnale di ingresso è chiamata funzione di attivazione. Il seguente livello di neuroni riceve questo output alterato come input.

Poiché le funzioni di attivazione conducono calcoli non lineari sull'input di una rete neurale, le consentono di apprendere e svolgere attività più complicate senza di esse, che è essenzialmente un modello di regressione lineare in Machine Learning.

È essenziale comprendere le applicazioni delle funzioni di attivazione e valutare i vantaggi e gli svantaggi di ciascuna funzione di attivazione per selezionare il tipo appropriato di funzione di attivazione che può offrire non linearità e precisione in un particolare modello di rete neurale.

Iscriviti al corso di Machine Learning dalle migliori università del mondo. Guadagna master, Executive PGP o programmi di certificazione avanzati per accelerare la tua carriera.

I modelli delle funzioni di attivazione di Machine Learning sono fondamentalmente di due tipi:

  • Strati nascosti
  • Livelli di output

Strati nascosti

Le funzioni di attivazione utilizzate negli strati nascosti del ruolo principale dei modelli neurali è di fornire la non linearità richiesta dalle reti neurali per simulare interazioni non lineari.

Livelli di output

I metodi di attivazione impiegati dai livelli di output dei modelli di Machine Learning hanno un obiettivo principale particolare: comprimere il valore all'interno di un intervallo ristretto, ad esempio da 0 a 1.

Cerchiamo prima di tutto di comprendere i diversi tipi di funzioni di attivazione in Machine Learning

1. Funzione passo binario

Un classificatore basato sulla soglia, che determina se il neurone deve essere attivato o meno, è la prima cosa che viene in mente quando abbiamo una funzione di attivazione. Il neurone viene attivato se il valore Y è maggiore di un valore di soglia specificato; altrimenti, viene lasciato inattivo.

È spesso definito come -

f(x) = 1, x>=0

f(x) = 0, x<0

La funzione binaria è semplice. È applicabile durante lo sviluppo di un classificatore binario. Sono necessarie valutazioni, che sono le opzioni ideali quando dobbiamo solo rispondere sì o no per una singola classe poiché accendono il neurone o lo lasciano nullo.

2. Funzione lineare

Una pendenza positiva può causare un aumento della velocità di accensione all'aumentare della velocità di ingresso. Le funzioni di attivazione lineare sono superiori nel fornire un'ampia gamma di attivazioni.

La funzione è esattamente proporzionale alla combinazione ponderata di neuroni o input nella nostra semplice funzione di attivazione orizzontale.

Un neurone può essere attivato o meno in binario. Potresti notare che la derivata di questa funzione è costante se hai familiarità con la discesa del gradiente nell'apprendimento automatico.

I migliori corsi di apprendimento automatico e corsi di intelligenza artificiale online

Master of Science in Machine Learning e AI presso LJMU Programma post-laurea esecutivo in Machine Learning e AI di IIITB
Programma di certificazione avanzato in Machine Learning e NLP da IIITB Programma di certificazione avanzato in Machine Learning e Deep Learning da IIITB Programma post-laurea esecutivo in Data Science e Machine Learning presso l'Università del Maryland
Per esplorare tutti i nostri corsi, visita la nostra pagina qui sotto.
Corsi di apprendimento automatico

3. Funzione non lineare

  1. ReLU

In termini di funzioni di attivazione, l'Unità Lineare Rettificata è la migliore. Questa è la funzione di attivazione più popolare e predefinita per la maggior parte dei problemi. Quando è negativo, è limitato a 0, mentre quando diventa positivo, è illimitato. Una rete neurale profonda può trarre vantaggio dalla regolarizzazione intrinseca creata da questa combinazione di limitatezza e illimitatezza. La regolarizzazione crea una rappresentazione sparsa che rende l'addestramento e l'inferenza computazionalmente efficaci.

L'illimitatezza positiva mantiene la semplicità computazionale mentre accelera la convergenza della regressione lineare. ReLU ha solo uno svantaggio significativo: i neuroni morti. Alcuni neuroni morti si sono spenti all'inizio della fase di allenamento e legati negativamente a 0 non si riattivano mai. Poiché la funzione passa rapidamente da illimitata quando x > 0 a limitata quando x ≤ 0, non può essere continuamente differenziata. Tuttavia, in pratica, questo può essere superato senza effetti duraturi sulle prestazioni se c'è un basso tasso di apprendimento e una significativa distorsione negativa.

Professionisti:

  • ReLU richiede meno processi matematici rispetto ad altre funzioni non lineari, rendendolo meno lineare e dispendioso dal punto di vista computazionale.
  • Previene e risolve il problema del gradiente di scomparsa.

Uso:

  • Utilizzato in RNN, CNN e altri modelli di machine learning.

Diverse modifiche di ReLU –

ReLU che perde

Una variante migliore della funzione ReLU è la funzione Leaky ReLU. Poiché il gradiente della funzione ReLU è 0, dove x<0, le attivazioni in quella regione hanno portato i neuroni a morire e la ReLU che perde si rivela la più vantaggiosa per risolvere tali problemi. Definiamo la funzione ReLU come una minuscola componente lineare di x anziché come 0, dove x<0.

Può essere visto come -

f(x)=ax, x<0

f(x)=x, x>=0

Professionisti -

  • Leaky ReLU, che ha una piccola pendenza negativa, è stato un tentativo di affrontare il problema della "ReLU morente" (di 0,01 circa).

Uso -

  • Utilizzato in attività che coinvolgono gradienti come GAN.

ReLU parametrico

Questo è un miglioramento rispetto a Leaky ReLU, in cui il multiplo scalare viene addestrato sui dati anziché essere selezionato a caso. Poiché il modello è stato addestrato utilizzando i dati, è sensibile al parametro di ridimensionamento (a) e conta in modo diverso a seconda del valore di a.

Uso -

  • Quando il Leaky ReLU si guasta, è possibile utilizzare un ReLU parametrico per risolvere il problema dei neuroni morti.

GeLU (unità lineare di errore gaussiano)

L'ultimo arrivato sul blocco e senza dubbio il vincitore per i compiti relativi alla NLP (Natural Language Processing) è l'unità lineare dell'errore gaussiano, che viene utilizzata nei sistemi basati su trasformatori e negli algoritmi SOTA come GPT-3 e BERT. GeLU combina ReLU, Zone Out e Dropout (che azzera casualmente i neuroni per una rete sparsa). ReLU è reso più fluido con GeLU poiché pesa gli input per percentile anziché per gate.

Uso -

  • Visione artificiale, PNL, riconoscimento vocale

ELU (unità lineare esponenziale)

L'ELU introdotta nel 2015 è positivamente illimitata e utilizza una curva logaritmica per valori negativi. Rispetto a Leaky e Parameter ReLU, questa strategia per risolvere il problema del neurone morto è leggermente diversa. In contrasto con ReLU, i valori negativi gradualmente si attenuano e si limitano per prevenire la morte dei neuroni. Tuttavia, è costoso poiché viene utilizzata una funzione esponenziale per descrivere la pendenza negativa. Quando si utilizza una tecnica di partenza non ideale, la funzione esponenziale si traduce occasionalmente in un gradiente in espansione.

Swish

I piccoli valori negativi di Swish, che sono stati introdotti per la prima volta nel 2017, sono ancora utili per catturare i modelli sottostanti, mentre i grandi valori negativi avranno un derivato di 0. Swish può essere utilizzato per sostituire facilmente ReLU a causa della sua forma intrigante.

Professionisti -

  • Il risultato è una soluzione alternativa tra la funzione Sigmoid e RELU che aiuta a normalizzare il risultato.
  • Ha la capacità di affrontare il problema del gradiente di scomparsa.

Uso -

  • In termini di categorizzazione delle immagini e traduzione automatica, è alla pari o addirittura superiore a ReLU.

Competenze di apprendimento automatico richieste

Corsi di Intelligenza Artificiale Corsi di Tableau
Corsi di PNL Corsi di deep learning

4. Funzione di attivazione Softmax

Come le funzioni di attivazione del sigmoide, softmax viene utilizzato principalmente nello strato finale, o strato di output, per prendere decisioni. Il softmax assegna semplicemente valori alle variabili di input in base ai loro pesi e il totale di questi pesi alla fine è uguale a uno.

Professionisti -

  • Rispetto alla funzione RELU, la convergenza del gradiente è più uniforme in Softmax.
  • Ha la capacità di gestire il problema del gradiente di scomparsa.

Uso -

  • Classificazione multiclasse e multinominale.

5. Sigmoide

La funzione Sigmoid in Machine Learning è una delle funzioni di attivazione più popolari. L'equazione è -

f(x)=1/(1+e^-x)

Queste funzioni di attivazione hanno il vantaggio di ridurre gli input a un valore compreso tra 0 e 1, il che le rende ideali per la modellazione della probabilità. Quando applicata a una rete neurale profonda, la funzione diventa differenziabile ma si satura rapidamente a causa della limitatezza, risultando in un gradiente decrescente. Il costo del calcolo esponenziale aumenta quando è necessario addestrare un modello con centinaia di livelli e neuroni.

La derivata è vincolata tra -3 e 3, mentre la funzione è vincolata tra 0 e 1. Non è l'ideale per l'allenamento di livelli nascosti poiché l'output non è simmetrico attorno allo zero, il che farebbe sì che tutti i neuroni adottino lo stesso segno durante l'allenamento .

Professionisti -

  • Fornisce un gradiente uniforme durante la convergenza.
  • Spesso fornisce una classificazione precisa della previsione con 0 e 1.

Uso -

  • La funzione Sigmoid in Machine Learning viene in genere utilizzata nella classificazione binaria e nei modelli di regressione logistica nel livello di output.

Blog popolari di Machine Learning e Intelligenza Artificiale

IoT: storia, presente e futuro Esercitazione sull'apprendimento automatico: impara il ML Cos'è l'algoritmo? Semplice e facile
Stipendio per ingegnere robotico in India: tutti i ruoli Un giorno nella vita di un ingegnere di machine learning: cosa fanno? Cos'è l'IoT (Internet delle cose)
Permutazione vs combinazione: differenza tra permutazione e combinazione Le 7 tendenze principali nell'intelligenza artificiale e nell'apprendimento automatico Machine Learning con R: tutto ciò che devi sapere

6. Tanh – Funzione di attivazione della tangente iperbolica

Simile alla funzione Sigmoid in Machine Learning , questa funzione di attivazione viene utilizzata per prevedere o distinguere tra due classi, tranne per il fatto che trasferisce esclusivamente l'input negativo in quantità negative e ha un intervallo da -1 a 1.

tanh(x)=2sigmoide(2x)-1

o

tanh(x)=2/(1+e^(-2x)) -1

In sostanza risolve il nostro problema con i valori che hanno lo stesso segno. Altre caratteristiche sono identiche a quelle della funzione sigmoidea. In ogni momento è continuo e distinto.

Professionisti -

  • A differenza del sigmoide, ha una funzione zero-centrica.
  • Questa funzione ha anche una sfumatura uniforme.

Sebbene le funzioni Tahn e Sigmoid in Machine Learning possano essere utilizzate in livelli nascosti a causa della loro limitatezza positiva, le reti neurali profonde non possono utilizzarle a causa della saturazione dell'allenamento e dei gradienti di fuga.

Inizia la tua carriera nel machine learning con il corso giusto

Interessato ad approfondire le funzioni di attivazione e la loro assistenza per migliorare l'apprendimento automatico? Ottieni una panoramica di Machine Learning con tutti i dettagli come AI, Deep Learning, NLP e Reinforcement Learning con un corso UpGrad riconosciuto da WES Master of Science in Machine Learning e AI . Questo corso offre esperienze pratiche mentre si lavora su più di 12 progetti, conducendo ricerche, corsi di alta codifica e allenando con alcuni dei migliori professori.

Iscriviti per saperne di più!

Conclusione

Le operazioni critiche note come funzioni di attivazione alterano l'input in modo non lineare, consentendogli di comprendere ed eseguire compiti più complicati. Abbiamo affrontato le funzioni di attivazione più popolari e i loro usi che possono essere applicati; queste funzioni di attivazione forniscono la stessa funzione ma sono applicate in diverse circostanze.

Come puoi decidere quale funzione di attivazione è la migliore?

La scelta di una funzione di attivazione è una decisione complessa che dipende interamente dal problema in questione. Tuttavia, potresti voler iniziare con la funzione sigmoide se non conosci l'apprendimento automatico prima di continuare con gli altri.

La funzione di attivazione deve essere lineare o non lineare?

Non importa quanto sia complicato il design, una funzione di attivazione lineare è efficace solo fino a uno strato di profondità. Quindi lo strato di attivazione non può essere lineare. Inoltre, il mondo di oggi e le sue sfide sono molto non lineari.

Quale funzione di attivazione può essere appresa facilmente?

Tanh. Ampliando l'intervallo da -1 a 1, risolve lo svantaggio della funzione di attivazione del sigmoide. Ciò si traduce in una centratura zero, che fa sì che i pesi del livello nascosto si avvicinino a 0. Di conseguenza, l'apprendimento diventa più rapido e semplice.