DOI: 10.24075/vrgmu.2017-06-07

ОРИГИНАЛЬНОЕ ИССЛЕДОВАНИЕ

Разработка системы прогнозирования диагнозов заболеваний на основе искусственного интеллекта

М. В. Сахибгареева, А. Ю. Заозерский
Информация об авторах

ООО «КОМТЕК», Уфа

Для корреспонденции: Сахибгареева Маргарита Владимировна
ул. Бехтерева, д. 16, кв. 48, г. Уфа, 450047; moc.liamg@1102lv.atiragram

Информация о статье

Вклад авторов в работу: М. В. Сахибгареева — подготовка и анализ данных, анализ литературы, осуществление исследования, подготовка черновика рукописи; А. Ю. Заозерский — планирование исследования, интерпретация данных, подготовка черновика рукописи.

Статья получена: 23.11.2017 Статья принята к печати: 13.12.2017 Опубликовано online: 22.01.2018
|

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

В некоторых работах [3, 4] отмечается острота проблемы сбора и перевода медицинских данных в электронный формат для применения машинного обучения, вследствие чего создание аналитического программного обеспечения оказывается затруднено. Благодаря разработке и внедрению программного комплекса (ПК) «Здравоохранение» в работу ряда медицинских учреждений и активному сотрудничеству с ООО «Сибирский центр защиты информации», нам удалось сформировать обширную базу медицинских данных с правом их обработки. В результате появилась возможность осуществить интеллектуальный анализ данных с использованием методов машинного обучения.

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

Кроме того, задачи диагностики, прогнозирования течения заболевания, выбора стратегии и тактики лечения требуют учета совокупности имеющейся информации о пациенте, без чего медицинские решения носят приблизительный, «неточный» характер [5].

По статистике, приведенной академиком А. Г. Чучалиным в докладе на II Национальном конгрессе терапевтов, каждый третий диагноз, который ставят российские врачи, неверен [6]. Значительное число ошибок при постановке диагнозов было выявлено и нами при анализе результатов диагностирования в нескольких медицинских учреждениях, которые являются пользователями нашего программного обеспечения. Анализ проводили как по отделениям учреждений (табл. 1), так и непосредственно по нозологическим диагнозам (табл. 2), путем определения доли несоответствий заключительного и предварительного диагнозов. Из этических соображений наименования данных медицинских учреждений в статье не приводятся.

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

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

МАТЕРИАЛЫ И МЕТОДЫ

Исходные данные

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

В качестве исходной выборки для проведения машинного обучения мы отобрали случаи заболеваний с известными заключительными диагнозами. В качестве пространства информационных признаков выступали пол и возраст пациента, а также результаты различных лабораторных тестов, взятые из данных диспансеризации одной из поликлиник, которые были собраны в результате работы ПК «Здравоохранение» [7]. Из встречавшихся в медицинском учреждении случаев анализировали данные по 4 нозологическим формам (D50, E11, E74, E78), которые могут быть заподозрены и диагностированы с использованием данных лабораторных анализов. Структура выборки была следующей:

  • железодефицитная анемия (D50) — 778 случаев (10 %);
  • инсулиннезависимый сахарный диабет (E11) — 1 392 случая (17 %);
  • другие нарушения обмена углеводов (E74) — 163 случая (2 %);
  • нарушения обмена липопротеидов и другие липидемии (E78) — 5 585 случаев (71 %).

Итого в выборку включили 7 918 случаев с результатами 200 лабораторных тестов (анализы крови, урины, цитологическое исследование и т. д.) за 2005–2017 гг. Данные были получены от пациентов в возрасте 18–99 лет, в том числе 71 % женщин и 29 % мужчин. Часть результатов лабораторных тестов была представлена категориальными признаками «в норме», «ниже нормы», «выше нормы».

Выбор метода машинного обучения и метрики качества

Рассматриваемая задача прогнозирования диагноза по результатам лабораторных анализов представляет собой задачу многоклассовой классификации.

Анализ данных осуществляли с использованием Scikit-learn [8] — библиотеки для машинного обучения с открытым исходным кодом, написанной на языке программирования Python. В серии предварительных вычислительных экспериментов с использованием различных методов (нейронных сетей, решающих деревьев, градиентного бустинга) наилучший результат показал градиентный бустинг, который относится к методам последовательного построения композиции алгоритмов машинного обучения, когда каждый следующий алгоритм стремится компенсировать недостатки композиции всех предыдущих алгоритмов [9]. Считается, что градиентный бустинг над решающими деревьями — это один из самых универсальных и эффективных методов машинного обучения, известных на сегодняшний день. При этом сами решающие деревья хорошо зарекомендовали себя в практике решения задач классификации.

