Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: Научного журнала «Инновации в науке» № 1(62)

Рубрика журнала: Информационные технологии

Скачать книгу(-и): скачать журнал

Библиографическое описание:
Гончарова А.Б., Сергеева Е.И. СИСТЕМА ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ В МЕДИЦИНЕ ДЛЯ ДИАГНОСТИКИ ЗАБОЛЕВАНИЙ // Инновации в науке: научный журнал. – № 1(62). – Новосибирск., Изд. АНС «СибАК», 2017. – С. 23-25.

СИСТЕМА ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ В МЕДИЦИНЕ ДЛЯ ДИАГНОСТИКИ ЗАБОЛЕВАНИЙ

Гончарова Анастасия Борисовна

преподаватель, руководитель студенческого научного общества Санкт-Петербургского государственного бюджетного профессионального образовательного учреждения "Колледж Водных ресурсов",

РФ, г. Санкт-Петербург

Сергеева Елена Ивановна

преподаватель, руководитель студенческого научного общества Санкт-Петербургского государственного бюджетного профессионального образовательного учреждения "Колледж Водных ресурсов",

РФ, г. Санкт-Петербург

DECISION-MAKING SUPPORT SYSTEM IN MEDICINE FOR DIAGNOSIS OF DISEASES

Goncharova Anastasya

phD in Physical-mathematical sciences, assistant professor of   Saint Petersburg State University,

Russia, Saint-Petersburg

Sergeeva Elena Ivanovna

teacher, Head of Student Scientific Society of St. Petersburg state budgetary professional educational institutions "College of the Water Resources" ,

Russia, Saint-Petersburg

АННОТАЦИЯ

В данной работе представлена модель системы поддержки принятия решений в медицине при постановке диагноза. База знаний экспертной системы представлена в виде таблицы значений, основанной на понятиях «отсутствие/наличие» симптомов. Программно реализован метод поиска наиболее вероятного заболевания с заданным в теле функции пользовательским вектором, используя последовательный контейнер vector и ассоциативный контейнер map. Рассмотрен и протестирован подход на случай неполноты входных данных и усложнения базы знаний, введением весового коэффициента симптома в симптомокомплексе заболеваний.

ABSTRACT

The model of medical support of decision-making system for diagnosis is presented. Knowledge base of expert system is presented as table of values based on the symptom status. The method for finding most probable diseases with user vector given in function body is realized programmatically via the consecutive container vector and associative container map. Approach for dealing with the case of incompleteness of starting data and of sophistication of knowledge base by introduction of weighting coefficient of symptom in symptom complex of disease is examined and tested.

 

Ключевые слова:  база знаний, медицина, модель диагностики, неполнота данных, экспертная система

Keywords: knowledge base, medicine, diagnostic model, data incompleteness, expert system

 

Введение. Современные технологии, внедренные в медицинскую диагностику, позволили существенно повлиять на постановку предварительного диагноза у пациентов. Существуют различные подходы создания медицинских систем диагностики, например, экспертные системы (ЭС), которые занимаются решением неформализованных задач, требующих нестандартного подхода [2, 3, 4].

Целью работы является создание медицинской экспертной системы поддержки принятия  решений в медицине при постановке диагноза у больных с заболеванием желудочно-кишечного тракта.

Обзор представлений и создание базы медицинских знаний. Метод представления решения зависит от выбора представления базы знаний в медицинской системе, поэтому при разработке ЭС важно учитывать ограничения предметной области и возможность представления процедурных знаний.

Одним из способов представления медицинских исследований является пара  "ключ-значение" или "объект-ключ-значение". Для возможных дальнейших усложнений системы важно учитывать, что такого рода представления предметной области может оказаться недостаточным и потребуются дополнительные усовершенствования. Состояния области диагностики заболеваний представляются в виде таблицы (см. таблица 1). Столбцы задают наименование болезни, а строки - симптомы, диагностируемые у больных с нарушением работы поджелудочной железы (ПЖ) [7]. В ячейках пересечения "симптом-болезнь" ставится численное значение, свидетельствующее об его наличии или отсутствии [2, 5-7].

Для представления статистических значений о текущем состоянии области диагностики используется вектор, который формируется из значений столбца заболевания.  Таким образом, можно утверждать, что каждому рассматриваемому заболеванию соответствует свой вектор-столбец.

Таблица 1.

Пример базы знаний.

 

Заболевания

Карциномы ПЖ

Панкреатит

Хронический панкреатит

Симптомы

Тошнота

1

1

1

Рвота

1

1

1

Общая слабость

1

1

0

Снижение веса

0

0

1

Высокая температура

1

1

0

 

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

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

Таблица 2.

Симптомы и заболевания.

 

1

0

1

0

1

1

0

1

1

1

1

0

0

1

1

1

 

Соответствие симптомов и заболеваний отмечено произвольным образом. В нашем случае 0 соответствует отсутствию симптома, 1- его наличию. Таким образом, получается матрица, состоящая из векторов-симптомов:

                                                (1)

