Степень критерия Чоу

Этот пример показывает, как оценить степень критерия Чоу с помощью симуляции Монте-Карло.

Введение

Статистическая степень является вероятностью отклонения нулевой гипотезы, учитывая, что это является на самом деле ложным. Оценить степень теста:

  1. Моделируйте много наборов данных из модели, которая символизирует альтернативную гипотезу.

  2. Протестируйте каждый набор данных.

  3. Оцените степень, которая является пропорцией времен, тест отклоняет нулевую гипотезу.

Следующее может поставить под угрозу степень критерия Чоу:

  • Линейные образцовые отъезды предположения

  • Относительно большое инновационное отклонение

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

Отклонения от образцовых предположений допускают исследование факторов, что большинство влияет на степень критерия Чоу.

Рассмотрите модель

y=[X1 00X2 ][beta1beta2]+innov

  • innov является вектором случайных Гауссовых варьируемых величин со средним нулевым и стандартным отклонением sigma.

  • X1 и X2 являются наборами данных о предикторе для начальных и дополнительных подвыборок, соответственно.

  • beta1 и beta2 являются векторами коэффициента регрессии для начальных и дополнительных подвыборок, соответственно.

Моделируйте данные о предикторе

Задайте четыре предиктора, 50 наблюдений и точку останова в период 44 для моделируемой линейной модели.

numPreds = 4;
numObs = 50;
bp = 44;
rng(1); % For reproducibility

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

mu = [0 1 2 3];
X = repmat(mu,numObs,1) + randn(numObs,numPreds);

Чтобы указать на прерывание, добавьте столбец из единиц к данным о предикторе.

X = [ones(numObs,1) X];
X1 = X(1:bp,:);        % Initial subsample predictors
X2 = X(bp+1:end,:);    % Complementary subsample predictors

Задайте истинные значения коэффициентов регрессии.

beta1 = [1 2 3 4 5]'; % Initial subsample coefficients

Оцените степень для маленького и большого скачка

Сравните степень между точкой останова и предскажите тесты для скачков различных размеров, небольших в прерывании и втором коэффициенте регрессии. В этом примере маленький скачок является 10%-м увеличением текущего значения, и большой скачок является 15%-м увеличением. Дополнительные поддемонстрационные коэффициенты

beta2Small = beta1 + [beta1(1)*0.1 0 beta1(3)*0.1 0 0 ]'; 
beta2Large = beta1 + [beta1(1)*0.15 0 beta1(3)*0.15 0 0 ]';

Моделируйте 1 000 путей к ответу линейной модели для каждого из маленьких и больших содействующих скачков. Укажите, что sigma 0.2. Примите решение протестировать прерывание и второй коэффициент регрессии.

M = 1000;

sigma = 0.2;
Coeffs = [true false true false false];
h1BP = nan(M,2); % Preallocation
h1F = nan(M,2);
for j = 1:M
    innovSmall = sigma*randn(numObs,1);
    innovLarge = sigma*randn(numObs,1);
    ySmall = [X1 zeros(bp,size(X2,2)); ...
        zeros(numObs - bp,size(X1,2)) X2]*[beta1; beta2Small] + innovSmall;
    yLarge = [X1 zeros(bp,size(X2,2)); ...
        zeros(numObs - bp,size(X1,2)) X2]*[beta1; beta2Large] + innovLarge;
    h1BP(j,1) = chowtest(X,ySmall,bp,'Intercept',false,'Coeffs',Coeffs,...
        'Display','off')';
    h1BP(j,2) = chowtest(X,yLarge,bp,'Intercept',false,'Coeffs',Coeffs,...
        'Display','off')';
    h1F(j,1) = chowtest(X,ySmall,bp,'Intercept',false,'Coeffs',Coeffs,...
        'Test','forecast','Display','off')';
    h1F(j,2) = chowtest(X,yLarge,bp,'Intercept',false,'Coeffs',Coeffs,...
        'Test','forecast','Display','off')';
end

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

power1BP = mean(h1BP);
power1F = mean(h1F);
table(power1BP',power1F','RowNames',{'Small_Jump','Large_Jump'},...
    'VariableNames',{'Breakpoint','Forecast'})
ans=2×2 table
                  Breakpoint    Forecast
                  __________    ________

    Small_Jump      0.717        0.645  
    Large_Jump      0.966         0.94  

В этом сценарии критерий Чоу может обнаружить изменение в коэффициенте с большим количеством степени, когда скачок больше. Тест точки останова имеет большую власть обнаруживать скачок, чем тест прогноза.

Оцените степень для большого инновационного отклонения

Моделируйте 1 000 путей к ответу линейной модели для большого содействующего скачка. Укажите, что sigma 0.4. Примите решение протестировать прерывание и второй коэффициент регрессии.

sigma = 0.4;
h2BP = nan(M,1); 
h2F = nan(M,1);
for j = 1:M
    innov = sigma*randn(numObs,1);
    y = [X1 zeros(bp,size(X2,2)); ...
        zeros(numObs - bp,size(X1,2)) X2]*[beta1; beta2Large] + innov;
    h2BP(j) = chowtest(X,y,bp,'Intercept',false,'Coeffs',Coeffs,...
        'Display','off')';
    h2F(j) = chowtest(X,y,bp,'Intercept',false,'Coeffs',Coeffs,...
        'Test','forecast','Display','off')';
end

power2BP = mean(h2BP);
power2F = mean(h2F);
table([power1BP(2); power2BP],[power1F(2); power2F],...
    'RowNames',{'Small_sigma','Large_Sigma'},...
    'VariableNames',{'Breakpoint','Forecast'})
ans=2×2 table
                   Breakpoint    Forecast
                   __________    ________

    Small_sigma      0.966         0.94  
    Large_Sigma      0.418        0.352  

Для большего инновационного отклонения оба критерия Чоу испытывают затруднения при обнаружении больших структурных перерывов в прерывании и втором коэффициенте регрессии.

Смотрите также

Похожие темы

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