lratiotest

Тест коэффициента правдоподобия спецификации модели

Описание

пример

h = lratiotest(uLogL,rLogL,dof) возвращает логическое значение (h) с решением об отказе от проведения теста отношения правдоподобия спецификации модели.

lratiotest создает тестовую статистику с помощью целевой функции логарифмической правдоподобности, оцененной при неограниченных оценках параметра модели (uLogL) и оценки параметров ограниченной модели (rLogL). Тестовое статистическое распределение имеет dof степени свободы.

  • Если uLogL или rLogL является вектором, тогда другой должен быть скаляром или вектором равной длины. lratiotest(uLogL,rLogL,dof) Обработки каждый вектор элемента массива входа как отдельный тест и возвраты вектор решений об отклонении.

  • Если uLogL или rLogL является вектор-строка, тогда lratiotest(uLogL,rLogL,dof) возвращает вектор-строку.

пример

h = lratiotest(uLogL,rLogL,dof,alpha) возвращает решение об отклонении теста коэффициента правдоподобия, проведенного на уровне значимости alpha.

пример

[h,pValue] = lratiotest(___) возвращает решение об отклонении и p -значение (pValue) для проверки гипотезы, используя любой из входных параметров в предыдущих синтаксисах.

пример

[h,pValue,stat,cValue] = lratiotest(___) дополнительно возвращает тестовую статистику (stat) и критическое значение (cValue) для теста гипотезы.

Примеры

свернуть все

Сравните две спецификации модели для моделируемого образования и данных о доходах. Неограниченная модель имеет следующую логарифмическую правдоподобность:

l(β,ρ)=-nlogΓ(ρ)+ρk=1nlogβk+(ρ-1)k=1nlog(yk)-k=1nykβk,

где

  • βk=1β+xk.

  • xk количество оценок, выполненных человеком k.

  • yk - доход (в тыс. долл. США) человека k.

То есть, доход человека k, учитывая количество оценок, которые человек k завершил, является гамма распределенным с формой ρ и скорость βk. Ограниченные наборы моделей ρ=1, что подразумевает, что доход человека k, учитывая количество классов человека k завершено, экспоненциально распределяется со средним β+xk.

Ограниченная модель H0:ρ=1. Сравнение этой модели с неограниченной моделью с помощью lratiotest требуется следующее:

  • Функция логарифмической правдоподобности

  • Максимальная оценка правдоподобия (MLE) при неограниченной модели

  • MLE под ограниченной моделью

Загрузите данные.

load Data_Income1
x = DataTable.EDU;
y = DataTable.INC;

Чтобы оценить неограниченные параметры модели, максимизируйте l(ρ,β) по отношению к ρ и β. Градиент l(ρ,β) является

l(ρ,β)ρ=-nψ(ρ)+k=1nlog(ykβk)

l(ρ,β)β=k=1nβk(βkyk-ρ),

где ψ(ρ) - дигамма-функция.

nLogLGradFun = @(theta) deal(-sum(-gammaln(theta(1)) - ...
    theta(1)*log(theta(2) + x) + (theta(1)-1)*log(y) - ...
    y./(theta(2)+x)),...
    -[sum(-psi(theta(1))+log(y./(theta(2)+x)));...
    sum(1./(theta(2)+x).*(y./(theta(2)+x)-theta(1)))]);

nLogLGradFun является анонимной функцией, которая возвращает отрицательную логарифмическую правдоподобность и градиент, заданные как входные theta, который содержит параметры ρ и β, соответственно.

Численно оптимизируйте отрицательную функцию логарифмической правдоподобности, используя fmincon, что минимизирует целевую функцию, удовлетворяющую ограничениям.

theta0 = randn(2,1); % Initial value for optimization
uLB = [0 -min(x)];   % Unrestricted model lower bound
uUB = [Inf Inf];     % Unrestricted model upper bound
options = optimoptions('fmincon','Algorithm','interior-point',...
    'FunctionTolerance',1e-10,'Display','off',...
    'SpecifyObjectiveGradient',true); % Optimization options

[uMLE,uLogL] = fmincon(nLogLGradFun,theta0,[],[],[],[],uLB,uUB,[],options);
uLogL = -uLogL;