Отдельное внимание уделяли выбору метрики для оценки качества алгоритма, учитывая специфику задачи и несбалансированность выборки данных. Рассматриваемые метрики будем описывать в терминах матрицы ошибок (confusion matrix) [9, 10] применительно к случаю многоклассовой классификации c использованием подхода Один-Против-Всех. Данный подход основан на сведении задачи многомерной классификации к серии бинарных задач, когда текущий рассматриваемый класс обозначается единицей, а все остальные классы относят к классу 0. Для каждого рассматриваемого класса i определяются следующие показатели:

  • TP (true positive) — число истинноположительных, верно отнесенных к классу ἱ примеров;
  • TN (true negative) — число истинноотрицательных, верно не отнесенных к классу ἱ примеров, отнесенных к некоторому другому классу jἱ;
  • FP (false positive) — число ложноположительных, ошибочно отнесенных к классу ἱ примеров;
  • FN (false negative) — число ложноотрицательных примеров, ошибочно отнесенных к некоторому другому классу jἱ, в то время как истинный класс примеров — ἱ.

Наиболее интуитивно понятная метрика качества accuracy — доля правильных ответов — оказывается неподходящей в случае несбалансированных выборок: форм. 1 .

Поэтому чаще рассматривают другие метрики качества, такие как:

  • точность (precision) — доля истинноположительных примеров от общего количества предсказанных положительных примеров. Иными словами, сколько из предсказанных положительных примеров оказались действительно положительными: форм. 2 ;
  • полнота (recall) — доля истинноположительных примеров от общего количества фактически положительных примеров (размерности класса). Полноту еще называют долей истинно положительных примеров (true positive rate, TPR): форм. 3 .

Полнота используется в роли показателя качества модели машинного обучения, когда необходимо определить все положительные примеры, т. е. снизить количество ложноотрицательных примеров (FN) [10]. Поэтому данная метрика предпочтительна для решения задачи медицинс- кой диагностики, когда важно не пропустить случай того или иного заболевания. Хотя она также достаточно понятна, она не всегда подходит для работы с несбалансированными выборками.

Еще один критерий, который был выбран в данной работе — это ROC AUC, рекомендуемый [10] для оценки качества моделей на несбалансированных данных. ROC AUC — это площадь (area under curve) под кривой ошибок ROC (receiver operating characteristic). Данная кривая представляет собой линию от (0,0) до (1,1) в координатах true positive rate (TPR) и false positive rate (доля ложноположительных примеров, FPR): форм. 4 .

Считается, что чем выше показатель ROC AUC, тем качественнее классификатор. При этом значение 0,5 демонстрирует непригодность выбранного метода классификации (соответствует случайному гаданию). Значение менее 0,5 говорит о том, что классификатор действует с точностью до наоборот: если положительные примеры назвать отрицательными, и наоборот, то классификатор будет работать лучше.

В связи с вышеизложенным в данной работе в роли основного показателя качества модели использовали метрику ROC AUC, но также обращали внимание на метрику recall.

РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ

Отобранные случаи заболеваний с представленными результатами лабораторных тестов были поделены на 2 выборки: обучающую (75 % случаев) и тестовую (25 % случаев). В результате построения модели методом градиентного бустинга для рассмотренных 4 нозологий (D50, E11, E74, E78) на тестовой выборке был достигнут показатель площади под кривой ошибок (ROC AUC), равный более чем 89 % (табл. 3). При этом средняя вероятность, с которой были правильно распознаны диагнозы в тестовой выборке, составила 92 %.

ОБСУЖДЕНИЕ РЕЗУЛЬТАТОВ

Достаточно высокие значения показателя ROC AUC (от 89 до 98 %) говорят о пригодности построенного классификатора к предсказанию выбранных диагнозов. При этом преимуществом проведенного исследования является рассмотрение совокупности данных: результатов лабораторных анализов (200 различных тестов) и таких признаков, как пол и возраст пациента. Cильной стороной проведенного анализа является также достаточно большой объем реальных данных — за 12 лет работы медицинского учреждения. Так, в работе [11] анализировали данные всего за 3 месяца работы госпиталя в Бостоне. В этом исследовании решали задачу предсказания результатов лабораторных тестов, а именно: содержания ферритина в крови. Как и в нашем случае, в роли метрики качества в работе [11] была выбрана площадь под кривой ошибок, которая составила 97 %. Тем не менее стоит отметить, что в соответствии с рядом работ [12, 13, 14] сосредоточение на конкретных нозологических диагнозах может позволить увеличить точность их предсказания. И, согласно работам [15, 16], для повышения качества моделей перспективны различные способы предобработки медицинских данных.

ВЫВОДЫ

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

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

Главной целью начатой работы является переход к персонализированной медицине [17, 18]: анализ данных конкретного пациента, включающих не только результаты лабораторных исследований, но и анамнез и историю его заболеваний; использование искусственного интеллекта не только для прогнозирования диагноза, но и для формирования рекомендаций по назначению подходящего именно данному пациенту лечения. Достижение этой цели позволит снизить число врачебных ошибок и повысить значение профилактики заболеваний путем технологического наблюдения за пациентом.

КОММЕНТАРИИ (0)