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

Оцените неограниченное средство оценки ковариации параметра с помощью ограниченного MLEs и векторного произведения градиентов (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) в соответствии с ограниченной моделью

  • Средство оценки ковариации параметра оценено под MLEs ограниченной модели

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

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

Градиент относительно β (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, который указывает, что существуют убедительные доказательства, чтобы предположить, что неограниченная модель соответствует данным лучше, чем ограниченная модель.

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

Задайте модель AR (1) с ДУГОЙ (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) с ДУГОЙ (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) с ДУГОЙ (1) отклонение.

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

свернуть все

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

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

  • Для проведения k> 1 тест, score должна быть длина массив ячеек k. Ячейка j должна содержать один pj-by-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] Дэвидсон, R. и Дж. Г. Маккиннон. Эконометрическая теория и методы. Оксфорд, Великобритания: Издательство Оксфордского университета, 2004.

[2] Годфри, тесты Л. Г. Мисспекификэйшна в эконометрике. Кембридж, Великобритания: Издательство Кембриджского университета, 1997.

[3] Грин, В. Х. Эконометрик Анэлизис. 6-й редактор Верхний Сэддл-Ривер, NJ: Пирсон Prentice Hall, 2008.

[4] Гамильтон, J. D. Анализ Временных Рядов. Принстон, NJ: Издательство Принстонского университета, 1994.

Представленный в R2009a

Для просмотра документации необходимо авторизоваться на сайте