Matlab: Оценка параметров в probit- и logit-моделях.

by
Probit-модель.

function [b_probit, LLval] = estimateprobit(X,Y)
[n, k] = size(X);
b0 = zeros(k,1);
fun = @ (b) negprobitlogML(X,Y,b);
[b_probit, fval] = fminsearch(fun, b0);
LLval = -fval;

function [LL] = negprobitlogML(X,Y,b)
[n, k] = size(X);
LL = 0;
for t = 1:n
u = X(t,:) * b;
Fu = normcdf(u, 0, 1);
LL = LL - ( Y(t) * log(Fu) + (1 - Y(t)) * log(1 - Fu) );
end

Logit-модель.


function [b_logit, LLval] = estimatelogit(X,Y)
[n, k] = size(X);
b0 = zeros(k,1);
fun = @ (b) neglogitlogML(X,Y,b);
[b_logit, fval] = fminsearch(fun, b0);
LLval = -fval;

function [LL] = neglogitlogML(X,Y,b)
[n, k] = size(X);
LL = 0;
for t = 1:n
u = X(t,:) * b;
Fu = exp(u) / (1 + exp(u));
LL = LL - ( Y(t) * log(Fu) + (1 - Y(t)) * log(1 - Fu) );
end

Реклама

Метки: , ,

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s


%d такие блоггеры, как: