Регрессия временных рядов III: Влиятельные наблюдения

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

Введение

При рассмотрении эмпирических ограничений, которые влияют на оценки OLS, Belsley et al. [1] советует сначала решить проблемы коллинеарности. Следующим шагом является поиск влиятельных наблюдений, присутствие которых, индивидуально или в группах, оказывает измеримые эффекты на результаты регрессии. Мы отличаем по существу метрическое понятие «влиятельное наблюдение» от более субъективного понятия « выбросов», которое может включать любые данные, которые не следуют ожидаемым шаблонам.

Начнем с загрузки соответствующих данных из предыдущего примера Регрессия временных рядов II: Отклонение коллинеарности и оценки, и продолжим анализ представленной там модели кредитного дефолта:

load Data_TSReg2
dt = datetime(dateNums,'ConvertFrom','datenum','Format','yyyy');

Влиятельные наблюдения

Влиятельные наблюдения возникают двумя принципиально различными способами. Во-первых, они могут быть результатом ошибок измерения или записи. В этом случае они являются просто плохими данными, вредными для оценки модели. С другой стороны, они могут отражать истинное распределение инновационного процесса, проявляя гетероскедастичность, перекос или лептокуртоз, за который модель не учитывает. Такие наблюдения могут содержать аномальную информацию выборки, которая, тем не менее, необходима для точной оценки модели. Определение типа влиятельного наблюдения трудно при рассмотрении только данных. Лучшие подсказки часто встречаются во взаимодействиях модель-данные, которые генерируют остаточный ряд. Мы исследуем их далее в примере Регрессия временных рядов VI: Остаточная диагностика.

Предварительная обработка влиятельных наблюдений имеет три компонента: идентификация, оценка влияния и размещение. В эконометрических условиях идентификация и оценка влияния обычно основываются на регрессионой статистике. Размещение, если оно существует, обычно является выбором между удалением данных, что требует принятия предположений о DGP или реализации подходящей устойчивой процедуры оценки с возможностью затенения ненормальной, но, возможно, важной информации.

Данные временных рядов отличаются от данных поперечного сечения тем, что удаление наблюдений оставляет «отверстия» во временной основе выборки. Стандартные методы ввода значений замены, такие как сглаживание, нарушают допущение CLM строгой экзогенности. Если данные временных рядов показывают последовательную корреляцию, как они часто делают в экономических условиях, удаление наблюдений изменит предполагаемые автокорреляции. Способность диагностировать отклонения от спецификации модели, посредством остаточного анализа, скомпрометирована. В результате процесс моделирования должен быть циклическим между диагностикой и респецификацией, пока приемлемые оценки коэффициентов не приведут к приемлемой серии невязок.

Диагностика удаления

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

Значительные изменения в оценках коэффициентов βˆ после исключения наблюдения это является главной проблемой. Свойство подобранной модели Diagnostics.dfBetas масштабирует эти различия по оценкам отклонений отдельных коэффициентов для сравнения:

dfBetas = M0.Diagnostics.dfBetas;

figure
hold on
plot(dt,dfBetas(:,2:end),'LineWidth',2)
plot(dt,dfBetas(:,1),'k','LineWidth',2)
hold off
legend([predNames0,'Intercept'],'Location','Best')
xlabel('Observation Deleted') 
ylabel('Scaled Change in Coefficient Estimate') 
title('{\bf Delete-1 Coefficient Estimate Changes}')
axis tight
grid on

Figure contains an axes. The axes with title {\bf Delete-1 Coefficient Estimate Changes} contains 5 objects of type line. These objects represent AGE, BBB, CPF, SPR, Intercept.

Эффекты удалений для пар компонентов в βˆ показаны в матрице 2-D графиков поля точек изменений:

figure
gplotmatrix(dfBetas,[],[],[],'o',2,[],...
            'variable',['Const',predNames0]);
title('{\bf Delete-1 Coefficient Estimate Changes}')