uMLE - неограниченная максимальная оценка правдоподобия, и uLogL - максимум логарифмической правдоподобности.

Наложите ограничение на логарифмическую правдоподобность, установив соответствующие нижние и верхние ограничения ρ по 1. Минимизируйте отрицательную, ограниченную логарифмическую правдоподобность.

dof = 1;           % Number of restrictions
rLB = [1 -min(x)]; % Restricted model lower bound
rUB = [1 Inf];     % Restricted model upper bound
[rMLE,rLogL] = fmincon(nLogLGradFun,theta0,[],[],[],[],rLB,rUB,[],options);
rLogL = -rLogL;

rMLE - неограниченная максимальная оценка правдоподобия, и rLogL - максимум логарифмической правдоподобности.

Используйте тест коэффициента правдоподобия, чтобы оценить, предоставляют ли данные достаточное количество доказательств, чтобы благоприятствовать неограниченной модели по сравнению с ограниченной моделью.

[h,pValue,stat] = lratiotest(uLogL,rLogL,dof)
h = logical
   1

pValue = 8.9146e-04
stat = 11.0404

pValue близок к 0, что указывает на наличие убедительных доказательств того, что неограниченная модель подходит для данных лучше, чем ограниченная модель.

Оцените спецификации модели путем тестирования вниз среди нескольких ограниченных моделей с помощью моделируемых данных. Истинная модель является ARMA (2,1)

yt=3+0.9yt-1-0.5yt-2+εt+0.7εt-1,

где εt является Гауссовым со средним 0 и отклонением 1.

Задайте истинную модель ARMA (2,1) и симулируйте 100 значений отклика.

TrueMdl = arima('AR',{0.9,-0.5},'MA',0.7,...
    'Constant',3,'Variance',1);
T = 100;
rng(1); % For reproducibility
y = simulate(TrueMdl,T);

Задайте неограниченную модель и модели кандидата для проверки вниз.

Mdl = {arima(2,0,2),arima(2,0,1),arima(2,0,0),arima(1,0,2),arima(1,0,1),...
    arima(1,0,0),arima(0,0,2),arima(0,0,1)};
rMdlNames = {'ARMA(2,1)','AR(2)','ARMA(1,2)','ARMA(1,1)',...
    'AR(1)','MA(2)','MA(1)'};

Mdl - массив ячеек 1 на 7. Mdl{1} является неограниченной моделью, и все другие камеры содержат модель кандидата.

Подгонка моделей кандидата к моделируемым данным.

logL = zeros(size(Mdl,1),1); % Preallocate loglikelihoods
dof = logL;                  % Preallocate degrees of freedom
for k = 1:size(Mdl,2)
    [EstMdl,~,logL(k)] = estimate(Mdl{k},y,'Display','off');
    dof(k) = 4 - (EstMdl.P + EstMdl.Q); % Number of restricted parameters
end
uLogL = logL(1);     
rLogL = logL(2:end); 
dof = dof(2:end);

uLogL и rLogL - значения неограниченной логарифмической правдоподобности, оцененные в оценках параметров неограниченной и ограниченной модели, соответственно.

Примените тест коэффициента правдоподобия на уровне значимости 1%, чтобы найти соответствующие ограниченные спецификации (спецификации ) модели.

alpha = .01;
h = lratiotest(uLogL,rLogL,dof,alpha);
RestrictedModels = rMdlNames(~h)
RestrictedModels = 1x4 cell
    {'ARMA(2,1)'}    {'ARMA(1,2)'}    {'ARMA(1,1)'}    {'MA(2)'}

Наиболее подходящими ограниченными моделями являются ARMA (2,1), ARMA (1,2), ARMA (1,1) или MA (2).

Можно протестировать снова, но используйте ARMA (2,1) в качестве неограниченной модели. В этом случае необходимо удалить MA (2) из возможных ограниченных моделей.

Проверьте, существуют ли значительные эффекты ARCH в симулированный отклик серии, используя lratiotest. Значения параметров в этом примере произвольные.

Задайте модель AR (1) с отклонением ARCH (1):

yt=0.9yt-1+εt,

