Эвристический метод построения Байесовских сетей

УДК 62-50

А.Н. ТЕРЕНТЬЕВ, П.И. БИДЮК

ЭВРИСТИЧЕСКИЙ МЕТОД ПОСТРОЕНИЯ БАЙЕСОВСКИХ СЕТЕЙ

Abstract: Bayesian networks are the instrument, which is widely used for classification task when performing data analysis. The network structure is a NP-hard problem. The paper presents a heuristic method for constructing Bayesian network, based on using mutual information between all vertexes and as an estimation function in each iteration to use description of minimum long. For calculation of the error of learning the formula of the structure difference is proposed. Basic definitions and correspondent illustrative examples are given.

Key words: Bayesian network, machine learning, minimum description length (MDL) principle, mutual information, heuristic method of learning.

Анотація: Байєсові мережі - це зручний інструмент для класифікації при здійсненні інтелектуального аналізу даних. Однак побудова Байєсових мереж по навчальних даних - це NP- складна проблема. В статті запропоновано евристичний метод побудови Байєсових мереж, оснований на використанні взаємної інформації між всіма вершинами, а як функції оцінки на кожній ітерації алгоритму навчання -використовувати значення описання мінімальної довжини. Для розрахунку похибки навчання запропоновано використовувати формулу структурної різниці. Наведено основні визначення та відповідні ілюстративні приклади.

Ключові слова: Байєсова мережа, машинне навчання, принцип описання мінімальної довжини (ОМД), взаємна інформація, евристичний метод навчання.

Аннотация: Байесовские сети являются великолепным инструментом для классификации при выполнении интеллектуального анализа данных. Но построение Байесовской сети по обучающим данным является NP-трудной задачей. В статье предлагается эвристический метод построения Байесовских сетей, основанный на использовании обоюдной информации между всеми вершинами, а в качестве оценочной функции, на каждой итерации алгоритма обучения, можно использовать значение описания минимальной длины. Для вычисления ошибки обучения предложено использовать формулу структурной разности. Приведены основные определения и соответствующие иллюстративные примеры.

Ключевые слова: Байесовская сеть, машинное обучение, принцип минимальной длины описания (ОМД), обоюдная информация, эвристический метод обучения.

1. Введение

Многие компании годами накапливают бизнес-информацию, надеясь, что она поможет им в принятии решений. Чем конкретнее информация, тем полезнее она для принятия решений. Интеллектуальный анализ данных (Data Mining) - это технология выявления скрытых взаимосвязей внутри больших баз данных. В основе большинства инструментов интеллектуального анализа данных лежат две технологии: машинное обучение (machine learning) и визуализация (визуальное представление информации). Байесовские сети как раз и объединяют в себе эти две технологии.

Машинное обучение ставит своей задачей выявление закономерностей в эмпирических данных [4, 5]. В противоположность математическому моделированию, изучающему следствия из известных законов, машинное обучение предназначено для воссоздания причин на основе наблюдений - эмпирических данных. Обучающиеся модели должны быть чувствительны к данным благодаря адаптации в процессе обучения своих настроечных параметров с целью наилучшего объяснения всех известных фактов. Однако хорошее качество объяснения имеющихся данных еще не гарантирует соответствующее качество прогнозов. Излишне сложные модели способны адаптироваться не только к типичным закономерностям, но и к случайным событиям, зафиксированным в данной обучающей выборке. Как следствие, такие модели обладают плохой прогнозирующей способностью: большая чувствительность к данным приводит к большому разбросу в прогнозах [4]. Модель в этом случае оказывается неспособной обобщить

данные путем отделения общих закономерностей от случайных флуктуаций. Поэтому ограничение сложности моделей является необходимым элементом теории обучения.

2. Постановка задачи

Задача построения Байесовской сети по заданным обучающим данным является NP-трудной (NP-hard, то есть - это задача нелинейной полиномиальной сложности). Поэтому разработка методов, позволяющих уменьшить вычислительную сложность, является актуальной и востребованной при моделировании процессов различной природы сетями Байеса. Ставится задача разработки эвристического метода построения Байесовских сетей, состоящего из двух этапов. На первом этапе выполняется вычисление значения обоюдной информации между всеми вершинами. На втором выполняется целенаправленный поиск, использующий в качестве оценочной функции оценку минимальной длины (ОМД), основанную на принципе описания, который применяется на каждой итерации алгоритма обучения.

