I и информационные
технологии
B.В.КИЛИКОВСКИИ,
доцент
C.П.ОЛИМПИЕВА, ведущий научный сотрудник,
кафедра медицинской кибернетики и информатики, ПНИЛ разработки медицинских информационных систем, Российский государственный медицинский университет, г.Москва
ТЕХНОЛОГИЯ СОЗДАНИЯ КОМПЬЮТЕРНЫХ КОНСУЛЬТАТИВНЫХ ЭКСПЕРТНЫХ СИСТЕМ ДЛЯ ИНТЕЛЛЕКТУАЛЬНОЙ ПОДДЕРЖКИ ПРИНЯТИЯ МЕДИЦИНСКИХ РЕШЕНИЙ (Часть 1)
ВВЕДЕНИЕ
Компьютерные системы поддержки принятия решений, частью которых являются экспертные системы (ЭС), приобретают в современной медицине все большую популярность. Основными причинами такой популярности являются следующие их качества:
♦ возможность привлечения ЭС для решения сложных практических задач диагностики заболеваний и выработки лечебных рекомендаций;
♦ возможность накопления и использования непосредственно на рабочем месте знаний и опыта крупных клиницистов, благодаря чему по качеству предлагаемых решений (диагностических и др.) эти системы не уступают экспертам;
♦ возможность объяснения пользователю действий системы на качественном уровне;
♦ возможность обучения (повышения уровня знаний) пользователя при длительной работе с системой как с тренажером, подсказывающим правильное решение в различных ситуациях;
♦ возможность постоянного пополнения базы знаний ЭС новой информацией, полученной от эксперта или из других источников знаний с привлечением современных информационных технологий и технологий анализа данных.
Разрабатываемые нами экспертные консультативные системы поддержки принятия врачебных решений предназначены для использования врачами-специалистами непосредственно на рабочем месте в учреждениях здравоохранения. Медицинские экспертные консультативные сис-
© В.В.Киликовский, С.П.Олимпиева, 2004 г.
гчш
www.idmz.ru кЛ
темы призваны поддерживать все основные этапы лечебно-диагностического процесса: сбор данных, формирование диагностической гипотезы о возможном заболевании, ее верификация в процессе последовательного проведения различных исследований, выбор методов лечения.
Для разработки медицинских консультативно-диагностических систем нами создана оболочка РЕПРОКОД [1] - программное средство, позволяющее изготавливать конкретные приложения в виде экспертных систем по отдельным проблемам медицины.
Оболочка становится полноценной экспертной системой после объединения ее с базой знаний. Разработка базы знаний производится с помощью текстового редактора и не требует программирования. Для представления знаний используются параллельные, иерархически организованные пороговые семантические сети. Остановимся коротко на принципах, положенных в основу при разработке оболочки для создания экспертных систем с использованием представления знаний в виде пороговых семантических сетей.
ПРЕДСТАВЛЕНИЕ ЗНАНИЙ. СЕМАНТИЧЕСКИЕ СЕТИ
Знания определяются как «закономерности предметной области (принципы, связи, законы), полученные в результате практической деятельности и профессионального опыта, позволяющие специалистам ставить и решать задачи в этой области» [2].
Выбор способа представления знаний является ключевым моментом создания ЭС и определяет способ вывода заключений в такой ЭС.
Семантическая сеть представляет собой набор понятий («концептов»), связанных между собой определенным образом некоторыми отношениями.
Например, понятие «лабораторные исследования» может быть соотнесено с понятиями «ана-
№9, 2004
лиз крови» или «анализ мочи» с помощью отношения «от общего к частному», чему соответствуют формулировки «включает в себя», «состоит из», «содержит» и т.п. Эти же отношения могут быть сформулированы и как отношения «от частного к общему» , чему соответствуют формулировки «является частью», «включается в», «характерно для» и т.п., связывающие понятия «анализ крови» или «анализ мочи» с более общим понятием «лабораторные исследования».
Подобной семантической сетью может быть описано понятие «клинико-анамнестические и лабораторные данные пациента», структура которого определяется в соответствии с принятой для этого последовательностью сбора данных: опрос, осмотр, лабораторные исследования, специальные виды исследования. Дальнейшая детализация отдельных разделов приводит к формированию подразделов. Например, раздел «опрос» может содержать следующие подразделы: жалобы, семейный анамнез, анамнезы по видам (соматический, гинекологический, акушерский и т.п.), анамнез заболевания и т.д.
Каждый из подразделов в свою очередь может содержать новые подразделы или конечные понятия (симптомы) и т.д. Очевидно, что любой научный текст содержит некоторый набор понятий, связанных определенными отношениями, и, следовательно, как словесное описание, так и семантическая сеть являются моделями знаний в соответствующей предметной области.
Между понятиями, характеризующими конкретную область знаний (в частности, медицинскую), устанавливается система связей, структура которой имеет иерархическую организацию. Это является прямым следствием наличия между ними причинно-следственных отношений (определяющих, например, модель физиологического процесса или патогенетическую модель заболевания), а также применения двух методов исследования - «анализ»(выделение элементов) и «синтез» (сборка целого из элементов), определяющих движение по сети «вниз» и «вверх».
>
гчшш
ЬЛ1
и информационные
технологии
Можно считать, что в иерархически организованной семантической сети установлено и равноправно движение в обоих направлениях: от общего к частному и от частного к общему.
Таким образом, при записи системы знаний, организованной по иерархическому принципу, достаточно определить только структуру понятий, так как словесная формулировка отношений между конкретными понятиями легко домысливается читателем по контексту.
Иерархическая организация знаний используется в учебниках и монографиях, классификаторах, справочниках, компьютерных системах и базах данных. Одним из наиболее лаконичных способов текстовой записи семантической сети, организованной по иерархическому принципу, является применяемый в оглавлениях способ «ступенчатого текста», в котором понятия следующего (менее общего) уровня иерархии записываются с отступом вправо на определенное число позиций от первого символа в записи предыдущего по иерархии понятия общего уровня.
В технологии создания экспертных систем РЕПРОКОД принят именно такой способ первичной записи базы знаний (БЗ), причем формирование электронной записи БЗ в виде файла осуществляется с помощью любого текстового процессора.
^—Другим удобным способом текстовой записи иерархической семантической сети является ее представление в виде набора последовательно раскрывающихся списков нескольких понятий одного уровня (меню), связанных с одним понятием предыдущего по иерархии уровня.
Представление знаний в виде иерархически связанных списков используется нами для внутреннего представления базы знаний в технологии РЕПРОКОД, что позволило организовать удобный интерфейс пользователя, который представлен в виде системы последовательно раскрывающихся меню, каждое из которых состоит из списка понятий, являющихся составными частями понятия более общего уровня.
СОСТОЯНИЕ СЕМАНТИЧЕСКОЙ СЕТИ И МЕХАНИЗМ ВЫВОДА ЗАКЛЮЧЕНИЙ
В памяти компьютера каждому понятию, являющемуся узлом семантической сети, сопоставлена «переменная состояния», которая может принимать числовые или текстовые значения, определяющие состояние описываемого объекта (например, пациента). В простейшем случае «переменная состояния» может принимать всего два значения- «отсутствует» и «имеется», которые кодируются как 0 и 1. Это позволяет записывать в числовом выражении факт отсутствия или наличия у реального объекта, выбранного для описания, свойства, соответствующего данному понятию. Если понятие по смыслу может принимать несколько значений (например, «температура тела» может быть «пониженной», «нормальной», «повышенной»), то организовав меню, раскрывающееся в список таких состояний, мы снова имеем дело с конечными понятиями (например, «повышенная температура»), принимающими всего два значения - «отсутствует» и «имеется».
Узлы сети, расположенные выше по иерархии и собирающие в себя несколько конечных (заполняемых) или промежуточных узлов, формируют так называемые симптомокомплексы (например, симптомокомплекс «жалобы общего характера» и т.п.). Вывод заключения о наличии у пациента определенного симптомокомплекса моделируется в семантической сети как перевычисление состояния этого и всех входящих в его структуру узлов после ввода данных, отражающих результаты обследования пациента.
Совокупность значений переменных состояния всех узлов определяется как состояние семантической сети, отражающее состояние реального объекта.
Ввод данных о наличии у пациента определенной совокупности симптомов вызовет изменение состояния узла сети, отражающего наличие соответствующего синдрома или симптомокомплекса
гчш
www.idmz.ru кЛ
(значение переменной состояния этого узла изменится с 0 на 1). В частности, наличие (или отсутствие) конкретного диагностического заключения также будет результатом изменения состояний промежуточных узлов, расположенных ниже по иерархии и соответствующих симптомокомплексам или синдромам, характерным для данного диагноза, состояние которых может измениться (или нет) после занесения исходных данных пациента.
Совокупность алгоритмов и правил для пересчета состояния узлов определяет в экспертной системе механизм вывода заключений.
Очевидная аналогия узлов семантической сети с нейронами нейронной сети позволяет трактовать процесс вывода заключений как распространение состояния возбуждения по сети. Эта аналогия становится еще более полной при использовании порогового правила для пересчета состояния узла по состоянию связанных с ним «входящих» узлов, при этом для перехода состояния вычисляемого узла из 0 в 1 требуется, чтобы суммарное «воздействие» связанных с ним «входящих» узлов оказалось равным или превысило определенное для этого узла пороговое значение. Сила «воздействия» «возбужденного» узла на связанный с ним узел (непосредственно предшествующий ему по иерархии) определяется весовым коэффициентом, приписанным соответствующей связи. Семантическую сеть, снабженную пороговым механизмом вывода заключений, называют пороговой.
В иерархической семантической пороговой сети, описывающей базу знаний консультативной медицинской системы, экспертные знания (диагностические и лечебные) содержатся в трех ее основных элементах: структуре сети (совокупности понятий и связей между ними), в совокупности пороговых значений для пересчета состояния узлов и в совокупности весовых коэффициентов, приписанных связям. Алгоритмизация знаний (определение правил для вывода заключений из введенных данных) является результатом работы инженера знаний, который на основе применения
№9, 2004
различных приемов анализа информации, полученной из различных источников (эксперт, монографии и др.), выявляет алгоритмы вывода заключений в пространстве признаков, характеризующих предметную область, для которой создается экспертная система.
РАЗРАБОТКА БАЗЫ ЗНАНИЙ МЕДИЦИНСКОЙ КОНСУЛЬТАТИВНОЙ СИСТЕМЫ
Рассмотрим более детально этапы создания базы знаний и принципы ее текстового оформления и кодирования, которые позволяют преобразовать ее в готовую экспертную систему с помощью комплекса программ, входящих в оболочку РЕПРОКОД. Ключевым этапом при создании ЭС является формализация экспертных знаний и формирование базы знаний разрабатываемой ЭС.
Процесс формирования базы знаний экспертной системы (для последующего использования оболочки РЕПРОКОД) включает три этапа:
1. Формирование «эталонных» описаний основных диагностических заключений и их структурирование в соответствии с принятой системой обоснования диагностических заключений в конкретной области медицины, для которой создается ЭС.
2. Формирование признакового пространства, обеспечивающего решение выбранной диагностической проблемы.
3. Формирование алгоритмов, позволяющих «вычислять» диагностические заключения на основе введенных в систему данных о пациенте.
ФОРМИРОВАНИЕ «ЭТАЛОННЫХ» ОПИСАНИЙ ОСНОВНЫХ ДИАГНОСТИЧЕСКИХ ЗАКЛЮЧЕНИЙ
Под эталонным описанием диагноза подразумевается наиболее полное развернутое описание анамнеза, текущих клинических симпто-
>
гчшш
ЬЛ1
и информационные
технологии
>
мов, результатов лабораторных и специальных исследований, характерных для этого диагноза. Описание структурируется в виде ступенчатого текста, в котором каждое понятие (концепт) показывается списком понятий следующего уровня, раскрывающих его содержание, и так до тех пор, пока не дойдет до конечных понятий, отражающих значения признаков и являющихся в контексте рассматриваемого диагноза симптомами заболевания.
Структурированное таким образом эталонное описание заболевания представляет собой иерархически организованный текст, описывающий сетевую структуру, на которую опирается алгоритм пороговых вычислений.
Одновременно формируется структура диагностических заключений, в которой группирующее название нозологии разделяется на нозологические варианты заболевания или на варианты заболевания по течению (острое или хроническое), по патогенезу, по морфологическим или другим особенностям. Например, диагноз «гломерулонефрит (ГН)» делится на острый, хронический и быстропрогрессирующий; в свою очередь хронический ГН разбивается на три формы - нефротическая, гемолитическая и смешанная.
ФОРМИРОВАНИЕ
ПРИЗНАКОВОГО
ПРОСТРАНСТВА,
ОБЕСПЕЧИВАЮЩЕГО
РЕШЕНИЕ ВЫБРАННОЙ
ДИАГНОСТИЧЕСКОЙ
ПРОБЛЕМЫ
Признаковое пространство, необходимое и достаточное для решения диагностической проблемы (набора диагностических заключений), для которой конкретная ЭС создавалась, формируется как объединение подмножеств признаков, вошедших в эталонные описания всех диагностических заключений, сформированных на первом этапе создания БД.
Это признаковое пространство структурируется в отдельной ветви иерархической семантической сети в соответствии с принятым порядком сбора данных пациента (опрос, осмотр, пальпация, аускультация и т.д.), что облегчает пользователю-врачу поиск нужного признака при первичном вводе данных.
ФОРМИРОВАНИЕ АЛГОРИТМОВ, ПОЗВОЛЯЮЩИХ «ВЫЧИСЛЯТЬ» ДИАГНОСТИЧЕСКИЕ ЗАКЛЮЧЕНИЯ НА ОСНОВЕ ВВЕДЕННЫХ В СИСТЕМУ ДАННЫХ О ПАЦИЕНТЕ
Вычисления по сети организованы на основе порогового правила, использующего систему весовых коэффициентов и пороговых значений. Бинарное состояние каждого концепта может измениться (с 0 на 1), если конкретный набор симптомов, выявленных у пациента (из числа входящих в ниже расположенный список концептов, раскрывающих этот концепт), наберет сумму весовых коэффициентов, равную или превышающую величину порога, определяющего минимальное количество свидетельств, необходимое для подтверждения диагностического заключения.
Для вычисления промежуточных диагностических заключений могут быть использованы как эмпирические алгоритмы, сообщенные экспертом или выявленные инженером знаний на этапе извлечения экспертных знаний, так и алгоритмы, полученные в результате статистического анализа данных (например, регрессионные и другие зависимости), позволяющие решать локальные задачи дифференциальной диагностики.
ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ И ВВОД ДАННЫХ В ЭС НА БАЗЕ ОБОЛОЧКИ РЕПРОКОД
Интерфейс пользователя в технологии РЕПРО-КОД представляет собой систему последователь-
F4I
www.idmz.ru hil
но раскрывающихся меню, включающих списки понятий, содержание которых описывает последовательные уровни иерархии, начиная от более общих (высоких) уровней иерархии и кончая все более конкретными (более низкими) уровнями. Такая организация интерфейса позволяет пользователю двигаться по сети в нужном ему направлении до тех пор, пока не появится меню, содержащее список понятий самого низкого (входного) уровня, то есть список симптомов.
После этого необходимо внести в сеть входную информацию о пациенте, изменяя состояние соответствующих входных узлов сети, что в свою очередь вызовет пересчет состояния всех связанных с ними более высоких по иерархии узлов.
Изменение состояния входных узлов с 0 на 1 (то есть ввод информации о наличии у пациента данного симптома) осуществляется пользователем путем выбора необходимого понятия в конечном меню и нажатием клавиши ENTER. Занесенные таким образом в систему данные пациента маркируются в меню символами «•» (если признаки в списке альтернативны) или «х» (если признаки у пациента могут встречаться одновременно). Изменение с 0 на 1 состояния вычисляемых узлов отмечается появлением символа «^ » в соответствующих им строках меню.
№9, 2004
Для первичного ввода данных о состоянии пациента в базу данных консультативной системы удобно использовать одну из главных ветвей иерархического дерева - «ВВОД ДАННЫХ», построенную в соответствии с принятой в медицине последовательностью сбора данных о пациенте.
В этой части системы все приписанные связям весовые коэффициенты имеют значение 1, величины пороговых значений, по которым осуществляется пересчет состояния следующего вверх по иерархии концепта, также равны 1. Поэтому перевычисление состояния узлов этой ветви сети после ввода данных приводит просто к трассировке на каждом уровне символом «V » тех разделов истории болезни, в которые занесены данные пациента. При повторном сеансе работы с данными того же пациента врач-пользователь сразу видит, какие разделы истории болезни уже заполнялись, а в какие разделы данные пациента не заносились.
Например, если результаты осмотра пациента не вводились, то пункт «ОСМОТР» соответ-
ко, если
ствующего мен хотя бы один с
ю не будет отмечен; одна имптом, полученный в результате
отмечен
осмотра, занесен, то этот пункт будет символом «V »
ЛИТЕРАТУРА
I. Киликовский В.В., Олимпиева С.П., Киликовский Вл.В. Меди
цинский научный и учеб-w.medic-21vek.ru
тер, 2001. - 384 с.
3. Rozenbojm J., Palladino E., Azevedo A.C. Salud Publica Mex.1993, № 35(3), -Р. 321-325.