exponenta event banner

оценка

Класс: regARIMA

Оценка параметров регрессионных моделей с ошибками ARIMA

Синтаксис

EstMdl = estimate(Mdl,y)
[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y)
[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y,Name,Value)

Описание

EstMdl = estimate(Mdl,y) использует максимальную вероятность для оценки параметров регрессионной модели с ошибками временных рядов ARIMA, Mdl, учитывая серию ответов y. EstMdl является regARIMA модель, в которой хранятся результаты.

[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y) дополнительно возвращает EstParamCovматрица дисперсии-ковариации, связанная с оцененными параметрами, logL, оптимизированная целевая функция средства к существованию, и infoструктура данных сводной информации.

[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y,Name,Value) оценивает модель с использованием дополнительных опций, заданных одним или несколькими Name,Value аргументы пары.

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

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

Регрессионная модель с ошибками ARIMA, заданная как regARIMA модель, возвращенная regARIMA или estimate.

estimate обрабатывает не -NaN элементы в Mdl в качестве ограничений равенства и не оценивает соответствующие параметры.

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

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

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

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Начальные оценки несезонных авторегрессивных коэффициентов модели ошибок ARIMA, определенных как пара, разделенная запятыми, состоящая из 'AR0' и числовой вектор.

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

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

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

Начальные оценки коэффициентов регрессии, определенные как разделенная запятыми пара, состоящая из 'Beta0' и числовой вектор.

Количество коэффициентов в Beta0 должно равняться количеству столбцов X.

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

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

Опция отображения «Командное окно», заданная как разделенная запятыми пара, состоящая из 'Display' и одно или несколько значений в этой таблице.

СтоимостьОтображаемая информация
'diagnostics'Оптимизация диагностики
'full'Оценки параметров максимального правдоподобия, стандартные ошибки, статистика t, информация итеративной оптимизации и диагностика оптимизации
'iter'Итеративная информация об оптимизации
'off'Ничего
'params'Оценки параметров максимального правдоподобия, стандартные ошибки и статистика t

Пример: 'Display','off' хорошо подходит для выполнения моделирования, которое оценивает многие модели.

Пример: 'Display',{'params','diagnostics'} отображает все результаты оценки и диагностику оптимизации.

Типы данных: char | cell | string

Начальная оценка степени свободы распределения t, указанная как пара, разделенная запятыми, состоящая из 'DoF0' и положительный скаляр. DoF0 должно превышать 2.

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

Предварительные инновации, которые имеют среднее значение 0 и обеспечивают начальные значения для модели ошибок ARIMA, указанной как пара, разделенная запятыми, состоящая из 'E0' и вектор числового столбца. E0 должен содержать не менее Mdl.Q строк. Если E0 содержит дополнительные строки, затем estimate использует последние Mdl.Q предварительные инновации. Последняя строка содержит последние предварительные инновации.

По умолчанию estimate устанавливает необходимые предварительные инновации для 0.

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

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

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

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

Начальные оценки коэффициентов несезонного скользящего среднего модели ошибок ARIMA, определенных как пара, разделенная запятыми, состоящая из 'MA0' и числовой вектор.

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

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

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

Опции оптимизации, указанные как пара, разделенная запятыми, состоящая из 'Options' и optimoptions контроллер оптимизации. Дополнительные сведения об изменении значений по умолчанию оптимизатора см. в разделе optimoptions или fmincon в Toolbox™ оптимизации.

Например, чтобы изменить допуск ограничения на 1e-6, комплект Options = optimoptions(@fmincon,'ConstraintTolerance',1e-6,'Algorithm','sqp'). Затем, пройти Options в estimate использование 'Options',Options.

По умолчанию estimate использует те же параметры по умолчанию, что и fmincon, за исключением Algorithm является 'sqp' и ConstraintTolerance является 1e-7.

Первоначальные оценки сезонных авторегрессионных коэффициентов модели ошибок ARIMA, определенных как пара, разделенная запятыми, состоящая из 'SAR0' и числовой вектор.

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

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

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

Первоначальные оценки коэффициентов сезонного скользящего среднего модели ошибок ARIMA, определенных как пара, разделенная запятыми, состоящая из 'SMA0' и числовой вектор.

Количество коэффициентов в SMA0 должно равняться числу лагов с ненулевыми коэффициентами в многочлене сезонного скользящего среднего.

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

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

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

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

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