3. Понятие Байесовской сети

Байесовская сеть (БС) - это пара < G,B >, в которой первый компонент G является направленным ациклическим графом, соответствующим случайным переменным. Граф записывают как набор условий независимости: каждая переменная независима от ее родителей в G . Вторая компонента пары - B, представляет собой множество параметров, определяющих

сеть. Она содержит параметры 0 г| . = P(X pa(X')) для каждого возможного значения X из

x I pa

X’ и pa(X’) из Pa(Xг), где Pa(Xг) обозначает набор родителей переменной X’ в G . Каждая переменная X’ в графе G представляется в виде вершины. Если рассмотреть больше чем один граф, то тогда используется обозначение PaG (X i ) для определения родителей Xi в графе G . Полная совместная вероятность БС B вычисляется по формуле

Pb(XXN) = П*=,Pb(X'\Pa(,X')).

С математической точки зрения БС - это модель представления вероятностных зависимостей, а также отсутствия этих зависимостей. При этом связь A  B является причинной, когда событие A является причиной возникновения B, то есть, когда есть механизм, в соответствии с которым значение, принятое A , влияет на значение, принятое B . БС называют причинной (каузальной), когда все ее связи являются причинными.

4. Вычислительная сложность задачи построения Байесовской сети

Построение Байесовской сети можно выполнить “в лоб”, простым перебором (exhaustive search) множества всех возможных нециклических моделей, из которых выбрать модель, наиболее адекватно соответствующую обучающим данным. Данная задача является NP-трудной, так как при

n

полном переборе количество всех моделей равняется 3 2 - kcycle, где n - количество вершин,

к^си - количество моделей с циклами. Количество всех возможных нециклических моделей можно посчитать при помощи рекуррентной формулы Робинсона, предложенной в 1976 году, [1, 2]:

/ («>=£ (-1)“. с;,-2“->- / (п -,),

2=1

где п - количество вершин, а /(0) = 1.

Таблица 1. Таблица зависимости числа моделей без циклов от количества вершин, которые нужно проанализировать при полном переборе моделей

Число вершин Модели без циклов Число вершин Модели без циклов

1 1 6 3,781,503

2 3 7 1,138,779,265

3 25 8 783,702,329,343

4 543 9 1,213,442,454,842,881

5 29,281 10 4,175,098,976,430,598,100

Однако на практике выполнить полный перебор моделей можно только для сетей не более чем с 7 вершинами. При количестве вершин больше 7 выполнить простой перебор не представляется возможным, так как не хватит никаких вычислительных ресурсов. Поэтому предлагается для построения Байесовских сетей использовать эвристический метод. Сначала метод производит вычисление значений обоюдной информации (mutual information) между всеми вершинами, после чего выполняется целенаправленный поиск, использующий в качестве оценочной функции принцип описания минимальной длины (ОМД), который применяется на каждой итерации алгоритма обучения.

5. Значения обоюдной информации (mutual information) между переменными

Для оценки степени зависимости двух произвольных переменных X и х1 в работе [3] Шоу и Лью в 1968 году предложили использовать значение обоюдной информации MI(X,х1). Для расчёта предложено следующее выражение:

MI (хг, х1) = ^ Р( хг, х1) • log

X х

(

Р

Р

По своей сути значение обоюдной информации является аналогом корреляции, но по своему содержанию - это оценка количества информации, содержащейся в переменной х’ о переменной х1. Значение обоюдной информации принимает неотрицательные значения М1 (X, х1) > 0, а в случае, если вершины х1 и х1 полностью независимы друг от друга, то М1 (х’,х1) = 0 , так как Р(х1,х1) = Р(х1 )• Р(х1) и, следовательно,

log

( Р(X1, X1)_^ Л ^

Р

(

log

Р

= log(l) = 0 .

В случае, если Байесовская сеть состоит из N вершин, то для вычисления MI(х1, х1) для

всех паросочетаний х1 и х1 потребуется выполнить

вычисление, при этом

М1 (х1, х]) = М1 (х], хг).

6. Принцип описания минимальной длины

Согласно теории кодирования Шеннона, при известном распределении Р(Х) случайной величины X длина оптимального кода для передачи конкретного значения х по каналу связи стремится к Ь(х) = - 1о§Р(х) . Энтропия источника £(Р) = -£Р(х)1о§Р(х) является минимальной

ожидаемой длиной закодированного сообщения. Любой другой код, основанный на неправильном представлении об источнике сообщений, приведет к большей ожидаемой длине сообщения. Иными словами, чем лучше модель источника, тем компактнее могут быть закодированы данные.

В задаче обучения источником данных является некая неизвестная нам истинная функция

распределения Р(О\к0), где D = (d1v..,dN} - набор данных, h - гипотеза вероятностного происхождения данных, L(D|h) = -logР($\И) - эмпирический риск, аддитивный по числу наблюдений и пропорциональный эмпирической ошибке. Отличие между Р^Ь) и модельным распределением Р(ЩИ) по мере Кулбака-Леблера определяется как

то есть оно представляет собой разницу ожидаемой длины кодирования данных с помощью гипотезы и минимально возможной. Эта разница всегда неотрицательна и равна нулю лишь при полном совпадении двух распределений. Иными словами, гипотеза тем лучше, чем короче средняя длина кодирования данных [4]. Принцип ОМД в своей нестрогой и наиболее общей формулировке гласит: среди множества моделей следует выбрать ту, которая позволяет описать данные наиболее коротко, без потери информации [6].

В общем виде задача ОМД выглядит следующим образом. Сначала задается множество

обучающих данных Б = |^1,...,йп\, ^ = {х1(1)х(2\..х^)} (нижний индекс - номер наблюдения, а верхний - номер переменной), п -количество наблюдений, каждое наблюдение состоит из N (N > 2) переменных X(1),X(2),...,X^), каждая 1 -я переменная (1 = 1,...,N) имеет Л(1) = {0,1,...,1) -1} (а1) > 2) состояний, каждая структура gе G БС представляется N множествами предков (П(1),...,П^)), то есть для каждой вершины 1 = 1,..., N, П(1) - это множество родительских вершин, такое что П (1) с {X(1),...,X^)}\{X(1)} (вершина не может быть предком самой себе, то есть петли в графе отсутствуют). Тогда ОМД структуры g е G при

