Abbiamo visto nell’articolo precedente che il nostro obiettivo è individuare la retta che rappresenta i punti dati nel modo “migliore possibile”. La retta è definita dai due parametri $θ_{0}$ e $θ_{1}$ e il concetto di modo “migliore possibile” è la minima somma delle differenze al quadrato tra i punti e la retta stessa.
Insomma cerchiamo la retta che “passa” meglio delle altre per i punti del nostro insieme di apprendimento.
Perché cerchiamo questa retta? Perché se la sappiamo identificare con sufficiente precisione, la retta saprà anche “predire” il valore di X dato il valore di Y o viceversa.
Abbiamo chiamato “costo” la somma dei quadrati delle distanze di cui sopra, rappresentandolo secondo l’equazione:
$$J(θ_{0},θ_{1})=\frac{1}{2m}\sum_{i=1}^n(y_{i}{‘}-y_{i})^2$$Come si vede, il costo è funzione di $$θ_{0}$$ e $θ_{1}$. La funzione è a due parametri e va quindi tracciata in uno spazio 3D ($θ_{0}$ e $θ_{1}$ saranno il piano e il costo risultante J sarà l’altezza. Per semplicità, consideriamo per il momento $θ_{0}=0$ e dedichiamoci quindi alla sola funzione $θ_{1}$ cioè il coefficiente angolare. Ora possiamo tracciare il tutto su un piano cartesiano, utilizzando le ascisse per la grandezza $θ_{1}$ e le ordinate per la sua funzione $J(θ_{1})$.
E’ piuttosto intuitivo esplorare il range dei valori che $J(θ_{1})$ assumerà quando facciamo variare $θ_{1}$. Per valori di $θ_{1}$ molto piccoli, la retta sarà poco inclinata, ed i punti dell’insieme di training saranno tutti sopra la retta, con una sommatoria di distanze piuttosto notevole. Man mano che la retta sale di inclinazione, $θ_{1}$ si avvicina al valore 1. In corrispondenza di questo valore, la retta ha un certo numero di punti al di sopra, ed altri punti al di sotto. Nel nostro esempio, questo corrisponde ad un valore di $J(θ_{1})$ relativamente piccolo. Che succede se continuo ad alzare l’inclinazione della retta? $θ_{1}$ assume valori grandi (10,100,1000) ed i punti iniziano a trovarsi tutti al di sotto della retta, con conseguente aumento della funzione di costo.
Per la funzione di costo, ci troviamo di conseguenza davanti ad un classico andamento parabolico come quello che rappresento qui sotto (attenzione che qui il piano cartesiano è $θ_{1}$ e $J(θ_{1})$.
Per valori piccoli di $θ_{1}$ il costo associato è altissimo. Avvicinandosi a $θ_{1}=1$ la curva ha il suo valore minimo e per valori maggiori, impenna drasticamente verso l’alto. Per l’approssimazione che qui ci interessa, sarà quindi proprio $θ_{1}=1$ la soluzione che stavamo cercando, ovvero $y=h_{θ}(x)=x$ è l’equazione della retta che stavamo cercando!
Faccio notare che abbiamo realizzato un’affascinante trasposizione: siamo passati dal problema di trovare la retta “giusta” per i punti dati, al problema di identificare il minimo di una curva. Risolvere questo problema di minimo ci consente di identificare la retta e quindi di predire i punti del fenomeno che ci interessa. E’ un passo da formichina ma lo abbiamo fatto decisamente in avanti: nei prossimi articoli ci occuperemo di problemi un filino più complessi per apprezzare la reale potenza di quello che stiamo scoprendo.
“Fortune Teller” by Andy Atzert is licensed under CC BY 2.0