estimate

Класс: 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 парные аргументы.

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

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

Модель Regression с ошибками ARIMA, заданными как regARIMA модель возвращена regARIMA или estimate.

estimate обработки non-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 в Optimization 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), затем использует мудрое списком удаление, чтобы удалить любой NaNs. Удаление 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 в Optimization Toolbox)
optionsКонтроллер опций оптимизации (см. optimoptions и fmincon в Optimization Toolbox)
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) регрессии. Симулируйте ответы из модели и двух рядов предиктора.

Mdl = 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(Mdl,100,'X',X);

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

ToEstMdl = regARIMA(2,0,1);
ToEstMdl.Intercept = 0 % Exclude the intercept
ToEstMdl = 
  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(ToEstMdl,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) ошибки путем регрессирования логарифмического GDP на CPI и использования начальных значений.

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

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) ошибки.

ToEstMdl = regARIMA(1,0,1);

Подбирайте модель к первой половине данных.

EstMdl0 = estimate(ToEstMdl,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(ToEstMdl,...
   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.376e-104
    MA{1}          -0.47362        0.06554       -7.2264      4.9601e-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] Поле, G. E. P. Г. М. Дженкинс и Г. К. Рейнсель. Анализ Временных Рядов: Прогнозирование и Управление. 3-й редактор Englewood Cliffs, NJ: Prentice Hall, 1994.

[2] Дэвидсон, R. и Дж. Г. Маккиннон. Эконометрическая теория и методы. Оксфорд, Великобритания: Издательство Оксфордского университета, 2004.

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

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

[5] Pankratz, A. Прогнозирование с моделями динамической регрессии. John Wiley & Sons, Inc., 1991.

[6] Tsay, R. S. Анализ Финансовых Временных рядов. 2-й редактор Хобокен, NJ: John Wiley & Sons, Inc., 2005.

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