Модель авторегрессии байесовского вектора (VAR) с образцами из предшествующего или заднего распределения
Объект модели Bayesian VAR empiricalbvarm содержит выборки из распределений коэффициентов Λ и новшеств ковариационной матрицы Λ модели VAR (p), которую MATLAB ® использует для характеристики соответствующих предшествующих или задних распределений.
Для байесовских объектов модели VAR, которые имеют неразрешимый задний, estimate функция возвращает empiricalbvarm объект, представляющий эмпирическое апостериорное распределение. Однако, если у вас есть случайные розыгрыши из предыдущих или задних распределений ковариационной матрицы коэффициентов и инноваций, вы можете создать байесовскую модель VAR с эмпирическим предшествующим непосредственно с помощью empiricalbvarm.
создает Mdl = empiricalbvarm(numseries,numlags,'CoeffDraws',CoeffDraws,'SigmaDraws',SigmaDraws)numseries-D Байесовский VAR (numlags) объект модели Mdl характеризуется случайными выборками из предшествующих или задних распределений Φ1Φ2⋯ΦpcδΒ] ′) и Λ,CoeffDraws и SigmaDrawsсоответственно.
numseries = m, положительное целое число, указывающее число переменных временного ряда ответа.
numlags = p, неотрицательное целое число, указывающее порядок многочленов AR (то есть число numseriesоколо-numseries матрицы коэффициентов AR в модели VAR).
задает свойства, доступные для записи (кроме Mdl = empiricalbvarm(numseries,numlags,'CoeffDraws',CoeffDraws,'SigmaDraws',SigmaDraws,Name,Value)NumSeries и P) с использованием аргументов пары имя-значение. Заключите каждое имя свойства в кавычки. Например, empiricalbvarm(3,2,'CoeffDraws',CoeffDraws,'SigmaDraws',SigmaDraws,'SeriesNames',["UnemploymentRate" "CPI" "FEDFUNDS"]) задает случайные выборки из распределений λ и Λ и имена трех переменных ответа.
Потому что задние распределения полунъюгатной предшествующей модели (semiconjugatebvarm) являются аналитически неразрешимыми, estimate возвращает empiricalbvarm объект, характеризующий апостериоры и содержащий выборщик Гиббса, извлекает из полных условий.
numseries - Количество временных рядов m1 (по умолчанию) | положительное целое числоЧисло временных рядов m, указанное как положительное целое число. numseries определяет размерность переменной многомерного ответа yt и innovation αt.
numseries устанавливает NumSeries собственность.
Типы данных: double
numlags - Количество отложенных ответовКоличество запаздывающих ответов в каждом уравнении yt, указанное как неотрицательное целое число. Полученная модель является VAR (numlags) модель; каждое отставание имеет numseriesоколо-numseries матрица коэффициентов.
numlags устанавливает P собственность.
Типы данных: double
Значения свойств, доступные для записи, можно задать при создании объекта модели с помощью синтаксиса аргумента пара имя-значение или после создания объекта модели с помощью точечной нотации. Например, чтобы создать 3D модель Bayesian VAR (1) из коэффициента и инновационных множеств ковариации ничьихCoeffDraws и SigmaDraws, соответственно, а затем пометить переменные ответа, введите:
Mdl = empiricalbvarm(3,1,'CoeffDraws',CoeffDraws,'SigmaDraws',SigmaDraws); Mdl.SeriesNames = ["UnemploymentRate" "CPI" "FEDFUNDS"];
CoeffDraws - Случайная выборка из предыдущего или заднего распределения λСлучайная выборка из предыдущего или заднего распределения λ, указанного как NumSeries*около-knumdraws числовая матрица, где (количество коэффициентов в уравнении отклика). k = NumSeries*P + IncludeIntercept + IncludeTrend + NumPredictorsCoeffDraws представляет эмпирическое распределение λ на основе размера numdraws образец.
Столбцы соответствуют последовательным розыгрышам из распределения. CoeffDraws(1: соответствует всем коэффициентам в уравнении переменной отклика k,:)SeriesNames(1), CoeffDraws(( соответствует всем коэффициентам в уравнении переменной отклика k + 1):(2*k),:)SeriesNames(2)и так далее. Для набора индексов строк, соответствующих уравнению:
Элементы 1 через NumSeries соответствуют коэффициентам AR с запаздыванием 1 для переменных ответа, упорядоченных по SeriesNames.
Элементы NumSeries + 1 через 2*NumSeries соответствуют коэффициентам AR с запаздыванием 2 для переменных ответа, упорядоченных по SeriesNames.
В общем, элементы ( через q – 1)*NumSeries + 1 соответствуют запаздыванию q*NumSeries Коэффициенты AR переменных ответа упорядочены по qSeriesNames.
Если IncludeConstant является true, элемент NumSeries*P + 1 - константа модели.
Если IncludeTrend является true, элемент NumSeries*P + 2 - коэффициент линейного временного тренда.
Если NumPredictors > 0, элементы NumSeries*P + 3 через составляют вектор коэффициентов регрессии экзогенных переменных.k
На этом рисунке показана структура строк CoeffDraws для модели 2-D VAR (3), которая содержит постоянный вектор и четыре экзогенных предиктора:
где
β q, jk - элемент (j, k) матрицы коэффициентов lag q AR.
cj - константа модели в уравнении переменной отклика j.
Bju - коэффициент регрессии экзогенной переменной u в уравнении переменной ответа j.
CoeffDraws и SigmaDraws должен быть основан на одинаковом количестве розыгрышей, и оба должны представлять розыгрыши из предыдущего или заднего распределения.
numdraws должен быть достаточно большим, например, 1e6.
Типы данных: double
SigmaDraws - Случайная выборка из предшествующего или заднего распределенияСлучайная выборка из предшествующего или заднего распределения NumSeriesоколо-NumSeriesоколо-numdraws массив положительных определенных числовых матриц. SigmaDraws представляет эмпирическое распределение Λ на основе размера numdraws образец.
Строки и столбцы соответствуют нововведениям в уравнениях переменных ответа, упорядоченных по SeriesNames. Столбцы соответствуют последовательным розыгрышам из распределения.
CoeffDraws и SigmaDraws должен быть основан на одинаковом количестве розыгрышей, и оба должны представлять розыгрыши из предыдущего или заднего распределения.
numdraws должен быть достаточно большим, например, 1e6.
Типы данных: double
Description - Описание моделиОписание модели, указанное как строковый скалярный или символьный вектор. Значение по умолчанию описывает размерность модели, например '2-Dimensional VAR(3) Model'.
Пример: "Model 1"
Типы данных: string | char
NumSeries - Количество временных рядов mЭто свойство доступно только для чтения.
Число временных рядов m, указанное как положительное целое число. NumSeries определяет размерность переменной многомерного ответа yt и innovation αt.
Типы данных: double
P - Многомерный авторегрессивный полиномиальный порядокЭто свойство доступно только для чтения.
Многомерный авторегрессивный полиномиальный порядок, заданный как неотрицательное целое число. P - максимальное отставание, имеющее ненулевую матрицу коэффициентов.
P указывает количество предварительных наблюдений, необходимых для инициализации модели.
Типы данных: double
SeriesNames - Имена серий ответовИмена серий ответов, указанные как NumSeries вектор строки длины. Значение по умолчанию: ['Y1' 'Y2' ... 'Y. NumSeries']empiricalbvarm магазины SeriesNames в виде строкового вектора.
Пример: ["UnemploymentRate" "CPI" "FEDFUNDS"]
Типы данных: string
IncludeConstant - Флаг для включения константы модели ctrue (по умолчанию) | falseФлаг для включения константы модели c, указанной как значение в этой таблице.
| Стоимость | Описание |
|---|---|
false | Уравнения отклика не включают константу модели. |
true | Все уравнения отклика содержат константу модели. |
Типы данных: logical
IncludeTrend - Флаг для включения термина линейного временного тренда δtfalse (по умолчанию) | trueФлаг для включения члена линейного временного тренда δt, указанного в качестве значения в этой таблице.
| Стоимость | Описание |
|---|---|
false | Уравнения отклика не включают член линейного временного тренда. |
true | Все уравнения отклика содержат член линейного временного тренда. |
Типы данных: logical
NumPredictors - Количество экзогенных переменных предиктора в компоненте регрессии модели0 (по умолчанию) | неотрицательное целое числоЧисло экзогенных переменных предиктора в компоненте регрессии модели, указанное как неотрицательное целое число. empiricalbvarm включает все переменные предиктора симметрично в каждое уравнение ответа.
AR - Среднее распределение матриц авторегрессивных коэффициентов Φ1,...,ΦpЭто свойство доступно только для чтения.
Среднее распределение матриц авторегрессионных коэффициентов Φ1,...,Φp связанных с запаздывающими откликами, указанное как P-D клеточный вектор NumSeriesоколо-NumSeries числовые матрицы.
AR{ является Startj}j, матрица коэффициентов запаздывания j . Строки соответствуют уравнениям, а столбцы - переменным с запаздыванием ответа; SeriesNames определяет порядок переменных ответа и уравнений. Знаки коэффициентов - это знаки модели VAR, выраженные в нотации «разность-уравнение».
Если P = 0, AR является пустой ячейкой. В противном случае AR - совокупность значений коэффициента AR, извлеченных из Mu.
Типы данных: cell
Constant - Среднее распределение константы модели cЭто свойство доступно только для чтения.
Среднее значение распределения константы модели c (или перехвата), указанное как NumSeries-по-1 числовой вектор. Constant( - константа в уравнении j)j; SeriesNames определяет порядок уравнений.
Если IncludeConstant = false, Constant является пустым массивом. В противном случае Constant - среднее значение постоянного вектора модели, извлеченное из Mu.
Типы данных: double
Trend - Среднее распределение линейного временного тренда δЭто свойство доступно только для чтения.
Среднее распределение линейного временного тренда δ, указанного как NumSeries-по-1 числовой вектор. Trend( - линейный временной тренд в уравнении j)j; SeriesNames определяет порядок уравнений.
Если IncludeTrend = false (по умолчанию), Trend является пустым массивом. В противном случае Trend - среднее значение коэффициента тренда линейного времени, извлеченное из Mu.
Типы данных: double
Beta - Среднее распределение матрицы коэффициентов регрессии ΒЭто свойство доступно только для чтения.
Среднее распределение матрицы коэффициентов регрессии B, связанной с переменными экзогенного предиктора, указанное как NumSeriesоколо-NumPredictors числовая матрица.
Beta( содержит коэффициенты регрессии каждого предиктора в уравнении переменной отклика j
yj,:)j, т .Beta(:, содержит коэффициент регрессии в каждом уравнении предсказателя xk. По умолчанию все переменные предиктора находятся в регрессионной составляющей всех уравнений ответа. Можно уменьшить вес предиктора из уравнения, указав для соответствующего коэффициента предыдущее среднее значение 0 в k)Mu и небольшая разница в V.
При создании модели переменные предиктора являются гипотетическими. Данные предиктора задаются при работе с моделью (например, при оценке задних значений с помощью estimate). Столбцы данных предиктора определяют порядок столбцов Beta.
Типы данных: double
Covariance - Среднее распределение новшеств ковариационной матрицыЭто свойство доступно только для чтения.
Среднее распределение новшеств ковариационной матрицы NumSeries нововведения в каждый момент времени t = 1,...,T, указанные как NumSeriesоколо-NumSeries положительная определенная числовая матрица. Строки и столбцы соответствуют нововведениям в уравнениях переменных ответа, упорядоченных по SeriesNames.
Типы данных: double
summarize | Сводная статистика распределения байесовской векторной модели авторегрессии (VAR) |
Рассмотрим модель 3-D VAR (4) для инфляции в США (INFL), безработица (UNRATE) и федеральные средства (FEDFUNDS) ставки.
Для всех - это ряд независимых 3-D нормальных нововведений со средним значением 0 и ковариацией .
Можно создать эмпирическую байесовскую модель VAR для коэффициентов ] ′ и новшеств ковариантной матрицы (,) по двум путям:
Косвенно создать empiricalbvarm модель путем оценки заднего распределения предшествующей модели полуконъюгата.
Непосредственно создать empiricalbvarm модель путем подачи вытяжек из предшествующего или заднего распределения параметров.
Непрямое создание
Предположим следующие предыдущие распределения:
(λ, V), где λ - вектор средства «39 на 1», а V - ковариационная матрица «39 на 39».
start), Λ - матрица шкалы 3 на 3, а start- степени свободы.
Создайте предшествующую модель в полуконъюгате для параметров модели 3-D VAR (4).
numseries = 3; numlags = 4; PriorMdl = semiconjugatebvarm(numseries,numlags)
PriorMdl =
semiconjugatebvarm with properties:
Description: "3-Dimensional VAR(4) Model"
NumSeries: 3
P: 4
SeriesNames: ["Y1" "Y2" "Y3"]
IncludeConstant: 1
IncludeTrend: 0
NumPredictors: 0
Mu: [39x1 double]
V: [39x39 double]
Omega: [3x3 double]
DoF: 13
AR: {[3x3 double] [3x3 double] [3x3 double] [3x3 double]}
Constant: [3x1 double]
Trend: [3x0 double]
Beta: [3x0 double]
Covariance: [3x3 double]
PriorMdl является semiconjugatebvarm Объект байесовской модели VAR, представляющий предшествующее распределение коэффициентов и новшеств ковариации модели 3-D VAR (4 ).
Загрузить набор макроэкономических данных США. Вычислите уровень инфляции. Постройте график всех серий ответов.
load Data_USEconModel seriesnames = ["INFL" "UNRATE" "FEDFUNDS"]; DataTable.INFL = 100*[NaN; price2ret(DataTable.CPIAUCSL)]; figure plot(DataTable.Time,DataTable{:,seriesnames}) legend(seriesnames)

