вывести

Класс: arima

Выведите невязки модели ARIMA или ARIMAX или условные отклонения

Синтаксис

[E,V] = infer(Mdl,Y)
[E,V,logL] = infer(Mdl,Y)
[E,V,logL] = infer(Mdl,Y,Name,Value)

Описание

[E,V] = infer(Mdl,Y) выводит невязки и условные отклонения одномерной подгонки модели ARIMA к данным Y.

[E,V,logL] = infer(Mdl,Y) дополнительно возвращает loglikelihood значения целевой функции.

[E,V,logL] = infer(Mdl,Y,Name,Value) выводит невязки модели ARIMA или ARIMAX и условные отклонения, и возвращает loglikelihood значения целевой функции, с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

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

развернуть все

Полностью заданная модель ARIMA или ARIMAX, заданная как модель arima, возвращенная arima или estimate.

Свойства Mdl не могут содержать NaN s.

Данные об ответе, заданные как числовой вектор-столбец или числовая матрица. Если Y является матрицей, то он имеет наблюдения numObs и numPaths отдельные, независимые контуры.

infer выводит невязки и отклонения Y. Y представляет временные ряды, охарактеризованные Mdl, и это - продолжение преддемонстрационной серии Y0.

  • Если Y является вектор-столбцом, то он представляет один путь базового ряда.

  • Если Y является матрицей, то он представляет наблюдения numObs за путями numPaths базовых временных рядов.

infer принимает, что наблюдения через любую строку происходят одновременно. Последнее наблюдение за любым рядом является последним.

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

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Преддемонстрационные инновации, которые имеют среднее значение 0 и обеспечивают начальные значения для модели, заданной как пара, разделенная запятой, состоящая из 'E0' и числового вектор-столбца или числовой матрицы.

E0 должен содержать, по крайней мере, столбцы numPaths и достаточно строк, чтобы инициализировать модель ARIMA и любую условную модель отклонения. Таким образом, E0 должен содержать, по крайней мере, инновации Mdl.Q, но может быть больше, если вы используете условную модель отклонения. Если количество строк в E0 превышает необходимый номер, то infer только использует последние наблюдения. Последняя строка содержит последнее наблюдение.

Если количество столбцов превышает numPaths, то infer только использует первые столбцы numPaths. Если E0 является вектор-столбцом, то infer применяет его к каждому выведенному пути.

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

Преддемонстрационные условные отклонения, обеспечивающие начальные значения для любой условной модели отклонения, заданной как пара, разделенная запятой, состоящая из 'V0' и числового вектор-столбца или матрицы с положительными записями.

V0 должен содержать, по крайней мере, столбцы numPaths и достаточно строк, чтобы инициализировать модель отклонения. Если количество строк в V0 превышает необходимый номер, то infer только использует последние наблюдения. Последняя строка содержит последнее наблюдение.

Если количество столбцов превышает numPaths, то infer только использует первые столбцы numPaths. Если V0 является вектор-столбцом, то infer применяет его к каждому выведенному пути.

По умолчанию infer устанавливает необходимые наблюдения на безусловное отклонение условного процесса отклонения.

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

Внешние данные о предикторе для компонента регрессии, заданного как пара, разделенная запятой, состоящая из 'X' и матрицы.

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

Если вы не задаете Y0, то количеством строк X должен быть, по крайней мере, numObs + Mdl.P. В противном случае количеством строк X должен быть, по крайней мере, numObs. В любом случае, если количество строк X превышает необходимый номер, то infer использует только последние наблюдения.

По умолчанию условная средняя модель не имеет коэффициента регрессии.

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

Преддемонстрационные данные об ответе, которые обеспечивают начальные значения для модели, заданной как пара, разделенная запятой, состоящая из 'Y0' и числового вектор-столбца или числовой матрицы. Y0 должен содержать, по крайней мере, строки Mdl.P и столбцы numPaths. Если количество строк в Y0 превышает Mdl.P, то infer только использует последние наблюдения Mdl.P. Последняя строка содержит последнее наблюдение. Если количество столбцов превышает numPaths, то infer только использует первые столбцы numPaths. Если Y0 является вектор-столбцом, то infer применяет его к каждому выведенному пути.

По умолчанию, обратные броски infer, чтобы получить необходимые наблюдения.

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