Теперь на языке C++ описывается выбор наиболее вероятного заболевания посредством сравнения заданных пользовательского вектора и векторов-заболеваний. Для реализации представления объектов области диагностики заболевания в виде векторов использовались массивы:  последовательный контейнер vector и ассоциативный контейнер map.

Ассоциативный контейнер позволяет представить базу знаний в виде "ключ-значение", или в случае рассматриваемой задачи "заболевание-вектор симптомов". Кроме того, использование  контейнера позволяет  сделать возможным поиск и упорядочивание по ключу. Контейнер vector позволяет использовать встроенные функции для описания присваивания значения или поиска элемента, что удобно при большом объеме значений.

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

Проблема неопределенности в диагностике информации и вариант решения. Неопределенность в медицинской практике становится большой проблемой на пути к постановке точного диагноза, так как мешает выбрать лучшее решение, и, следовательно, может стать причиной некачественного ответа. В данной работе под неопределенностью понимается недостоверность наличия симптома, то есть субъективность оценивания специфичности симптома в симптомокомплексе.

Экспертная система диагностики должна функционировать даже при условиях неполной определенности. Всегда существует возможность введения любых правил в систему, способную работать с неполной информацией;  тогда  результат работы программы будет зависеть от  частоты проявления определенных характеристик, если не было введено пороговое значение.

Формально модель с неполной информацией может быть представлена в следующем виде. Компонента пользовательского вектора, создающегося в результате выполнения программы, принимает  значение 1, если симптом точно присутствует, 0 - отсутствует и X, если пользователь сомневается.  Под Х подразумевается, что ячейка вектора заполняется 0 или 1. Теперь количество рассматриваемых векторов возрастет до  , где n - число позиций с неопределенными значениями:

                             (2)

В условиях неопределенности при постановке диагноза следует вводить различные правила, учитывающие особенности конкретной болезни при имеющихся у больного симптомах [1, 4]. Эти особенности могут быть выражены с помощью присвоения веса каждому симптому в зависимости от его значимости в иерархии симптомокомплекса, что позволяет учесть вклад каждого симптома при дальнейшей обработке пользовательского вектора. Функция присваивания веса представляет собой субъективную меру (Таблица 3).  Под субъективной мерой понимается релевантность элемента понятию, определенному нечеткой совокупностью. Перед применением модели на непосредственной задаче исследуется пример с рядом упрощений.

Таблица 3.

Симптомы и заболевания с учетом веса.

 

0,6

0

0,1

0

0,3

0,3

0

0,4

0,1

0,5

0,2

0

0

0,2

0,7

0,6

 

Как пример демонстрации метода, рассмотрим программу, в которой пользовательский вектор состоит из компонент , где «1» - симптом, в наличие которого пользователь уверен, «0» - симптом, в отсутствие которого пользователь уверен, «» - симптом, в котом пользователь не уверен. Важно учитывать, что симптомы, в наличие которых пользователь гарантированно уверен («1» или «0») и симптомы, в которых не уверен («»), не следует включать в норму одинаково. В качестве нормы рассматривается функция, которая суммирует квадраты тех значений, которые соответствуют совпадениям в пользовательском векторе позициям, где есть «1» или в «» принимается значение «1».  В результате пользовательскому вектору  будут ставиться в соответствие наиболее вероятные заболевания  с нормой 0,54 или  с нормой 0,52.

Заключение. Предложена модель представления медицинских знаний в виде  таблицы значений, основанной на понятиях «отсутствие/наличие симптомов». Программно реализован поиск заболевания на основании сравнения пользовательского вектора с заданными векторами-симптомами. В ходе тестирования ситуации с использованием неполных входных данных, а так же применения качественной оценки каждого симптома при постановке диагноза получены хорошие результаты, что свидетельствует в пользу выбранной модели представления данных.

 

Список литературы

  1. Бейли Н. Математика в биологии и медицине. М.: МИ , 1970, 327 с.
  2. Данилова Л. А. Анализы крови и мочи. Изд. 4-е, исправ. СПб.: Салит-Медкнига, 2003. 128 с.
  3. Мартемьянов Ю.Ф., Лазарева Т.Я. Экспертные методы принятия решений. Учебное пособие. Тамбов: Изд-во Тамбовского государственного технического  университета, 2010, 80 с.
  4. Тонеева Д. В., Гончарова А. Б., Сергеева Е. И. Алгоритм построения экспертной системы диагностики заболеваний на основе дифференциально-диагностических признаков // Технические науки - от теории к практике: сб. ст. по матер. LXIV междунар. науч. -практ. конф. № 11(59). – Новосибирск: СибАК, 2016. – С. 37-43.
  5. Helix [Электронный ресурс]: URL:http://helix.ru (дата обращения: 15.05.2016).
  6. LookMedBook [Электронный ресурс]: URL:http://lookmedbook.ru (дата обращения: 10.03.2016).
  7. Wallach J. B. Interpretation of Diagnostic tests/ed. by LIPPICONT WILLIAMS&WILKINS. Philadelphia, Pa: Walters Kluwer busines,2007. 1026 p.

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.