Psychometric function that allows for models the variance of the data by a beta distribution. More...
#include <psychometric.h>
Public Member Functions | |
BetaPsychometric (int nAFC, PsiCore *core, PsiSigmoid *sigmoid) | |
double | negllikeli (const std::vector< double > &prm, const PsiData *data) const |
negative log likelihood | |
std::vector< double > | dnegllikeli (const std::vector< double > &prm, const PsiData *data) const |
1st derivative of the negative log likelihood | |
Matrix * | ddnegllikeli (const std::vector< double > &prm, const PsiData *data) const |
2nd derivative of the negative log likelihood (newly allocated matrix) | |
unsigned int | getNparams (void) const |
get the number of free parameters of the psychometric function | |
double | deviance (const std::vector< double > &prm, const PsiData *data) const |
deviance for a given data set and parameter constellation | |
std::vector< double > | getStart (const PsiData *data) const |
determine a starting value using logistic regression on a dataset |
Psychometric function that allows for models the variance of the data by a beta distribution.
When fitting psychometric functions, we usually assume independence of the responses. Is this independence is violated, the binomial variance model is no longer adequate. The beta psychometric function can better deal with this. It fits an additional parameter nu, such that the subjects responses are distributed according to a beta distribution with parameters alpha = Psi(x)*nu*n+1, beta = (Psi(x)-1)*nu*n+1
Matrix * BetaPsychometric::ddnegllikeli | ( | const std::vector< double > & | prm, | |
const PsiData * | data | |||
) | const [virtual] |
2nd derivative of the negative log likelihood (newly allocated matrix)
prm | parameters at which the second derivative should be evaluated | |
data | data for which the likelihood should be evaluated |
Reimplemented from PsiPsychometric.
double BetaPsychometric::deviance | ( | const std::vector< double > & | prm, | |
const PsiData * | data | |||
) | const [virtual] |
deviance for a given data set and parameter constellation
prm | parameters of the psychometric function model | |
data | data for which the likelihood should be evaluated |
Reimplemented from PsiPsychometric.
std::vector< double > BetaPsychometric::dnegllikeli | ( | const std::vector< double > & | prm, | |
const PsiData * | data | |||
) | const [virtual] |
1st derivative of the negative log likelihood
prm | parameters at which the first derivative should be evaluated | |
data | data for which the likelihood should be evaluated |
Reimplemented from PsiPsychometric.
double BetaPsychometric::negllikeli | ( | const std::vector< double > & | prm, | |
const PsiData * | data | |||
) | const [virtual] |
negative log likelihood
prm | parameters of the psychometric function model | |
data | data for which the likelihood should be evaluated |
Reimplemented from PsiPsychometric.