lmtest

Тест множителя Лагранжа спецификации модели

Описание

пример

h = lmtest(score,ParamCov,dof) возвращает логическое значение (h) с решением об отказе от проведения теста множителя Лагранжа спецификации модели на уровне 5% значимости. lmtest создает тестовую статистику с помощью функции счета (score), предполагаемый параметр ковариации (ParamCov), и степени свободы (dof).

пример

h = lmtest(score,ParamCov,dof,alpha) возвращает решение об отклонении теста множителя Лагранжа, проведенного на уровне значимости alpha.

  • Если score и ParamCov являются длинной k массивами ячеек, тогда все другие аргументы должны быть длинными k векторами или скалярами. lmtest рассматривает каждую камеру как отдельный тест и возвращает вектор решений об отклонении.

  • Если score - массив строки ячеек, затем lmtest возвращает вектор-строку.

пример

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

пример

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

Примеры

свернуть все

Сравните спецификации AR-модели для серии симулированного отклика, используя lmtest.

Рассмотрим модель AR (3):

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

где εt является Гауссовым со средним 0 и отклонением 1. Задайте эту модель используя arima.

Mdl = arima('Constant',1,'Variance',1,'AR',{0.9,-0.5,0.4});

Mdl является полностью заданной, AR (3) моделью.

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

T = 100;
rng(1);               % For reproducibility
n = max(Mdl.P,Mdl.Q); % Number of presample observations
y = simulate(Mdl,T + n);

y является случайным путем из Mdl который включает в себя предварительные наблюдения.

Задайте ограниченную модель:

yt=c+ϕ1yt-1+ϕ2yt-2+εt,

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

Mdl0 = arima(3,0,0);
Mdl0.AR{3} = 0;

Структура Mdl0 то же, что и Mdl. Однако каждый параметр неизвестен, кроме того, что ϕ3=0. Это ограничение равенства во время оценки.

Оцените ограниченную модель с помощью моделируемых данных (y).

[EstMdl0,EstParamCov] = estimate(Mdl0,y((n+1):end),...
    'Y0',y(1:n),'display','off');
phi10 = EstMdl0.AR{1};
phi20 = EstMdl0.AR{2};
phi30 = 0;
c0 = EstMdl0.Constant;
phi0 = [c0;phi10;phi20;phi30];
v0 = EstMdl0.Variance;

EstMdl0 содержит оценки параметров ограниченной модели.

lmtest требует неограниченного счета модели, оцененной в оценках ограниченной модели. Неограниченный градиент модели

l(ϕ1,ϕ2,ϕ3,c,σ2;yt,...,yt-3)c=1σ2(yt-c-ϕ1yt-1-ϕ2yt-2-ϕ3yt-3)

l(ϕ1,ϕ2,ϕ3,c,σ2;yt,...,yt-3)ϕj=1σ2(yt-c-ϕ1yt-1-ϕ2yt-2-ϕ3yt-3)yt-j

l(ϕ1,ϕ2,ϕ3,c,σ2;yt,...,yt-3)σ2=-12σ2+12σ4(yt-c-ϕ1yt-1-ϕ2yt-2-ϕ3yt-3)2.

MatY = lagmatrix(y,1:3);
LagY = MatY(all(~isnan(MatY),2),:);
cGrad = (y((n+1):end)-[ones(T,1),LagY]*phi0)/v0;
phi1Grad = ((y((n+1):end)-[ones(T,1),LagY]*phi0).*LagY(:,1))/v0;
phi2Grad = ((y((n+1):end)-[ones(T,1),LagY]*phi0).*LagY(:,2))/v0;
phi3Grad = ((y((n+1):end)-[ones(T,1),LagY]*phi0).*LagY(:,3))/v0;
vGrad = -1/(2*v0)+((y((n+1):end)-[ones(T,1),LagY]*phi0).^2)/(2*v0^2);
Grad = [cGrad,phi1Grad,phi2Grad,phi3Grad,vGrad]; % Gradient matrix

score = sum(Grad)'; % Score under the restricted model

Оцените неограниченный параметр ковариации оценщика с помощью метода ограниченного MLE и векторного произведения градиентов (OPG).