Р( D|h) - Р( Dh,) = 2 P(D\ho)-\og

D

Рро)

Р

2 P(D|h0) • \L(Dh) - L(D|h0) > 0 ,

D

заданной последовательности из п наблюдений хп = d1d2...dn вычисляется по формулеL(g, хп) = H(g, хп) + k(g) log(n), где к(g) - количество независимых условных вероятностей в сетевой структуре g, а H(g, хп) - эмпирическая энтропия.

H (g, хп) = 2 H (1, g, хп), k (g) = 2 к (1, g),

1'eJ 1'eJ

где ОМД 1 -й вершины вычисляется по формуле

L( 1, g, хп) = H (1, g, хп) + k(2g) • log(n); к (1, g) - количество независимых условных вероятностей 1 -й вершины

к (j, g) = (У 10 -^ п^к,

кеф

где f(1) с {1,.., 1 -1,1 +1,..., N} - это такое множество, что П(1) = {Х(к) : к е ф(1)} .

Эмпирическая энтропия 1-й вершины вычисляется по формуле

A^sig]

seS(1,g) qeA1 n[s, j , g]

где

H(j,g,x") = Z Z -n[qs,j,g].log-

n(s, j, g)=21 (p 1 =s); п^ ^ 1 g]=21 (х = ^ p 10 =s),

1=1 1=1

где p1) =П(1) означает X(к) = х(к),"к e f( 1), функция I(E) = 1, когда предикат E = true , в противном случае I(E) = 0 .

Простой алгоритм обучения БС с использованием ОМД выглядит следующим образом. По

*

циклу производится перебор всех возможных нециклических сетевых структур. В g сохраняется оптимальная сетевая структура. Оптимальной структурой будет та, у которой наименьшее значение функции L(g, хп) .

Простой алгоритм обучения БС с использованием ОМД

1. g* - g0(е О).

2. Для "gе О -^} , если Ь^, хп) < Ь(^*, хп) , то тогда g* — g .

*

