Дипломная работа: Использование методов машинного обучения для прогнозирования потоков пациентов в медицинских учреждениях

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ «ВЫСШАЯ ШКОЛА ЭКОНОМИКИ»

Выпускная квалификационная работа

Использование методов машинного обучения для прогнозирования потоков пациентов в медицинских учреждениях

Прокофьева Елизавета Сергеевна

Москва 2020

Введение

На текущий момент системы здравоохранения многих государств столкнулись с распространением вируса SARS-CoV-2. К сожалению, большинство стран не смогли сдержать эпидемию, и единственным сценарием окончания пандемии является выработка коллективного иммунитета, т. е. количество переболевших должно составить примерно 75% от населения, при условии, что оно распределено равномерно. Главная проблема при этом заключается в нагрузке на систему здравоохранения - количество обращений в медицинские учреждения не должно превышать максимальный допустимый поток обслуживаемых пациентов. Эффективность решения данной проблемы состоит из 2 составляющих - во-первых, это меры государства по снижению скорости распространения эпидемии, и во-вторых - меры системы здравоохранения по увеличению максимального допустимого числа пациентов. По рекомендациям ВОЗ, региональные системы здравоохранения должны в срочном порядке мобилизовать все ресурсы, чтобы адаптироваться под новые условия. Данная работа посвящена предсказанию пациентского потока. Актуальность данной работы заключается в том, что предиктивная аналитика количества пациентов поможет оптимизировать работу медицинских учреждений и снизить нагрузку на медицинский персонал.

Попытки внедрения предиктивной аналитики потока пациентов проводились и ранее. Минздрав РФ в 2017 году запустил проект «Бережливая поликлиника», суть которого заключается во внедрении технологий бережливого производства в работу медицинских учреждений. Ключевая проблема, которую решает данный проект - очереди. Очереди вызваны не только нехваткой врачей, но и неоптимальным расписанием медицинского персонала и сложного оборудования. Для решения этой проблемы в проекте используется анализ бизнес-процессов и простая статистика. Однако эту задачу можно решить намного эффективнее с помощью продвинутой предиктивной аналитики и методов машинного обучения.

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

проанализировать существующие решения и работы по этой теме, выделить из них наиболее удачные идеи;

выбрать данные, провести разведочный анализ и обработать их;

построить модель, которая будет принимать информацию о пациенте и выдавать следующую точку посещения.

Таким образом, объектом исследования становится математические методы для предиктивной аналитики. Предметом же данного исследования является способность этих моделей предсказывать поток пациентов.

Для решения задач по анализу данных был выделен ряд методов исследования: многие задачи машинного обучение без учителя предназначены для разведочного анализа данных и их предобработки, а машинное обучение с учителем полностью посвящено предиктивной аналитике. Более подробный список методов описан в 1 главе.

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

Практическая значимость данной темы, заключается в том, что в настоящее время нет общепринятого статистического инструмента, который бы позволял предсказывать поток пациентов, в результате чего врачи и оборудования в разное время либо перегружены, либо бездействуют. С помощью данной модели можно составить расписание таким образом, что нагрузка на персонал будет распределена оптимально. Это позволит в несколько раз уменьшить очереди в медицинских учреждениях. Для примера, в рамках «Бережливая поликлиника» удалось сократить очереди в отдельных местах в 8 раз.

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

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

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

Работа содержит 40 страниц, 21 изображение и 9 таблиц

Глава 1. Обзор алгоритмов машинного обучения

1.1 Машинное обучение

Машинное обучение - это раздел искусственного интеллекта, изучающий алгоритмы, которые способны самостоятельно выполнять поставленную задачу с помощью обучения на данных. Существует 3 раздела машинного обучения с учителем: обучение с учителем, обучение без учителя, обучение с подкреплением.

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

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

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

1.2 Обзор машинного обучения с учителем

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

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

Рисунок 2. Пример недообучение

У каждого алгоритма существуют модификации, которые позволяют бороться с переобучением. Однако существует одна обязательная практика для валидации моделей - разбиение выборки для проверки. Суть этого метода заключается в том, общий набор данных разбивается на две части - обучающую и тестовую. На первой часть, обучающей, модель будет оптимизировать свои параметры. На второй, тестовой, будет проходить валидация модели. Как правило, тестовую и обучающую выборку делят в соотношении 3:7 соответственно.

Рисунок 3. Пример оптимальной модели

Рисунок 4. Пример переобучения

Функционалы ошибки и метрики:

Для валидации и обучения моделей необходимо ввести понятия функции ошибки и метрики модели.

Функции ошибки показывают то, насколько предсказание модели отличается от идеального ответа для одного образца. Для задач регрессии и классификации они отличаются. Самыми часто используемыми функциями ошибки для задач регрессии являются MSE (mean squared error) и MAE (mean absolute error). Для задачи классификации используется функция кросс энтропии и кусочно-линейная функция потерь - hinge loss.

,

,

,

,

Где `y' - ответы выборки, и `a' - ответы алгоритма.

Модель будет подбирать параметры таким образом, чтобы минимизировать среднюю ошибку по всей обучающей выборке.

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

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

Для расчета F1 необходимо рассчитать метрики Recall и Precision. Recall представляет собой долю выявленных положительных объектов, для нее выгодно всегда отвечать положительным классом, чтобы ничего не пропустить, в идеальном случай, присвоить всем объектам положительный класс. Метрика Precision является долей правильно угаданных положительных классов, для нее, наоборот, выгодно очень осторожно назначать ответы положительных классов, в идеальном случай - дать положительный ответ самому очевидно объекту и больше не рисковать. F1 представляет собой гармоническое среднее между Recall и Precision

,

,

,

,

,

Где - квадратичное отклонение ответов от ответов, - дисперсия среднего ответа от ответов, True Positive - количество правильно выбранных положительных ответов, False Negative - количество ложнонегативных ошибок, False Positive - количество ложноположительных ошибок.

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

Параметрические модели:

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

,

Где L - функция ошибки, Х - признаковое описание данных, Y - целевые переменные, - предиктивная модель, - параметры модели.

В данной работе использовались 3 вида параметрических моделей - линейная регрессия, логистическая регрессия и нейронные сети. Также была рассмотрена модель ARMA, которая входит в обзор литературы.

Линейная регрессия

Линейная регрессия представляет собой перемножение вектора весов на вектор признаков с добавлением коэффициента смещения. Эта модель является наиболее простой, но в тоже время она позволяет интерпретировать коэффициенты модели.

,

Где Y - ответ модели, wi - коэффициент i-го признака, b - свободный член, xi - i признак.

Рисунок 5. Линейная регрессия

Методы обучения: есть 2 подхода для поиска оптимального решения - аналитическое решение и итеративный поиск - градиентный спуск.

Аналитическое решение выходит из метода максимального правдоподобия и предположения о том, что ошибка имеет нормальное распределение:

,

Где - вероятностная плотность нормального распределения, Y - матрица ответов, X - матрица входных признаков, W - матрица признаков, - стандартное отклонение.

Также это решение очень просто выводится из определения и псевдообращения матрицы X

,

,

,

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

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

Суть его заключается в спуске по антиградиенту ошибки, т.е.:

,

Где L - функция ошибки, w - вес ошибки, - нормирующий коэффициент градиента.

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

Источник: https://otherreferats.allbest.ru/download/1226451/