Примечания

  • NaN s указывает на отсутствующие значения, и infer удаляет их. Программное обеспечение объединяет преддемонстрационные данные и основные наборы данных отдельно, затем использует мудрое списком удаление, чтобы удалить любой NaN s. Таким образом, infer устанавливает PreSample = [Y0 E0 V0] и Data = [Y X], затем это удаляет любую строку в PreSample или Data, который содержит по крайней мере один NaN.

  • Удаление NaN s в основных данных уменьшает эффективный объем выборки. Такое удаление может также создать неправильные временные ряды.

  • infer принимает, что вы синхронизируете ответ и ряд предиктора, таким образом, что последнее наблюдение за каждым происходит одновременно. Программное обеспечение также принимает, что вы синхронизируете преддемонстрационный ряд так же.

  • Программное обеспечение применяет весь внешний ряд в X к каждому ряду ответа в Y.

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

развернуть все

Выведенные невязки, возвращенные как числовая матрица. E имеет строки numObs и столбцы numPaths.

Выведенные условные дисперсии, возвращенные как числовая матрица. V имеет строки numObs и столбцы numPaths.

Значения целевой функции Loglikelihood сопоставлены с моделью Mdl, возвращенной как числовой вектор. logL сопоставили элементы numPaths с соответствующим путем в Y.

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

Примеры

развернуть все

Выведите невязки из модели AR.

Задайте модель AR (2) с помощью известных параметров.

Mdl = arima('AR',{0.5,-0.8},'Constant',0.002,...
	'Variance',0.8);

Моделируйте данные об ответе с 102 наблюдениями.

rng 'default';
Y = simulate(Mdl,102);

Используйте первые два ответа в качестве преддемонстрационных данных и выведите невязки для остающихся 100 наблюдений.

E = infer(Mdl,Y(3:end),'Y0',Y(1:2));
figure;
plot(E);
title 'Inferred Residuals';

Выведите условные отклонения из AR (1) и GARCH (1,1) составная модель.

Задайте модель AR (1) с помощью известных параметров. Установите отклонение, равное модели garch.

Mdl = arima('AR',{0.8,-0.3},'Constant',0);
MdlVar = garch('Constant',0.0002,'GARCH',0.6,...
	'ARCH',0.2);
Mdl.Variance = MdlVar;

Моделируйте данные об ответе с 102 наблюдениями.

rng 'default';
Y = simulate(Mdl,102);

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

[Ew,Vw] = infer(Mdl,Y(3:end));

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

[E,V] = infer(Mdl,Y(3:end),'Y0',Y(1:2));

Постройте два набора условных отклонений для сравнения. Исследуйте первые несколько наблюдений, чтобы видеть незначительные различия между рядом вначале.

figure;
subplot(2,1,1);
plot(Vw,'r','LineWidth',2);
hold on;
plot(V);
legend('Without Presample','With Presample');
title 'Inferred Conditional Variances';
hold off

subplot(2,1,2);
plot(Vw(1:5),'r','LineWidth',2);
hold on;
plot(V(1:5));
legend('Without Presample','With Presample');
title 'Beginning of Series';
hold off

Выведите невязки из модели ARMAX.

Задайте модель ARMA(1,2) с помощью известных параметров для ответа (MdlY) и модель AR (1) для данных о предикторе (MdlX).

MdlY = arima('AR',0.2,'MA',{-0.1,0.6},'Constant',...
    1,'Variance',2,'Beta',3);
MdlX = arima('AR',0.3,'Constant',0,'Variance',1);

Моделируйте ответ и данные о предикторе с 102 наблюдениями.

rng 'default'; % For reproducibility
X = simulate(MdlX,102);
Y = simulate(MdlY,102,'X',X);

Используйте первые два ответа в качестве преддемонстрационных данных и выведите невязки для остающихся 100 наблюдений.

E = infer(MdlY,Y(3:end),'Y0',Y(1:2),'X',X);
figure;
plot(E);
title 'Inferred Residuals'; 

Ссылки

[1] Поле, G. E. P. Г. М. Дженкинс и Г. К. Рейнсель. Анализ timeseries: Предсказывая и Управление 3-й редактор Englewood Cliffs, NJ: Prentice Hall, 1994.

[2] Enders, W. Прикладные эконометрические временные ряды. Хобокен, NJ: John Wiley & Sons, 1995.

[3] Гамильтон, J. D. Анализ timeseries. Принстон, NJ: Издательство Принстонского университета, 1994.