где

  • εt=wtht.

  • ht=1+0.5εt-12.

  • wt является Гауссовым со средним 0 и отклонением 1.

VarMdl = garch('ARCH',0.5,'Constant',1);
Mdl = arima('Constant',0,'Variance',VarMdl,'AR',0.9);

Mdl является полностью заданной моделью AR (1) с отклонением ARCH (1).

Симулируйте предварительный образец и эффективные ответы на выборку от Mdl.

T = 100;
rng(1);  % For reproducibility
n = 2;   % Number of presample observations required for the gradient
[y,epsilon,condVariance] = simulate(Mdl,T + n);

psI = 1:n;             % Presample indices
esI = (n + 1):(T + n); % Estimation sample indices

epsilon - случайный путь инноваций из VarMdl. Программные фильтры epsilon через Mdl для получения пути случайного отклика y.

Задайте неограниченную модель, принимая, что условная средняя модель константа 0:

yt=ϕ1yt-1+εt,

где ht=α0+α1εt-12. Подгонка моделируемых данных (y) к неограниченной модели, используя предварительные наблюдения.

UVarMdl = garch(0,1);
UMdl = arima('ARLags',1,'Constant',0,'Variance',UVarMdl);
[~,~,uLogL] = estimate(UMdl,y(esI),'Y0',y(psI),'E0',epsilon(psI),...
    'V0',condVariance(psI),'Display','off');

uLogL - максимальное значение неограниченной функции логарифмической правдоподобности.

Задайте ограниченную модель, принимая, что условная средняя модель константа 0:

yt=ϕ1yt-1+εt,

где ht=α0. Подгонка моделируемых данных (y) к ограниченной модели с использованием предварительного образца наблюдений.

RVarMdl = garch(0,1);
RVarMdl.ARCH{1} = 0;
RMdl = arima('ARLags',1,'Constant',0,'Variance',RVarMdl);
[~,~,rLogL] = estimate(RMdl,y(esI),'Y0',y(psI),'E0',epsilon(psI),...
    'V0',condVariance(psI),'Display','off');

Структура RMdl то же, что и UMdl. Однако каждый параметр неизвестен, кроме ограничения. Это ограничения равенства во время оценки. Можно интерпретировать RMdl как модель AR (1) с Гауссовыми инновациями, которые имеют среднее 0 и постоянное отклонение.

Проверьте нулевую гипотезу, что α1=0 на уровне 5% значимости по умолчанию с использованием lratoitest.

dof = (UMdl.P + UMdl.Q + UVarMdl.P + UVarMdl.Q) ...
    - (RMdl.P + RMdl.Q + RVarMdl.P + RVarMdl.Q);
[h,pValue,stat,cValue] = lratiotest(uLogL,rLogL,dof)
h = logical
   1

pValue = 6.7505e-04
stat = 11.5567
cValue = 3.8415

h = 1 указывает, что null, ограниченная модель должна быть отклонена в пользу альтернативной, неограниченной модели. pValue близок к 0, что позволяет предположить наличие убедительных доказательств отказа. stat - значение тестовой статистики хи-квадрат, и cValue - критическое значение для теста.

Входные параметры

свернуть все

Неограниченная модель loglikelibility maxima, заданная как скаляр или вектор. Если uLogL является скаляром, затем программное обеспечение расширяет его до той же длины, что и rLogL.

Типы данных: double

Ограниченная модель loglikelibility maxima, заданная в виде скаляра или вектора. Если rLogL является скаляром, затем программное обеспечение расширяет его до той же длины, что и uLogL. Элементы rLogL не должен превышать соответствующих элементов uLogL.

Типы данных: double

Степени свободы для асимптотического, хи-квадратного распределения тестовой статистики, заданные как положительное целое число или вектор положительных целых чисел.

Для каждого соответствующего теста элементы dof:

  • Количество модельных ограничений

  • Должно быть меньше, чем количество параметров в неограниченной модели.

При проведении k > 1 тестов,

  • Если dof является скаляром, затем программное обеспечение расширяет его до вектора k -by-1.

  • Если dof является вектором, тогда он должен иметь k длины.

Типы данных: double