Стабилизировать ставки по безработице и федеральным фондам, применяя первую разницу к каждой серии.
DataTable.DUNRATE = [NaN; diff(DataTable.UNRATE)];
DataTable.DFEDFUNDS = [NaN; diff(DataTable.FEDFUNDS)];
seriesnames(2:3) = "D" + seriesnames(2:3);Удалите все отсутствующие значения из данных.
rmDataTable = rmmissing(DataTable);
Оцените апостериорное распределение, передав предыдущую модель и весь ряд данных в estimate.
rng(1); % For reproducibility PosteriorMdl = estimate(PriorMdl,rmDataTable{:,seriesnames},'Display','off')
PosteriorMdl =
empiricalbvarm with properties:
Description: "3-Dimensional VAR(4) Model"
NumSeries: 3
P: 4
SeriesNames: ["Y1" "Y2" "Y3"]
IncludeConstant: 1
IncludeTrend: 0
NumPredictors: 0
CoeffDraws: [39x10000 double]
SigmaDraws: [3x3x10000 double]
AR: {[3x3 double] [3x3 double] [3x3 double] [3x3 double]}
Constant: [3x1 double]
Trend: [3x0 double]
Beta: [3x0 double]
Covariance: [3x3 double]
PosteriorMdl является empiricalbvarm модель, представляющая эмпирическое апостериорное распределение коэффициентов и новшеств ковариационной матрицы. empiricalbvarm сохраняет отрисовки из апостериоров и Λ в CoeffDraws и SigmaDraws соответственно.
Прямое создание
Нарисуйте случайную выборку размера 1000 из предыдущего распределения PriorMdl.
numdraws = 1000;
[CoeffDraws,SigmaDraws] = simulate(PriorMdl,'NumDraws',numdraws);
size(CoeffDraws)ans = 1×2
39 1000
size(SigmaDraws)
ans = 1×3
3 3 1000
Создайте байесовскую модель VAR, характеризующую эмпирические предыдущие распределения параметров.
PriorMdlEmp = empiricalbvarm(numseries,numlags,'CoeffDraws',CoeffDraws,... 'SigmaDraws',SigmaDraws)
PriorMdlEmp =
empiricalbvarm with properties:
Description: "3-Dimensional VAR(4) Model"
NumSeries: 3
P: 4
SeriesNames: ["Y1" "Y2" "Y3"]
IncludeConstant: 1
IncludeTrend: 0
NumPredictors: 0
CoeffDraws: [39x1000 double]
SigmaDraws: [3x3x1000 double]
AR: {[3x3 double] [3x3 double] [3x3 double] [3x3 double]}
Constant: [3x1 double]
Trend: [3x0 double]
Beta: [3x0 double]
Covariance: [3x3 double]
Отображение предыдущих ковариационных средних матриц четырех коэффициентов AR путем установки переменной для каждой матрицы в ячейке.
AR1 = PriorMdlEmp.AR{1}AR1 = 3×3
-0.0198 0.0181 -0.0273
-0.0207 -0.0301 -0.0070
-0.0009 0.0638 0.0113
AR2 = PriorMdlEmp.AR{2}AR2 = 3×3
-0.0453 0.0371 0.0110
-0.0103 -0.0304 -0.0011
0.0277 -0.0253 0.0061
AR3 = PriorMdlEmp.AR{3}AR3 = 3×3
0.0368 -0.0059 0.0018
-0.0306 -0.0106 0.0179
-0.0314 -0.0276 0.0116
AR4 = PriorMdlEmp.AR{4}AR4 = 3×3
0.0159 0.0406 -0.0315
-0.0178 0.0415 -0.0024
0.0476 -0.0128 -0.0165
Байесовская модель VAR рассматривает все коэффициенты и инновационную ковариационную матрицу как случайные величины в m-мерной стационарной модели VARX (p). Модель имеет одну из трех форм, описанных в этой таблице.
| Модель | Уравнение |
|---|---|
| VAR (p) редуцированной формы в нотации разностного уравнения |
+ δt + Βxt + αt. |
| Многомерная регрессия |
αt. |
| Регрессия матрицы |
|
Для каждого времени t = 1,...,T:
yt - m-мерный наблюдаемый вектор отклика, где m = numseries.
Φ1,...,Φp - матрицы коэффициентов m-by-m AR лагов 1-p, где p =numlags.
c - вектор m-by-1 констант модели, если IncludeConstant является true.
δ - вектор m-на-1 коэффициентов линейного тренда времени, если IncludeTrend является true.
Β - матрица коэффициентов регрессии вектора r-by-1 наблюдаемых экзогенных предикторов xt, где r = NumPredictors. Все переменные предиктора появляются в каждом уравнении.
, который является вектором 1-by- (mp + r + 2), а Zt является диагональной матрицей m-by-m (mp + r + 2)
где 0z - 1-по- (мп + r + 2) вектор нулей.
′, которая является случайной матрицей коэффициентов (mp + r + 2) -by-m, а m (mp + r + 2) -by-1 вектором λ = vec (Λ).
δ t - вектор m-на-1 случайных, последовательно некоррелированных, многомерных нормальных нововведений с нулевым вектором для среднего и матрицей m-на-м для ковариации. Это предположение подразумевает, что вероятность данных
zt),
где f - m-мерная многовариантная нормальная плотность со средним значением ztΛ и ковариацией
Прежде, чем рассмотреть данные, Вы налагаете совместное предшествующее предположение распределения на (Λ,Σ), которым управляет распределение π (Λ,Σ). В байесовском анализе распределение параметров обновляется информацией о параметрах, полученных из правдоподобия данных. В результате получается совместное заднее распределение λ (Λ, Λ 'Y, X, Y0), где:
Y представляет собой матрицу T-на-m, содержащую весь ответный ряд {yt}, t = 1,...,T.
X представляет собой матрицу T-на-m, содержащую весь экзогенный ряд {xt}, t = 1,...,T.
Y0 является p-by-m матрицей предварительных данных, используемых для инициализации модели VAR для оценки.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.