Байесова векторная модель (VAR) авторегрессии с рассеянным, предшествующим для вероятности данных
Байесов объект модели VAR diffusebvarm
задает объединенное предшествующее распределение массива коэффициентов модели Λ и инновационная ковариационная матрица Σ m-D модель VAR (p). Объединенное предшествующее распределение (Λ,Σ) является рассеянной моделью.
Рассеянная предшествующая модель не позволяет вам задать гиперзначения параметров для содействующей разреженности; все задержки AR в модели взвешиваются одинаково. Чтобы реализовать Миннесотскую регуляризацию, создайте сопряженную, полусопряженную, или нормальную предшествующую модель при помощи bayesvarm
.
В общем случае, когда вы создаете Байесов объект модели VAR, он задает объединенное предшествующее распределение и характеристики модели VARX только. Таким образом, объект модели является шаблоном, предназначенным для дальнейшего использования. А именно, чтобы включить данные в модель для анализа апостериорного распределения, передайте объект модели и данные к соответствующей объектной функции.
Создать diffusebvarm
объект, используйте любого diffusebvarm
функция (описанный здесь) или bayesvarm
функция.
создает PriorMdl
= diffusebvarm(numseries
,numlags
)numseries
- D байесов VAR (numlags
) объект модели PriorMdl
, который задает размерность и предшествующие предположения для всех коэффициентов модели и инновационная ковариация Σ, где:
numseries
= m, количество серийных переменных времени отклика.
numlags
= p, порядок полинома AR.
Объединенное предшествующее распределение (λ, Σ) является рассеянной моделью.
устанавливает перезаписываемые свойства (кроме PriorMdl
= diffusebvarm(numseries
,numlags
,Name,Value
)NumSeries
и P
) использование аргументов пары "имя-значение". Заключите каждое имя свойства в кавычки. Например, diffusebvarm(3,2,'SeriesNames',["UnemploymentRate" "CPI" "FEDFUNDS"])
задает имена этих трех переменных отклика в модели Bayesian VAR (2).
numseries
— Количество временных рядов m
(значение по умолчанию) | положительное целое числоКоличество временных рядов m в виде положительного целого числа. numseries
задает размерность многомерной переменной отклика yt и инновации εt.
numseries
устанавливает NumSeries
свойство.
Типы данных: double
numlags
— Количество изолированных ответовКоличество изолированных ответов в каждом уравнении y t в виде неотрицательного целого числа. Получившаяся модель является VAR (numlags
) модель; каждая задержка имеет numseries
- numseries
матрица коэффициентов.
numlags
устанавливает P
свойство.
Типы данных: double
Можно установить перезаписываемые значения свойств, когда вы создаете объект модели при помощи синтаксиса аргумента пары "имя-значение", или после того, как вы создаете объект модели при помощи записи через точку. Например, чтобы создать 3-D модель Bayesian VAR (1) и пометить первое через третьи переменные отклика, и затем включать линейный термин тренда времени, введите:
PriorMdl = diffusebvarm(3,1,'SeriesNames',["UnemploymentRate" "CPI" "FEDFUNDS"]); PriorMdl.IncludeTrend = true;
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
']diffusebvarm
хранилища SeriesNames
как вектор строки.
Пример: ["UnemploymentRate" "CPI" "FEDFUNDS"]
Типы данных: string
IncludeConstant
— Отметьте для включения постоянного c моделиtrue
(значение по умолчанию) | false
Отметьте для включения постоянного c модели в виде значения в этой таблице.
Значение | Описание |
---|---|
false | Уравнения ответа не включают константу модели. |
true | Все уравнения ответа содержат константу модели. |
Типы данных: логический
IncludeTrend
— Отметьте для включения линейного термина тренда времени δtfalse
(значение по умолчанию) | true
Отметьте для включения линейного термина тренда времени δt в виде значения в этой таблице.
Значение | Описание |
---|---|
false | Уравнения ответа не включают линейный термин тренда времени. |
true | Все уравнения ответа содержат линейный термин тренда времени. |
Типы данных: логический
NumPredictors
— Количество внешних переменных предикторов в компоненте регрессии модели
(значение по умолчанию) | неотрицательное целое числоКоличество внешних переменных предикторов в компоненте регрессии модели в виде неотрицательного целого числа. diffusebvarm
включает все переменные предикторы симметрично в каждое уравнение ответа.
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
— Среднее значение распределения инновационной ковариационной матрицы Σnan(NumSeries,NumSeries)
Среднее значение распределения инновационной ковариационной матрицы Σ NumSeries
инновации в каждый раз t = 1..., T в виде NumSeries
- NumSeries
матрица NaN
. Поскольку предшествующая модель является рассеянной, среднее значение Σ неизвестно, априорно.
estimate | Оцените апостериорное распределение Байесовой векторной авторегрессии (VAR) параметры модели |
forecast | Предскажите ответы из Байесовой векторной модели (VAR) авторегрессии |
simsmooth | Симуляция, более сглаженная из Байесовой векторной модели (VAR) авторегрессии |
simulate | Симулируйте содействующую и инновационную ковариационную матрицу Байесовой векторной модели (VAR) авторегрессии |
summarize | Статистика сводных данных распределения Байесовой векторной модели (VAR) авторегрессии |
Рассмотрите 3-D модель VAR (4) для инфляции США (INFL
), безработица (UNRATE
), и федеральные фонды (FEDFUNDS
) уровни.
\forall , серия независимых 3-D нормальных инноваций со средним значением 0 и ковариация . Примите что объединенное предшествующее распределение параметров модели VAR является рассеянным.
Создайте рассеянную предшествующую модель для 3-D VAR (4) параметры модели.
numseries = 3; numlags = 4; PriorMdl = diffusebvarm(numseries,numlags)
PriorMdl = diffusebvarm with properties: Description: "3-Dimensional VAR(4) Model" NumSeries: 3 P: 4 SeriesNames: ["Y1" "Y2" "Y3"] IncludeConstant: 1 IncludeTrend: 0 NumPredictors: 0 AR: {[3x3 double] [3x3 double] [3x3 double] [3x3 double]} Constant: [3x1 double] Trend: [3x0 double] Beta: [3x0 double] Covariance: [3x3 double]
PriorMdl
diffusebvarm
Байесов объект модели VAR, представляющий предшествующее распределение содействующей и инновационной ковариации 3-D модели VAR (4). Отображение командной строки показывает свойства модели. Можно отобразить свойства при помощи записи через точку.
Отобразите предшествующие средние матрицы ковариации четырех коэффициентов AR путем установки каждой матрицы в ячейке к переменной.
AR1 = PriorMdl.AR{1}
AR1 = 3×3
0 0 0
0 0 0
0 0 0
AR2 = PriorMdl.AR{2}
AR2 = 3×3
0 0 0
0 0 0
0 0 0
AR3 = PriorMdl.AR{3}
AR3 = 3×3
0 0 0
0 0 0
0 0 0
AR4 = PriorMdl.AR{4}
AR4 = 3×3
0 0 0
0 0 0
0 0 0
diffusebvarm
центры все коэффициенты AR в 0
по умолчанию. Поскольку модель является рассеянной, данные сообщают апостериорному распределению.
Полагайте, что 1D модель Bayesian AR (2) для ежедневной NASDAQ возвращается с 2 января 1990 до 31 декабря 2001.
Предшествующее соединение является рассеянным.
Создайте рассеянную предшествующую модель для AR (2) параметры модели.
numseries = 1; numlags = 2; PriorMdl = diffusebvarm(numseries,numlags)
PriorMdl = diffusebvarm with properties: Description: "1-Dimensional VAR(2) Model" NumSeries: 1 P: 2 SeriesNames: "Y1" IncludeConstant: 1 IncludeTrend: 0 NumPredictors: 0 AR: {[0] [0]} Constant: 0 Trend: [1x0 double] Beta: [1x0 double] Covariance: NaN
Рассмотрите добавление, что линейный термин тренда времени к 3-D модели VAR (4) Создает Рассеянную Предшествующую Модель:
Создайте рассеянную предшествующую модель для 3-D VAR (4) параметры модели. Задайте имена переменной отклика.
numseries = 3; numlags = 4; seriesnames = ["INFL"; "UNRATE"; "FEDFUNDS"]; PriorMdl = diffusebvarm(numseries,numlags,'SeriesNames',seriesnames,... 'IncludeTrend',true)
PriorMdl = diffusebvarm with properties: Description: "3-Dimensional VAR(4) Model" NumSeries: 3 P: 4 SeriesNames: ["INFL" "UNRATE" "FEDFUNDS"] IncludeConstant: 1 IncludeTrend: 1 NumPredictors: 0 AR: {[3x3 double] [3x3 double] [3x3 double] [3x3 double]} Constant: [3x1 double] Trend: [3x1 double] Beta: [3x0 double] Covariance: [3x3 double]
Считайте 2D модель VARX(1) для США действительным GDP (RGDP
) и инвестиции (GCE
) уровни, который обрабатывает персональное потребление (PCEC
) уровень как внешний:
\forall , серия независимых 2D нормальных инноваций со средним значением 0 и ковариация . Примите, что объединенное предшествующее распределение является рассеянным.
Создайте рассеянную предшествующую модель для 2D VARX (1) параметры модели.
numseries = 2;
numlags = 1;
numpredictors = 1;
PriorMdl = diffusebvarm(numseries,numlags,'NumPredictors',numpredictors)
PriorMdl = diffusebvarm with properties: Description: "2-Dimensional VAR(1) Model" NumSeries: 2 P: 1 SeriesNames: ["Y1" "Y2"] IncludeConstant: 1 IncludeTrend: 0 NumPredictors: 1 AR: {[2x2 double]} Constant: [2x1 double] Trend: [2x0 double] Beta: [2x1 double] Covariance: [2x2 double]
Полагайте, что 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);
Создайте предшествующую модель
Создайте рассеянный Байесов VAR (4) предшествующая модель для трех рядов ответа. Задайте имена переменной отклика.
numseries = numel(seriesnames);
numlags = 4;
PriorMdl = diffusebvarm(numseries,numlags,'SeriesNames',seriesnames);
Оцените апостериорное распределение
Оцените апостериорное распределение путем передачи предшествующего и целого ряда данных модели estimate
.
rng(1); % For reproducibility PosteriorMdl = estimate(PriorMdl,rmDataTable{:,seriesnames},'Display','equation');
Bayesian VAR under diffuse priors Effective Sample Size: 197 Number of equations: 3 Number of estimated Parameters: 39 VAR Equations | INFL(-1) DUNRATE(-1) DFEDFUNDS(-1) INFL(-2) DUNRATE(-2) DFEDFUNDS(-2) INFL(-3) DUNRATE(-3) DFEDFUNDS(-3) INFL(-4) DUNRATE(-4) DFEDFUNDS(-4) Constant ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ INFL | 0.1241 -0.4809 0.1005 0.3236 -0.0503 0.0450 0.4272 0.2738 0.0523 0.0167 -0.1830 0.0067 0.1007 | (0.0762) (0.1536) (0.0390) (0.0868) (0.1647) (0.0413) (0.0860) (0.1620) (0.0428) (0.0901) (0.1520) (0.0395) (0.0832) DUNRATE | -0.0219 0.4716 0.0391 0.0913 0.2414 0.0536 -0.0389 0.0552 0.0008 0.0285 -0.1795 0.0088 -0.0499 | (0.0413) (0.0831) (0.0211) (0.0469) (0.0891) (0.0223) (0.0465) (0.0876) (0.0232) (0.0488) (0.0822) (0.0214) (0.0450) DFEDFUNDS | -0.1586 -1.4368 -0.2905 0.3403 -0.2968 -0.3117 0.2848 -0.7401 0.0028 -0.0690 0.1494 -0.1372 -0.4221 | (0.1632) (0.3287) (0.0835) (0.1857) (0.3526) (0.0883) (0.1841) (0.3466) (0.0917) (0.1928) (0.3253) (0.0845) (0.1781) Innovations Covariance Matrix | INFL DUNRATE DFEDFUNDS ------------------------------------------- INFL | 0.3028 -0.0217 0.1579 | (0.0321) (0.0124) (0.0499) DUNRATE | -0.0217 0.0887 -0.1435 | (0.0124) (0.0094) (0.0283) DFEDFUNDS | 0.1579 -0.1435 1.3872 | (0.0499) (0.0283) (0.1470)
PosteriorMdl
conjugatebvarm
объект модели; следующее аналитически послушно. По умолчанию, estimate
использует первые четыре наблюдения в качестве предварительной выборки, чтобы инициализировать модель.
Сгенерируйте прогнозы от следующего прогнозирующего распределения
От следующего прогнозирующего распределения сгенерируйте прогнозы более чем горизонт 2D года. Поскольку выборка от следующего прогнозирующего распределения требует целого набора данных, задайте предшествующую модель в forecast
вместо следующего.
fh = 8; FY = forecast(PriorMdl,fh,rmDataTable{:,seriesnames});
FY
8 3 матрица прогнозов.
Постройте конец набора данных и прогнозов.
fp = rmDataTable.Time(end) + calquarters(1:fh); figure plotdata = [rmDataTable{end - 10:end,seriesnames}; FY]; plot([rmDataTable.Time(end - 10:end); fp'],plotdata) hold on plot([fp(1) fp(1)],ylim,'k-.') legend(seriesnames) title('Data and Forecasts') hold off
Вычислите импульсные характеристики
Постройте функции импульсной характеристики путем передачи следующих оценок armairf
.
armairf(PosteriorMdl.AR,[],'InnovCov',PosteriorMdl.Covariance)
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 для оценки.
diffuse model является m-D модель Bayesian VAR, которая имеет неинформативное объединенное предшествующее распределение
Рассеянная модель является ограничивающим случаем сопряженной предшествующей модели (см. conjugatebvarm
) когда Μ → 0, V-1 → 0, Ω → 0, и ν →-k, где:
k = m p + r + 1c + 1δ, количество коэффициентов на уравнение ответа.
r = NumPredictors
.
1c 1 если IncludeConstant
верно, и 0 в противном случае.
1δ 1 если IncludeTrend
верно, и 0 в противном случае.
Если объем выборки является достаточно большим, чтобы удовлетворить оценке наименьших квадратов, апостериорные распределения являются соответствующими и аналитически послушными.
где:
Если вы передаете diffusebvarm
объект и данные к estimate
MATLAB® возвращает conjugatebvarm
объект, представляющий апостериорное распределение.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.