
- •Архитектуры и модели программ и знаний
- •Семантические сети (semantic networks)
- •Семантические сети: Примеры
- •Операции над семантическими сетями
- •Байесовский подход к нечеткости. Байесовские сети в системе PROSPECTOR
- •Байесовские сети
- •Пример байесовской сети: Семантические связи понятий "Дождь", "Мокрая трава" и "Включен полив"
- •Комментарии к
- •Использование байесовских сетей
- •Вопросы и домашнее задание к лекции 27

Архитектуры и модели программ и знаний
Лекция 27
Семантические сети. Байесовские сети
Сафонов Владимир Олегович
Профессор кафедры информатики Заведующий лабораторией Java-технологии
(http://polyhimnie.math.spbu.ru/jtl)
Санкт-Петербургский государственный университет
Email: vosafonov@gmail.com
WWW: http://www.vladimirsafonov.org

Семантические сети (semantic networks)
Были предложены впервые для решения задач анализа текстов
на естественном языкеСемантическая сеть - нагруженный ориентированный
мультиграф; узлы – понятия; дуги – отношения (роли); узлы и дуги могут быть нагружены демонами и именами
Имя дуги – имя роли: City --- Pharmacy Ph1
City --- Bank BofADept1
Основоположники: Quillian; Woods (network grammars); Цейтин
(ассоциативные сети)
Определяют взаимоотношения между концепциямиЯвляются наиболее общим и адекватным способом
представления знаний, по сравнению с продукциями и фреймами. Например, медицинские знания адекватно представимы лишь с помощью сетей (не плоских нагруженных ориентированных графов). Использованы в медицинской ЭС CASNET
Пример: Сложность взаимосвязей между симптомами,
синдромами, диагнозами, методами диагностики и методами лечения (типичная семантическая сеть)
(C) Сафонов В.О. 2012

Семантические сети: Примеры
WordNet – Структурированный словарь английского языка, учитывающий синонимы
Gellish-модели естественных языков: Gellish English, Gellish Dutch и др., основанные на сетевом представлении языковых понятий и их взаимосвязей
SNePS (Semantic Network Processing System) – S. Shapiro –
программный инструмент для работы с семантическими сетями
Система программирования на ассоциативных сетях (Г.С. Цейтин, 1990) – сетевая система программирования для отображения семантики и синтеза программ на основе ассоциативных сетей.
Литература: Статья Г.С. Цейтина “На пути к сборочному программированию”, Программирование, 1990, № 1
(C) Сафонов В.О. 2012

Операции над семантическими сетями
Поиск в узле X атрибута с именем A
(если его нет, то поиск продолжается у объекта Y (если он есть), такого, что X – IS_A Y
Склейка сети (сопоставление,
отождествление текущего анализируемого узла с некоторой сетью или фрагментом сети). Аналогична сопоставлению с фреймом:
-дуги склеиваются по именам
-при прохождении дуги или узла с демоном он запускается
(C)Сафонов В.О. 2012

Байесовский подход к нечеткости. Байесовские сети в системе PROSPECTOR
Шансы: O = P / 1-P, где P – вероятностьАприорные шансы: O(E), апостериорные шансы:
O(H:E), где E – свидетельство (факт), H – гипотезаАпостериорные шансы вычисляются в результате
применения правила вида: E -> H
Какой коэффициент можно связать с правилом при
таком подходе и какую формулу применять?
PR(H:E) = O(E:H) / O(E:not H) – отношение
правдоподобия (plausibility ratio)
O(E:H) может быть вычислено по результатам
анализа статистики таких случаев (e.g., E - высокая
температура; H – грипп)O(H:E) = O(H) * PR(H:E) E-> HPROSPECTOR (R.Duda, 1980s):
if E is true: O(H:E) = O(H) * LS, where LS = PR(H:E)
if E is false: O(H:not E) = O(H) * LN, where LN =
PR(H:not E)
При представлении узлов для правил в виде И/ИЛИ
– графа возникает(C) байесовскаяСафонов В.О. 2012 сеть

Байесовские сети
Байесовская сеть (сеть доверия) – вероятностная графовая модель, представляющая набор случайных переменных и их зависимостей с помощью ациклического ориентированного графаВероятность в узле х выражается через вероятности предков узла по формуле Байеса (формуле условной вероятности)
Часто служат для представления причинно- следственных связейБайесовские сети могут использоваться для
представления семантической информации и вероятностей (или шансов) гипотез и фактов, представляемых в виде узлов сети
Пример: Экспертная система PROSPECTOR
(C) Сафонов В.О. 2012

Пример байесовской сети: Семантические связи понятий "Дождь", "Мокрая трава" и "Включен полив"
(C) Сафонов В.О. 2012

Комментарии к
примеру
Если идет дождь (R), то полив наверняка выключен
Если трава мокрая (G), то либо идет дождь, либо включен полив (S)Полная вероятность вычисляется на байесовской сети по формуле:
P(G,S,R) = P(G | S,R) * P(S | R) * P(R)
(C) Сафонов В.О. 2012

Использование байесовских сетей
Машинное обучение (в частности,
обучение с подкреплением – reinforcement learning); при переходах из одного узла байесовской сети в другой вычисляются значения функции R (Reward)
(C) Сафонов В.О. 2012

Вопросы и домашнее задание к лекции 27
Реализуйте байесовскую сеть, выражающую простую систему понятий из повседневной жизни: например, сюжет с дорогой на работу, включающий ходьбу пешком, поездку на метро и далее поездку на маршрутном автобусе, с возможными ситуациями задержки и опоздания. Введите и используйте числовые значения соответствующих условныых вероятностейИзучите указанную работу Г.С. Цейтина об
ассоциативных сетях и реализуйте описанную им систему сетевого программирования для Microsoft.NET
(C) Сафонов В.О. 2012