Fminsearch for fitting models?
Afficher commentaires plus anciens
Good afternoon, I'm quite a newbie in MatLab, and I'm trying to use the fminsearch function to fit both a normal and a sigmoidal/logistic models to my data. At the moment, I'm using the following formula for the logistic: [par fit]=fminsearch(@(p) norm(1./(1+exp(-p(1).*(X-p(2)))) -Y), [1,1]);
X corrisponds to 10 different location of a stimulus, while Y is the answer (0/1) given to the stimulus. However, the outcomes I obtain in this way seem totally untrustworthy, even if the formula is the correct logistic formula. There is something I'm missing?
Thank you in advance, Alessandro
Réponse acceptée
Plus de réponses (3)
Alessandro Zanini
le 19 Avr 2018
0 votes
1 commentaire
Star Strider
le 19 Avr 2018
As always, my pleasure!
You have only 2 parameters, so 10 data points should be enough to provide good parameter estimates. The fminsearch algorithm is derivative-free, although it still requires initial parameter estimates that are reasonably close to the optimal estimates. I would continue to vary the initial estimates across a wide range of values to see if you can get a good fit. The initial estimate for ‘p(1)’ can be any positive value. An appropriate initial estimate for ‘p(2)’ would be mean(X).
Alessandro Zanini
le 19 Avr 2018
0 votes
1 commentaire
Star Strider
le 19 Avr 2018
As always, my pleasure!
Jeff Miller
le 20 Avr 2018
Modifié(e) : Jeff Miller
le 20 Avr 2018
0 votes
Alessandro, it sounds like you are fitting probit models and/or psychometric functions. If so, you might find some very useful routines here: Cupid . DemoProbit.m shows some examples of how you could fit such models with various underlying distributions (normal, logistic, etc).
3 commentaires
Alessandro Zanini
le 20 Avr 2018
Jeff Miller
le 20 Avr 2018
Sorry, here is the link in plain text: https://github.com/milleratotago/Cupid
Alessandro Zanini
le 20 Avr 2018
Catégories
En savoir plus sur Get Started with Curve Fitting Toolbox dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!