Создайте переключающую Маркова модель динамической регрессии
msVAR
функция возвращает msVAR
объект, который задает функциональную форму переключающей Маркова модели динамической регрессии для одномерного или многомерного процесса ответа y t. msVAR
возразите также хранит значения параметров модели.
msVAR
объект имеет два ключевых компонента: переключающийся механизм среди состояний, представленных дискретной цепью Маркова (dtmc
объект; и подмодели состояния специфичные, или авторегрессивные (ARX) или векторные модели (VARX) авторегрессии (arima
или varm
объекты), который может содержать внешние компоненты регрессии. Компоненты полностью задают структуру модели. Матрица перехода Цепи Маркова и параметры подмодели, такие как коэффициенты AR и отклонение инновационного распределения, являются неизвестными и допускающими оценку, если вы не задаете их значения.
Чтобы оценить модель, содержащую неизвестные значения параметров, передайте модель и данные к estimate
. Работать с предполагаемым или полностью заданным msVAR
объект, передайте его объектной функции.
В качестве альтернативы, чтобы создать переключающую порог модель динамической регрессии, которой управляли переключающимся механизмом пороговые переходы и наблюдения за пороговой переменной, смотрите threshold
и tsVAR
.
опционально устанавливает свойство SeriesNames, которое сопоставляет имена Mdl
= msVAR(mc
,mdl
,'SeriesNames'
,seriesNames)seriesNames
к временным рядам модели.
mc
— Дискретная цепь Маркова для переключения механизма среди состоянийdtmc
объектmdl
— Подмодели динамической регрессии состояния специфичныеarima
объекты | вектор из varm
объектыПодмодели динамической регрессии состояния специфичные в виде длины mc.NumStates
вектор из объектов модели индивидуально создается arima
или varm
. Все подмодели должны иметь тот же тип (arima
или varm
) и имейте то же количество ряда.
В отличие от других инструментов оценки модели, estimate
не выводит размер массивов коэффициента регрессии подмодели во время оценки. Поэтому необходимо задать Beta
свойство каждой подмодели соответственно. Например, чтобы включать и оценить три предиктора компонента регрессии одномерной подмодели j
, установите mdl (
.j
). Бета = NaN (3,1)
msVAR
процессы и хранилища mdl
в свойстве Submodels.
Можно установить только SeriesNames
свойство, когда вы создаете модель при помощи синтаксиса аргумента значения имени или при помощи записи через точку. MATLAB® получает значения всех других свойств от входных параметров mc
и mdl
.
Например, создайте переключающую Маркова модель для 2D ряда ответа, и затем пометьте первую и вторую серию "GDP"
и "CPI"
, соответственно.
Mdl = msVAR(mc,mdl); Mdl.SeriesNames = ["GDP" "CPI"];
NumStates
— Количество состоянийЭто свойство доступно только для чтения.
Количество состояний в виде положительной скалярной величины.
Типы данных: double
NumSeries
— Количество временных рядовЭто свойство доступно только для чтения.
Количество временных рядов в виде положительного целого числа. NumSeries
задает размерность переменной отклика и инноваций во всех подмоделях.
Типы данных: double
StateNames
— Метки состоянияЭто свойство доступно только для чтения.
Метки состояния в виде вектора строки из длины NumStates
.
Типы данных: string
SeriesNames
— Серийные меткиstring(1:numSeries)
(значение по умолчанию) | представляет вектор в виде строки | массив ячеек из символьных векторов | числовой векторРяд помечает в виде вектора строки, массива ячеек из символьных векторов или числового вектора из длины numSeries
. msVAR
хранит серийные метки как вектор строки.
Типы данных: string
Switch
— Дискретная цепь Маркова для переключения механизма среди состоянийdtmc
объектЭто свойство доступно только для чтения.
Дискретная цепь Маркова для переключающегося механизма среди состояний в виде dtmc
объект.
Submodels
— Векторные подмодели авторегрессии состояния специфичныеvarm
объектыЭто свойство доступно только для чтения.
Векторные подмодели авторегрессии состояния специфичные в виде вектора из varm
объекты длины NumStates
.
msVAR
удаляет неподдерживаемые компоненты подмодели.
Для arima
подмодели, msVAR
не поддерживает скользящее среднее значение (MA), дифференцирование и сезонные компоненты. Если какая-либо подмодель является составным условным средним значением и моделью отклонения (например, ее Variance
свойством является garch
объект), msVAR
выдает ошибку.
Для varm
подмодели, msVAR
не поддерживает компонент тренда.
msVAR
преобразует подмодели, заданные как arima
объекты к 1D varm
объекты.
Примечания:
NaN
- ценные элементы в любом свойства Switch
или подмодели Submodels
укажите на неизвестные, допускающие оценку параметры. Указанные элементы, кроме инновационных отклонений подмодели, указывают на ограничения равенства на параметры по оценке модели.
Все неизвестные параметры подмодели являются зависимым состояния.
estimate | Подбирайте переключающую Маркова модель динамической регрессии к данным |
filter | Фильтрованный вывод действующих скрытых состояний в переключающих Маркова данных о динамической регрессии |
forecast | Предскажите демонстрационные пути из переключающей Маркова модели динамической регрессии |
simulate | Симулируйте демонстрационные пути переключающей Маркова модели динамической регрессии |
smooth | Сглаживавший вывод действующих скрытых состояний в переключающих Маркова данных о динамической регрессии |
summarize | Обобщите переключающие Маркова результаты оценки модели динамической регрессии |
Создайте переключающую Маркова модель динамической регрессии с двумя состояниями для 1D процесса ответа. Задайте все значения параметров (этот пример использует произвольные значения).
Создайте модель дискретной цепи Маркова с двумя состояниями, которая описывает механизм переключения режима. Пометьте режимы.
P = [0.9 0.1; 0.3 0.7]; mc = dtmc(P,'StateNames',["Expansion" "Recession"])
mc = dtmc with properties: P: [2x2 double] StateNames: ["Expansion" "Recession"] NumStates: 2
mc
dtmc
объект.
Для каждого режима используйте arima
создать модель AR, которая описывает процесс ответа в режиме.
% Constants C1 = 5; C2 = -5; % AR coefficients AR1 = [0.3 0.2]; % 2 lags AR2 = 0.1; % 1 lag % Innovations variances v1 = 2; v2 = 1; % AR Submodels mdl1 = arima('Constant',C1,'AR',AR1,... 'Variance',v1,'Description','Expansion State')
mdl1 = arima with properties: Description: "Expansion State" Distribution: Name = "Gaussian" P: 2 D: 0 Q: 0 Constant: 5 AR: {0.3 0.2} at lags [1 2] SAR: {} MA: {} SMA: {} Seasonality: 0 Beta: [1×0] Variance: 2 ARIMA(2,0,0) Model (Gaussian Distribution)
mdl2 = arima('Constant',C2,'AR',AR2,... 'Variance',v2,'Description','Recession State')
mdl2 = arima with properties: Description: "Recession State" Distribution: Name = "Gaussian" P: 1 D: 0 Q: 0 Constant: -5 AR: {0.1} at lag [1] SAR: {} MA: {} SMA: {} Seasonality: 0 Beta: [1×0] Variance: 1 ARIMA(1,0,0) Model (Gaussian Distribution)
mdl1
и mdl2
полностью заданный arima
объекты.
Сохраните подмодели в векторе с порядком, соответствующим режимам в mc.StateNames
.
mdl = [mdl1; mdl2];
Используйте msVAR
создать переключающую Маркова модель динамической регрессии из переключающегося механизма mc
и подмодели состояния специфичные mdl
.
Mdl = msVAR(mc,mdl)
Mdl = msVAR with properties: NumStates: 2 NumSeries: 1 StateNames: ["Expansion" "Recession"] SeriesNames: "1" Switch: [1x1 dtmc] Submodels: [2x1 varm]
Mdl.Submodels(1)
ans = varm with properties: Description: "AR-Stationary 1-Dimensional VAR(2) Model" SeriesNames: "Y1" NumSeries: 1 P: 2 Constant: 5 AR: {0.3 0.2} at lags [1 2] Trend: 0 Beta: [1×0 matrix] Covariance: 2
Mdl.Submodels(2)
ans = varm with properties: Description: "AR-Stationary 1-Dimensional VAR(1) Model" SeriesNames: "Y1" NumSeries: 1 P: 1 Constant: -5 AR: {0.1} at lag [1] Trend: 0 Beta: [1×0 matrix] Covariance: 1
Mdl
полностью заданный msVAR
объект, представляющий одномерную переключающую Маркова модель динамической регрессии с двумя состояниями. msVAR
хранилища задали arima
подмодели как varm
объекты.
Поскольку Mdl
полностью задан, можно передать его любому msVAR
возразите функции для последующего анализа (см. Функции объекта). Или, можно указать что параметры Mdl
начальные значения для процедуры оценки (см. estimate
).
Считайте переключающую Маркова модель динамической регрессии с двумя состояниями послевоенных США действительным темпом роста GDP. Модели представили оценки параметра в [1].
Создайте модель дискретной цепи Маркова, которая описывает механизм переключения режима. Пометьте режимы.
P = [0.92 0.08; 0.26 0.74]; mc = dtmc(P,'StateNames',["Expansion" "Recession"]);
mc
полностью заданный dtmc
объект.
Создайте отдельные модели AR (0) (постоянный только) для этих двух режимов.
sigma = 3.34; % Homoscedastic models across states mdl1 = arima('Constant',4.62,'Variance',sigma^2); mdl2 = arima('Constant',-0.48,'Variance',sigma^2); mdl = [mdl1 mdl2];
Создайте переключающую Маркова модель динамической регрессии, которая описывает поведение темпа роста GDP США.
Mdl = msVAR(mc,mdl)
Mdl = msVAR with properties: NumStates: 2 NumSeries: 1 StateNames: ["Expansion" "Recession"] SeriesNames: "1" Switch: [1x1 dtmc] Submodels: [2x1 varm]
Mdl
полностью заданный msVAR
объект.
Считайте подбор кривой к данным переключающей Маркова моделью с двумя состояниями для 1D процесса ответа.
Создайте модель дискретной цепи Маркова для переключающегося механизма. Задайте матрицу 2 на 2 NaN
значения для матрицы перехода. Эта установка указывает, что вы хотите оценить все вероятности перехода. Пометьте состояния.
P = NaN(2); mc = dtmc(P,'StateNames',["Expansion" "Recession"])
mc = dtmc with properties: P: [2x2 double] StateNames: ["Expansion" "Recession"] NumStates: 2
mc.P
ans = 2×2
NaN NaN
NaN NaN
mc
частично заданный dtmc
объект. Матрица перехода mc.P
является абсолютно неизвестным и допускающим оценку.
Создайте модели AR (1) и AR (2) при помощи краткого синтаксиса arima
. После того, как вы создаете каждую модель, задаете описание модели при помощи записи через точку.
mdl1 = arima(1,0,0);
mdl1.Description = "Expansion State"
mdl1 = arima with properties: Description: "Expansion State" Distribution: Name = "Gaussian" P: 1 D: 0 Q: 0 Constant: NaN AR: {NaN} at lag [1] SAR: {} MA: {} SMA: {} Seasonality: 0 Beta: [1×0] Variance: NaN ARIMA(1,0,0) Model (Gaussian Distribution)
mdl2 = arima(2,0,0);
mdl2.Description = "Recession State"
mdl2 = arima with properties: Description: "Recession State" Distribution: Name = "Gaussian" P: 2 D: 0 Q: 0 Constant: NaN AR: {NaN NaN} at lags [1 2] SAR: {} MA: {} SMA: {} Seasonality: 0 Beta: [1×0] Variance: NaN ARIMA(2,0,0) Model (Gaussian Distribution)
mdl1
и mdl2
частично заданный arima
объекты. NaN
- свойства, передаваемые по значению, соответствуют неизвестным, допускающим оценку параметрам.
Сохраните подмодели в векторе с порядком, соответствующим режимам в mc.StateNames
.
mdl = [mdl1; mdl2];
Создайте переключающий Маркова шаблон модели из переключающегося механизма mc
и подмодели состояния специфичные mdl
.
Mdl = msVAR(mc,mdl)
Mdl = msVAR with properties: NumStates: 2 NumSeries: 1 StateNames: ["Expansion" "Recession"] SeriesNames: "1" Switch: [1x1 dtmc] Submodels: [2x1 varm]
Mdl
частично заданный msVAR
объект, представляющий одномерную переключающую Маркова модель динамической регрессии с двумя состояниями.
Mdl.Submodels(1)
ans = varm with properties: Description: "1-Dimensional VAR(1) Model" SeriesNames: "Y1" NumSeries: 1 P: 1 Constant: NaN AR: {NaN} at lag [1] Trend: 0 Beta: [1×0 matrix] Covariance: NaN
Mdl.Submodels(2)
ans = varm with properties: Description: "1-Dimensional VAR(2) Model" SeriesNames: "Y1" NumSeries: 1 P: 2 Constant: NaN AR: {NaN NaN} at lags [1 2] Trend: 0 Beta: [1×0 matrix] Covariance: NaN
msVAR
преобразует arima
объектные подмодели к 1D varm
объектные эквиваленты.
Mdl
подготовлен к оценке. Можно передать Mdl
, наряду с данными и полностью заданной моделью, содержащей начальные значения для оптимизации, к estimate
.
Создайте переключающую Маркова модель динамической регрессии с тремя состояниями для 2D процесса ответа. Задайте все значения параметров (этот пример использует произвольные значения).
Создайте модель дискретной цепи Маркова с тремя состояниями, которая описывает механизм переключения режима.
P = [10 1 1; 1 10 1; 1 1 10]; mc = dtmc(P); mc.P
ans = 3×3
0.8333 0.0833 0.0833
0.0833 0.8333 0.0833
0.0833 0.0833 0.8333
mc
dtmc
объект. dtmc
нормирует P
так, чтобы каждая строка суммировала к 1.
Для каждого режима используйте varm
создать модель VAR, которая описывает процесс ответа в режиме. Задайте все значения параметров.
% Constants (numSeries x 1 vectors) C1 = [1;-1]; C2 = [2;-2]; C3 = [3;-3]; % Autoregression coefficients (numSeries x numSeries matrices) AR1 = {}; % 0 lags AR2 = {[0.5 0.1; 0.5 0.5]}; % 1 lag AR3 = {[0.25 0; 0 0] [0 0; 0.25 0]}; % 2 lags % Innovations covariances (numSeries x numSeries matrices) Sigma1 = [1 -0.1; -0.1 1]; Sigma2 = [2 -0.2; -0.2 2]; Sigma3 = [3 -0.3; -0.3 3]; % VAR Submodels mdl1 = varm('Constant',C1,'AR',AR1,'Covariance',Sigma1); mdl2 = varm('Constant',C2,'AR',AR2,'Covariance',Sigma2); mdl3 = varm('Constant',C3,'AR',AR3,'Covariance',Sigma3);
mdl1
, mdl2
, и mdl3
полностью заданный varm
объекты.
Сохраните подмодели в векторе с порядком, соответствующим режимам в mc.StateNames
.
mdl = [mdl1; mdl2; mdl3];
Используйте msVAR
создать переключающую Маркова модель динамической регрессии из переключающегося механизма mc
и подмодели состояния специфичные mdl
.
Mdl = msVAR(mc,mdl)
Mdl = msVAR with properties: NumStates: 3 NumSeries: 2 StateNames: ["1" "2" "3"] SeriesNames: ["1" "2"] Switch: [1x1 dtmc] Submodels: [3x1 varm]
Mdl.Submodels(1)
ans = varm with properties: Description: "2-Dimensional VAR(0) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 0 Constant: [1 -1]' AR: {} Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix]
Mdl.Submodels(2)
ans = varm with properties: Description: "AR-Stationary 2-Dimensional VAR(1) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 1 Constant: [2 -2]' AR: {2×2 matrix} at lag [1] Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix]
Mdl.Submodels(3)
ans = varm with properties: Description: "AR-Stationary 2-Dimensional VAR(2) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 2 Constant: [3 -3]' AR: {2×2 matrices} at lags [1 2] Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix]
Mdl
полностью заданный msVAR
объект, представляющий многомерную переключающую Маркова модель динамической регрессии с тремя состояниями.
Рассмотрите включая компоненты регрессии для внешних переменных в каждой подмодели переключающей Маркова модели динамической регрессии в, Создают Полностью Заданную Многомерную Модель.
Создайте модель дискретной цепи Маркова с тремя состояниями, которая описывает механизм переключения режима.
P = [10 1 1; 1 10 1; 1 1 10]; mc = dtmc(P);
Для каждого режима используйте varm
создать модель VARX, которая описывает процесс ответа в режиме. Задайте все значения параметров.
% Constants (numSeries x 1 vectors) C1 = [1;-1]; C2 = [2;-2]; C3 = [3;-3]; % Autoregression coefficients (numSeries x numSeries matrices) AR1 = {}; % 0 lags AR2 = {[0.5 0.1; 0.5 0.5]}; % 1 lag AR3 = {[0.25 0; 0 0] [0 0; 0.25 0]}; % 2 lags % Regression coefficients (numSeries x numRegressors matrices) Beta1 = [1;-1]; % 1 regressor Beta2 = [2 2;-2 -2]; % 2 regressors Beta3 = [3 3 3;-3 -3 -3]; % 3 regressors % Innovations covariances (numSeries x numSeries matrices) Sigma1 = [1 -0.1; -0.1 1]; Sigma2 = [2 -0.2; -0.2 2]; Sigma3 = [3 -0.3; -0.3 3]; % VARX Submodels mdl1 = varm('Constant',C1,'AR',AR1,'Beta',Beta1,... 'Covariance',Sigma1); mdl2 = varm('Constant',C2,'AR',AR2,'Beta',Beta2,... 'Covariance',Sigma2); mdl3 = varm('Constant',C3,'AR',AR3,'Beta',Beta3,... 'Covariance',Sigma3);
mdl1
, mdl2
, и mdl3
полностью заданный varm
объекты, представляющие заданные состоянием подмодели.
Сохраните подмодели в векторе с порядком, соответствующим режимам в mc.StateNames
.
mdl = [mdl1; mdl2; mdl3];
Используйте msVAR
создать переключающую Маркова модель динамической регрессии из переключающегося механизма mc
и подмодели состояния специфичные mdl
.
Mdl = msVAR(mc,mdl)
Mdl = msVAR with properties: NumStates: 3 NumSeries: 2 StateNames: ["1" "2" "3"] SeriesNames: ["1" "2"] Switch: [1x1 dtmc] Submodels: [3x1 varm]
Mdl.Submodels(1)
ans = varm with properties: Description: "2-Dimensional VARX(0) Model with 1 Predictor" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 0 Constant: [1 -1]' AR: {} Trend: [2×1 vector of zeros] Beta: [2×1 matrix] Covariance: [2×2 matrix]
Mdl.Submodels(2)
ans = varm with properties: Description: "AR-Stationary 2-Dimensional VARX(1) Model with 2 Predictors" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 1 Constant: [2 -2]' AR: {2×2 matrix} at lag [1] Trend: [2×1 vector of zeros] Beta: [2×2 matrix] Covariance: [2×2 matrix]
Mdl.Submodels(3)
ans = varm with properties: Description: "AR-Stationary 2-Dimensional VARX(2) Model with 3 Predictors" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 2 Constant: [3 -3]' AR: {2×2 matrices} at lags [1 2] Trend: [2×1 vector of zeros] Beta: [2×3 matrix] Covariance: [2×2 matrix]
Считайте подбор кривой к данным переключающей Маркова моделью с тремя состояниями для 2D процесса ответа.
Создайте модель дискретной цепи Маркова для переключающегося механизма. Задайте 3х3 матрицу NaN
значения для матрицы перехода. Эта установка указывает, что вы хотите оценить все вероятности перехода.
P = nan(3); mc = dtmc(P);
mc
частично заданный dtmc
объект. Матрица перехода mc.P
является абсолютно неизвестным и допускающим оценку.
Создайте 2D VAR (0), VAR (1), и модели VAR (2) при помощи краткого синтаксиса varm
. Сохраните модели в векторе.
mdl1 = varm(2,0); mdl2 = varm(2,1); mdl3 = varm(2,2); mdl = [mdl1 mdl2 mdl3]; mdl(1)
ans = varm with properties: Description: "2-Dimensional VAR(0) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 0 Constant: [2×1 vector of NaNs] AR: {} Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix of NaNs]
mdl
содержит varm
с тремя состояниями специфичный шаблоны модели для оценки.
NaN
значения в свойствах указывают на допускающие оценку параметры.
Создайте переключающий Маркова шаблон модели из переключающегося механизма mc
и подмодели состояния специфичные mdl
.
Mdl = msVAR(mc,mdl)
Mdl = msVAR with properties: NumStates: 3 NumSeries: 2 StateNames: ["1" "2" "3"] SeriesNames: ["1" "2"] Switch: [1x1 dtmc] Submodels: [3x1 varm]
Mdl.Submodels(1)
ans = varm with properties: Description: "2-Dimensional VAR(0) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 0 Constant: [2×1 vector of NaNs] AR: {} Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix of NaNs]
Mdl.Submodels(2)
ans = varm with properties: Description: "2-Dimensional VAR(1) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 1 Constant: [2×1 vector of NaNs] AR: {2×2 matrix of NaNs} at lag [1] Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix of NaNs]
Mdl.Submodels(3)
ans = varm with properties: Description: "2-Dimensional VAR(2) Model" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 2 Constant: [2×1 vector of NaNs] AR: {2×2 matrices of NaNs} at lags [1 2] Trend: [2×1 vector of zeros] Beta: [2×0 matrix] Covariance: [2×2 matrix of NaNs]
Mdl
частично заданный msVAR
модель для оценки.
Рассмотрите включая компоненты регрессии для внешних переменных в подмоделях переключающей Маркова модели динамической регрессии в, Создают Частично Заданную Многомерную Модель для Оценки. Примите, что модель VAR (0) включает регрессор , модель VAR (1) включает регрессоры и , и модель VAR (2) включает регрессоры , , и .
Создайте дискретную цепь Маркова.
P = nan(3); mc = dtmc(P);
Создайте 2D VARX (0), VARX (1), и модели VARX(2) при помощи краткого синтаксиса varm
. Для каждой модели, набор Beta
свойство к numSeries
- numRegressors
матрица NaN
значения при помощи записи через точку. Сохраните все модели в векторе.
numSeries = 2; mdl1 = varm(numSeries,0); mdl1.Beta = NaN(numSeries,1); mdl2 = varm(numSeries,1); mdl2.Beta = NaN(numSeries,2); mdl3 = varm(numSeries,2); mdl3.Beta = nan(numSeries,3); mdl = [mdl1; mdl2; mdl3];
Создайте переключающую Маркова модель динамической регрессии из переключающегося механизма mc
и подмодели состояния специфичные mdl
.
Mdl = msVAR(mc,mdl); Mdl.Submodels(2)
ans = varm with properties: Description: "2-Dimensional VARX(1) Model with 2 Predictors" SeriesNames: "Y1" "Y2" NumSeries: 2 P: 1 Constant: [2×1 vector of NaNs] AR: {2×2 matrix of NaNs} at lag [1] Trend: [2×1 vector of zeros] Beta: [2×2 matrix of NaNs] Covariance: [2×2 matrix of NaNs]
Полагайте, что модель в Создает Частично Заданную Многомерную Модель для Оценки. Предположим, что теория диктует, что состояния не сохраняются.
Создайте модель дискретной цепи Маркова для переключающегося механизма. Задайте 3х3 матрицу NaN
значения для матрицы перехода. Укажите, что состояния не сохраняются путем установки диагональных элементов матрицы к 0
.
P = nan(3); P(logical(eye(3))) = 0; mc = dtmc(P);
mc
частично заданный dtmc
объект.
Создайте подмодели и сохраните их в векторе.
mdl1 = varm(2,0); mdl2 = varm(2,1); mdl3 = varm(2,2); submdl = [mdl1; mdl2; mdl3];
Создайте переключающую Маркова модель динамической регрессии из переключающегося механизма mc
и подмодели состояния специфичные mdl
.
Mdl = msVAR(mc,submdl); Mdl.Switch.P
ans = 3×3
0 NaN NaN
NaN 0 NaN
NaN NaN 0
estimate
обрабатывает известные диагональные элементы матрицы перехода как ограничения равенства во время оценки. Для получения дополнительной информации смотрите estimate
.
Markov-switching dynamic regression model одномерной или многомерной серии yt ответа описывает динамическое поведение ряда в присутствии структурных пропусков или смен режима. Набор подмоделей динамической регрессии состояния специфичных описывает динамическое поведение yt в режимах.
где:
st является дискретной цепью Маркова, представляющей переключающийся механизм среди режимов (Switch
).
n является количеством режимов (NumStates
).
режим модель динамической регрессии i yt (Submodels
i. Подмодели являются или одномерными (ARX) или многомерными (VARX).
xt является вектором из наблюдаемых внешних переменных во время t.
θi является режимом набор i параметров модели динамической регрессии, таких как коэффициенты AR и инновационные отклонения.
Гамильтон [2] предлагает общую модель, известную как переключающую Маркова авторегрессию (MSAR), допуская изолированные значения переключающегося s состояния. Гамильтон [3] показывает, как преобразовать модель MSAR в модель динамической регрессии с более многомерным пространством состояний, поддержанным msVAR
.
[1] Chauvet, M. и Дж. Д. Гамильтон. "Датируя Поворотные моменты Делового цикла". В Нелинейном Анализе Деловых циклов (Вклады в Экономический анализ, Объем 276). C. Милас, П. Ротмен, и Д. ван Дейк, редакторы). Амстердам: Emerald Group Publishing Limited, 2006.
[2] Гамильтон, J. D. "Новый Подход к Экономическому анализу Неустановившихся Временных рядов и Делового цикла". Econometrica. Издание 57, 1989, стр 357–384.
[3] Гамильтон, J. D. "Анализ Временных рядов Согласно Изменениям в Режиме". Журнал Эконометрики. Издание 45, 1990, стр 39–70.
[4] Гамильтон, анализ временных рядов Джеймса Д. Принстон, NJ: Издательство Принстонского университета, 1994.
[5] Krolzig, H.-M. Переключающие Маркова векторные авторегрессии. Берлин: Спрингер, 1997.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.