В последней статье мы изучаем свойства нормального распределения, которые являются центральными для машинного обучения (ML). Здесь мы применим наши знания в управлении нормальными распределениями, чтобы решить трудный байесовский вывод. И мы продемонстрируем это с помощью байесовской линейной регрессии и гауссовского процесса. Мы также рассмотрим несколько доказательств, чтобы применить то, что мы узнали. Но мы предполагаем, что вы прочитали последнюю статью, пожалуйста, сделайте это, если вы этого не сделали.
Байесовская линейная регрессия
Байесовская линейная регрессия использует «удобство» операций нормального распределения и решает задачу регрессии аналитически.
Для набора данных с размером выборки n и каждой точкой данных есть m признаков, байесовская линейная регрессия определяется как
И оба априорных параметра θиошибка εпредполагаются равными нормально распределены.
Задняя часть
При манипулировании нормальными распределениями, если результатом является распределение вероятностей, мы можем сосредоточиться на объединении этих нормальных распределений и игнорировать любые коэффициенты масштабирования. Мы можем сосредоточиться на поиске параметров результирующего нормального распределения. Здесь апостериор равен
то есть задний
Апостериорное прогностическое распределение
Чтобы вычислить апостериорное прогностическое распределение в байесовском выводе, мы интегрируем апостериорное распределение по всем возможным значениям θ для модели.
Эта интеграция вообще неразрешима. В байесовской линейной регрессии вероятность имеет форму функции Гаусса.
Следовательно, мы можем намного проще вычислить апостериорное прогнозирующее распределение, используя свойства нормального распределения. Напомним, что модель байесовской регрессии определяется как
И правило линейного преобразования нормального распределения есть.
Давайте заменим A на x* и x. с θ мы получаем
Примените правило суммирования для учета ε в уравнении байесовской регрессии
Апостериорное прогностическое распределение становится
Собрав все вместе, апостериорное прогностическое распределение
Среднее значение этого распределения — это точечная оценка для y* при заданном x*.
Далее мы обсудим гауссовский процесс, который исследует отношения между точками данных с нормальным распределением.
Гауссовский процесс (ГП)
Давайте кратко рассмотрим, что может сделать GP. Распределение гауссовского процесса (ГП) — это распределение по функциям. Что это значит? Учитывая набор обучающих данных D = {(x₁, y₁), (x₂, у₂), (х₃, у₃), (х₄, у₄ )}, функция f ниже точно соответствует D.
Но байесовцы никогда не останавливаются на точечной оценке! Действительно, существует бесконечное количество функций, которые могут точно соответствовать этим точкам данных. Но некоторые функции более вероятны, чем другие. Например, функция f ² ниже кажется более вероятной, чем другие, поскольку она вносит менее извилистые изменения, чтобы соответствовать данным. Для частотников они будут использовать оценку наибольшего правдоподобия (MLE), чтобы дать нам окончательную модель регрессии. Но для байесовцев они моделируют все возможности. Для демонстрации мы можем многократно выбирать из GP при построении функций, которые предсказывают байесовцы.
GP — это генеративная модель. Он генерирует функции (образцы), которые соответствуют
- наблюдения, и
- наше мнение о том, как связаны данные и какова их ожидаемая ценность (среднее значение).
В регрессии GP он предсказывает нормальное распределение для y* при заданном x*, т. е. функция плотности вероятности для f(x *).
Ленивый бухгалтер
Давайте быстро пройдемся по иллюстрации. В начале каждого квартала бухгалтер сообщает генеральному директору о балансе между дебиторской задолженностью (AR) и кредиторской задолженностью (AP) (баланс = AR минус AP). В любой момент времени AR может быть выше AP или наоборот. К сожалению, этой компании удается только выйти в безубыток, т.е. в среднем баланс равен нулю.
Бухгалтер ушел на пенсию, и наняли умного, но ленивого бухгалтера Пола. Вместо того, чтобы выполнять свою работу, он создает многомерное нормальное распределение ниже и автоматически генерирует баланс на следующие 20 месяцев.
Это распределение имеет большой смысл, поскольку ожидаемое значение будет равно 0. Вот график для одной выборки со следующими 20-месячными остатками.
Ковариационная матрица Σ управляет тем, как точки данных коррелируют. Σᵢⱼ равно 0, когда точка данных i не коррелирует с точкой данных j. Если оно больше нуля, то да. Выбор Пола Σ является экспоненциальной функцией расстояния между точками данных. Таким образом, балансы между соседними месяцами аналогичны. s – это коэффициент масштабирования для воспроизведения диапазона баланса. l — это настраиваемый гиперпараметр (также известный как ширина ядра). При большем значении l точки данных влияют на соседей дальше. С другой точки зрения, на каждую точку данных будет влиять большее количество соседей. Поэтому соответствующая кривая будет более гладкой.
Эта схема настолько успешна, что Пол создает новую модель и в течение следующих 20 месяцев отбирает по одной точке данных в день.
Построенный график гладкий и просто выглядит как функция. Поэтому он называет свою систему пробоотборником функций. Каждая выборка является выборкой функции f.
Финансовый директор впечатлен сюжетом и просит его переделать ежемесячный баланс за последний финансовый год. Он больше не может повторно использовать последний сэмплер функций. Он не будет соответствовать предыдущим квартальным отчетам.
Как обсуждалось ранее, если мы знаем многомерное нормальное распределение, мы можем восстановить распределение вероятностей отсутствующих данных с учетом наблюдаемого.
Как и в этом примере, распределение вероятности для x₁ при x₂=2 равно
Пол тоже это понимает. Если он знает f(остатки за последние 4 квартала), он может воссоздать распределение f*за последние 12 месяцев. Первые четыре записи в его новой модели представляют собой отчетные остатки на 1, 4, 7 и 10 месяцы (каждый финансовый квартал). Следующие 12 записей (f*) представляют собой новую кривую за последний финансовый год.
На приведенной ниже диаграмме показана одна из выбранных функций.
Исходный априор определяет среднее значение и ковариацию функций. Это наше предварительное мнение о ожидаемом значении для f и о том, как данные коррелируют. Учитывая наблюдения (четыре баланса), апостериорный анализ накладывает ограничения на то, что любые выбранные функции должны пересекать путь в красных точках ниже.
Но иногда генерального директора интересуют только несколько точек данных, например баланс на 60-й и 280-й день. Это можно смоделировать с помощью нового многомерного нормального распределения ниже. Он выбирает функцию f*, которая прогнозирует выходные данные для определенных входных данных. Например, одна возможная выборка для f*: [f*¹(125) = -0,2, f*¹(300) = 1,1 ]).
Есть еще одно важное наблюдение. По мере удаления от красных точек дисперсия f увеличивается. Прогноз будет иметь более широкий диапазон догадок и более низкую достоверность. Короче говоря, по мере того, как мы удаляемся от известных точек данных, неопределенность прогнозов увеличивается.
Определение GP
Гауссовский процесс — это нормальное распределение по функциям. Каждый GP определяется функцией среднего m(x) и функцией ковариации κ(x, x′). κ моделирует ковариацию (корреляцию) между f(x) и f(x’).
Пол рассчитывает m(x) равным 0, чтобы отразить ожидаемый баланс. Если мы сохраним функции выборки, среднее по f¹(x), f²(x), f³(x), … приближается м(х).
Пол использует ядро Гаусса для моделирования функции ковариации.
Для любой пары x и x' выборочные точки данных f(x) и f(x') образуют двумерное нормальное распределение. В качестве простой демонстрации допустим, что x’ равно x. Как показано ниже, κ(x, x), красная кривая, имеет нормальное распределение.
Как мы получаем данные от терапевта? В частности, функцию A можно рассматривать как набор случайных величин f(x₁), f(x₂), f(x₃), … Для непрерывных функций количество случайных величин не ограничено. Следовательно, он имеет бесконечные случайные величины, а GP имеет бесконечную размерность. На практике мы можем сосредоточиться на интересующих переменных k, даже k может быть очень большим.
Определение: GP — это набор случайных величин, в котором совместное распределение каждого конечного подмножества случайных величин является многомерным, нормально распределенным.
Воспользовавшись этим определением, мы моделируем k-вариантное нормальное распределение из совместного распределения. Например, Павел создает конечное подмножество X = {x₁, x₂, x₃, x₄, …, x₁₂} для отчета за следующий год. Он содержит 12 случайных переменных, удерживающих баланс на каждый месяц. Как только нормальное распределение с 12 переменными определено, мы выбираем значения из этого многомерного нормального распределения для создания образцовых функций.
Все начинается с предварительного убеждения дизайнера в том, как связаны данные.
Или, по мнению Павла, это
где
Вот два возможных образца возвращаемых функций.
Функция ядра
Одной из популярных функций ядра при моделировании функции ковариации является квадрат экспоненциального ядра.
где s — коэффициент масштабирования. Когда xᵢ и xⱼдалеко друг от друга, k равно 0. Если они идентичны, оно равно 1. Но у ядра есть много вариантов выбора. функции. Экспериментируя, дизайнеры могут выбрать тот, который лучше всего моделирует данные.
В матричной алгебре матрица Kявляетсяположительно полуопределенной, если
Ковариационная матрица является положительно полуопределенной.
Следовательно, функция ядра должна быть положительно полуопределенной. Он также симметричен, поскольку Cov(x, x’) = Cov(x’, x).
Апостериорное прогностическое распределение
Апостериорное прогнозирующее распределение заключается в нахождении f* при заданных x* и D.
Апостериорное прогностическое распределение обычно записывается в виде
и
Применяя условное правило к многомерному нормальному распределению, средний вектор и ковариационная матрица равны
Это бесшумная регрессия гауссовского процесса.
Чтобы учесть шум в информации, мы формулируем прогноз как
С правилом суммирования по нормальному распределению шум будет добавлен к матрице ковариации следующим образом
Апостериорное прогностическое распределение для нормального распределения равно