Байесова векторная модель (VAR) авторегрессии с выборками от предшествующего или апостериорного распределения
Байесов объект модели VAR empiricalbvarm
содержит выборки от распределений коэффициентов Λ и инновационная ковариационная матрица Σ модели VAR (p), который использование MATLAB® охарактеризовать соответствующие предшествующие или апостериорные распределения.
Для Байесовых объектов модели VAR, которые имеют тяжелое следующее, estimate
функция возвращает empiricalbvarm
объект, представляющий эмпирическое апостериорное распределение. Однако, если у вас есть случайные ничьи от предшествующих или апостериорных распределений содействующей и инновационной ковариационной матрицы, можно создать модель Bayesian VAR с эмпирическим предшествующим непосредственно при помощи empiricalbvarm
.
создает Mdl
= empiricalbvarm(numseries
,numlags
,'CoeffDraws',CoeffDraws
,'SigmaDraws',SigmaDraws
)numseries
- D байесов VAR (numlags
) объект модели Mdl
охарактеризованный случайными выборками от предшествующих или апостериорных распределений и Σ, 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
— Количество временных рядов m
(значение по умолчанию) | положительное целое числоКоличество временных рядов m в виде положительного целого числа. numseries
задает размерность многомерной переменной отклика yt и инновации εt.
numseries
устанавливает NumSeries
свойство.
Типы данных: double
numlags
— Количество изолированных ответовКоличество изолированных ответов в каждом уравнении y t в виде неотрицательного целого числа. Получившаяся модель является VAR (numlags
) модель; каждая задержка имеет numseries
- numseries
матрица коэффициентов.
numlags
устанавливает P
свойство.
Типы данных: double
Можно установить перезаписываемые значения свойств, когда вы создаете объект модели при помощи синтаксиса аргумента пары "имя-значение", или после того, как вы создаете объект модели при помощи записи через точку. Например, чтобы создать 3-D модель Bayesian VAR (1) из коэффициента и инновационных массивов ковариации ничьих CoeffDraws
и SigmaDraws
, соответственно, и затем пометьте переменные отклика, введите:
Mdl = empiricalbvarm(3,1,'CoeffDraws',CoeffDraws,'SigmaDraws',SigmaDraws); Mdl.SeriesNames = ["UnemploymentRate" "CPI" "FEDFUNDS"];
CoeffDraws
— Случайная выборка от предшествующего или апостериорного распределения λСлучайная выборка от предшествующего или апостериорного распределения λ в виде NumSeries*
- k
numdraws
числовая матрица, где
(количество коэффициентов в уравнении ответа). k
= NumSeries*P + IncludeIntercept + IncludeTrend + NumPredictorsCoeffDraws
представляет эмпирическое распределение λ на основе размера numdraws
выборка.
Столбцы соответствуют последовательным ничьим от распределения. CoeffDraws (1:
соответствует всем коэффициентам в уравнении переменной отклика k
,:)SeriesNames(1)
, CoeffDraws ((
соответствует всем коэффициентам в уравнении переменной отклика k
+ 1): (2*k
),:)SeriesNames(2)
, и так далее. Для набора индексов строки, соответствующих уравнению:
Элементы 1
через NumSeries
соответствуйте задержке 1 коэффициент AR переменных отклика, упорядоченных SeriesNames
.
Элементы NumSeries + 1
через 2*NumSeries
соответствуйте задержке 2 коэффициента AR переменных отклика, упорядоченных SeriesNames
.
В общем случае элементы (
через q
– 1) *NumSeries + 1
соответствуйте задержке q
*NumSeries
Коэффициенты AR переменных отклика упорядочены q
SeriesNames
.
Если IncludeConstant
true
, элемент NumSeries*P + 1
константа модели.
Если IncludeTrend
true
, элемент NumSeries*P + 2
линейный коэффициент тренда времени.
Если NumPredictors
> 0, элементы NumSeries*P + 3
через
составьте вектор из коэффициентов регрессии внешних переменных.k
Этот рисунок показывает структуру строки CoeffDraws
для 2D модели VAR (3), которая содержит постоянный вектор и четыре внешних предиктора:
где
ϕ q, jk является элементом (j, k) задержки матрица коэффициентов AR q.
c j является константой модели в уравнении переменной отклика j.
B j u является коэффициентом регрессии внешней переменной 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 и инновации εt.
Типы данных: double
P
— Многомерный авторегрессивный полиномиальный порядокЭто свойство доступно только для чтения.
Многомерный авторегрессивный полиномиальный порядок в виде неотрицательного целого числа. P
максимальная задержка, которая имеет ненулевую матрицу коэффициентов.
P
задает количество преддемонстрационных наблюдений, требуемых инициализировать модель.
Типы данных: double
SeriesNames
— Серийные имена ответаРяд ответа называет в виде NumSeries
вектор строки длины. Значением по умолчанию является ['Y1' 'Y2'... 'Y
. NumSeries
']empiricalbvarm
хранилища SeriesNames
как вектор строки.
Пример: ["UnemploymentRate" "CPI" "FEDFUNDS"]
Типы данных: string
IncludeConstant
— Отметьте для включения постоянного c моделиtrue
(значение по умолчанию) | false
Отметьте для включения постоянного c модели в виде значения в этой таблице.
Значение | Описание |
---|---|
false | Уравнения ответа не включают константу модели. |
true | Все уравнения ответа содержат константу модели. |
Типы данных: логический
IncludeTrend
— Отметьте для включения линейного термина тренда времени δtfalse
(значение по умолчанию) | true
Отметьте для включения линейного термина тренда времени δt в виде значения в этой таблице.
Значение | Описание |
---|---|
false | Уравнения ответа не включают линейный термин тренда времени. |
true | Все уравнения ответа содержат линейный термин тренда времени. |
Типы данных: логический
NumPredictors
— Количество внешних переменных предикторов в компоненте регрессии модели
(значение по умолчанию) | неотрицательное целое числоКоличество внешних переменных предикторов в компоненте регрессии модели в виде неотрицательного целого числа. empiricalbvarm
включает все переменные предикторы симметрично в каждое уравнение ответа.
AR
— Среднее значение распределения авторегрессивных содействующих матриц Φ1, …, ΦpЭто свойство доступно только для чтения.
Среднее значение распределения авторегрессивных содействующих матриц Φ1, …, Φp сопоставленный с изолированными ответами в виде P
- Вектор ячейки D из NumSeries
- NumSeries
числовые матрицы.
AR {
Φj
}j
, матрица коэффициентов задержки j
. Строки соответствуют уравнениям, и столбцы соответствуют изолированным переменным отклика; SeriesNames
определяет порядок переменных отклика и уравнений. Содействующие знаки являются теми из модели VAR, описанной в обозначении разностного уравнения.
Если P
= 0, AR
пустая ячейка. В противном случае, AR
набор содействующих средних значений AR, извлеченных из Mu
.
Типы данных: cell
Constant
— Среднее значение распределения постоянного c моделиЭто свойство доступно только для чтения.
Среднее значение распределения постоянного c модели (или прерывание) в виде NumSeries
- 1 числовой вектор. Постоянный (
константа в уравнении j
)j
; SeriesNames
определяет порядок уравнений.
Если IncludeConstant
= false
, Constant
пустой массив. В противном случае, Constant
постоянное векторное среднее значение модели, извлеченное из Mu
.
Типы данных: double
Trend
— Среднее значение распределения линейного тренда времени δЭто свойство доступно только для чтения.
Среднее значение распределения линейного тренда времени δ в виде NumSeries
- 1 числовой вектор. Тренд (
линейный тренд времени в уравнении j
)j
; SeriesNames
определяет порядок уравнений.
Если IncludeTrend
= false
(значение по умолчанию), Trend
пустой массив. В противном случае, Trend
линейное содействующее среднее значение тренда времени, извлеченное из Mu
.
Типы данных: double
Beta
— Среднее значение распределения матрицы коэффициента регрессии ΒЭто свойство доступно только для чтения.
Среднее значение распределения матрицы B коэффициента регрессии сопоставлено с внешними переменными предикторами в виде NumSeries
- NumPredictors
числовая матрица.
Бета (
содержит коэффициенты регрессии каждого предиктора в уравнении переменной отклика j
yj
,:)j
T. \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
) уровни.
\forall , серия независимых 3-D нормальных инноваций со средним значением 0 и ковариация .
Можно создать эмпирическую модель Bayesian VAR для коэффициентов и инновационная ковариационная матрица двумя способами:
Косвенно создайте empiricalbvarm
модель путем оценки апостериорного распределения полусопряженной предшествующей модели.
Непосредственно создайте empiricalbvarm
модель предоставлением чертит от предшествующего или апостериорного распределения параметров.
Косвенное создание
Примите следующие предшествующие распределения:
, где 39 1 вектор из средних значений и 39 39 ковариационная матрица.
, где 3х3 матрица шкалы и степени свободы.
Создайте полусопряженную предшествующую модель для 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
Создайте модель Bayesian 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
Bayesian VAR model обрабатывает все коэффициенты и инновационную ковариационную матрицу как случайные переменные в m - размерная, стационарная модель VARX(p). Модель имеет одну из трех форм, описанных в этой таблице.
Модель | Уравнение |
---|---|
VAR уменьшаемой формы (p) в обозначении разностного уравнения |
|
Многомерная регрессия |
|
Матричная регрессия |
|
В течение каждого раза t = 1..., T:
yt является m - размерный наблюдаемый вектор отклика, где m = numseries
.
Φ1, …, Φp является m-by-m содействующие матрицы AR задержек 1 через p, где p = numlags
.
c является m-by-1 вектор из констант модели если IncludeConstant
true
.
δ является m-by-1 вектор из линейных коэффициентов тренда времени если IncludeTrend
true
.
Β m-by-r матрица коэффициентов регрессии r-by-1 вектор из наблюдаемых внешних предикторов x t, где r = NumPredictors
. Все переменные предикторы появляются в каждом уравнении.
который является 1 на (mp + r + 2) вектор, и Z t является m-by-m матрица диагонали блока (mp + r + 2)
где 0z является 1 на (mp + r + 2) нулевой вектор.
, который является (mp + r + 2)-by-m случайная матрица коэффициентов и m (mp + r + 2)-by-1 векторный λ = vec (Λ).
εt является m-by-1 вектор из случайных, последовательно некоррелированых, многомерных нормальных инноваций с нулевым вектором для среднего значения и m-by-m матрица Σ для ковариации. Это предположение подразумевает, что вероятность данных
где f является m - размерная многомерная нормальная плотность со средним z t Λ и ковариация Σ, оцененный в y t.
Прежде, чем рассмотреть данные, вы налагаете предположение joint prior distribution на (Λ,Σ), которым управляет распределение π (Λ,Σ). В Байесовом анализе распределение параметров обновляется с информацией о параметрах, полученных из вероятности данных. Результатом является π joint posterior distribution (Λ,Σ | Y, X, Y 0), где:
Y является T-by-m матрица, содержащая целый ряд ответа {y t}, t = 1, …, T.
X является T-by-m матрица, содержащая целый внешний ряд {x t}, t = 1, …, T.
Y 0 является p-by-m, матрица преддемонстрационных данных раньше инициализировала модель VAR для оценки.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.