ДИАГНОСТИКА ЗАБОЛЕВАНИЙ МОЧЕВЫДЕЛИТЕЛЬНОЙ СИСТЕМЫ С ИСПОЛЬЗОВАНИЕМ ЭКСПЕРНЫХ СИСТЕМ
Введение. Развитие новых методов диагностики, а также расширение возможностей уже существующих методов было и остается актуальной задачей в медицине. Появление новейших диагностических и лечебных технологий требуют использования методов искусственного интеллекта для обработки и интерпретации данных с возможностью накопления, хранения и многократного использования медицинских данных [1]. Одним из наиболее эффективных средств в данной области являются экспертные системы. Они позволяют автоматизировать процесс принятия решения при освидетельствовании пациентов, повышая уровень квалификации пользователя до уровня опытных экспертов [3]. Поэтому необходимо, чтобы экспертные системы обладали возможностью гибкой постановки задач, были применимы ко всем областям биологии и медицины, обладали большой информационной емкостью и помехоустойчивостью, не нуждались в длительном времени для разработки [1]. Непрерывное развитие средств вычислительной техники расширяет потенциальные возможности подобных систем, в связи, с чем необходимо постоянно пополнять знания в данной области.
Экспертные системы в течение длительного времени применяются в медицине для диагностики заболеваний. Каждая система при этом обладает ограниченной областью применения, в связи с изначальной направленностью разработки. Применение этих экспертных систем в областях, для которых они изначально не были предназначены, затруднено и зачастую просто невозможно, в том числе потому, что они ограничены встроенными способами вывода [3]. Вследствие этого возникают потребности в разработке экспертных систем, которые являются узконаправленными и позволяют проводить диагностику заболеваний отдельных систем организма человека. В частности заболевания мочевыделительной системы.
Цели и задачи. Заболевания мочевыделительной системы чрезвычайно широко распространены и представляют серьезную проблему для здравоохранения во всем мире. Причин, вызывающих заболевания мочевыделительной системы, очень много. Наиболее распространенные причины: инфекционные заболевания, алкоголь и курение, неочищенная вода, недоброкачественные продукты и острая пища, переохлаждение организма.
Задача разрабатываемой экспертной системы медицинской диагностики состоит в определении возможных диагнозов больного на основе знаний о заболеваниях мочевыделительной системы и данных его обследования, к которым относят результаты анализа мочи, крови, УЗИ почек и мочевого пузыря.
Данная экспертная система основана на концептуализации предметной области, явное представление которой называют онтологией. Приведем общее формальное описание модели онтологии медицинской диагностики [5].
Рисунок 1 - Экранная форма ввода данных.
Процессы, протекающие в организме пациента, можно условно разделить на внешние (наблюдаемые) и внутренние, которые являются предметом диагностики. Наблюдаемые процессы будут называться признаками, а внутренние - заболеваниями. Признаки имеют значения, которые получаются в результате наблюдения этих признаков, причем значения признаков могут меняться с течением времени. Значения признаков являются качественными (скалярными). Признаки являются подклассом класса наблюдений. Другим подклассом класса наблюдений являются анатомо-физиологические особенности организма пациента. Последние также имеют скалярные значения; в данной работе считается, что эти значения не могут меняться во времени. Последним подклассом наблюдений являются события, произошедшие с пациентом, которые также имеют скалярные значения.
Общая модель онтологии является основой экспертной системы, которая и будет обрабатывать входные данные.
Метод решения задачи. Этап обработки входной информации осуществляется непосредственно врачом. Результатом его работы становятся данные пациента, внесенные в базу данных, которая разработана в среде Microsoft Access. Врач вносит данные с помощью экранной формы.
Система организации работы находится на клиентском уровне, поэтому требует постоянного участия врача во введении и корректировки внесенных и редактировать данных, в свою очередь позволяет не допускать ошибок во входных данных.
В результате работы ЭС получим диагноз, то есть конкретный вид заболевания, если оно, конечно, было обнаружено, в противном случае врачу предлагается назначить пациенту дополнительные обследования.
Выходным диагнозом может быть:
а) Пиелонефрит;
б) Мочекаменная болезнь;
в) Гидронефроз;
г) Почечная недостаточность и др.
Процесс создания ЭС является итерационным, поэтому на первых порах необходимо максимально ограничивать число входных величин, используя лишь наиболее значимые. Если гипотеза о достоверности экспертной оценки не подтверждена, тогда необходимо использовать дополнительные входные величины. Такой подход гарантирует отсутствие избыточной информации в базе данных, что повышает надежность функционирования ЭС. Количество уровней по каждой входной величине зависит от коэффициента значимости этой величины и от величины погрешности лабораторного оборудования. Следует помнить, что количество входных величин и их уровней постоянно увеличиваются, в связи с совершенствованием лабораторного оборудования и увеличения базы данных, что способствует повышению достоверности экспертной оценки.
Естественным методом решения такой задачи является перебор всех возможных значений выходных данных (отдельных заболеваний). Для каждого заболевания выполняется решение прямой задачи – построение всех возможных вариантов развития причинно-следственных связей (на основе информации из базы знаний, сформированной экспертами, значений анатомо-физиологических особенностей пациента и значений, произошедших с ним событий) и поиск среди них такого, которому соответствуют все наблюдаемые значения признаков пациента.
Результатом решения задачи будет одно из двух:
• либо сообщение о том, что пациент здоров, с указанием причин наблюдаемых значений признака;
• либо несколько взаимоисключающих диагнозов, каждый из которых представляет собой одно заболевание, которым болен пациент, вместе с указанием причин значений признаков.
Проведенный анализ литературных источников показал, что наиболее эффективным алгоритмом решения задачи диагностики заболеваний является алгоритм, использующий нечеткие термы[5].
Алгоритм решения данной задачи является весьма нетривиальным. Основная работа заключается в правильной организации базы знаний.
База знаний представляется в виде:
(1)
где - нечеткий терм, которым оценивается значение входа ; выход у оценивается нечетким термом , m – количество термов, используемых для лингвистической оценки выходных данных.
Логический вывод основывается на известном алгоритме вывода в экспертных системах, формализованное обобщение которого представляется следующим образом.
Пусть - функция принадлежности входа {} нечеткому терму , то есть , где - совокупность пар элементов подмножества;
-функция принадлежности выхода у нечеткому терму ;
; (2)
степень принадлежности входа {} нечеткому терму из базы знаний определяется следующей системой нечетких логических уравнений:
;. (3)
нечеткое подмножество , соответствующее входу {}, определяется как
, (4)
четкое значение выхода – y, соответствующее входу {} определяется методом медианы:
, (5)
Сам алгоритм разбит на несколько подзадач, одна из которых является главной (управляющей):
1. Проверить для каждого наблюдавшегося признака выполнение необходимого условия.
2. Если для какого-то из наблюдавшихся признаков не выполнено необходимое условие, то данные о пациенте считать некорректными и завершить работу.
3. Проверить гипотезу о том, что пациент здоров.
4. Если гипотеза о том, что пациент здоров, подтвердилась,
4.1. то считать результатом диагноз, в котором отсутствуют заболевания, а также его объяснение (полученные причины наблюдаемых значений признаков);
4.2. иначе перебрать все заболевания из базы знаний и для каждого:
4.2.1. проверить выполнение необходимого условия для этого заболевания;
4.2.2. если необходимое условие выполнено, то проверить гипотезу о том, что пациент болен этим заболеванием, начавшимся в момент начала наблюдений, и в случае её подтверждения добавить это заболевание вместе с его объяснением (полученными причинами наблюдаемых значений признаков) к множеству решений;
5. Завершить работу, выдав полученные результаты (диагноз и причины значений признака).
Рассмотрим на примере:
У пациента следующий анализ крови:
Общевоспалительные изменения: лейкоцитоз, ускорение СОЭ, сдвиг лейкоцитарной формулы влево, при выраженном воспалении — анемия.
1. Проверяем для признака общий анализ крови, выполнение необходимого условия: количество форменных элементов.
2. Если для данного признака не выполнено необходимое условие (вводимые данные должны быть не меньше минимального порога и не больше максимального порога), то данные о пациенте считать некорректными и завершить работу.
3. Проверить гипотезу о том, что пациент здоров.
4. Если гипотеза о том, что пациент здоров, подтвердилась,
4.1. то выводим результат, что пациент здоров;
4.2. иначе перебираем все заболевания из базы знаний и для каждого:
4.2.1. проверяем выполнение необходимого условия (сдвиг лейкоцитарной формулы влево) для этого заболевания;
4.2.2. данное условие выполняется для заболевания пиелонефрит. Проверяем гипотезу о том, что пациент болен данным заболеванием и в случае её подтверждения добавляем это заболевание вместе с его объяснением (полученными причинами наблюдаемых значений признаков) к множеству решений;
5. Завершить работу, выдав результат:
Заболевание: пиелонефрит.
Признаки: лейкоцитоз, ускорение СОЭ, сдвиг лейкоцитарной формулы влево, при выраженном воспалении — анемия.
Данный пример с использованием общей схемы алгоритма с одним признаком является очень обобщенным. Однако он наглядно показывает работу экспертной системы.
Выводы.
В данной статье выбран и описан оптимальный алгоритм для экспертной системы диагностики заболеваний мочевыделительной системы, который удовлетворяет следующим требованиям [5]:
1) Обеспечивает необходимую точность постановки диагноза.
2) Позволяет анализировать симптомы и взаимосвязь между ними на протяжении длительного периода.
Выполнено описание базы данных и приведена экранная форма работы с БД. Описана база знаний и формализованное обобщение логического вывода информации.
Основная подпрограмма алгоритма наглядно показана в работе с примерным диагнозом по данным анализа крови.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Статические и динамические экспертные системы: Учебное пособие / Э.В. Попов, И.Б. Фоминых, Е.Б.Кисель, М.Д. Шапот. — М. :Финансы и статистика, 1996. — 320 с.
2. Автоматизированное проектирование информационно-управляющих систем. Проектирование экспертных систем на основе системного моделирования / Г. Г. Куликов, А.Н. Набатов, А.В. Речкалов и др. ;Уфимск. гос. авиац. техн. ун-т. — Уфа, 1999. — 223 с.
3. Куликов Г. Г., Брейкин Т.В., Арьков В.Ю. Интеллектуальные информационные системы : Учебное пособие. — Уфа: УГАТУ, 1999. — 129 с.
4. Тельнов Ю.Ф. Интеллектуальные информационные системы в экономике. — М., 1998. — 174 с.
5. Клещёв А.С., Москаленко Ф.М., Черняховская М.Ю. Модель онтологии предметной области «медицинская диагностика». Часть 2. Формальное описание причинно-следственных связей, причин значений признаков и причин заболеваний // НТИ. Сер. 2. – 2006. – № 2. – С. 19-30.
6. Черняховская М.Ю., Негода В.И., Москаленко Ф.М. Формальное представление знаний о конъюнктивитах. – Владивосток: ИАПУ ДВО РАН, 2008. – 55 с.
7. Клещев А.С., Шалфеева Е.А. Определение структурных свойств онтологий // Изв. РАН. Теория и системы управления. – 2008. – № 2. – С. 69-78.
8. Клещев А.С., Орлов В.А. Компьютерные банки знаний. Многоцелевой банк знаний // Информационные технологии. – 2006. – № 2. – С. 2-8.
9. Список банков знаний Многоцелевого банка знаний. – [Электронный ресурс]: http://mpkbank2.dvo.ru/mpkbank/index.php?page=banks.
10. Москаленко Ф.М. "Экспертная система медицинской диагностики, основанная на реальной онтологии медицины, для многопроцессорной ЭВМ" // Труды II между- народной конференции «Параллельные вычисления и задачи управления» PACO’2004 памяти Е.Г.Сухова. М.: Институт проблем управления им. В.А. Трапез- никова РАН, 2004. С.999–1084.