Sono d'accordo con Glen_b. Nei problemi di regressione, l'attenzione principale è sui parametri e non sulla variabile indipendente o sul predittore, x. E poi si può decidere se si desidera linearizzare il problema utilizzando semplici trasformazioni o procedere come tale.
y=ax+bx2+cx3+dx2/3+e/x+fx−4/7xxabcf
y=exp(ax)exp(ax)=1+ax/1!+(ax)2/2!+…
y=a/(1+bexp(cx)abcbc(a/y)−1=Y
y=a1/(1+b1exp(c1x))+a2/(1+b2exp(c2x))
In linea di principio, utilizzare una strategia lineare per risolvere un problema di regressione non lineare non è una buona idea. Quindi, affronta i problemi lineari (quando tutti i parametri hanno potenza 1) usando la regressione lineare e adotta la regressione non lineare se i tuoi parametri non sono lineari.
β0β1θ1θ2
Adottare una tecnica dei minimi quadrati non lineari per risolverlo. Scegli i valori iniziali in modo intelligente e utilizza un approccio a più fasi per trovare i minimi globali.
Questa vide sarà utile (anche se non parla di soluzione globale): http://www.youtube.com/watch?v=3Fd4ukzkxps
Utilizzo del risolutore non lineare GRG nel foglio di calcolo di Excel (installare il pacchetto di strumenti del risolutore andando su opzioni - Componenti aggiuntivi - Componenti aggiuntivi di Excel e quindi scegliendo il componente aggiuntivo Risolutore) e invocando il multistart nell'elenco delle opzioni prescrivendo gli intervalli ai parametri e richiedendo la precisione del vincolo e la convergenza devono essere piccole, una soluzione globale può essere ottenuta.
Se si utilizza Matlab, utilizzare la casella degli strumenti di ottimizzazione globale. Ha opzioni multistart e globalsearch. Alcuni codici sono disponibili qui per una soluzione globale, qui
e
qui .
Se stai usando Mathematica, guarda qui .
Se stai usando R, prova qui .