Figure contains 25 axes. Axes 1 contains an object of type line. Axes 2 contains an object of type line. Axes 3 contains an object of type line. Axes 4 contains an object of type line. Axes 5 contains an object of type text. Axes 6 contains an object of type line. Axes 7 contains an object of type line. Axes 8 contains an object of type line. Axes 9 contains an object of type text. Axes 10 contains an object of type line. Axes 11 contains an object of type line. Axes 12 contains an object of type line. Axes 13 contains an object of type text. Axes 14 contains an object of type line. Axes 15 contains an object of type line. Axes 16 contains an object of type line. Axes 17 contains an object of type text. Axes 18 contains an object of type line. Axes 19 contains an object of type line. Axes 20 contains an object of type line. Axes 21 contains an object of type text. Axes 22 contains an object of type line. Axes 23 contains an object of type line. Axes 24 contains an object of type line. Axes 25 contains an object of type line.

При достаточных данных эти рассеяния имеют тенденцию быть приблизительно эллиптическими [2]. Внешние точки могут быть помечены именем соответствующего удаленного наблюдения путем ввода gname(dt) в командной строке, затем щелкните на точке на графиках.

Кроме того, расстояние Кука, найденное в Diagnostics.CooksDistance свойство подобранной модели, является общей сводной статистикой для этих графиков, с контурами, образующими эллипсы с центром вокруг βˆ (то есть dfBeta = 0). Точки, удаленные от центра на нескольких графиках, имеют большое расстояние Кука, что указывает на влиятельное наблюдение:

cookD = M0.Diagnostics.CooksDistance;

figure;
plot(dt,cookD,'m','LineWidth',2)
recessionplot;
xlabel('Observation'); 
ylabel('Cook''s Distance'); 
title('{\bf Cook''s Distance}');
axis('tight');
grid('on');