3. На выход подаётся g в качестве решения.

7. Пример использования метода ОМД

Пусть задан набор обучающих данных из 10 наблюдений для обучения БС, который приведён в табл. 2. В случае полного перебора всех возможных сетевых структур следует рассмотреть 25 структур. После того, как будут рассмотрены все 25 структур, в качестве оптимальной выдаётся структура, изображённая на рис. 1.

п X

1 0 1 1 6 0 1 1

2 1 0 0 7 1 0 1

3 0 1 1 8 1 0 0

4 1 0 0 9 0 1 1

5 0 1 1 10 1 1 1

Рис. 1. Оптимальная структура, соответствующая данным из табл. 2 Длина описания этой структуры вычисляется следующим образом. Вершина X(1) не имеет предков, то есть П(1) = {}. Эмпирическая энтропия вычисляется как

Н (1 = 1, g) = -5 • 1og|Jj5-j - 5•1og|Jj5j = 6,9315, а количество независимых условных вероятностей к(1 = 1,g) = 2 -1 = 1. Следовательно, длина описания вершины X(1) равняется Ь(1, g) = 6,9315 +1 • 1og(10) = 8,0828. При вычислении можно использовать логарифм с любой

базой. В данном примере используется с базой е = 2,7183 , то есть натуральный логарифм.

Таблица 3. Таблица значений параметров вершины X

X(1) п[^ ^ j, g ] п1А j, g]

0 5 10

1 5

Вершина X( ) имеет одного предка Xи , то есть П( ) = {X()} . Эмпирическая энтропия вычисляется как

0

Л

г

+

4

Л

= 2,502,

а количество независимых условных вероятностей к(1 = 2,g) = (2-1) 2 = 2. Следовательно, длина описания вершины X(2) равняется

2

Ь(2, g) = 2,502 + - • 1og(10) = 4,8046.

Таблица 4. Таблица значений параметров вершин X(2) и X

-

X(1) X(2) п^ s, j, g] п[^ j, g] X(2) X(3) п^ s, j, g] п[^ j, g]

0 0 0 5 0 0 3 4

0 1 5 0 1 1

1 0 4 5 1 0 0 6

1 1 1 1 1 6

Вершина X(3) имеет одного предка X(2), то есть П(3) = {X(2)}. Эмпирическая энтропия вычисляется как

С С 3 Л С1ЛЛ С СпЛ

н(1 = 3,g) = -Э-Ы-!-ЬЫ - I + -0-1о§1-| -6-1о§1-| = 2.2493 ,

V V 4 у Л4уу

V V 6 у V 6 уу

а количество независимых условных вероятностей к (у = 3, g) = (2 -1)-2 = 2 . Следовательно, длина описания вершины X(3) равняется

2

Ь(3, g) = 2,2493 + - - 1оё(10) = 4,5519.

То есть длина описания структуры g , представленной на рис. 1, равна

Н(^ Xй) = ]ГН(у,g, Xй) = 17,4393 .

1=1

О создании и использовании ОМД более подробно можно прочитать в [4, 6, 7, 8].

8. Эвристический метод построения Байесовских сетей

Входные данные. Множество обучающих данных В = |^1,...,dn}, di = |хг(1)хг(2)...хг(^)} (нижний

индекс - номер наблюдения, а верхний - номер переменной), п- количество наблюдений, N -количество вершин (переменных).

Первый этап. Для всех пар вершин вычисляют значения обоюдной информации

$>еі _МІ = |мі(хг, Xі); V/,у|. После этого элементы множества $>еі _МІ упорядочивают по

убыванию $>еі_МІ = {МІ(і”1,і”2),МІ(і”3,х”4),МІ(і”5,і”6),...} .

Второй этап. Шаг 1. Из множества значений обоюдной информации 8єї_МІ выбирают первые два максимальные значения МІ(і”1,і”2) и МІ(і”3,і”4) . По полученным значениям МІ(і”1,і”2) и МІ(і”3,і”4) строится множество моделей О вида {(”1  ”2; ”3  ”4), (”1  ”2; ”3 — ”4), (”1 — ”2; ”3 — ”4), (”1 — ”2; ”3  ”4), (”1 — ”2; ”3 не зависит от ”4), (”1  ”2; ”3 не зависит от ”4), (”1 не зависит от ”2;

”3  ”4), (”1 не зависит от ”2; ”3 — ”4), (”1 не зависит от ”2; ”3 не зависит от ”4)}.

