УДК 004.942 / 519.2 Д.В. ГОРИШНИЙ ЭВРИСТИЧЕСКИЙ АЛГОРИТМ
СИНТЕЗА МОДЕЛИ ЗАВИСИМОСТЕЙ МЕЖДУ СОБЫТИЯМИ
Рассмотрена проблема выявления зависимостей между событиями на примере сбоев устройств железнодорожной автоматики и телемеханики. Предложен эвристический алгоритм синтеза структуры модели зависимостей — байесовской сети — по диагностическим данным на основе применения принципа описания минимальной длины. Представлено описание разработанного алгоритма и его программной реализации.
Ключевые слова: автоматика и телемеханика, техническое диагностирование, интеллектуальный анализ данных, байесовская сеть, направленный ациклический граф, взаимная информация, принцип описания минимальной длины, адаптивность.
Введение. В науке и технике существует целый ряд задач, в которых требуется выявить закономерности различных процессов, описать функционирование системы при наличии определенных внешних воздействий, построить модель, характеризующую наличие (или отсутствие) функциональных, либо вероятностных зависимостей между элементами системы, или сделать выбор между несколькими альтернативными моделями.
К числу таких задач относится и задача выявления вероятностных зависимостей между изменениями диагностических состояний технических объектов, образующих единую систему. Пример — выявление зависимостей (здесь и далее речь идет о вероятностных зависимостях, если не оговорено иное) между сбоями устройств железнодорожной автоматики и телемеханики (ЖАТ).
Широкое внедрение систем технического диагностирования и мониторинга на сети железных дорог России позволило накопить значительный объем информации
о функционировании устройств ЖАТ, зафиксированных неисправностях, сбоях и других контролируемых параметрах.
С помощью современных методов анализа данных эту информацию можно использовать для изучения закономерностей возникновения сбоев и аварий, их предотвращения, поддержки принятия решений о проведении внеочередных работ по техническому обслуживанию и ремонту устройств и т. д.
Интеллектуальный анализ данных — это технология выявления скрытых взаимосвязей внутри больших баз данных. В основе большинства инструментов интеллектуального анализа данных лежат две технологии: машинное обучение (machine learning) и визуализация (визуальное представление информации).
Машинное обучение — обширная область исследований, включающая большое количество проблем и алгоритмов их решения. Эти алгоритмы различаются своими задачами, исходными данными, стратегиями обучения и способами представления знаний. Однако все они сводятся к поиску полезной информации и ее корректному обобщению. Обучение подразумевает обобщение на основе опыта [1].
В ранний период развития искусственного интеллекта в целом и машинного обучения в частности, казалось вероятным, что основная часть классической теории станет устаревшей. Это привело к определенной форме самоизоляции, характеризовавшейся тем, что искусственный интеллект в значительной степени отделился от остальной части компьютерных наук. В
настоящее время такой изоляционизм преодолен. Появилось признание того, что машинное обучение не следует отделять от теории информации [2].
Теорию информации и машинное обучение следует рассматривать совместно, так как они изучают схожие проблемы, а именно: проблемы обмена и обработки информации. Например, человеческий мозг является примером сложнейшей системы сжатия и обмена информацией. Наиболее совершенные алгоритмы сжатия данных и помехоустойчивого кодирования используют те же подходы, что и алгоритмы машинного обучения [3].
Машинное обучение объединяет несколько областей знаний, что позволяет различным методам и подходам ассимилироваться в единую теорию [4].
Для обеспечения эффективного представления неопределенных знаний и проведения на их основе строгих рассуждений были разработаны формальные средства байесовских сетей (БС). Этот подход позволил преодолеть многие проблемы систем вероятностных рассуждений, возникавшие в 1960—1970 гг.; теперь он стал доминирующим в таких направлениях исследований искусственного интеллекта, как формирование рассуждений в условиях неопределенности и экспертные системы. Данный подход позволяет организовать обучение на основе опыта и сочетает в себе лучшие достижения классического искусственного интеллекта и нейронных сетей [2].
Байесовские сети объединяют в себе технологии машинного обучения и визуализации и весьма удобны для описания сложных процессов и событий с неопределенностью. Они представляют собой графические модели событий и процессов на основе объединения подходов теории вероятностей и теории графов. Их название связано, прежде всего, с байесовским правилом вероятностного вывода [5].
Основная идея построения графической модели — понятие модульности, т. е. разложение сложной системы на простые элементы. Связи (зависимости) объединяют элементы в упорядоченную систему и характеризуются условными вероятностями совместной реализации событий, основными параметрами такой модели.
Существует два способа задания структуры БС: экспертный и алгоритмический [6]. Экспертный подход в ряде случаев полезен, но при его использовании велика роль «человеческого фактора» — возможны ошибки и проявление субъективизма эксперта. Алгоритмический подход основывается исключительно на данных выборки, «человеческий фактор» исключен, существенно расширена область применения, но, как показано в работе [7], задача построения структуры по данным является NP-сложной, и для сетей с числом вершин более десяти ее решение занимает весьма существенное время.
В данной работе предлагается эвристический алгоритм синтеза модели зависимостей — байесовской сети — на основе принципа описания минимальной длины с предварительным упорядочиванием вершин по значению взаимной информации.
Описание структуры модели зависимостей. Байесовскую сеть можно определить как двойку < G,В >, в которой первый компонент Gявляется направленным ациклическим графом, вершины которого соответствуют возможным событиям исследуемой предметной области, а ребра — причинно-следственным связям между этими событиями.
Второй компонент двойки В представляет собой множество параметров, определяющих
родителей переменной X1 в G. Каждая переменная X1 в графе G представляется в виде вершины.
Полная совместная вероятность БС вычисляется по формуле:
сеть — набор таблиц условных вероятностей. Он содержит параметры
для каждого возможного значения X из X' и ра (X1) из Ра (X1), где Ра (X1) обозначает набор
р® (х \..., I" ) = прв (хчра (X'))
1=1
С математической точки зрения БС — это модель представления наличия (а также отсутствия) вероятностных зависимостей. При этом связь А ^А является причинной, когда событие А является причиной возникновения В, т. е. когда есть механизм, в соответствии с которым значение, принятое А, влияет на значение, принятое В. Байесовскую сеть называют причинной (каузальной), когда все ее связи являются причинными.
Графически структура БС может быть представлена в виде дерева, полидерева, решетки, либо их комбинации (рис. 1).
Дерево — такая структура БС, в которой любая вершина может иметь не более одной вершины-предка (рис. 1, а).
Полидерево — структура БС, в которой любая вершина может иметь более одной вершины-предка, но при этом между любыми двумя вершинами должно быть не более одного связывающего их пути (рис. 1, б).
Решетка — сетевая структура, в которой любая вершина может иметь более одной вершины-предка; при этом между любыми двумя вершинами может быть более одного связывающего их пути (рис. 1, в).
Расчет взаимной информации между событиями. Для оценки степени зависимости двух произвольных переменных X и X Шоу и Лью [8] предложили использовать значение взаимной информации М1(Х, X). Расчет выполняется по следующей формуле:
Взаимная информация — это статистическая функция двух случайных величин, описывающая количество информации, содержащееся в одной случайной величине (х]) относительно другой (X). Значение взаимной информации становится неотрицательным
б)
Рис. 1. Примеры различных типов БС:
а — дерево; б — полидерево; в — решетка
в)
М1 (X, х] )> 0, а в случае, если вершины X и X полностью независимы друг от друга, то М1 (X, х1 ) = 0, так как Р(х', х1 ) = Р(X)Р(х1) и, следовательно,
Значения собственной P(x) и совместной P(x\ xj ) вероятностей событий вычисляются по выборке эмпирических данных.
В случае, если БС состоит из N вершин, для вычисления MI(x\ xj) для всех сочетаний X
и X потребуется выполнить N(N -1)/2 вычислений, так как MI (хг, xJ ) = MI(xJ, X).
Оценка модели по критерию описания минимальной длины. Согласно теории кодирования К. Шеннона, при известном распределении PX) случайной величины X длина оптимального кода для передачи конкретного значения X по каналу связи стремится к
L (х) = - log P (x).
Энтропия источника S (P ) = -^ P (x) log P (x) является минимальной ожидаемой длиной
x
закодированного сообщения. Любой другой код, основанный на неправильном представлении об источнике сообщений, приведет к большей ожидаемой длине сообщения. Иными словами, чем лучше модель источника, тем компактнее могут быть закодированы данные.
В задаче обучения источником данных является некая неизвестная нам истинная функция распределения P(D|h0), где D = {dx,..., dN} — набор данных, h — гипотеза вероятностного
происхождения данных, L(D|h) = -logP(D|h) — эмпирический риск, аддитивный по числу наблюдений и пропорциональный эмпирической ошибке.
Отличие между P(D | h0) и модельным распределением P(D | h ) по мере Кульбака— Лейблера определяется как
|P (D | h )-P (D|ho )|=Х P (D|ho ) log Pp(D|h,o) =X P ( D|ho )|L (D| h )|> 0,
D P (D | h) D
т. е. представляет собой разность ожидаемой длины кодирования данных с помощью гипотезы и минимально возможной. Эта разность всегда неотрицательна и равна нулю лишь при полном совпадении двух распределений. Таким образом, гипотеза тем лучше, чем короче средняя длина кодирования данных [9].
Принцип описания минимальной длины (ОМД) в наиболее общей формулировке гласит: среди множества моделей следует выбрать ту, которая позволяет описать данные наиболее коротко, без потери информации [10, 11].
В общем виде задача ОМД выглядит следующим образом. Сначала задается множество
обучающих данных D = {dx,..., dn}, dt = {x(1)x(2) x...xx(N)} (нижний индекс — номер
наблюдения, а верхний — номер переменной), n — количество наблюдений, каждое наблюдение состоит из N (N > 2) переменных X(1), X2),..., XN, каждая j-я переменная (j = 1, ..., N) имеет
^(j)={o, 1,..., a(j)-1| (a(j)>2) состояний, каждая структура geG БС представляется N
множествами предков (П(1), ..., n(N) ), т. е. для каждой вершины 1, ..., N, Пм — это множество родительских вершин, такое, что nj) с {X4,..., XN} \ {X^} (вершина не может быть предком самой себе,
т. е. петли в графе отсутствуют).
Тогда ОМД структуры geG при заданной последовательности из n наблюдений X = = did2x...xdn вычисляется по формуле:
L (£, хп ) = Н (^, хп ) + log (п), (2)
где к(д) — количество независимых условных вероятностей в сетевой структуре д; Н(д, X) — эмпирическая энтропия, H (£,xn ) = ХH (у,£, xn) к(£) = ^ к(у, g).
Здесь ОМД j-й вершины вычисляется по формуле:
L (j, g,x )=H (i, g,xlog (n); kj, 9) — количество независимых условных вероятностей j-й вершины,
k (i, g ) = (a1)-1)- П ak,
V > кеф( 1)
где ф( j)c{l, ..., j -1, j +1, ..., N} — это множество, такое, что I (i)=jxk : к еф(1)|.
Эмпирическая энтропия j-й вершины вычисляется по формуле:
n [ ^, S І, g ]
s^S (1, g) qeA(i) П[ S, 1 g ]
h(j,g,xn)= x X -n[q,s,J,g]log n[S J g]> (3)
/ • \ / • \ где n (s J, g) = X1 (< =s); n [q, s J, g] = X1 (x = q, =s).
i=1 i=1
Здесь n<J) = n(j) означает Xk) = Xk), Укеф(/), функция I(E) = 1, когда предикат Е = true, в противном случае I<E) = 0.
На рис. 2, а приведена блок-схема предлагаемого эвристического алгоритма синтеза графа (БС), структура которого соответствует причинно-следственным связям между наблюдаемыми событиями, по экспериментальным данным с использованием принципа ОМД.
В начале работы алгоритма выполняется загрузка данных с результатами наблюдений, а также инициализация исходного графа с числом вершин, равным количеству наблюдаемых событий. Затем выполняется расчет собственных и совместных вероятностей наблюдаемых событий, а также значений взаимной информации (Mutual Information — MI) между парами событий по формуле (1). Расчетные значения MI сортируются по убыванию и помещаются в стек 5.
После этого из стека извлекаются два наибольших значения MI, и на основе относящихся к ним событий (вершин графа) строится множество графов G вида:
Ge{ (mx ^ m2; m3 ^ m4), (mx ^ m2; m3 ^ m4), (mx ^ m2; m3 ^ m4), (mx ^ m2; m3 ^ m4),
(mx ^ m2; m3 J m4), (mx ^ m2; m3 J m4), (mx J m2; m3 ^ m4), (mx J m2; m3 ^ m4),
(mx J m2; m3 J m4 ) }.
Запись вида mt ^ mj означает, что вершина xm является предком вершины xmj. Запись
I m m:
вида mt J m: означает, что вершины x • и x } не связаны.
Для каждого из графов множества G по формуле (2) вычисляется длина кодового описания, и Штрафов с минимальной длиной описания помещаются в рабочее множество R.
Далее выполняется двойной цикл: внешний — для каждого значения MI из стека 5 и внутренний — для каждого графа R множества R. Графы, построенные во внутреннем цикле, на базе R и очередного значения MI, помещаются во временное подмножество графов Rt По
завершении внутреннего цикла множество Л очищается, а элементы подмножества Л перемещаются в Л. После завершения внешнего цикла множество Л сортируется и определяется граф с наименьшей длиной кодового описания, который наиболее точно отражает зависимости между событиями, представленными в выборке эмпирических данных.
Выбор из стека двух максимальных значений взаимной информации
Синтез исходного множества графов на основе вершин, относящихся к выбранным значениям
Инициализация рабочего множества N графами с минимальной длиной описания, где N— количество вершин графа
Для каждого из оставшихся в стеке значений взаимной информации
Для каждого графа из рабочего множества
Генерация подмножества на основе выбранного графа и очередной вершины из стека
Выбор из подмножества графа с минимальной длиной описания, добавление его в рабочее множество
Возврат результата - графа рабочего множества с минимальной длиной описания
а) б)
Рис. 2. Блок-схемы алгоритмов синтеза структуры модели зависимостей:
653
а — обобщенная блок-схема алгоритма; б— блок-схема эвристического алгоритма синтеза графа зависимостей
Пример применения алгоритма. В качестве примера проанализируем зависимость между унифицированными диагностическими состояниями (ДС) одного из наиболее распространенных устройств ЖАТ — стрелочного привода.
Пусть задан набор данных из 30 наблюдений (см. таблицу). Каждое наблюдение содержит информацию о наборе текущих диагностических состояний стрелочного привода.
В таблице использованы следующие обозначения:
X4 — контроль срабатывания сигнала взреза стрелки (предотказ);
Х2) — кратковременная потеря контроля (предотказ);
X3 — потеря контроля (отказ);
X4 — отсутствие перевода (отказ);
0 — отсутствие ДС в период наблюдения;
1 — наличие ДС в период наблюдения.
Данные о диагностике стрелочного привода
№ п/п (1) X (2) X (3) X (4) № п/п X (1) X (2) X (3) X (4)
1 1 0 1 16 1 1 1
2 1 0 0 17 1 1 1
3 0 0 1 18 1 1 1
4 1 0 1 19 1 1 1
5 1 0 0 20 0 1 1
6 1 0 0 21 0 1 1
7 1 0 1 22 0 1 1
8 0 0 1 23 1 1 1
9 0 0 1 24 1 0 1
10 0 1 1 25 1 0 1
11 0 1 1 26 1 0 0
12 0 1 1 27 1 0 1
13 0 1 1 28 1 0 0
14 0 1 1 29 1 0 0
15 0 1 1 30 1 0 0
Требуется определить структуру модели зависимостей между событиями X4, Х2), Х3), Х4).
Воспользуемся программной реализацией предлагаемого алгоритма, выполненной на объектно-ориентированном языке С# в виде библиотеки классов. Для автоматизации операций получения набора данных, выполнения вычислений и отображения результатов была разработана компьютерная программа, включающая в себя реализацию предлагаемого алгоритма.
Выбор структуры сети по эмпирическим данным
Строка подключения к базе данных ЦТДМ
Data Source=127.0.0.1, Initial Catalog=BayesDB; userid=sa
Станция Объект
N- набора состояний
Запрос данных
Амта
I Стрелка 2
Период времени
2010.03.10 00:00:00 Щ’’ 2010.03.10 23:59:59 В-
Диагностические данные (строк - 31)
Выполнение расчета [ Полный перебор Эвристика
Х1 Х2 хз Х4 *
1 1 0 1 J
1 1 0 0
1 0 0 1 -
Список графов (строк - 64)
N- Список ребер графа
Длина кодового описания
D
ХЗ-Х4.Х1-ХЗ, Х2-ХЗ
70,7624108212959
ІХЗ-Х4.ХЗ-Х1.ХЗ-Х2
71,5401230237452
ХЗ-Х4.ХЗ-Х1.Х2-ХЗ
71.5401230237452
□
Время расчета: 0,144с
Рис. 3. Пользовательский интерфейс программы
На рис. 3 показан пользовательский интерфейс программы, реализующий следующие основные функции:
— выбор параметров запроса данных (строка подключения к серверу баз данных, станция, объект и период времени);
— получение и отображение данных об изменениях ДС;
— запуск эвристического алгоритма и отображение результатов его работы.
После выполнения расчетов видно (список графов отсортирован по возрастанию длины кодового описания), что наименьшую длину описания имеет граф «X1-X3, X2-X3, X3-X4» (см. рис. 3). Это соответствует результатам расчетов с применением принципа ОМД при полном переборе всех возможных структур графов с четырьмя вершинами. Структура результирующего графа с расшифровкой ДС показана на рис. 4.
Рис. 4. Структура модели, соответствующая диагностическим данным (см. таблицу)
Выводы. Применение методов интеллектуального анализа данных позволяет использовать диагностическую информацию о функционировании технических устройств для изучения закономерностей их работы, выявления предпосылок и предотвращения сбоев и аварий, внедрения систем поддержки принятия решений.
Байесовские сети являются одним из наиболее эффективных методов интеллектуального анализа данных. Объединяя подходы теории вероятностей и теории графов, они представляют собой удобный инструмент для описания сложных процессов и событий с неопределенностями.
Рассмотрена проблема выявления зависимостей между сбоями устройств ЖАТ, предложен эвристический алгоритм синтеза структуры модели зависимостей — байесовской сети — на основе применения принципа описания минимальной длины, дано описание разработанного алгоритма и его программной реализации.
Возможность автоматического выявления зависимостей между сбоями позволяет корректировать модели, построенные с привлечением экспертов-технологов, а также обеспечить адаптивность моделей к постоянно поступающим данным диагностики и мониторинга устройств ЖАТ.
Библиографический список
1. Люгер Дж. Искусственный интеллект. Стратегии и методы решения сложных проблем. — М. : Вильямс, 2003. — 864 с.
2. Рассел С., Норвиг П. Искусственный интеллект: современный подход. — М. : Вильямс, 2006. — 1408 с.
3. McKay D. Information Theory, Inference, and Learning Algorithms. — Cambridge : Cambridge University Press, 2003. — 550 p.
4. Mitchell T. Machine Learning. — NY : McGraw-Hill, 1997. — 432 p.
5. Murphy K. A Brief introduction to graphical models and Bayesian networks. — Berkeley, 2001. —
19 p.
6. Otenyia L. Bayesian Belief Networks for dementia diagnosis and other applications: A comparison of hand-crafting and construction using novel data-driven technique // Technical Report CSM-179. — University of Stirling, 2008. — 332 p.
7. Chickering D.M., Geiger D., Heckerman D. Learning Bayesian Networks is NP-hard // Technical Report MSR-TR-94-17. — Microsoft, 2004. — 155 p.
8. Chow C.K., Liu C.N. Approximating discrete probability distributions with dependence trees //
IEE Transactions on information theory. — 1968. — Vol. IT-14, N 3. — 6 p.
9. 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.
10. Suzuki J. Learning Bayesian Belief Networks based on the Minimum Description length Principle: Basic Properties // IEICE Trans. on Fundamentals. — 1999. — Vol. E82-A, N 9. — 9 p.
11. 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.
References
1. Lyuger Dj. Iskusstvennyi intellekt. Strategii i metody resheniya slojnyh problem. — M. : Vil'yams, 2003. — 864 s. — in Russian.
2. Rassel S., Norvig P. Iskusstvennyi intellekt: sovremennyi podhod. — M. : Vil'yams, 2006. — 1408 s. — in Russian.
3. McKay D. Information Theory, Inference, and Learning Algorithms. — Cambridge : Cambridge University Press, 2003. — 550 p.
4. Mitchell T. Machine Learning. — NY : McGraw-Hill, 1997. — 432 p.
5. Murphy K. A Brief introduction to graphical models and Bayesian networks. — Berkeley, 2001. —
19 p.
6. Otenyia L. Bayesian Belief Networks for dementia diagnosis and other applications: A comparison of hand-crafting and construction using novel data-driven technique // Technical Report CSM-179. — University of Stirling, 2008. — 332 p.
7. Chickering D.M., Geiger D., Heckerman D. Learning Bayesian Networks is NP-hard // Technical Report MSR-TR-94-17. — Microsoft, 2004. — 155 p.
8. Chow C.K., Liu C.N. Approximating discrete probability distributions with dependence trees // IEE Transactions on information theory. — 1968. — Vol. IT-14, N 3. — 6 p.
9. 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.
10. Suzuki J. Learning Bayesian Belief Networks based on the Minimum Description length Principle: Basic Properties // IEICE Trans. on Fundamentals. — 1999. — Vol. E82-A, N 9. — 9 p.
11. 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.
Материал поступил в редакцию 15.06.10.
D.V. GORISHNIY HEURISTIC SYNTHESIS ALGORITHM OF EVENT DEPENDENCIES MODEL
The problem of relationship between events by the example of rail automatic and remote control devices errors is considered. Heuristic synthesis algorithm of dependencies model structure — Bayesian network — according to the diagnostic data on the ground of minimal length description principle is offered. The developed algorithm and its software implementation are described.
Key words: automation and remote control, technical diagnostics, intellectual methods of data analysis, Bayesian network, directed acyclic graph, mutual information, minimal length description principle, adaptability.
ГОРИШНИЙ Дмитрий Владимирович (р. 1985), аспирант кафедры «Логистика и управление транспортными системами» Ростовского государственного университета путей сообщения. Окончил Ростовский государственный университет путей сообщения (2007).
Область научных интересов — интеллектуальный анализ данных, техническое диагностирование, автоматика и телемеханика.
Автор 14 научных работ. [email protected]
Dmitry V. Gorishny (1985), Postgraduate student of the Logistics and Transport Systems Management Department, Rostov State Transport University. He graduated from Rostov State Transport University (2007).
Research interests — intellectual methods of data analysis, technical diagnostics, automation and remote control.
Author of 14 scientific publications. [email protected]