Figure contains an axes. The axes with title {\bf Cook's Distance} contains 3 objects of type line, patch.

Если βˆ(i) - предполагаемый вектор коэффициента с ith наблюдение удалено из данных, тогда расстояние Кука также является евклидовым расстоянием между

ytˆ=Xtβˆ

и

ytˆ(i)=Xtβˆ(i).

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

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

ytˆ=Xtβˆ=Xt(XtTXt)-1XtTyt=Hyt,

где H - матрица шляпы, вычисленная только из данных предиктора. Диагональные элементы H являются значениями рычага, давая компонентные пропорции наблюдаемых yt внесение вклада в соответствующие оценки в ytˆ. Значения рычага, найденные в Diagnostics.Leverage свойство подобранной модели, подчеркивайте различные источники влияния:

leverage = M0.Diagnostics.Leverage;

figure;
plot(dt,leverage,'m','LineWidth',2)
recessionplot;
xlabel('Observation');
ylabel('Leverage'); 
title('{\bf Leverage}');
axis('tight');
grid('on');

Figure contains an axes. The axes with title {\bf Leverage} contains 3 objects of type line, patch.

Другой распространенной мерой влияния, расстояние Махаланобиса, является просто масштабная версия рычага. Расстояния Махаланобиса в X0 может быть вычислено с помощью d = mahal(X0,X0), в этом случае значения рычага задаются h = d/(T0-1)+(1/T0).

Дополнительные диагностические графики могут быть созданы путем извлечения другой статистики из Diagnostics свойство подобранной модели или при помощи plotDiagnostics функция.

Экономическое значение

Прежде чем удалять данные, какой-то экономический смысл должен быть присвоен влиятельным точкам, идентифицированным различными мерами. Расстояние Кука, связанное с изменениями в общей реакции, показывает резкий всплеск в 2001 году. Кредитное плечо, сопоставленное только с данными предиктора, показывает резкий всплеск в 1988 году. Примечательно также, что после внезапного увеличения плеча и периода высоких показателей дефолта предиктор BBB изгибается вверх после 1991 года, и процент низкокачественных облигаций начинает трендировать. (Смотрите график предикторов в примере Регрессия временных рядов I: Линейные модели.)

Некоторые подсказки встречаются в экономической истории времени. 2001 год стал периодом спада в экономике США (вторая вертикальная полоса на графиках выше), вызванной, отчасти, распадом спекулятивного интернет-пузыря и сокращением инвестиций в бизнес. Это был также год атак 11 сентября, которые нанесли серьезный шок рынкам облигаций. Неопределенность, а не количественный риск, характеризовали инвестиционные решения на оставшуюся часть этого года. С другой стороны, в 80-е годы началось долгосрочное изменение символа рынков облигаций. Новые выпуски высокодоходных облигаций, которые стали известны как «мусорные облигации», использовались для финансирования многих проектов корпоративной реструктуризации. Этот сегмент рынка облигаций рухнул в 1989 году. После спада (первая вертикальная полоса на графиках выше) и шока цен на нефть в 1990-1991 годах рынок высокой урожайности снова начал расти, и повзрослел.

Решение удалить данные в конечном счете зависит от цели модели. Если цель в основном объяснительная, удаление точно записанных данных неуместно. Если, однако, целью является прогнозирование, то нужно спросить, создаст ли удаление точек предварительная выборка, который более «типичен» для прошлого, и, следовательно, для будущего. Например, исторический контекст данных в 2001 году может привести к выводу, что он искажает исторические шаблоны и не должен влиять на модель прогнозирования. Аналогичным образом, история 80-х годов может привести к выводу о том, что на рынках облигаций произошли структурные изменения, и данные до 1991 должны быть проигнорированы для прогнозов в новом режиме.

Для ссылки мы создадим оба исправленных набора данных:

% Delete 2001:
d1 = (dt ~= '2001'); % Delete 1
datesd1 = dt(d1);
Xd1 = X0(d1,:);
yd1 = y0(d1);

% Delete dates prior to 1991, as well:
dm = (datesd1 >= '1991'); % Delete many
datesdm = datesd1(dm);
Xdm = Xd1(dm,:);
ydm = yd1(dm);

Сводные данные

Эффекты исключений для оценки модели обобщены ниже. Табличные массивы обеспечивают удобный формат для сравнения статистики регрессии между моделями:

Md1 = fitlm(Xd1,yd1);
Mdm = fitlm(Xdm,ydm);

% Model mean squared errors:
MSEs = table(M0.MSE,...
             Md1.MSE,...
             Mdm.MSE,...
             'VariableNames',{'Original','Delete01','Post90'},...              
             'RowNames',{'MSE'})
MSEs=1×3 table
           Original     Delete01      Post90  
           _________    _________    _________

    MSE    0.0058287    0.0032071    0.0023762

% Coefficient estimates:
Coeffs = table(M0.Coefficients.Estimate,...
               Md1.Coefficients.Estimate,...
               Mdm.Coefficients.Estimate,...
               'VariableNames',{'Original','Delete01','Post90'},...              
               'RowNames',['Const',predNames0])
Coeffs=5×3 table
             Original      Delete01      Post90  
             _________    __________    _________

    Const     -0.22741      -0.12821     -0.13529
    AGE       0.016781      0.016635     0.014107
    BBB      0.0042728     0.0017657    0.0016663
    CPF      -0.014888    -0.0098507    -0.010577
    SPR       0.045488      0.024171     0.041719

% Coefficient standard errors:
StdErrs = table(M0.Coefficients.SE,...
               Md1.Coefficients.SE,...
               Mdm.Coefficients.SE,...
               'VariableNames',{'Original','Delete01','Post90'},...              
               'RowNames',['Const',predNames0])
StdErrs=5×3 table
             Original     Delete01      Post90  
             _________    _________    _________

    Const     0.098565     0.077746     0.086073
    AGE      0.0091845    0.0068129     0.013024
    BBB      0.0026757    0.0020942    0.0030328
    CPF      0.0038077    0.0031273    0.0041749
    SPR       0.033996     0.025849     0.027367

MSE улучшается с удалением точки в 2001 году, а затем снова с удалением данных до 1991 года. Удаление точки в 2001 году также имеет эффект ужесточения стандартных ошибок в оценках коэффициентов. Однако удаление всех данных до 1991 года значительно уменьшает размер выборки, и стандартные ошибки нескольких оценок становятся больше, чем они были с исходными данными.

Ссылки

[1] Belsley, D. A., E. Kuh, and R. E. Welsh. Регрессионная диагностика. Нью-Йорк, Нью-Йорк: John Wiley & Sons, Inc., 1980.

[2] Weisberg, S. Applied Linear Regression. Hoboken, NJ: John Wiley & Sons, Inc., 2005.

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