_ ”. ”і Запись вида ”  ”, означает, что вершина і ' является предком вершины і 1.

‘ 1

у—т *

Шаг 2. Затем среди всех моделей множества О осуществляется поиск. В параметре g сохраняется оптимальная сетевая структура. Оптимальной структурой будет та, у которой наименьшее значение функции Ь^,іп). Ь^, іп) - ОМД структуры модели при заданной

последовательности из п наблюдений іп = d1d2...dn.

1. g* — gо(Е О) .

2. Для "gе G -{g0} , если L(g, xn) < L(g*, xn) , то тогдаg* — g .

*

3. На выход подаётся g в качестве решения.

Шаг 3. После того, как найдена оптимальная структура (структуры) g* из G , из множества значений обоюдной информации Set_MI выбирают следующее максимальное значение

MI(xl_nexti, x1 _next) . По полученному значению MI(xl_nexti, x1 _next) и структуре (структурам) g*

* . . * . . * строится множество моделей G вида { (g ; i _next  j _next), (g ; i _next — j _next), (g ;

i_next не зависит от j_next)}. После чего выполняется шаг 2.

Условие завершения. Эвристический метод будет выполняться до тех пор, пока не будет

N-

проанализировано определённое число элементов множества или все ------------------- элементы

2

множества Set _MI. Как показывает практика, в большинстве случаев нет смысла выполнять

N-

анализ более чем половины (то есть------------) элементов множества Set MI.

4

*

Выходные данные. Оптимальная структура (структуры) g .

9. Пример построения сети “Азия” эвристическим методом

В качестве примера используется сеть “Азия” с восемью вершинами. В табл. 5 приведены значения обоюдной информации всех вершин сети (первый этап алгоритма), а в табл. 6 приведён порядок построения БС “Азия” эвристическим методом (второй этап алгоритма). Обучение выполнялось выборкой из 7000 обучающих наблюдений.

Таблица 5. Значения обоюдной информации между всеми вершинами БС “Азия”

№ MI I I № MI i I № MI i I № MI i I

1 Q,251 7 8 В Q,Q245 1 8 15 Q,QQ1227 3 5 22 Q,QQQ12271 2 5

2 Q, 13б 2 4 9 Q,Q132 4 8 16 Q,QQQ851 1 б 23 Q,QQQQ6475 5 б

3 Q, 125 4 б 10 Q,Q1Q1 2 8 17 Q,QQQ5Q8 2 7 24 Q,QQQQ395Q 2 3

4 Q,Q96 2 б 11 Q,QQ51 б 8 1В Q,QQQ381 3 7 25 Q,QQQQ3249 5 7

5 Q,Q48 1 7 12 Q,QQ31 1 2 19 Q,QQQ266 4 5 26 Q,QQQQ1725 5 8

6 Q,Q36 3 4 13 Q,QQ28 3 8 20 Q,QQQ197 1 5 27 Q,QQQQQ3Q3 1 3

7 Q,Q25 3 б 14 Q,QQ22 1 4 21 Q,QQQ128 4 7 2В Q,QQQQQQ74 б 7

На рис. 2 приведена структура оригинальной Байесовской сети, по которой генерировались значения.

Полученная оптимальная структура Итерация

5 5 1 1 ш ш 3 3 2 2 ^ 7 На 1-й итерации по первым 2-м строкам МІ(7,8) и МІ(2,4) отсортированной матрицы МІ строится множество моделей из 9 структур

5 1 • 3 2 • • V* 6^ 8^ 7 • • На 2-й итерации по полученным оптимальным моделям и МІ(4,6) строится множество моделей из 6 структур

На 3-й итерации по полученной оптимальной модели и МІ(2,6) строится множество моделей из 3 структур. В результате получаем ту же оптимальную структуру, что и на предыдущей итерации

5 5 1 1 3 3 2 2 • 44.9* \Л 66ІІГ8^^ 7 7 На 4-й итерации по оптимальной модели и МІ(1,7) строится множество моделей из 3 структур

