Funzioni > Analisi dati > Curve fitting > Esempio: regressione non lineare 2
Esempio: regressione non lineare 2
Utilizzare la funzione LeastSquaresFit per eseguire la regressione non lineare. Il solutore LeastSquaresFit offre la massima flessibilità per la risoluzione dei problemi di regressione non lineare. Il solutore consente di immettere equazioni di vincolo per qualsiasi parametro dipendente, limiti inferiori e superiori per i parametri, deviazioni standard nei valori x, nonché un limite di confidenza per il calcolo.
LeastSquaresFit
1. Definire un insieme di dati.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Questi dati sono tratti da un esempio discusso sul sito Web NIST. I dati sono stati generati con 14 cifre di precisione utilizzando l'equazione seguente:
Fare clic per copiare questa espressione
2. Definire una funzione adattata.
Fare clic per copiare questa espressione
I singoli parametri qui sopra sono elementi di un vettore β. È anche possibile specificare la funzione di input con singoli nomi di variabili, anziché con elementi di un vettore.
Fare clic per copiare questa espressione
3. Specificare i valori ipotizzati.
Fare clic per copiare questa espressione
4. Definire il limite di confidenza sui parametri.
Fare clic per copiare questa espressione
5. Chiamare la funzione LeastSquaresFit.
Fare clic per copiare questa espressione
Il solutore utilizza la programmazione quadratica (SQP) per risolvere il risultante problema dei minimi quadrati. Introducendo variabili aggiuntive, il problema originale viene trasformato in un problema generale di programmazione non lineare con vincolo di uguaglianza e questo, in genere, è più rapido e stabile rispetto ad alcuni altri.
6. Visualizzare il vettore di output restituito dalla funzione LeastSquaresFit.
Fare clic per copiare questa espressione
La prima colonna di output contiene i valori per i parametri adattati. La seconda colonna contiene il limite sinistro e la terza il limite destro per l'intervallo di confidenza sui parametri.
I limiti di confidenza del 95% sui parametri coprono un intervallo piuttosto ampio, mostrando che il fit è complesso e i parametri possono variare notevolmente. Di conseguenza, i valori dei parametri adattati differiscono dai valori corretti registrati nel sito Web NIST:
Fare clic per copiare questa espressione Fare clic per copiare questa espressione
7. Tracciare il grafico di dati, fit dei minimi quadrati e fit NIST.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
8. Confrontare il fit dei minimi quadrati e i dati originali.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il fit si avvicina alla convergenza, ma può trarre vantaggio da una regolazione nella tolleranza di convergenza. A tale scopo, è possibile utilizzare uno degli argomenti facoltativi della funzione LeastSquaresFit.
Vincoli, deviazione standard e tolleranza
LeastSquaresFit prevede diversi argomenti opzionali.
Vettore di deviazione standard
Matrice di limiti inferiore e superiore
Precisione
È possibile utilizzare uno qualsiasi degli argomenti facoltativi singolarmente, ma per i primi tre argomenti il relativo ordine è importante.
1. Modificare uno dei valori dei dati per simulare un errore di misurazione.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Specificare il limite inferiore e il limite superiore per vincolare i valori di fit.
Fare clic per copiare questa espressione
I limiti vengono impostati molto al di fuori dei valori dei parametri previsti, in quanto in questo caso non vi sono limiti specifici noti.
3. Impostare un vettore di deviazioni standard per ogni valore di y per mascherare l'outlier.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il valore alto di 108 nella deviazione standard rimuove in modo efficace l'errore di misurazione dal calcolo.
Quando un vettore di deviazione standard viene immesso come argomento nella funzione LeastSquaresFit, il solutore minimizza la funzione seguente:
Fare clic per copiare questa espressione
Se la deviazione standard per un punto è 0, la funzione originale, non deviata, viene utilizzata in corrispondenza di tale punto, ovvero la variabile StdYi viene impostata su 1.
4. Impostare la precisione per applicare al calcolo una tolleranza di convergenza più rigida (il valore di default è 10-7).
Fare clic per copiare questa espressione
5. Chiamare la funzione LeastSquaresFit con e senza la deviazione standard.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il calcolo non mascherato non riesce in quanto i limiti di confidenza sono troppo ampi.
I nuovi parametri sono più vicini ai valori NIST:
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
6. Tracciare il grafico dei dati con l'outlier e il fit mascherato.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Riferimenti
I dati per questo esempio sono tratti da Lanczos, C., Applied Analysis, Prentice Hall, 1956, pagine 272-280, come illustrato nell'archivio NIST Statistical Reference Dataset Archive.
È stato utile?