Номинальные уровни значимости для тестов гипотезы, заданные в виде скаляра или вектора.

Каждый элемент alpha должно быть больше 0 и меньше 1.

При проведении k > 1 тестов,

  • Если alpha является скаляром, затем программное обеспечение расширяет его до вектора k -by-1.

  • Если alpha является вектором, тогда он должен иметь k длины.

Типы данных: double

Выходные аргументы

свернуть все

Решения об отклонении теста, возвращенные как логическое значение или вектор логических значений с длиной, равной количеству тестов, которые проводит программное обеспечение.

  • h = 1 указывает на отказ от нулевой, ограниченной модели в пользу альтернативной, неограниченной модели.

  • h = 0 указывает на отказ отклонить нулевую ограниченную модель.

Тестируйте статистические p - значения, возвращенные как скаляр или вектор с длиной, равной количеству тестов, которые проводит программное обеспечение.

Тестовая статистика, возвращенная как скаляр или вектор с длиной, равной количеству тестов, которые проводит программное обеспечение.

Критические значения, определяемые alpha, возвращенный как скаляр или вектор с длиной, равной количеству тестов, которые проводит программное обеспечение.

Подробнее о

свернуть все

Тест коэффициента правдоподобия

likelihood ratio test сравнивает спецификации вложенных моделей путем оценки значимости ограничений с расширенной моделью с неограниченными параметрами.

В тесте используется следующий алгоритм:

  1. Максимизируйте функцию логарифмической правдоподобности [l (θ) ] при ограниченных и неограниченных допущениях модели. Обозначите MLE для ограниченных и неограниченных моделейθ^0 и θ^, соответственно.

  2. Оцените целевую функцию логарифмической правдоподобности в ограниченных и неограниченных MLE, т.е., l^0=l(θ^0) и l^=l(θ^).

  3. Вычислите статистику теста коэффициента правдоподобия, LR=2(l^l^0).

  4. Если LR превышает критическое значение () относительно его асимптотического распределения, то отклоните нулевую, ограниченную модель в пользу альтернативной, неограниченной модели.

    • Под нулевой гипотезой LR есть χd2 распределена с d степенями свободы.

    • Степени свободы для теста (d) являются количеством ограниченных параметров.

    • Уровень значимости теста (α) определяет критическое значение ().

Совет

  • Оценка неограниченных и ограниченных одномерных линейных временных моделей, таких как arima или garch, или регрессионые модели временных рядов (regARIMA) использование estimate. Оценка неограниченных и ограниченных моделей VAR (varm) использование estimate.

    The estimate функции возвращают максимумы логарифмической правдоподобности, которые можно использовать в качестве входов для lratiotest.

  • Если вы можете легко вычислить как ограниченные, так и неограниченные оценки параметров, то используйте lratiotest. Для сравнения:

    • waldtest требуется только неограниченные оценки параметров.

    • lmtest требует ограниченных оценок параметров.

Алгоритмы

  • lratiotest выполняет несколько, независимых тестов, когда неограниченная или ограниченная модель loglikelibility maxima (uLogL и rLogL, соответственно) является вектором.

    • Если rLogL является вектором и uLogL является скаляром, тогда lratiotest «проверяет» на соответствие нескольким ограниченным моделям.

    • Если uLogL является вектором и rLogL является скаляром, тогда lratiotest «тестирует» против нескольких неограниченных моделей.

    • В противном случае, lratiotest сравнивает спецификации модели парно.

  • alpha номинален тем, что задает вероятность отклонения в асимптотическом распределении. Фактическая вероятность отклонения обычно больше номинальной значимости.

Ссылки

[1] Davidson, R. and J. G. MacKinnon. Эконометрическая теория и методы. Оксфорд, Великобритания: Oxford University Press, 2004.

[2] Godfrey, L. G. Misspecification Tests in Econometrics. Кембридж, Великобритания: Cambridge University Press, 1997.

[3] Greene, W. H. Econometric Analysis. 6th ed. Upper Saddle River, NJ: Pearson Prentice Hall, 2008.

[4] Гамильтон, Дж. Д. Анализ временных рядов. Princeton, NJ: Princeton University Press, 1994.

Представлено до R2006a