55 11 ^ 33 2г 6^^ 88^-^ • • На 5-й итерации по оптимальным моделям 4-й итерации и МІ(3,4) строится множество моделей из 6 структур

На 6-й итерации по оптимальным моделям 5-й итерации и МІ(3,6) строится множество моделей из 6 структур. В результате получаем те же оптимальные структуры, что и на предыдущей 5-й итерации

На 7-й итерации по оптимальным моделям 5-й итерации и МІ(1,8) строится множество моделей из 6 структур. Результат совпадает с 5-й итерацией

5 1  3 2 ^ ’Vе І 7 6 8^—’ • • 5 1 • 3 2 •* V V 6 8^—' • • На 8-й итерации по полученным на предыдущей 7-й итерации моделям и МІ4,8) строится множество моделей из 6 структур

На 9-й итерации по оптимальным моделям 8-й итерации и МІ(2,8) строится множество моделей из 6 структур. В результате получаем те же оптимальные структуры, что и на предыдущей 8-й итерации

На 10-й итерации по оптимальным моделям 8-й итерации и МІ(6,8) строится множество моделей из 6 структур. Результат совпадает с 8-й итерацией

Продолжение табл. 6

На 11-й итерации по полученным на предыдущей 10й итерации моделям и М1(1,2) строится множество моделей из 6 структур

На 12-й итерации по М1(3,8) строится множество моделей из 6 структур

На 13-й итерации по М1(1,4) строится множество моделей из 6 структур

На 14-й итерации по полученным на предыдущей 10й итерации моделям и М1(3,5) строится множество моделей из 6 структур

На 15-й итерации по полученной на 14-й итерации оптимальной структуре и М1(1,6) строится множество моделей из 3 структур

С 15-й по 27-ю итерацию никаких изменений оптимальной структуры, полученной на 14-й, итерации не происходит

Для построения БС “Азия” при простом анализе всех возможных нециклических структур потребуется выполнить оценку 783 702 329 343 моделей. Тогда как эвристический метод на 27-ми итерациях алгоритма выполняет анализ всего лишь 120 структур, причём уже на 14-й итерации, после анализа 81 структуры, метод выдаёт структуру, полностью совпадающую с оригинальной сетью “Азия”. То есть следующие 13 итераций метода не производят никаких изменений, потому что оптимальная структура уже найдена на 14 итерации.

10. Оценка качества обучения БС

Для оценивания качества обучения БС можно использовать учёт количества лишних, отсутствующих и реверсированных дуг в обученной БС по сравнению с оригинальной БС. А в качестве меры ошибки обучения можно использовать структурную разницу (structure difference) или перекрёстную энтропию (cross entropy) между обученной БС и оригинальной БС.

Для вычисления структурной разницы используют формулу симметрической разницы структур [9]:

d = Е d = ^card (п(i }(В)АП(i ^A)) = £card ((п(i )(B) \ П(i }(A))U (п (i)(A) \ П(i }(£))),

i=1 i=1 i=1

где B - обученная БС, A - оригинальная БС, n - количество вершин сети, П(i)(B) - множество предков i- й вершины обученной сети B, П(i)(A) - множество предков i - й вершины оригинальной сети A , card(%) - мощность конечного множества %, которое определяется как количество элементов, принадлежащих множеству %.

1

i

\

Кз

wk 4 у*

4V

6Л.

1

£

5

5

7

7

5

7

