I found that currently the form of psychometric function assumes that the proportion correct lies between 0.5-1 given the range of stimulus level, but how to fit a psychometric function when the subject's performance never goes to 1 (and it is not because of lapse)?

An example of how this situation can happen: suppose I want to study how stimulus presentation time affect a small target's visibility in a given peripheral visual field location by a 2AFC task. The target's feature is fixed throughout the experiment. I can imagine that with longer stimulus presentation time (like 1 ms vs. 200 ms), subject can make more correct responses, but because of the limit of peripheral vision, the correct response rate can never go to 100% even if you present the stimulus for a very long time. How can I fit a psychometric function (proportion correct ~ stimulus presentation time) to data like this?


1 Answer 1


Yes. When you fit your psychometric function you try to maximize $p(X|\theta)$, with $X$ your observations and $\theta$ your parameters. When you assume 100% correct answers, you would typically assume that your psychometric function is $\Phi(s|\theta)$, $s$ being your stimulus value and $\Phi$ being a cumulative normal. More specifically $\Phi(s|\theta)=\frac{1}{\sigma\sqrt{2\pi}} e^{-\frac{(s-\mu)^2}{2\sigma^2}}$. Here $\theta$ is both the mean $\mu$ and the std $\sigma$. To have a psychometric function that does not go to 100% correct, you just need to add a third variable to $\theta$. It doesn't matter whether the observer's performance is limited by lapses or another factor, mathematically that's equivalent. Then you fit your data with $\Phi'(s|\theta)=\frac{\lambda}{2}+(1-\lambda)\Phi(s|\theta)$. With $\lambda$ your lapse rate, assuming this lapse rate is symmetrical. You could add a 4th parameter if you have a good reason to assume the lapse rate is different near 0 and near 1 (then $\theta=(\mu,\sigma,\lambda_{low},\lambda_{high})$). Also, you might run into issues because if you fit with $\lambda$ unconstrained, you could get values higher than 1 or lower than 0. So when fitting it is helpful either to use a constrained algorithm (e.g. a quasi-Newtonian gradient descent, in Matlab that would be fmincon), or better to transform your parameter using a function that is bounded like the cumulative normal function itself. In other words, use $\Phi'(s|\theta)=(\frac{\Phi(\lambda_{low})}{2})+(1-\frac{\Phi(\lambda_{high})}{2})\Phi(s|\theta)$.

It is in facts recommended to always allow for a lapse rate, as you could misestimate the slope of your psychometric function when you do not.

  • $\begingroup$ Thank you for your answer. But in my specific example the reason why correct response rate cannot reach 100% is not because of lapse rate, but because of the limit in peripheral vision. Do you mean it can be treated the same as lapse rate? $\endgroup$
    – Cloudy
    Nov 11, 2018 at 23:23
  • $\begingroup$ @Cloudy Yes, mathematically it makes no difference whether your performance is limited by lapses or another factor. All you need is to fit a function that does not reach 100% correct. $\endgroup$
    – user17122
    Nov 13, 2018 at 1:48
  • $\begingroup$ Baca, mathematically it could matter. Lapses affect X at all signal levels while it sounds like @Cloudy wants only an affect at very high signal levels. In that case, I am not sure your proposed psychometric function makes sense. $\endgroup$
    – StrongBad
    Nov 13, 2018 at 17:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.