Начальная оценка дисперсии инноваций модели ошибок ARIMA, указанная как пара, разделенная запятыми, состоящая из 'Variance0' и положительный скаляр.

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

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

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

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

По умолчанию estimate не оценивает коэффициенты регрессии независимо от их присутствия в Mdl.

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

Примечания

  • NaNs в y, E0, U0, и X указать отсутствующие значения, и estimate удаляет их. Программное обеспечение объединяет предварительные данные (E0 и U0) отдельно от эффективных данных выборки (X и y), затем использует удаление на основе списка для удаления любого NaNс. Удаление NaNs в данных уменьшает размер выборки, а также может создавать нерегулярные временные ряды.

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

  • Перехват регрессионной модели с ошибками ARIMA, имеющими ненулевые степени сезонного или несезонного интегрирования, не идентифицируется. Другими словами, estimate не может оценить перехват регрессионной модели с ошибками ARIMA, имеющими ненулевые степени сезонной или несезонной интеграции. Если сдать такую модель для оценки, estimate отображает предупреждение в окне команд и наборах EstMdl.Intercept кому NaN.

  • Если указано значение для Display, то он имеет приоритет над спецификациями опций оптимизации Diagnostics и Display. В противном случае estimate соблюдает все параметры выбора, связанные с отображением информации оптимизации в опциях оптимизации.

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

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

Модель, содержащая оценки параметров, возвращенные как regARIMA модель. estimate использует максимальную вероятность для вычисления всех оценок параметров, не ограниченных Mdl (то есть все параметры в Mdl для которого установлено значение NaN).

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

Строки и столбцы содержат ковариации оценок параметров. Стандартными ошибками оценок параметров является квадратный корень записей по главной диагонали. Строки и столбцы, связанные с любыми параметрами, зафиксированными как ограничения равенства, содержат 0s.

estimate использует метод внешнего произведения градиентов (OPG) для выполнения оценки ковариационной матрицы.

estimate упорядочивает параметры в EstParamCov следующим образом:

  • Точка пересечения

  • Отличный от нуля AR коэффициенты при положительных лагах

  • Отличный от нуля SAR коэффициенты при положительных лагах

  • Отличный от нуля MA коэффициенты при положительных лагах

  • Отличный от нуля SMA коэффициенты при положительных лагах

  • Коэффициенты регрессии (при указании X в estimate)

  • Отклонение инноваций

  • Степени свободы для распределения t

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

Значение оптимизированной логической целевой функции, возвращаемое как скаляр.

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

Сводная информация, возвращенная в виде структуры.

ОбластьОписание
exitflagФлаг выхода из оптимизации (см. fmincon в панели инструментов оптимизации)
optionsКонтроллер параметров оптимизации (см. optimoptions и fmincon в панели инструментов оптимизации)
XВектор конечных оценок параметров
X0Вектор начальных оценок параметров

Например, можно отобразить вектор конечных оценок путем ввода info.X в окне команд.

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

Примеры

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

Подгоните эту регрессионную модель с ошибками ARMA (2,1) к моделируемым данным :

yt = Xt [0,1-0,2] + utut = 0 .5ut-1-0.8ut-2 + αt-0.5αt-1,

где αt - гауссов с дисперсией 0,1.

Укажите регрессионную модель ошибок ARMA (2,1). Моделирование ответов из модели и двух рядов предикторов .

Mdl0 = regARIMA('Intercept',0,'AR',{0.5 -0.8}, ...
    'MA',-0.5,'Beta',[0.1 -0.2],'Variance',0.1);
rng(1);
X =  randn(100,2);
y = simulate(Mdl0,100,'X',X);

Укажите регрессионную модель с ошибками ARMA (2,1) без перехвата, неизвестными коэффициентами и дисперсией .

Mdl = regARIMA(2,0,1);
Mdl.Intercept = 0      % Exclude the intercept
Mdl = 
  regARIMA with properties:

     Description: "ARMA(2,1) Error Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
       Intercept: 0
            Beta: [1×0]
               P: 2
               Q: 1
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {NaN} at lag [1]
             SMA: {}
        Variance: NaN

Коэффициенты AR, коэффициенты MA и дисперсия инноваций являются NaN значения. estimate оценивает эти параметры, но не перехват. Перехват фиксируется на 0.

Подгоните регрессионную модель с ошибками ARMA (2,1) к данным .

