Econometrics Toolbox™ включает автономную среду, которая позволяет вам реализовывать Байесовую линейную регрессию. Среда содержит две группы предшествующих моделей для коэффициентов регрессии β и отклонение воздействия σ 2:
Стандартная Байесова линейная регрессия предшествующие модели — пять предшествующих объектов модели в этой группе лежит в диапазоне от простой сопряженной нормальной обратной гаммы предшествующая модель через гибкие предшествующие модели, заданные ничьими от предшествующих распределений или пользовательской функции. Несмотря на то, что стандартные предшествующие модели могут служить нескольким целям, они подходят лучше всего для следующей оценки, симуляции (от соединения или, для большинства моделей, следующее условное выражение), и предсказывающий от следующего прогнозирующего распределения.
Байесовы предшествующие модели для выбора переменного предиктора — модели в этой группе могут выполнить Байесовую регрессию лассо или стохастический поисковый выбор переменной (SSVS). Они подходят лучше всего для следующей оценки, во время которой происходит алгоритм выбора предиктора. Получившаяся следующая модель представлена ничьими от сэмплера Гиббса (эмпирический объект модели), и сводные данные оценки содержат результаты алгоритма выбора предиктора. Процедура оценки не удаляет незначительные или избыточные переменные для вас, но коэффициенты хорошо настроенной модели близко к нулю. Поэтому как со стандартными моделями, можно симулировать, чертит от апостериорного распределения или прогноза от следующего прогнозирующего распределения, не имея необходимость удалять любые переменные.
Общий рабочий процесс для оценки функций апостериорных распределений и затем прогнозирования ответов, данных новые данные о предикторе:
Используйте bayeslm
создать предшествующий объект модели, который представляет ваши предположения о распределении или предшествующем объекте модели, который подходит для выбора предиктора.
Передайте предшествующий объект модели и предиктор и данные об ответе к estimate
функция. По умолчанию, estimate
возвращает объект модели, который представляет апостериорное распределение.
Передайте объект модели, представляющий апостериорное распределение forecast
.
Для получения дополнительной информации на стандартном Байесовом рабочем процессе линейной регрессии, смотрите Рабочий процесс для Стандартных Байесовых Моделей Линейной регрессии, и для Байесового выбора предиктора, смотрите Рабочий процесс для Байесового Выбора Предиктора.
Следующая процедура описывает рабочий процесс для оценки функций апостериорных распределений и затем прогнозирования ответов, данных данные о предикторе.
Выберите объединенное предшествующее распределение для (β, σ 2). Затем использование bayeslm
, создайте Байесов объект модели линейной регрессии, который полностью задает ваши верования об объединенном предшествующем распределении. Эта таблица содержит доступные предшествующие объекты модели.
Объект модели | Соедините предшествующее распределение (β, σ 2) | Когда создать |
---|---|---|
conjugateblm |
| Создайте этот объект модели, когда все следующее будет верно:
|
semiconjugateblm |
| Создайте этот объект модели, когда все следующее будет верно:
|
diffuseblm | Создайте этот объект модели, когда все следующее будет верно:
| |
customblm | Указатель на функцию пользовательской функции, которая вычисляет журнал объединенного предшествующего распределения. | Создайте этот объект модели, когда это необходимо, чтобы задать журнал объединенного предшествующего распределения. Эта спецификация допускает максимальную гибкость. |
Учитывая данные, оцените функции апостериорных распределений. Функции, чтобы использовать на этом шаге зависят от ваших аналитических целей.
Функция | Цели |
---|---|
estimate |
|
simulate |
|
Если у вас есть пользовательская предшествующая модель (customblm
объект), затем выберите сэмплер Markov chain Monte Carlo (MCMC), когда вы вызовете estimate
или simulate
. Эта таблица содержит список поддерживаемых сэмплеров MCMC. После выбора сэмплера попробуйте значение по умолчанию, настраивающее значения параметров сначала.
Сэмплер MCMC | Задайте Используя | Описание |
---|---|---|
Гамильтонов Монте-Карло (HMC) | 'Sampler',"hmc" | Поскольку сэмплер HMC настраивает себя, и получившиеся выборки смешиваются хорошо и сходятся к их стационарному распределению более быстро, пробуют этот сэмплер сначала. Чтобы увеличить скорость выборки, предоставьте градиент журнала PDF для всех или некоторых параметров. |
Случайная Столица обхода | 'Sampler',"metropolis" | Если объем выборки является довольно большим, и предшествующее не доминирует над вероятностью, то пробует этот сэмплер. Поддерживаемые распределения предложения являются многомерными нормальными и многомерными распределениями t. Настраивающиеся параметры включают распределение, его матрицу шкалы и его степени свободы. |
Срез | 'Sampler',"slice" (значение по умолчанию) | Чтобы достигнуть соответствующего смешивания и сходимости, тщательно настройте типичную ширину интервала выборки. Значения являются зависящими от приложения. |
После оценки неаналитического следующего при помощи сэмплера MCMC смотрите следующие или условные следующие ничьи для соответствующего смешивания. Для получения дополнительной информации смотрите Следующую Диагностику Оценки и Симуляции.
Если качество выборок не является удовлетворительным, то создайте структуру опций сэмплера при помощи sampleroptions
, который позволяет вам задавать настраивающиеся значения параметров, которые подходят для сэмплера. Например, чтобы задать случайный сэмплер Столицы обхода, который использует многомерное распределение предложения t с 5 степенями свободы, введите:
options = sampleroptions('Sampler',"metropolis",'Distribution',"mvt",... 'DegreeOfFreedom',5)
estimate
или simulate
при помощи 'Options'
аргумент пары "имя-значение".Предскажите ответы, учитывая новые данные о предикторе с помощью forecast
. forecast
функционируйте прогнозы построений от следующего прогнозирующего распределения. Аналитические следующие прогнозирующие распределения доступны для conjugateblm
и diffuseblm
предшествующие модели. Для всех других предшествующих моделей, forecast
обращения к выборке Монте-Карло. Как с оценкой и симуляцией, можно выбрать сэмплер MCMC для customblm
модели. Если forecast
использует сэмплер MCMC, необходимо смотреть следующие или условные следующие ничьи для соответствующего смешивания.
Следующая процедура описывает рабочий процесс для выполнения Байесового выбора предиктора для моделей линейной регрессии и затем прогнозирования ответов, данных данные о предикторе.
Econometrics Toolbox поддерживает два Байесовых алгоритма выбора предиктора: Байесова регрессия лассо и SSVS. Выберите алгоритм выбора предиктора, который подразумевает объединенное предшествующее распределение для (β, σ 2). Затем использование bayeslm
, создайте Байесовую линейную регрессию предшествующий объект модели, который выполняет выбранный алгоритм выбора предиктора, и опционально задайте настраивающееся значение параметров. Эта таблица содержит доступные предшествующие объекты модели для выбора предиктора. Для получения дополнительной информации на формах предшествующих распределений, смотрите Следующую Оценку и Вывод.
Объект модели | Алгоритм выбора предиктора | Настройка параметра | Когда создать |
---|---|---|---|
mixconjugateblm | SSVS [1] |
|
|
mixsemiconjugateblm | SSVS | То же самое как mixconjugateblm |
|
lassoblm | Байесова регрессия лассо [3] |
| Вы хотите обеспечить незначительные и избыточные переменные предикторы, чтобы иметь коэффициенты со следующим режимом нулевых и довольно трудных 95%-х следующих вероятных интервалов вокруг того режима. |
Поскольку алгоритмы выбора предиктора могут быть чувствительны к отличающимся шкалам переменных предикторов (Байесова регрессия лассо, в частности), определите шкалу предикторов путем передачи данных boxplot
, или путем оценки их средних значений и стандартных отклонений при помощи mean
и std
, соответственно.
Для предшествующих моделей SSVS постройте предшествующие распределения коэффициентов при помощи plot
. Графики дают вам общее представление о том, как плотность двух Гауссовых компонентов балансируется. Можно настроить отклонения коэффициента при помощи записи через точку. Например, чтобы приписать предшествующие отклонения 1 000 и 0.1 к компонентам переменного включения и переменного исключения, соответственно, для коэффициента
, Введите:j
PriorMdl.V(j,:) = [1000 0.1];
V
, см. [1].Для лассо предшествующие модели определите regularization path, то есть, серию значений для λ, чтобы выполнить итерации через во время следующей оценки. Значения информационно-зависимы.
Если переменные предикторы имеют подобные шкалы, задают левый контур, который обеспечивает большинство переменных в модель (то есть, атрибут почти никакой штраф), задайте правильный контур, который обеспечивает почти все коэффициенты к 0, и задайте достаточно значений, промежуточных контуры, чтобы искать пробел соответственно. По умолчанию программное обеспечение приписывает уменьшение 0.01
к прерыванию и 1
ко всем коэффициентам.
Если шкалы переменных предикторов отличаются порядками величины, то можно повторно масштабировать или стандартизировать данные. Однако эти действия делают интерпретацию коэффициентов трудной. Вместо этого задайте путь к регуляризации и используйте его, чтобы создать матрицу повторных строк. Для тех переменных, шкалы которых являются маленькими или большими, умножьте соответствующие строки на соответствующий порядок величины увеличить штраф за маленькие коэффициенты или уменьшать штраф за большие коэффициенты.
Например, предположите, что модель регрессии имеет три предиктора. Первые два предиктора имеют подобные шкалы, но третий предиктор имеет шкалу, которая является 3 больше порядками. Предположим, что путь к регуляризации с 100 элементами находится в 1 100 векторном Lambda
. Чтобы создать матрицу значений уменьшения, введите следующий код:
p = 3 % Number of predictors numcoeffs = p + 1; % Number of coefficients, intercept and predictors LambdaMat = repmat(Lambda,4,1); LambdaMat(4,:) = 1e3*LambdaMat(4,:);
Для больше при определении λ, см. [3].
В for
цикл, передайте предиктор и данные об ответе к estimate
оценить функции апостериорных распределений для каждого значения настраивающегося параметра. Для каждой итерации храните следующий объект модели и сводную таблицу оценки в массиве ячеек. estimate
использует сэмплер Гиббса для выборки последовательно от полных условных выражений (см. Аналитически Послушное Последующее поколение). Можно изменить аспекты сэмплера Гиббса, такие как утончающийся фактор, с помощью доступных параметров.
Следующие модели (empiricalblm
объекты модели), хранят ничьи от полных условных выражений, среди прочего.
Сводные таблицы оценки являются таблицами MATLAB®, которые включают:
Оценки среднего значения (Mean
) и ковариационная матрица (Covariances
) из крайнего следующего π (β |y, x), и среднее значение и отклонение π (σ 2|y, x).
95% equitailed, вероятные интервалы (CI95
), которые являются с 0.025 квантилями и с 0.975 квантилями из сохраненной выборки Монте-Карло.
Следующие вероятности переменного включения (Regime
) для предшествующих моделей SSVS только. Значения ниже порога, который вы определяете, указывают, что соответствующий предиктор незначителен или избыточен.
Несмотря на то, что вы оцениваете несколько следующих моделей, хорошая практика должна смотреть следующие ничьи для соответствующего смешивания, особенно для моделей, оцененных с помощью контуров настраивающихся значений параметров. Для получения дополнительной информации смотрите Следующую Диагностику Оценки и Симуляции.
Определите лучше всего выполняющую следующую модель. Два примера:
Выберите самую простую модель, которая минимизирует среднеквадратическую ошибку (MSE, средние значения Sigma2
) среди всех следующих моделей. Этот метод прост, но получившиеся модели не могут сделать вывод хорошо.
Выберите самую простую модель, которая минимизирует прогноз MSE.
Разделите данные в оценку и предскажите выборки.
Для всех выбранные настраивающиеся значения параметров оцените апостериорное распределение при помощи выборочных данных оценки.
Вычислите прогноз MSE использование выборки прогноза и ответов, предсказанных при помощи следующего прогнозирующего распределения.
Предскажите ответы, данные новые данные о предикторе с помощью forecast
. forecast
функционируйте прогнозы построений от следующего прогнозирующего распределения путем реализации сэмплера Гиббса. Смотрите ничьи для соответствующего смешивания.
[1] Джордж, E. I. и Р. Э. Маккалок. "Выбор переменной Через Гиббс, Производящий". Журнал американской Статистической Ассоциации. Издание 88, № 423, 1993, стр 881–889.
[2] Марин, J. M. и К. П. Роберт. Байесово ядро: практический подход к вычислительной байесовой статистике. Нью-Йорк: СМИ Спрингера Science+Business, LLC, 2007.
[3] Припаркуйтесь, T. и Г. Казелла. "Байесово Лассо". Журнал американской Статистической Ассоциации. Издание 103, № 482, 2008, стр 681–686.
conjugateblm
| customblm
| diffuseblm
| empiricalblm
| lassoblm
| mixconjugateblm
| mixsemiconjugateblm
| semiconjugateblm