EstParamCov0 = inv(Grad'*Grad);
dof = 1; % Number of model restrictions

Проверьте нулевую гипотезу, что ϕ3=0 на уровне 1% значимости с помощью lmtest.

[h,pValue] = lmtest(score,EstParamCov0,dof,0.1)
h = logical
   1

pValue = 2.2524e-09

pValue близок к 0, что предполагает наличие убедительных доказательств отказа от ограниченной, AR (2) модели в пользу неограниченной, AR (3) модели.

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

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

где

  • βk=1β+xk.

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

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

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

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

  • Вектор градиента неограниченной модели

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

  • Параметрическая ковариационная оценка, оцененная под MLE ограниченной модели

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

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

Оцените ограниченные параметры модели путем максимизации l(ρ,β) по отношению к β удовлетворяющее ограничению ρ=1. Градиент l(ρ,β) является

l(ρ,β)β=i=1T(yiβi2-ρβi)

l(ρ,β)ρ=-TΨ(ρ)+i=1T(logβiyi),

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

rho0 = 1; % Restricted rho
dof = 1;  % Number of restrictions
dLBeta = @(beta) sum(y./((beta + x).^2) - rho0./(beta + x));...
    % Anonymous gradient function

[betaHat0,fVal,exitFlag] = fzero(dLBeta,0)
betaHat0 = 15.6027
fVal = 2.7756e-17
exitFlag = 1
beta = [0:0.1:50];
plot(beta,arrayfun(dLBeta,beta))
hold on
plot([beta(1);beta(end)],zeros(2,1),'k:')
plot(betaHat0,fVal,'ro','MarkerSize',10)
xlabel('{\beta}')
ylabel('Loglikelihood Gradient')
title('{\bf Loglikelihood Gradient with Respect to \beta}')
hold off

Figure contains an axes. The axes with title {\bf Loglikelihood Gradient with Respect to \beta} contains 3 objects of type line.

Градиент относительно β (dLBeta) уменьшается, что говорит о том, что в его корне локальный максимум. Поэтому betaHat0 - MLE для ограниченной модели. fVal указывает, что значение градиента очень близко к 0 в betaHat0. Выходной флаг (exitFlag) равен 1, что указывает на то, что fzero нашел корень градиента без задачи.

Оцените ковариацию параметра в ограниченной модели с помощью векторного произведения градиентов (OPG).

rGradient = [-rho0./(betaHat0+x)+y.*(betaHat0+x).^(-2),...
      log(y./(betaHat0+x))-psi(rho0)];    % Gradient per unit
rScore = sum(rGradient)';                 % Score function
rEstParamCov = inv(rGradient'*rGradient); % Parameter covariance estimate

Протестируйте неограниченную модель против ограниченной модели с помощью теста множителя Лагранжа.

[h,pValue] = lmtest(rScore,rEstParamCov,dof)
h = logical
   1

pValue = 7.4744e-05

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

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

Задайте модель 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,ep,v] = simulate(Mdl,T + n);

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

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

yt=c+ϕ1yt-1+εt,

где ht=α0+α1εt-12.

VarMdl0 = garch(0,1);
VarMdl0.ARCH{1} = 0;
Mdl0 = arima('ARLags',1,'Constant',0,'Variance',VarMdl0);

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

Оцените ограниченную модель с помощью моделируемых данных (y).

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

[EstMdl0,EstParamCov] = estimate(Mdl0,y(esI),...
    'Y0',y(psI),'E0',ep(psI),'V0',v(psI),'display','off');
phi10 = EstMdl0.AR{1};
alpha00 = EstMdl0.Variance.Constant;

EstMdl0 содержит оценки параметров ограниченной модели.

lmtest требует неограниченного счета модели, оцененной в оценках ограниченной модели. Неограниченная функция логарифмической правдоподобности модели

l(ϕ1,α0,α1)=t=2T(-0.5log(2π)-0.5loght-εt22ht),

где εt=yt-ϕ1yt-1. Неограниченный градиент

l(ϕ1,α0,α1)α=t=2T12htztft,

где zt=[1,εt-12] и ft=εt2ht-1. Информационная матрица

I=12ht2t=2Tztzt.

Под пустой, ограниченной моделью, ht=h0=αˆ0 для всех t, где αˆ0 - оценка из анализа ограниченной модели.

Вычислите градиент и информационную матрицу под ограниченной моделью. Оцените ковариацию параметра путем инвертирования информационной матрицы.

e = y - phi10*lagmatrix(y,1);
eLag1Sq = lagmatrix(e,1).^2;
h0 = alpha00;
ft = (e(esI).^2/h0 - 1);
zt = [ones(T,1),eLag1Sq(esI)]';

score0 = 1/(2*h0)*zt*ft;        % Score function
InfoMat0 = (1/(2*h0^2))*(zt*zt');
EstParamCov0 = inv(InfoMat0);   % Estimated parameter covariance
dof = 1;                        % Number of model restrictions

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

[h,pValue] = lmtest(score0,EstParamCov0,dof)
h = logical
   1

pValue = 4.0443e-06

pValue близок к 0, что предполагает наличие доказательств отклонения ограниченной модели AR (1) в пользу неограниченной модели AR (1) с дисперсией ARCH (1).

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

свернуть все

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

  • Для одного теста, score может быть p -вектором или массивом синглтонных ячеек, содержащим вектор p -by-1. p - количество параметров в неограниченной модели.

  • Для проведения k > 1 тестов, score должна быть длиной k массивом ячеек. j камеры должны содержать один вектор pj -на-1, который соответствует одному независимому тесту. pj - количество параметров в неограниченной модели тестовых j.

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

Ковариационная оценка параметра, заданная как симметричная матрица массива ячеек симметричных матриц. ParamCov - неограниченная оценка параметра модели ковариации, оцененная в оценках ограниченного параметра модели.

  • Для одного теста, ParamCov может быть p -by- p матрицей или массивом одиночных ячеек, содержащим p -by- p матрицу. p - количество параметров в неограниченной модели.

  • Для проведения k > 1 тестов, ParamCov должна быть длиной k массивом ячеек. j камеры должны содержать одну pj -by pj матрицу, которая соответствует одному независимому тесту. pj - количество параметров в неограниченной модели тестовых j.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

свернуть все

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

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

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

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

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

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

Подробнее о

свернуть все

Тест множителя Лагранжа

Этот тест сравнивает спецификации вложенных моделей путем оценки значимости ограничений с расширенной моделью с неограниченными параметрами. Тестовая статистика (LM)

LM=SVS,

где

  • S - градиент неограниченной функции логарифмической правдоподобности, оцениваемый при оценках ограниченного параметра (score), т.е.

    S=l(θ)θ|θ=θ^0,MLE.

  • V является ковариационной оценкой для неограниченных параметров модели, оцененной при ограниченных оценках параметра.

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

Асимптотическое распределение LM хи-квадрат. Степени свободы (dof) - количество ограничений в соответствующем сравнении моделей. Номинальный уровень значимости теста (alpha) определяет критическое значение (cValue).

Совет

  • lmtest требует неограниченного счета модели и параметра ковариационной оценки, оцененной в оценках параметра для ограниченной модели. Для примера, чтобы сравнить конкурирующие, вложенные arima модели:

    1. Аналитически вычислите счет и параметра ковариационной оценки на основе инновационного распределения.

    2. Использование estimate для оценки ограниченных параметров модели.

    3. Оцените счет и ковариационную оценку в оценках ограниченной модели.

    4. Передайте оцененный счет, ограниченную ковариационную оценку и количество ограничений (то есть степени свободы) в lmtest.

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

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

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

Алгоритмы

  • lmtest выполняет несколько независимых тестов, когда входы являются массивами ячеек.

    • Если градиенты и ковариационные оценки одинаковы для всех тестов, но оценки ограниченного параметра варьируются, то lmtest «проверяет» на соответствие нескольким ограниченным моделям.

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

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

  • alpha номинален тем, что задает вероятность отклонения в асимптотическом распределении. Фактическая вероятность отклонения может отличаться от номинальной значимости. Тесты множителя Лагранжа, как правило, недостаточно отклоняются для небольших значений alphaи избыточное отклонение для больших значений 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.

Введенный в R2009a