EstMdl = estimate(Mdl,y,'X',X,'Display','params');
 
    Regression with ARMA(2,1) Error Model (Gaussian Distribution):
 
                  Value      StandardError    TStatistic      PValue  
                 ________    _____________    __________    __________

    Intercept           0              0           NaN             NaN
    AR{1}          0.6203        0.10419        5.9534      2.6267e-09
    AR{2}        -0.69717       0.079575       -8.7612      1.9315e-18
    MA{1}        -0.55808         0.1319       -4.2312      2.3243e-05
    Beta(1)       0.10367       0.021735        4.7696      1.8456e-06
    Beta(2)      -0.20945       0.024188        -8.659      4.7574e-18
    Variance     0.074885      0.0090358        8.2876      1.1558e-16

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

Подбор регрессионной модели с ошибками ARMA (1,1) путем регрессии логарифмического ВВП в ИПЦ и использования начальных значений .

Загрузите набор макроэкономических данных США и выполните предварительную обработку данных.

load Data_USEconModel;
logGDP = log(DataTable.GDP);
dlogGDP = diff(logGDP);        % For stationarity
dCPI = diff(DataTable.CPIAUCSL); % For stationarity
T = length(dlogGDP);           % Effective sample size

Укажите регрессионную модель с ошибками ARMA (1,1), в которой все оцениваемые параметры неизвестны .

EstMdl = regARIMA(1,0,1);

Поместите модель в первую половину данных.

EstMdl0 = estimate(EstMdl,dlogGDP(1:ceil(T/2)),...
    'X',dCPI(1:ceil(T/2)),'Display','off');

Результат - новый regARIMA модель с расчетными параметрами.

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

Intercept0 = EstMdl0.Intercept;
AR0        = EstMdl0.AR{1};
MA0        = EstMdl0.MA{1};
Variance0  = EstMdl0.Variance;
Beta0      = EstMdl0.Beta;

[EstMdl,~,~,info] = estimate(EstMdl,dlogGDP(floor(T/2)+1:end),...
    'X',dCPI(floor(T/2)+1:end),'Display','params',...
   'Intercept0',Intercept0,'AR0',AR0,'MA0',MA0,...
   'Variance0',Variance0,'Beta0',Beta0);
 
    Regression with ARMA(1,1) Error Model (Gaussian Distribution):
 
                   Value       StandardError    TStatistic      PValue   
                 __________    _____________    __________    ___________

    Intercept      0.011174       0.002102        5.3158       1.0619e-07
    AR{1}           0.78684       0.036229        21.718      1.3759e-104
    MA{1}          -0.47362        0.06554       -7.2264         4.96e-13
    Beta(1)       0.0021933     0.00058327        3.7604       0.00016966
    Variance     4.8349e-05     4.1705e-06        11.593       4.4716e-31

Отображение всех оценок параметров с помощью info.X.

info.X
ans = 5×1

    0.0112
    0.7868
   -0.4736
    0.0022
    0.0000

Порядок оценок параметров в info.X соответствует порядку, estimate отображается в выходной таблице.

Совет

  • Для доступа к значениям результатов оценки, включая количество свободных параметров в модели, пройти EstMdl кому summarize.

Алгоритмы

estimate оценивает параметры следующим образом:

  1. Выведите безусловные возмущения из регрессионной модели.

  2. Выведите остатки модели ошибок ARIMA.

  3. Используйте распределение инноваций для построения функции правдоподобия.

  4. Максимизируйте функцию логики по отношению к параметрам с помощью fmincon.

Ссылки

[1] Бокс, Г. Э. П., Г. М. Дженкинс и Г. К. Рейнсель. Анализ временных рядов: прогнозирование и контроль. 3-й ред. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1994.

[2] Дэвидсон, Р. и Дж. Г. Маккиннон. Эконометрическая теория и методы. Оксфорд, Великобритания: Oxford University Press, 2004.

[3] Enders, W. Applied Econometric Time Series. Хобокен, Нью-Джерси: John Wiley & Sons, Inc., 1995.

[4] Гамильтон, Дж. Д. Анализ временных рядов. Принстон, Нью-Джерси: Princeton University Press, 1994.

[5] Панкрац, А. Прогнозирование с использованием динамических регрессионных моделей. John Wiley & Sons, Inc., 1991.

[6] Цай, Р. С. Анализ финансовых временных рядов. 2-й ред. Хобокен, Нью-Джерси: John Wiley & Sons, Inc., 2005.