Introduzione al calcolo delle Derivate

Autore: Davide Coppola

 

 

Sebbene a volte venga trascurata, la matematica è una parte fondamentale del machine learning (ML) e del deep learning (DL). Infatti, è la base su cui si fondano entrambe le discipline: senza nozioni di algebra o di analisi non potrebbero esistere. Un elemento chiave nel ML, proveniente dall’analisi matematica, è la nozione di derivata. Ma non devi averne paura; è molto più semplice di quanto tu possa pensare!

Per prima cosa, definiamo cos’è una funzione: può  essere pensata come una scatola nera (Fig. 1): un numero  di valori di input variabili indipendenti entra nella scatola, vengono processati secondo una procedura specifica determinata dall’equazione (o equazioni) che descrivono la funzione, e infine  nuovi valori di outputvariabili dipendenti escono dalla scatola.

Fig. 1: Qualsiasi funzione può essere vista come una scatola nera in cui le variabili indipendenti entrano e ottengono un nuovo valore.

Per il resto di questo tutorial, ci concentreremo su funzioni unidimensionali, ossia funzioni che hanno un solo input e un  solo output. Esempi comuni di questo tipo di funzioni sono:

y = mx + q

y = ax^2 + bx + c

y = ln(x()

Dove m, q, a, c sono solamente coefficienti numerici, puoi considerarli come un qualsiasi numero costante. 1 è l’equazione di una retta, 2 descrive una parabola e 3 è la funzione logaritmo naturale. Come puoi vedere, tutte hanno una variabile indipendente () e una dipendente (): una funzione descrive la relazione che c’è tra le due variabili, pertanto ne determina la “forma” nello spazio.

Ma se una funzione già descrive una curva, allora perché c’è bisogno delle derivate?

In generale, le funzioni non sono così semplici come gli esempi visti sopra e potrebbe essere impossibile o poco pratico provare tutti i possibili valori della variabile indipendente per capire il comportamento della funzione. Quindi, la derivata di una funzione dà informazioni aggiuntive sulla curva che si sta studiando.

 

Cos’è un derivata allora? La derivata di una funzione  è un’altra funzione , ricavata dall’originale, che descrive la variabilità di , ossia come il tasso di cambiamento della funzione si comporta rispetto alla variabile indipendente. La derivata valutata in un punto  descrive come la funzione sta cambiando in un intorno di . Ad esempio, se la derivata è positiva ci possiamo aspettare che che i punti che seguono  abbiano valori maggiori di . Questo significa che la funzione sta crescendo concordemente con l’aumento di . Allo stesso modo, se la derivata è negativa in , il valore della funzione diminuisce all’aumentare di . Pertanto, la derivata in un qualsiasi punto indica l’inclinazione della retta tangente alla curva in quel punto.

 

L’inclinazione (o coefficiente angolare) definisce il rapporto tra l’altezza e la lunghezza orizzontale, ad esempio, di un piano inclinato o di un triangolo rettangolo; avrai sicuramente incontrato questo concetto nei segnali stradali (Fig. 3). In generale, l’inclinazione è data dall’equazione 

Fig. 3: Segnaletica stradale che indica l’inclinazione della strada.

La definizione rigorosa di un derivata, infatti, è il limite del rapporto incrementale:

Questo rapporto descrive l’inclinazione di una retta secante alla curva passante per i punti  e  . Infatti, il numeratore  può essere visto come l’altezza di un piano inclinato, la cui lunghezza orizzontale è proprio  . Il limite dice che  dev’essere un numero infinitamente vicino a zero, il che significa che la distanza tra due punti diventa praticamente inesistente. Di fatto, quella che inizialmente era una secante diventa una tangente alla curava, come esplicato dall’animazione in Fig. 4.

Fig. 4: Quando la distanza tra i due punti diventa zero, i punti di sovrappongono e la retta secante diventa una tangente alla curva.

E’ bene tenere a mente che ci sono dei casi particolari in cui la derivata non può essere definita in uno o più punti della funzione; la funzione deve essere continua nel punto in esame, sebbene la continuità da sola non sia sufficiente affinché esista una derivata.

Prima di guardare un semplice esempio, ricapitoliamo i concetti chiave; la derivata…

  • … rappresenta la variabilità della funzione primitiva rispetto alla variabile indipendente;
  • … di una funzione è una funzione a sua volta;
  • … valutata in un dato punto, rappresenta l’inclinazione della tangente alla curva in quel punto.

Fig. 5: Una parabola e la sua derivata. Le rette di colore verde e blu sono le tangenti alla curva nei punti x=-2 e x=2, rispettivamente.

Nell’esempio (Fig. 5) abbiamo i grafici di una funzione (f) e la sua derivata (f’): la prima è una parabola, mentre la seconda è una retta. Le funzioni e le loro derivate sono generalmente rappresentate con i rispettivi grafici uno sopra l’altro; questo è perché la variabile indipendente è la stessa e questa disposizione rende più semplice capire la loro relazione.

Guardando a x<0, si può vedere che la derivata è positiva, che significa che la funzione sta crescendo con , ossia l’inclinazione di qualsiasi retta tangente a f per x<0 è positiva. Tuttavia, il valore della derivata sta diminuendo con un tasso costante, questo significa che anche la “velocità” di crescita del valore di f sta diminuendo. Di conseguenza, le rette tangenti alla curva tendono più e più ad una retta orizzontale.

La situazione estrema accade per x=0 , che corrisponde all’apice della parabola e al punto di in cui la derivata è 0 . I punti che hanno la derivata pari a  sono detti punti critici punti stazionari. Hanno un ruolo fondamentale sia nell’analisi matematica che nel ML, in quanto rappresentano i punti che corrispondono ai massimi, minimi e punti di sella di una funzione. Molti algoritmi di machine learning ruotano attorno alla ricerca dei minimi di una funzione, motivo per cui è importante avere una minima comprensione delle derivate e del loro significato.

Con x>0 , la derivata è negativa ed il suo valore assoluto continua a crescere. Questo significa che la funzione primitiva decrescerà in valore con x e che la “velocità” con cui ciò accade crescerà ad ogni passo. Di fatto, questo è esattamente ciò che accade alla parabola.

Lo scopo di questo tutorial era di darvi una comprensione generale di come funziona una derivata e del suo significato, senza utilizzare troppe equazioni. Ovviamente, un’analisi più approfondita e rigorosa dell’argomento è necessaria se si vuole pienamente comprendere questioni più complesse che emergono nel machine learning. Ma non esserne spaventato, non è poi così complicato!

Le Fig. 2,3 and 4 sono state prese da Wikipedia.