р( X(1) = а = С

q

Перекрёстная энтропия - это расстояние между распределением обученной БС и оригинальной БС. Пусть р(у) - совместное распределение оригинальной БС, а q(v) - совместное распределение обученной БС. Тогда перекрёстная энтропия вычисляется как [10]

н(р,q) = X= X X X Р(х(1) = а|п(1) = 5)1о§

V q

11. Экспериментальные результаты

Было проведено шесть вычислительных экспериментов. В каждом эксперименте эвристическим методом проводилось обучение сети из 10 вершин выборкой из 2000 обучающих наблюдений. Для оценивания качества обучения используется структурная разница между обученной и оригинальной Байесовской сетью. В табл. 6 показаны результаты шести вычислительных экспериментов. Для каждого эксперимента было выполнено 44 итерации обучения.

Таблица 7. Результаты шести вычислительных экспериментов

Номер вычислительного эксперимента №1 №2 №3 №4 №5 №6

Общее количество моделей, проанализированных эвристическим методом на всех итерациях 513 178 415 282 550 329

Лишние дуги 1 0 1 2 4 0

Отсутствующие дуги 0 0 0 0 1 0

Реверсированные дуги 3 0 1 1 1 0

Структурная разница между обученной и оригинальной моделями 8 0 3 3 7 0

Как видно из табл. 6, в двух из шести вычислительных экспериментах №2 и №6 обученная сеть полностью совпала с оригинальной БС. В двух из шести экспериментах №3 и №4 ошибка обучения, то есть структурная разница между обученной и оригинальной моделями равняется 3, что для сети из 10 вершин является приемлемой ошибкой. Значительные ошибки обучения получены в экспериментах №1 и №5. Однако для построения сети был выполнен анализ всего лишь 513 и 550 моделей соответственно, на всех 44 итерация, в то время как при простом переборе всех возможных нециклических моделей нужно было бы проанализировать 4 175 098 976 430 598 100 моделей.

12. Выводы

В статье рассмотрена проблема обучения Байесовских сетей. Поскольку обучение БС является ЫР-трудной задачей, то для уменьшения вычислительной сложности предложен новый эвристический метод построения БС, основанный на использовании оценки обоюдной информации между вершинами и методом ОМД. Данный эвристический метод является итерационным и позволяет значительно уменьшить вычислительную сложность обучения БС.

Алгоритм предложенного эвристического метода подробно рассмотрен на известном примере обучения БС “Азия”, состоящей из 8 вершин. Для обучения понадобилось выполнить анализ 120 структур, тогда как при простом полном переборе нужно проанализировать 783 702 329 343 нециклических структур.

Из результатов проведённых вычислительных экспериментов видно, что в большинстве случаев ошибка обучения эвристическим методом является приемлемой, а экономия вычислительных ресурсов и времени очень значительной. Для оценивания качества обучения сетей использованы формулы структурной разницы и перекрёстной энтропии.

Использование эвристического метода обучения существенно расширяет возможности использования Байесовских сетей при проведении анализа в различных областях человеческой деятельности, особенно там, где приходится работать с большими объёмами информации.

СПИСОК ЛИТЕРАТУРЫ

1. Robinson R.W. Counting unlabeled acyclic digraphs // Proceeding of Fifth Australian on Combinatorial Mathematics. Melbourne. - 1976. - P. 28-43.

2. Leray P., Francois O. BNT structure learn package: documentation and experiments // Technical report, laboratory PSI-INSA Rouen-FRE CNRS 2645. - 2004. - 27 p.

3. Chow C.K., Liu C.N. Approximating discrete probability distributions with dependence trees // IEE Transactions on information theory. -1968. - Vol. IT-14, № 3. - 6 p.

4. Шумский С.А. Байесова регуляризация обучения. Лекции по нейроинформатике. - М.: МИФИ, 2002. - Ч. 2. -172 с.

5. Бидюк П.И., Терентьев А.Н., Гасанов А.С. Построение и методы обучения Байесовских сетей // Кибернетика и системный анализ. - 2005. - № 4. - С. 133-147.

6. Grunwald P. A Tutorial Introduction to the Minimum Description Length Principle. // Advances in Minimum

Description Length: Theory and Applications MIT Press. - Cambridge. - 2005. - 80 p.

7. Suzuki J. Learning Bayesian Belief Networks Based on the MDL Principle: An Efficient Algorithm Using the Branch and Bound Technique // IEICE Trans. on Information and Systems. - 1999. - P. 356-367.

8. Suzuki J. Learning Bayesian Belief Networks based on the Minimum Description length Principle: Basic Properties // IEICE Trans. on Fundamentals. - 1999. - Vol. E82-A № 9. - 9 p.

9. Zheng Y., Kwoh C.K. Improved MDL Score for Learning of Bayesian Networks. Proceedings of the International

Conference on Artificial Intelligence in Science and Technology. - 2004. - AISAT. - P. 98-103.

10. Heckerman D., Geiger D., Chickering D. Learning Bayesian Networks: The combination of knowledge and statistical data // Technical report. MSR-TR-94-09. - 1994. - 54 p.