Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Aiuto su minimi quadrati

Analisi, geometria, algebra, topologia...

Moderatori: Foto UtentePietroBaima, Foto UtenteIanero

0
voti

[1] Aiuto su minimi quadrati

Messaggioda Foto Utentepluto » 7 mag 2005, 16:07

Ciao a tutti. Sono nuovo.
Ho bisogno di un aiuto su una formula che mi è stata spacciata come formula dei minimi quadrati, ma a me non convince.
In sintesi, il problema.
E' dato un sistema Ax=b
A me risulta che la soluzione ai minimi quadrati sia x=(A'A)^-1 A' b
Applicandola sul problema in esame però si ottiene una matrice non invertibile perché con righe linearmente dipendenti.
Allora la persona che ha studiato il problema ha suggerito di usare la formula
x=(b'b)^-1 b' A
Non riesco a capire da dove arrivi questa formula, è un modo di procedere corretto?
Qualcuno conosce questa seconda formula? Potrebbe spiegarmi per favore?
Ringrazio fin d'ora chiunque sia così gentile da aiutarmi.
Ciao
Matteo
Avatar utente
Foto Utentepluto
0 2
 
Messaggi: 3
Iscritto il: 7 mag 2005, 16:00

0
voti

[2]

Messaggioda webmaster » 13 mag 2005, 11:00

Cosa intendi per soluzione ai minimi quadrati? e con A', b', cosa indichi, la trasposta?

Purtroppo come potrai intuire di equazioni ai minimi quadrati non ne so molto, ma se mi spieghi cosa sono magari riesco a informarmi su tale argomento..

Ciao
webmaster
327 2 4 5
---
 

0
voti

[3]

Messaggioda Foto Utentepluto » 13 mag 2005, 11:27

Grazie, per l'interessamento. Cercherò di spiegarmi meglio.

Quando si ha a che fare con sistemi di equazioni lineari con più equazioni che incognite non è possibile risolvere direttamente il sistema. In realtà non esiste un'unica soluzione.
Allora si cerca una soluzione che vada più o meno bene a tutte le equazioni del sistema. Questa soluzione prende il nome di soluzione ai minimi quadrati.
Per farti capire meglio ti faccio un esempio.
Immagina di avere molti punti su un piano cartesiano, in generale i punti non sono allineati e quindi non esite una retta che li congiunga tutti. Però tu vuoi una retta nel piano che sia rappresentativa di quei punti. La soluzione ai minimi quadrati è la retta che dista meno da tutti i punti che consideri. Fra tutte le rette possibili quella ai minimi quadrati è quella che minimizza l'errore. (anche nota come regressione lineare)
Spero di non averti confuso di più.... :?

A è una matrice di dimensioni (m x n), b è un vettore di (m x 1) e il vettore delle incognite x è di dimensioni (n x 1)
Con l'apice intendo trasposto e con ^-1 intendo inversa.

Grazie, ciao
Avatar utente
Foto Utentepluto
0 2
 
Messaggi: 3
Iscritto il: 7 mag 2005, 16:00

0
voti

[4]

Messaggioda webmaster » 13 mag 2005, 14:56

Ti sei spiegato molto bene. Mi sono anche letto una pagina web che parlava di soluzioni ai minimi quadrati.

Avvertenza: leggere quanto segue cum grano salis, non ho controllato molto quello che ho scritto.

La situazione è questa: Abbiamo una matrice mxn (m righe ed n colonne) con m>=n (cioè un numero di equazioni maggiore o uguale al numero delle incognite) e b vettore di R^m. Vogliamo trovare quell'x tale che la distanza di Ax da b sia minima. Questo significa trovare quell'x di R^n tale che per ogni y di R^n |Ax-b|<=|Ay-b| (Con |u-v| indico la norma di R^m). Come in ogni spazio di Hilbert, dato un sottospazio chiuso (in questo caso A(R^n)) e dato un elemento dello spazio (in questo caso b), esiste ed è unico l'elemento del sottospazio che minimizza la distanza da b, e tale vettore è proprio la proiezione ortogonale di b nel sottospazio. Attenzione: Ax sarà unico, ma non è detto che anche x sia tale...
Quindi dobbiamo trovare quel vettore del tipo Ax tale che Ax-b è ortogonale a tutti gli elementi di A(R^n), cioè per ogni y di R^n si deve avere
(Ay)'(Ax-b)=0, i.e. y'A'(Ax-b)=0 per ogni y, i.e A'(Ax-b)=0,i.e. A'Ax=A'b.

A'A è invertibile se e solo se A è a rango massimo. Se così non è, avrai più vettori che soddisfano alla condizione di minimalità. Se A non è a rango massimo, significa che il tuo problema ha incognite in eccesso: penso allora basti togliere un po' di colonne fino a che A ha rango massimo. Allora A'A sarà invertibile e potrai trovare una soluzione del tuo nuovo problema. Una soluzione del vecchio problema sarà ad esempio data dalla soluzione del nuovo sistema con le coordinate che prima avevi scartato poste a zero. (Quest'ultima affermazione, come tutto il resto, prendila con le pinze, non ci ho pensato più di tanto).

Per quanto riguarda la formula x=(b'b)^-1 b' A non mi sembra abbia molto senso: b' è una matrice 1xm, A una matrice mxn, quindi b'A è una matrice 1xn, mentre x è un vettore di R^n. Quindi come minimo ci manca un segno di trasposizione. Supponiamo quindi la formula sia x=A'b/|b|^2. Prendendo come A la matrice identica si ha che la soluzione di x=b è b/|b|^2....
Ultima modifica di webmaster il 15 mag 2005, 10:12, modificato 1 volta in totale.
webmaster
327 2 4 5
---
 

0
voti

[5]

Messaggioda Foto Utentepluto » 14 mag 2005, 13:44

Ciao,
grazie per la risposta.

Anche secondo me la seconda formula non ha molto senso.
Spero di riuscirne a capire di più.
Avatar utente
Foto Utentepluto
0 2
 
Messaggi: 3
Iscritto il: 7 mag 2005, 16:00

0
voti

[6]

Messaggioda Foto Utentemarte » 24 giu 2005, 14:45

Ciao. Non so se la risposta ti serve ancora però ho verificato con tutti i passaggi la formula X=[A'A]^-1A'b e ti posso assicurare che va bene!!!
L'altra non ha senso anche perché dimensionalmente parlando non torna.
Se puoi darmi le equazioni vedo cosa c'è che non va....un errore di svista è un attimo commetterlo :shock:
Ciao
Avatar utente
Foto Utentemarte
0 1
 
Messaggi: 2
Iscritto il: 20 giu 2005, 11:22
Località: Bo


Torna a Matematica generale

Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti