Байесовская сеть ( также известная как сеть Байеса , сеть Байеса , сеть убеждений или сеть решений ) — вероятностная графическая модель , которая представляет набор переменных и их условных зависимостей с помощью направленного ациклического графа (DAG). [1] Хотя это одна из нескольких форм причинной нотации , причинные сети являются частными случаями байесовских сетей. Байесовские сети идеально подходят для анализа произошедшего события и прогнозирования вероятности того, что любая из нескольких возможных известных причин была способствующим фактором. Например, байесовская сеть может представлять вероятностные связи между заболеваниями и симптомами. Учитывая симптомы, сеть может использоваться для вычисления вероятностей наличия различных заболеваний.
Эффективные алгоритмы могут выполнять вывод и обучение в байесовских сетях. Байесовские сети, которые моделируют последовательности переменных ( например, речевые сигналы или белковые последовательности ), называются динамическими байесовскими сетями . Обобщения байесовских сетей, которые могут представлять и решать проблемы принятия решений в условиях неопределенности, называются диаграммами влияния .
Формально байесовские сети представляют собой направленные ациклические графы (DAG), узлы которых представляют переменные в байесовском смысле: они могут быть наблюдаемыми величинами, скрытыми переменными , неизвестными параметрами или гипотезами. Каждое ребро представляет собой прямую условную зависимость. Любая пара узлов, которые не соединены (т. е. ни один путь не соединяет один узел с другим), представляет переменные, которые условно независимы друг от друга. Каждый узел связан с функцией вероятности , которая принимает в качестве входных данных определенный набор значений для родительских переменных узла и дает (в качестве выходных данных) вероятность (или распределение вероятностей, если применимо) переменной, представленной узлом. Например, если родительские узлы представляют собой булевы переменные , то функция вероятности может быть представлена таблицей записей, по одной записи для каждой из возможных родительских комбинаций. Аналогичные идеи могут быть применены к ненаправленным и, возможно, циклическим графам, таким как сети Маркова .
Давайте воспользуемся иллюстрацией для подтверждения концепций байесовской сети. Предположим, мы хотим смоделировать зависимости между тремя переменными: разбрызгиватель (или, точнее, его состояние — включен он или нет), наличие или отсутствие дождя и мокрая трава или нет. Обратите внимание, что два события могут привести к тому, что трава станет мокрой: работающий разбрызгиватель или дождь. Дождь оказывает прямое влияние на использование разбрызгивателя (а именно, когда идет дождь, разбрызгиватель обычно не активен). Эту ситуацию можно смоделировать с помощью байесовской сети (показано справа). Каждая переменная имеет два возможных значения: T (для true) и F (для false).
Совместная функция вероятности , согласно цепному правилу вероятности ,
где G = «Трава мокрая (истина/ложь)», S = «Включен разбрызгиватель (истина/ложь)» и R = «Идет дождь (истина/ложь)».
Модель может отвечать на вопросы о наличии причины при наличии следствия (так называемая обратная вероятность), например: «Какова вероятность того, что идет дождь, если трава мокрая?», используя формулу условной вероятности и суммируя по всем мешающим переменным :
Используя расширение для функции совместной вероятности и условные вероятности из таблиц условных вероятностей (CPT), указанных на диаграмме, можно оценить каждый член в суммах в числителе и знаменателе. Например,
Тогда числовые результаты (индексированные соответствующими значениями переменных) будут следующими:
Чтобы ответить на вопрос об интервенции, например: «Какова вероятность того, что пойдет дождь, если мы намочим траву?», ответ определяется функцией совместного распределения после интервенции.
получено путем удаления фактора из распределения до вмешательства. Оператор do заставляет значение G быть истинным. Вероятность дождя не зависит от действия:
Чтобы спрогнозировать воздействие включения разбрызгивателя:
с удаленным термином , показывающим, что действие влияет на траву, но не на дождь.
Эти прогнозы могут быть невозможны при наличии ненаблюдаемых переменных, как в большинстве проблем оценки политики. Однако эффект действия все еще может быть предсказан, когда критерий бэкдора выполняется. [2] [3] Он утверждает, что если можно наблюдать набор Z узлов, который d-разделяет [4] (или блокирует) все бэкдор-пути от X до Y , то
Путь черного хода — это тот, который заканчивается стрелкой в X. Множества, которые удовлетворяют критерию черного хода, называются «достаточными» или «допустимыми». Например, множество Z = R допустимо для предсказания эффекта S = T на G , потому что R d -разделяет (единственный) путь черного хода S ← R → G. Однако, если S не наблюдается, никакой другой набор d -разделяет этот путь, и эффект включения разбрызгивателя ( S = T ) на траве ( G ) не может быть предсказан из пассивных наблюдений. В этом случае P ( G | do( S = T )) не «идентифицирован». Это отражает тот факт, что при отсутствии интервенционных данных наблюдаемая зависимость между S и G обусловлена причинно-следственной связью или является ложной (кажущаяся зависимость, возникающая из общей причины, R ). (см. парадокс Симпсона )
Чтобы определить, идентифицируется ли причинно-следственная связь из произвольной байесовской сети с ненаблюдаемыми переменными, можно использовать три правила « исчисления do » [2] [5] и проверить, можно ли удалить все члены do из выражения этой связи, тем самым подтвердив, что желаемая величина может быть оценена на основе данных о частоте. [6]
Использование байесовской сети может сэкономить значительные объемы памяти по сравнению с исчерпывающими вероятностными таблицами, если зависимости в совместном распределении разрежены. Например, наивный способ хранения условных вероятностей 10 двузначных переменных в виде таблицы требует места для хранения значений. Если локальное распределение переменной не зависит более чем от трех родительских переменных, представление байесовской сети сохраняет не более значений.
Одним из преимуществ байесовских сетей является то, что человеку интуитивно проще понять (редкий набор) прямых зависимостей и локальных распределений, чем полные совместные распределения.
Байесовские сети выполняют три основные задачи вывода:
Поскольку байесовская сеть является полной моделью для своих переменных и их взаимосвязей, ее можно использовать для ответа на вероятностные запросы о них. Например, сеть можно использовать для обновления знаний о состоянии подмножества переменных, когда наблюдаются другие переменные (переменные свидетельств ). Этот процесс вычисления апостериорного распределения переменных при наличии свидетельств называется вероятностным выводом. Апостериор дает универсальную достаточную статистику для приложений обнаружения при выборе значений для подмножества переменных, которые минимизируют некоторую ожидаемую функцию потерь, например, вероятность ошибки решения. Таким образом, байесовскую сеть можно считать механизмом для автоматического применения теоремы Байеса к сложным проблемам.
Наиболее распространенными методами точного вывода являются: исключение переменных , которое исключает (путем интеграции или суммирования) ненаблюдаемые незапрашиваемые переменные одну за другой, распределяя сумму по произведению; распространение дерева клик , которое кэширует вычисления, так что многие переменные могут быть запрошены одновременно, и новые доказательства могут быть быстро распространены; и рекурсивное обусловливание и поиск И/ИЛИ, которые допускают компромисс между пространством и временем и соответствуют эффективности исключения переменных, когда используется достаточно места. Все эти методы имеют сложность, которая экспоненциально зависит от ширины дерева сети . Наиболее распространенными алгоритмами приближенного вывода являются выборка по важности , стохастическое моделирование MCMC , исключение мини-корзины, распространение циклических убеждений , распространение обобщенных убеждений и вариационные методы .
Для того чтобы полностью определить байесовскую сеть и, таким образом, полностью представить совместное распределение вероятностей , необходимо указать для каждого узла X распределение вероятностей для X , обусловленное родителями X. Распределение X, обусловленное его родителями, может иметь любую форму. Обычно работают с дискретными или гауссовыми распределениями , поскольку это упрощает вычисления. Иногда известны только ограничения на распределение; тогда можно использовать принцип максимальной энтропии , чтобы определить единственное распределение, которое имеет наибольшую энтропию с учетом ограничений. (Аналогично, в конкретном контексте динамической байесовской сети условное распределение для временной эволюции скрытого состояния обычно указывается для максимизации скорости энтропии подразумеваемого стохастического процесса.)
Часто эти условные распределения включают неизвестные параметры, которые должны быть оценены по данным, например, с помощью подхода максимального правдоподобия . Прямая максимизация правдоподобия (или апостериорной вероятности ) часто является сложной, учитывая ненаблюдаемые переменные. Классический подход к этой проблеме — алгоритм максимизации ожидания , который чередует вычисление ожидаемых значений ненаблюдаемых переменных, обусловленных наблюдаемыми данными, с максимизацией полного правдоподобия (или апостериорной вероятности), предполагая, что ранее вычисленные ожидаемые значения верны. В условиях умеренной регулярности этот процесс сходится к значениям максимального правдоподобия (или максимальной апостериорной вероятности) для параметров.
Более полно байесовский подход к параметрам заключается в том, чтобы рассматривать их как дополнительные ненаблюдаемые переменные и вычислять полное апостериорное распределение по всем узлам, обусловленным наблюдаемыми данными, а затем интегрировать параметры. Этот подход может быть дорогим и приводить к моделям большой размерности, делая классические подходы к установке параметров более послушными.
В простейшем случае байесовская сеть задается экспертом и затем используется для выполнения вывода. В других приложениях задача определения сети слишком сложна для человека. В этом случае структура сети и параметры локальных распределений должны быть изучены из данных.
Автоматическое изучение структуры графа байесовской сети (BN) является задачей, решаемой в рамках машинного обучения . Основная идея восходит к алгоритму восстановления, разработанному Ребане и Перлом [7], и основывается на различии между тремя возможными шаблонами, разрешенными в трехузловом DAG:
Первые 2 представляют те же зависимости ( и независимы, если заданы ) и, следовательно, неразличимы. Коллайдер, однако, может быть однозначно идентифицирован, поскольку и являются незначительно независимыми, а все остальные пары зависимы. Таким образом, в то время как скелеты (графы, лишенные стрелок) этих трех триплетов идентичны, направленность стрелок частично идентифицируема. То же самое различие применяется, когда и имеют общих родителей, за исключением того, что сначала нужно наложить условие на этих родителей. Были разработаны алгоритмы для систематического определения скелета базового графа и, затем, ориентации всех стрелок, направленность которых диктуется наблюдаемыми условными независимостьми. [2] [8] [9] [10]
Альтернативный метод структурного обучения использует поиск на основе оптимизации. Он требует функции оценки и стратегии поиска. Распространенной функцией оценки является апостериорная вероятность структуры, заданной данными обучения, такими как BIC или BDeu. Требуемое время исчерпывающего поиска, возвращающего структуру, которая максимизирует оценку, является сверхэкспоненциальным по числу переменных. Стратегия локального поиска вносит постепенные изменения, направленные на улучшение оценки структуры. Глобальный алгоритм поиска, такой как цепь Маркова Монте-Карло, может избежать попадания в ловушку локальных минимумов . Фридман и др. [11] [12] обсуждают использование взаимной информации между переменными и поиск структуры, которая максимизирует ее. Они делают это, ограничивая родительский набор кандидатов k узлами и выполняя в них исчерпывающий поиск.
Особенно быстрый метод для точного обучения BN — это представить проблему как задачу оптимизации и решить ее с помощью целочисленного программирования . Ограничения ацикличности добавляются к целочисленной программе (IP) во время решения в виде секущих плоскостей . [13] Такой метод может обрабатывать задачи с числом переменных до 100.
Для решения проблем с тысячами переменных необходим другой подход. Один из них заключается в том, чтобы сначала сделать выборку одного порядка, а затем найти оптимальную структуру BN относительно этого порядка. Это подразумевает работу над пространством поиска возможных порядков, что удобно, поскольку оно меньше пространства сетевых структур. Затем выбираются и оцениваются множественные порядки. Этот метод оказался лучшим из имеющихся в литературе, когда число переменных огромно. [14]
Другой метод заключается в фокусировке на подклассе разложимых моделей, для которых MLE имеют замкнутую форму. Тогда можно обнаружить согласованную структуру для сотен переменных. [15]
Обучение байесовских сетей с ограниченной древовидной шириной необходимо для обеспечения точного, поддающегося обработке вывода, поскольку сложность вывода в худшем случае экспоненциальна по древовидной ширине k (согласно гипотезе экспоненциального времени). Тем не менее, как глобальное свойство графа, это значительно увеличивает сложность процесса обучения. В этом контексте можно использовать K-дерево для эффективного обучения. [16]
При наличии данных и параметров простой байесовский анализ начинается с априорной вероятности ( приорного значения ) и правдоподобия для вычисления апостериорной вероятности .
Часто априорная вероятность зависит в свою очередь от других параметров , которые не упомянуты в вероятности. Таким образом, априорная вероятность должна быть заменена на вероятность , и требуется априорная вероятность для вновь введенных параметров , что приводит к апостериорной вероятности
Это простейший пример иерархической байесовской модели .
Процесс может повторяться; например, параметры могут зависеть в свою очередь от дополнительных параметров , которые требуют своего собственного априорного значения. В конце концов процесс должен завершиться с априорными значениями, которые не зависят от неупомянутых параметров.
Учитывая измеренные величины, каждая из которых имеет нормально распределенные ошибки известного стандартного отклонения ,
Предположим, что мы заинтересованы в оценке . Подходом было бы оценить с помощью подхода максимального правдоподобия ; поскольку наблюдения независимы, правдоподобие факторизуется, и оценка максимального правдоподобия просто
Однако если величины связаны, например, так, что индивидуум сам был взят из базового распределения, то эта связь разрушает независимость и предполагает более сложную модель, например,
с неправильными априорными данными , . Когда , это идентифицированная модель (т.е. существует уникальное решение для параметров модели), и апостериорные распределения индивидуума будут иметь тенденцию двигаться или сокращаться от оценок максимального правдоподобия к их общему среднему значению. Это сокращение является типичным поведением в иерархических байесовских моделях.
Необходимо проявлять осторожность при выборе априорных данных в иерархической модели, особенно в отношении масштабных переменных на более высоких уровнях иерархии, таких как переменная в примере. Обычные априорные данные, такие как априор Джеффриса, часто не работают, поскольку апостериорное распределение не будет нормализовано, а оценки, сделанные путем минимизации ожидаемых потерь, будут недопустимыми .
Было предложено несколько эквивалентных определений байесовской сети. Для следующего, пусть G = ( V , E ) будет направленным ациклическим графом (DAG) и пусть X = ( X v ), v ∈ V будет набором случайных величин, индексированных V .
X является байесовской сетью относительно G, если ее совместная функция плотности вероятности (относительно меры произведения ) может быть записана как произведение отдельных функций плотности, обусловленных их родительскими переменными: [17]
где pa( v ) — множество родителей v (т.е. тех вершин, которые напрямую указывают на v через одно ребро).
Для любого набора случайных величин вероятность любого члена совместного распределения можно рассчитать из условных вероятностей с использованием цепного правила (при заданном топологическом порядке X ) следующим образом: [17]
Используя определение выше, это можно записать так:
Разница между этими двумя выражениями заключается в условной независимости переменных от любых их непотомков, учитывая значения их родительских переменных.
X является байесовской сетью относительно G, если она удовлетворяет локальному марковскому свойству : каждая переменная условно независима от своих непотомков, учитывая ее родительские переменные: [18]
где de( v ) — множество потомков, а V \ de( v ) — множество не потомков v .
Это можно выразить в терминах, аналогичных первому определению, как
Множество родителей является подмножеством множества непотомков, поскольку граф ацикличен .
В целом, обучение байесовской сети по данным известно как NP-трудная задача . [19] Это отчасти связано с комбинаторным взрывом перечисления DAG по мере увеличения числа переменных. Тем не менее, понимание базовой байесовской сети может быть получено из данных за полиномиальное время, если сосредоточиться на ее структуре маргинальной независимости: [20] в то время как условные утверждения независимости распределения, смоделированного байесовской сетью, кодируются DAG (согласно факторизации и свойствам Маркова выше), ее маргинальные утверждения независимости — условные утверждения независимости, в которых множество обусловливания пусто — кодируются простым неориентированным графом со специальными свойствами, такими как равные числа пересечений и независимости .
Разработка байесовской сети часто начинается с создания DAG G, такого, что X удовлетворяет локальному марковскому свойству относительно G. Иногда это каузальный DAG. Оцениваются условные распределения вероятностей каждой переменной с учетом ее родителей в G. Во многих случаях, в частности, в случае, когда переменные являются дискретными, если совместное распределение X является произведением этих условных распределений, то X является байесовской сетью относительно G. [21 ]
Марковское покрывало узла — это набор узлов, состоящий из его родителей, его детей и любых других родителей его детей. Марковское покрывало делает узел независимым от остальной части сети; совместное распределение переменных в марковском покрывале узла является достаточным знанием для вычисления распределения узла. X является байесовской сетью относительно G , если каждый узел условно независим от всех других узлов в сети, учитывая его марковское покрывало . [18]
Это определение можно сделать более общим, определив «d»-разделение двух узлов, где d означает направленный. [2] Сначала мы определим «d»-разделение пути, а затем определим «d»-разделение двух узлов в его терминах.
Пусть P будет тропой от узла u до v . Тропа — это не имеющий петель, ненаправленный (т.е. все направления ребер игнорируются) путь между двумя узлами. Тогда говорят, что P d -разделен множеством узлов Z, если выполняется любое из следующих условий:
Узлы u и v d -разделены Z , если все пути между ними d -разделены. Если u и v не d-разделены, они d-связаны.
X является байесовской сетью относительно G , если для любых двух узлов u , v :
где Z — это набор, который d -разделяет u и v . ( Марковское одеяло — это минимальный набор узлов, который d -разделяет узел v от всех других узлов.)
Хотя байесовские сети часто используются для представления причинно-следственных связей, это не обязательно так: направленное ребро от u к v не требует, чтобы X v был причинно зависим от X u . Это демонстрируется тем фактом, что байесовские сети на графиках:
эквивалентны: то есть они предъявляют абсолютно одинаковые требования условной независимости.
Причинная сеть — это байесовская сеть с требованием, чтобы отношения были причинными. Дополнительная семантика причинных сетей определяет, что если узел X активно приводится в заданное состояние x (действие, записанное как do( X = x )), то функция плотности вероятности изменяется на функцию сети, полученную путем разрезания связей от родителей X к X и установки X в вызванное значение x . [2] Используя эту семантику, можно предсказать влияние внешних вмешательств на основе данных, полученных до вмешательства.
В 1990 году, работая в Стэнфордском университете над крупными биоинформатическими приложениями, Купер доказал, что точный вывод в байесовских сетях является NP-трудным . [22] Этот результат побудил к исследованию алгоритмов аппроксимации с целью разработки поддающейся обработке аппроксимации вероятностного вывода. В 1993 году Пол Дагум и Майкл Лаби доказали два удивительных результата о сложности аппроксимации вероятностного вывода в байесовских сетях. [23] Во-первых, они доказали, что ни один поддающийся обработке детерминированный алгоритм не может аппроксимировать вероятностный вывод с точностью до абсолютной ошибки ɛ < 1/2. Во-вторых, они доказали, что ни один поддающийся обработке рандомизированный алгоритм не может аппроксимировать вероятностный вывод с точностью до абсолютной ошибки ɛ < 1/2 с доверительной вероятностью больше 1/2.
Примерно в то же время Рот доказал, что точный вывод в байесовских сетях на самом деле является #P-полным (и, таким образом, таким же сложным, как подсчет количества удовлетворяющих назначений формулы конъюнктивной нормальной формы (CNF)) и что приближенный вывод в пределах множителя 2 n 1− ɛ для каждого ɛ > 0, даже для байесовских сетей с ограниченной архитектурой, является NP-сложным. [24] [25]
С практической точки зрения эти результаты по сложности предполагали, что, хотя байесовские сети были богатыми представлениями для приложений ИИ и машинного обучения, их использование в больших реальных приложениях должно было бы быть смягчено либо топологическими структурными ограничениями, такими как наивные байесовские сети, либо ограничениями на условные вероятности. Алгоритм ограниченной дисперсии [26], разработанный Дагумом и Луби, был первым доказуемым быстрым алгоритмом аппроксимации для эффективной аппроксимации вероятностного вывода в байесовских сетях с гарантиями на аппроксимацию ошибки. Этот мощный алгоритм требовал, чтобы незначительное ограничение на условные вероятности байесовской сети было ограничено от нуля и единицы с помощью , где был любым полиномом числа узлов в сети, .
Известное программное обеспечение для байесовских сетей включает в себя:
Термин «байесовская сеть» был введен Джудеей Перлом в 1985 году, чтобы подчеркнуть: [28]
В конце 1980-х годов в работах Перла «Вероятностное рассуждение в интеллектуальных системах» [30] и Неаполитана « Вероятностное рассуждение в экспертных системах» [31] были обобщены их свойства и выделены в отдельную область изучения.
{{cite book}}
: CS1 maint: location missing publisher (link){{cite book}}
: CS1 maint: bot: original URL status unknown (link):Также появляется как Хекерман, Дэвид (март 1997 г.). "Байесовские сети для добычи данных". Добыча данных и обнаружение знаний . 1 (1): 79–119. doi :10.1023/A:1009730122752. S2CID 6294315.